[DGD] Relative Naming Problems
Steve Wooster
swdgd at intergate.com
Wed Aug 24 11:58:01 CEST 2005
Sorry for the length of this post... It sums up what I've been thinking about with
regards to relative naming. If you don't like reading long posts, consider yourself
warned about this one.
If I ever make a mud, I'd like to implement relative naming for players and NPCs,
because the notion of being able to be known by different names to different people
and have them not realize they're talking about the same person seems like a really
cool idea. Tolkien has good examples of this... Strider aka Aragorn, or even
Mithrandir aka Gandalf, etc. Even better, is that relative naming could help make it a
little more cumbersome to abuse OOC information. For example, on a normal mud,
a player with a low-level character might threaten other low-level characters by
saying he'll use his high-level alt to kill any that he doesn't like. (I consider using OOC
info like that to be cheating) With relative naming, it might be more difficult for his alt
to even figure out who the other lowbie is. (although I suppose he could have a friend
point them out)
So I got to thinking about how such a system might look to the player. One way to do
relative naming might be commands like "nickname human 2 Joe". But that poses a
problem... What if somebody mugs you in broad daylight and runs off or kills you
before you have a chance to nickname them? Have you then permanently lost the
ability to recognize them later? Sure, you could make something to automatically
nickname anybody who attacks you, but then it doesn't auto-nickname people doing
nasty things that code might not recognize as an attack. For example, without
warning a player runs past you, being chased by the dreaded Jabberwocky of Doom
which proceeds to eat you... It'd be nice to recognize the idiot who lured the monster
there if you see them again later.
The best system I could think of that would solve this pretty well would be "facial
strings"; Upon creating a character, it is randomly assigned a face, denoted by a
string of letters. If each letter is a-z, A-Z or 0-9, then as little as five digits would
provide a billion possible faces. When you see a character you haven't nicknamed,
it might be something like the following:
A short orc (a5Tc2) waves to you.
You could then do something like "nickname orc Binky" or "nickname male orc
a5Tc2 Binky". The latter command could be executed at any time/place regardless of
whether any existing player/NPC actually matches the description. The former is a
shortcut to set the nickname based on the attributes of the orc in the room. If the orc
were to wave again, you would just see:
Binky waves to you.
It might be a little hard to get used to seeing facial strings at first (given that they're
kind of jarring), but I think it solves the problem of recognizing other players pretty
well.
Also upon creation, a character would be assigned a random hash, so that the same
face looks different to different characters. (thus helping to prevent OOC spread of
information)
Nicknames would be applied to anybody who mached the gender, race and face
associated with the nickname. You could probably make nicknames that are more
lax. For example "nickname a5Tc2 binky" might call anybody who has a certain face
Binky, regardless of gender/race.
If two players had the same face (which is less likely to happen than winning the
lottery) and one could disguise as the other's race, that one could perhaps
masquerade as the other player, maybe leading to some interesting events. (imagine
the mischeif if the Magistrate's doppleganger was ever found!) Of course, it would be
a good idea to restrict how often a player can create new characters to make it
impractical to create characters until you get the face you want.
Other interesting things that could be done, is that only the first X letters of the
player's face are displayed to you based on your awareness. A character with low
awareness might only see 3 letters (238328 different distinguishable faces), whereas
a person with high awareness might see all 5 (a billion different distinguishable
faces).
Where things start to get tricky for me, is in-game systems... If you have very low
awareness, and attack an orc which flees, then a very similar looking orc (has the
same first 3 facial letters) enters the room, do you attempt to continue combat? I
think the answer should be yes... Though what your character does if the original orc
then reenters while you're fighting is less clear.
I also worry about game systems that require a relative lack of anonymity to work
correctly. What if villians always use hoods to obscure their face during neferious
activities so law officials don't recognize them when they waltz uncloaked into the
local barracks and buy a sword? I guess that's the flip-side of being known by
different names to different people. Maybe if it were easy enough to de-hood
somebody, it wouldn't be a problem.
Another big question, is how to do things like send mail to other players if they don't
have a unique ID. (well, not one that's visible to players at least) One thing I thought
of was maybe to make it so that players can register at towns, securing a unique
name by which mail (and other services) can be directed to them. Something that's
not so easy to handle is "tell" commands. I've heard that muds which have relative
naming often lack the ability to do tells, but tells are convenient (and I can explain
them with magic devices) and more importantly, they're snoop-able. I don't want to
_force_ cheaters to use things I can't snoop, like ICQ. However, I have no idea what
a character would type to send a tell to another character. Maybe tells would need to
be OOC and sent to player accounts instead of characters?
Still, I don't beleive players should be able to use the game mechanics to discover
who a character's alts are. (which can lead to abuse)
How have other people handled things like this? Is there any obvious solution that I
completely missed? I'm very interested in hearing other people poke holes in my idea
and suggest their own. Thank you for your endurance in reading this far!
-Steve Wooster
More information about the DGD
mailing list