[MUD-Dev] exploration points

&lt &lt
Tue Jan 26 03:42:41 New Zealand Daylight Time 1999


I remember there being talk a week or so ago about ways to see what rooms
a particular player has been to. It seemed the consensus was that it would
be too big a memory hog, but a thought came to me today on a fairly easy
way to do this with little to no speed loss and very little extra memory.

I don't know if this is possible in your muds or not, but the way we work
players is that each persona (a persona being the name we use to refer to
a player, whether on-line or off-line) has an entry in the persona
database. When the persona gets logged in, that persona is paired with a
node database. Those are then collectively called "players". A player then
is just a node linked to a persona. The advantage to this system is that
all sorts of temporary stuff can be stored on nodes rather than persona,
and then get wiped on logout.

So, with something like this (basically two very specific relational
databases which are highly optimized for speed) why not perform all the
operations on the node (ie when the player is exploring, and hits a new
room, just flip on the appropriate flag on the node) and, when the player
logs out, write those flags directly to a file. 

Using this, even if your mud has 50000 rooms and 1000 players online at
once, you're still only using an extra 50000*1000 bits, or 6 megs, of RAM.  
I know most muds do not approach those stats, so the memory usage will be
even lower. 6 megs of ram for a mud that size is nothing.

I apologize if this post doesn't make sense or if I have missed something.
I'm not really a coder, and this idea just occured to me, so I thought I'd
share it.

--matt





More information about the MUD-Dev mailing list