[MUD-Dev] Focus on Hocus Pocus

Eli Stevens listsub at wickedgrey.com
Wed Jul 4 15:18:11 New Zealand Standard Time 2001

I am behind on my mail, so apologies if someone already posted something
along these lines.  I figured that if I waited until I was caught up, I
would have forgotten about it (and it would be even later - not good for
keeping a thread coherent).  :)

----- Original Message -----
From: "Troy Fisher" <ashon at wsunix.wsu.edu>
To: <mud-dev at kanga.nu>
Sent: Tuesday, June 26, 2001 7:10 PM
Subject: RE: [MUD-Dev] Focus on Hocus Pocus

> So my plan is to follow the 'true magic' way of doing things.
> Create a list of 'true magic' words to describe those 'hard'
> words.  Words that describe what magic does.  But the problem that
> I run into is this:

> I want the players to be able to 'detect/discover' the magic name
> of diffferent items/locations/players so that they can use those
> as targets.  It is infeasible to create a list of true magic names
> for every item/person/location and would not allow me to modify
> the world on the fly and have it maintain the integerity of the
> spell system.

> So I figured that I would create a way to translate the name to
> true magic, and then from that to the indiviualistic magic
> language.  BUT, by doing this it becomes possible for a player to
> simply figure out the converting mechanism, and do it on his own!
> This will give immense powers to those who figure it out because
> they will be able to affect things that only high powered mages
> should know the magic name of!

> Are there any mechanisms that can be used to make the conversion
> more oblique, and hard to follow for the player?  Or a way to
> dynamically convert it?

One basic idea would be to use a value on the object that the player
does not have access to (like a DB ID number, or somesuch) and use
that as a seed to a randomly generated name.  15 consonants, 5
vowels, 15 consonants to a syllable (ba, bab, bac, bad, baf,
bag... ca, cab, cad...), 2 to 5 syllables to a name (with shorter
names less common), and you have about 5600 names.  Add double
vowels in the middle (baa, baab, baac...); a few vowel pairs (bieb,
beab) and double consonants (blab, bach, back) and you could up it
to 20 * 15 * 20 * 5 = 30,000.  You would actually have more, because
there is the possibility of shorter names that this does not take
into account.

Still need more?  Add the possibility of an apostrophe after ever
interior syllable (bab'ruk, rogthan'ral).  480,000...  And if that
is not enough, well...  :P

But the point is that to figure out a name, a player would need to

  - the number's ID value (whatever you use as the random seed)
  - your random number generator
  - your tables with syllables

The last two are global, so if someone DID get them, they would only
need the first for the specific object that they wanted to control.
Of course, if they can get it's ID number, they can probably get any
values associated with the object anyway - like it's true name...

If you really want to mess with them (and you think that code
security might be a problem), rearrange the tables every
week/day/hour randomly (have it based on something like the number
of players logged in AND how long each has been on or whatever) and
don't store the items' random seed (generate it when the item is
created and toss it away).  Then the only way for them to know the
true name would be to be able to look at your DB - and at that
point, you have bigger problems anyway.  ;)

OK, so that was rambly, sorry.  :P


>From Yahoo! News, June 4th, 2001:
"Gaza Gunbattle Threatens Cease-Fire"

MUD-Dev mailing list
MUD-Dev at kanga.nu

More information about the MUD-Dev mailing list