[MUD-Dev] Introduction System
J C Lawrence
claw at kanga.nu
Thu Jul 13 14:16:40 CEST 2000
On Thu, 13 Jul 2000 08:42:44 -0400 (EDT)
Nathan Clemons <nathan at thelinuxcommunity.org> wrote:
> I'm planning on implementing an introduction system on my
> MUD. Players will have to be introduced to other players to learn
> their name. If you don't know the name of a player, you get their
> "appearance" instead, which is customizeable by the character.
You should do some archive searching for "private namespace". There
been fairly extensive discussion of the idea, long with variation
and general fault finding with the approach.
ObNote: Search is mostly broken at Kanga.Nu right now.
The current rev of the PHP4-MySQL module has some problems.
This is particularly annoying as the MySQL DB is being built and
operated just fine, responds to queries just fine, and PHP does
its thing quite properly -- essentially everything is working
exactly the way it should be except that the PHP side usually
fails when it tries to talk to the MySQL side. Sorry. I'm
working on it when I can. Keep trying.
There are extentions to the idea of private namespaces:
-- All objects are unamed for a player until that player names
them. This encludes, cities, towns, people, houses, bars, NPCs,
roads, rivers, oceans, mountains and all other forms of in-game
objects etc. The world is presented to you exactly as you have
named it.
-- Auto-introduction objects which upon acceptance by a player
auto-inject/edit appropriate names into the receiving player's
namespace (think of something much like an Edwardian gentleman's
personal card). Thus you can meet Bubba, accept his card, and
automatically know his preferred names and various other data he
wishes to pass on (cf finger user at address.dom).
-- Name space virii and other attacks: objects which deliberately
(or accidentally) pollute or otherwise mangle a players namespace,
or even install a player-specific process to keep their namepsace
corrupted (any future assignments are also
re-written/deleted/corrupted). A very effective form of enforced
amnesia and a decent emulation of a very narrow form of demonic
possession/haunting.
> I'm considering storing this in an SQL DB.
That's one approach. Some of the points you'll want to consider
are:
What effects is this going to have on my working set size and is
that a problem?
How often am I going to have to traverse a player's namespace (or
namepsace cache), and how expensive can I afford that to be?
How large can a private namepsace grow? Hundreds of items?
Thousands or items? Tens or hundreds of thousands? If you
implement any sort of in-game programmatic name-space editing (eg
the cards or virii) fully expect to run into characters who have
~1Million namespace entries.
If you impose limits on nsmespace size, what are they, how are
they both maintained and presented to the player, and what can the
player do to help ensure that specific items are not deleted
even if largely inactive/unused or otherwise violating your
schema?
What is the backing store for the rest of the game? If not an SQL
DB, does it make sense to use that, or an extention of it,
instead?
How are you going to handle persistance of namespaces across
logins? Is this different from the rest of the persistance model
for the game? Why?
Can a namespace get out of synch with the objects it names (eg
ObjectID recycling)? How can you detect that, and what are the
approaches for fixing it?
Is your world fully persistant? What happens if I name Bubba and
he then dies and is resurrected? What happens if Bubba dies, and
he gets or creates a new character which is markedly similar
to/different from his old one?
Accidentally thinking you recognise someone when you actually
don't know them, or assigning the wrong identity in that
recognition?
Disguises and other forms of deceit.
You knew Bubba 30 years ago. Since then he's lost both legs and
one arm in the war, had 2rd degree burns over most of his body, is
tatooes almost everywhere, and has hair down to his stumps. Do
you recognise him? Why (not)?
> Can anyone think of any problems with this?
Most of the problems are indirect and social rather than srtuctural
in the game. The problems arise from what the players do with it,
and what they are prevented from doing that they want to.
> How about having the cache updated on a tick basis?
Ticks? Why ever do you have ticks?
--
J C Lawrence Home: claw at kanga.nu
---------(*) Other: coder at kanga.nu
http://www.kanga/nu/~claw/ Keys etc: finger claw at kanga.nu
--=| A man is as sane as he is dangerous to his environment |=--
_______________________________________________
MUD-Dev mailing list
MUD-Dev at kanga.nu
http://www.kanga.nu/lists/listinfo/mud-dev
More information about the mud-dev-archive
mailing list