May 1997
- Multi-threaded mudding (was a flamefest) Jon A. Lambert
- Multi-threaded mudding (was a flamefest) Jeff Kesselman
- Multi-threaded mudding (was a flamefest) clawrenc@cup.hp.com
- Multi-threaded mudding (was a flamefest) Jeff Kesselman
- Multi-threaded mudding (was a flamefest) coder@ibm.net
- Multi-threaded mudding (was a flamefest) Jeff Kesselman
- Multi-threaded mudding (was a flamefest) coder@ibm.net
- Multi-threaded mudding (was a flamefest) Miroslav Silovic
- Multi-threaded mudding (was a flamefest) Jeff Kesselman
- Multi-threaded mudding (was a flamefest) Jon A. Lambert
- Multi-threaded mudding (was a flamefest) clawrenc@cup.hp.com
- Multi-threaded mudding (was a flamefest) Jeff Kesselman
- Multi-threaded mudding (was a flamefest) Jon A. Lambert
- Multi-threaded mudding (was a flamefest) Miroslav Silovic
- Multi-threaded mudding (was a flamefest) Jon A. Lambert
- Multi-threaded mudding (was a flamefest) Chris Gray
- Of disk swapping, database structure & project management.. Greg Munt
- Of disk swapping, database structure & project management.. Jeff Kesselman
- Of disk swapping, database structure & project management.. Jon A. Lambert
- Of disk swapping, database structure & project management.. clawrenc@cup.hp.com
- Of disk swapping, database structure & project management.. Chris Gray
- Of disk swapping, database structure & project management.. coder@ibm.net
- Of disk swapping, database structure & project management.. Jeff Kesselman
- Of disk swapping, database structure & project management.. clawrenc@cup.hp.com
- More sendmail tests... coder@ibm.net
- Last sendmail test (we're up to 8.*)! coder@ibm.net
- Multi-threaded mudding (was a flamefest) Jeff Kesselman
- Multi-threaded mudding (was a flamefest) Ling
- Comments on the DB layer clawrenc@cup.hp.com
- Comments on the DB layer Chris Gray
- Comments on the DB layer clawrenc@cup.hp.com
- Prepositions and parsing clawrenc@cup.hp.com
- Prepositions and parsing Chris Gray
- Prepositions and parsing S001GMU@nova.wright.edu
- Prepositions and parsing clawrenc@cup.hp.com
- Prepositions and parsing Chris Gray
- Prepositions and parsing clawrenc@cup.hp.com
- Prepositions and parsing Chris Gray
- Prepositions and parsing clawrenc@cup.hp.com
- Prepositions and parsing Chris Gray
- Prepositions and parsing coder@ibm.net
- Prepositions and parsing Chris Gray
- Prepositions and parsing clawrenc@cup.hp.com
- Prepositions and parsing Marian Griffith
- Prepositions and parsing clawrenc@cup.hp.com
- Prepositions and parsing Miroslav Silovic
- Prepositions and parsing Nathan Yospe
- Prepositions and parsing Marian Griffith
- Prepositions and parsing clawrenc@cup.hp.com
- Prepositions and parsing Marian Griffith
- Prepositions and parsing clawrenc@cup.hp.com
- Prepositions and parsing Nathan Yospe
- Prepositions and parsing clawrenc@cup.hp.com
- Prepositions and parsing clawrenc@cup.hp.com
- Prepositions and parsing Miroslav Silovic
- Prepositions and parsing Chris Gray
- Prepositions and parsing Miroslav Silovic
- Comments on the DB layer clawrenc@cup.hp.com
- Comments on the DB layer Jon A. Lambert
- Comments on the DB layer Jon A. Lambert
> From: clawrenc@cup.hp.com
> at 10:41 PM, "Jon A. Lambert" <jlsysinc@ix.netcom.com> said: >>
>
> Later thought: If I make my object formats known by the DB (ie
> tightly bind my DB implementation to my object format), then it would
> be fairly easy to have the DB only store deltas for the older
> versions. Currently my objects consist of four lists:
>
> List of parents
> List of attributes
> List of methods
> List of verb templates
>
> with a little blob at the top for ObjectID and other maintenance data.
> It would be fairly easy to make the prior versions of the objects only
> contain those members of the list which have changed...
>
> <thinking>
I settled for modeling a generic C++-like class hierarchy into an RDB model.
It's not really tightly coupled to the data itself, but a coupling of the RDB catalog
structure to an OO model (At least I think so?).
At server boot I initialize my class structure by examining the DB catalog
definitions starting with some pre-defined "$roots" (classes):
For "public" attributes/object attributes:
SELECT column type length FROM SYSCOLUMNS WHERE TABLE = class;
For user type attributes:
SELECT column foreigntable FROM SYSKEYS WHERE TABLE = class;
For "private" attributes/class attributes and methods
SELECT column type length FROM ClassTable WHERE CLASS = class;
For method code:
SELECT binary_blob FROM MethodTable WHERE CLASS = class AND
METHOD = method;
For Inheritance:
SELECT child FROM ChildTable WHERE CLASS = class;
This is somewhat simplified. It gets very nasty checking
multiple inheritance and potential inheritance recursion. ;-)
>
> >3) I can see how you would get numbers of killed mobiles by checking
> > how many old objects of the type were dead. I don't see how you
> > XREF with the weapons or spells, unless you store this info with
> > the dead mobile object or the weapon or spell object undergoes a
> > state change requiring it to be stored with the same transaction
> > time.
> >
<snip>
>
> -- Iterate across the list and record the transactions which deleted
> them.
>
> -- Iterate across those transactions and list all the player objects
> referenced by the transaction.
>
These two statements lead me to suspect you are storing transactions
as objects. No?
The type of logging I am doing knows nothing about the transaction
itself. It can be used for transaction rollback also.
Here's an example of what I'm thinking (its likely to pose problems *hehe):
Bubba> drink water from canteen.
Lets assume that an event is issued and during the course of its execution
it will modify 2 objects, Bubba and the canteen. Bubba will have his thirst
attribute modified and the canteen will have its weight attribute modified.
Assume the event handles the canteen first then Bubba.
If this is successful it might be logged as follows:
tranid
00001 , start tran
00001 , old canteen , new canteen
00001 , old bubba , new bubba
99999, canteen disk commit
00001 , end tran
99999, bubba disk commit
The 99999 tranids come from the cache manager and may be asynchronous
like I have shown.
Now for rollback lets assume player Jon blows Bubba away before he can
quench his thirst.
tranid
00001 , start tran
00001 , old canteen , new canteen
00002 , old bubba , new bubba <--- bubba dies here
<--- bubba's drink event fails here, cause bubba has changed state
00001 , old bubba , new bubba ---> never logged
99999, canteen disk commit
00001 , end tran ---> never logged
99999, bubba disk commit
Rollback would read the log backwards looking for tranid 00001,
restoring canteen back to its original state and mark all the restored
objects dirty again.
Server bootup/recovery would read the log differently, probably
forward from the last 'syncpoint' making sure that all objects
between 'start trans' and 'end trans' had 'disk commits'.
Does this seem workable? This log could be certainly remain in
memory and be flushed out to disk at syncpoints.
> I can move backwards along the player object-version line, I can
> examine their inventory. Heck, if I also store transaction owner's
> with the transactions (probably a good idea), I could actually
> recreate and watch the whole fight, blow by blow as it happened, along
> with watching Bubba call in his Wiz friend to...). Just roll the DB
> back to that time, and replay. It makes snooping a thing of the past.
The transactions I log above are probably too generic to show what
originated them and why. They are just sequences of otherwise
arbitrary state changes.
>> I
> >use a timestamp field in the RDB, also automatic but it is not part
> >of the "loaded" object. It exists solely in the RDB and is very
> >efficient.
>
> What does the timestamp give you?
Nothing much. I have plans for external utilities which may take
advantage of it. I like to timestamp db records for debugging. Its easy
to select everything that's changed within a given time period.
>
> >Class Versioning happens through SQL DDL. Attributes that are
> >removed are removed from all instanced objects. Attributes that are
> >added are added to all objects as nulls. Methods reside in the
> >class along with class instance attributes. (That ColdC vs "real
> >OOP" thing we discussed earlier ;-) )
>
> If added attributes default to NULL, how do you propagate an attribute
> value to all children/instances? Similarly, how does this work for
> methods?
>
For object instance storage, class = table, an object instance = row.
Class attributes, inheritance and methods are stored in other tables (see above).
Classes may be locked to prevent attribute and/or method changes.
If a class is not locked adding a or deleting a new attribute is done
through 'ALTER|DROP TABLE class ADD COLUMN attribute datatype;'
User datatypes are mostly handled through foreign keys (64-bit integers).
Note this will propagate NULLs throughout the database and not in memory
objects. The translation layer uses dynamic SQL to read tables of unlocked
classes, when a class is locked the translator executes pre-bound SQL.
The memory cache for all instances of the class is then marked for reload
(a dirty/no read flag) .
Children != object instances in my model. A child is a descendent class
and needs no special update. Inheritance is done through foreign keys
on the ClassTable.
> >...Versioning can be expensive
> >if done late in a class's life, but this is part of interactive
> >programming and not a runtime thing.
>
> And the expense is due to the fact that you now have two or more
> versions of the same base class, each with its own collection of
> instances?
No. Two versions will not exist at the same time. If I add an attribute
to class Apple and I have 10000 apples in existence at the time. There
is bound to be some delay in referencing an apple because all apples
are marked to be reloaded from DB. The DB will also churn a bit while
it adds attribute to all the records.
>
> How do you handle the case where you want to propagate a change, say
> an added/change method or attribute, to all current instances? As I
> undersand your current system making the change to the class definesa
> new version of the class and only affects new instances of that class.
> Old instances continue to behave as versions of the old class
> (pre-edit).
Any old instances that are accessed between the update of the DB and the
marking of the objects to be reloaded are handled through dynamic SQL
of the translation layer. And it shouldn't(?) update them. Hrrrm, I must
do some work on this, for it has a potential bite. I could issue a table lock
and mark the objects reloadable and wait for DB completion. :-)
>
>
> This is pretty close to what I'm attempting (tho I had no idea that
> DB2 did it too -- I just thunk it up one night). My idea is to run a
> seperate database, a simple ISAM pretty well, for the transaction log.
> Log entries would be of three types:
>
> Start of cache commit.
> Specification for a given transaction
> ...(may be many of these)...
> End of cache commit
It's what in your specification part that may be worrisome. Is it too
dependent of transaction's "context"?
>
> Odds to dollars your OS is not quite this stupid (I guess we're
> talking Win NT here, so it actually may be pretty likely).
Hey, do I detect an OS bias here? At least I'm not using a
cheap imitation *gurgle* ;-)
> Re-opening the file every IO and then closing it to keep everybody in
> sync is pathetically expensive. The standard solution is to run file
> IO's thru a dup()'ed or dup2()'ed handle.
>
Yep, the trusty mainframe will let you thrash the hell out of it with
re-opens too.
<code snippit snipped>
This might work if close() doesn't attempt to free handles/buffers. I will
have to test it. Thanks for the idea.
JL - Comments on the DB layer clawrenc@cup.hp.com
- InterMOO: a high-power MOO server (fwd) coder@ibm.net
- MUD-DEV traffic report coder@ibm.net
- Random plotlines Ling
- Random plotlines Chris Gray
- Random plotlines Ling
- Random plotlines clawrenc@cup.hp.com
- Random plotlines Jon A. Lambert
- Random plotlines clawrenc@cup.hp.com
- Random plotlines Marian Griffith
- Random plotlines clawrenc@cup.hp.com
- Administrative notes coder@ibm.net
- Administrative notes Miroslav Silovic
- Administrative notes Marian Griffith
- Administrative notes Todd Lair
- Administrative notes Jeff Kesselman
- Administrative notes Adam Wiggins
- Administrative notes Todd Lair
- Administrative notes Jon A. Lambert
- Administrative notes Adam Wiggins
- Administrative notes Nathan Yospe
- Administrative notes Adam Wiggins
- Administrative notes ashen
- Administrative notes Jeff Kesselman
- Administrative notes Jon A. Lambert
- Administrative notes Travis S Casey
- Administrative notes Jeff Kesselman
- Administrative notes Nathan Yospe
- Administrative notes Jon A. Lambert
- Administrative notes Marian Griffith
- Administrative notes Adam Wiggins
- Administrative notes Marian Griffith
- Administrative notes Fraser McCormick
- Administrative notes Adam Wiggins
- Administrative notes Chris Gray
- Administrative notes Marian Griffith
- Administrative notes Chris Gray
- Administrative notes Adam Wiggins
- Administrative notes coder@ibm.net
- Administrative notes Chris Gray
- Administrative notes Adam Wiggins
- Administrative notes Jeff Kesselman
- Administrative notes Miroslav Silovic
- Administrative notes Miroslav Silovic
- Administrative notes Chris Gray
- Administrative notes Miroslav Silovic
- Administrative notes Orion Henry
- Administrative notes Marian Griffith
- Administrative notes Adam Wiggins
- Administrative notes Marian Griffith
- Administrative notes Adam Wiggins
- Administrative notes Marian Griffith
- Administrative notes clawrenc@cup.hp.com
- Administrative notes Miroslav Silovic
- Administrative notes Jamie Norrish
- Administrative notes Todd Lair
- Administrative notes Jon A. Lambert
- Administrative notes clawrenc@cup.hp.com
- Administrative notes Jon A. Lambert
- Administrative notes Miroslav Silovic
- Administrative notes Adam Wiggins
- Administrative notes clawrenc@cup.hp.com
- Administrative notes Marian Griffith
- Administrative notes Jon A. Lambert
- Administrative notes Miroslav Silovic
- Administrative notes Jon A. Lambert
- Administrative notes Miroslav Silovic
- Administrative notes Miroslav Silovic
- Administrative notes clawrenc@cup.hp.com
- Administrative notes clawrenc@cup.hp.com
- Administrative notes Jeff Kesselman
- Administrative notes Jeff Kesselman
- Administrative notes Miroslav Silovic
- Administrative notes Caliban Tiresias Darklock
- Administrative notes Miroslav Silovic
- (fwd) A Mud Protocol (MUD Markup Language) clawrenc@cup.hp.com
- Game easter eggs clawrenc@cup.hp.com
- Client<->mud compression protocol coder@ibm.net
- Client<->mud compression protocol Jeff Kesselman
- Introduction Marian Griffith
- Introduction clawrenc@cup.hp.com
- Introduction Jeff Kesselman
- Introduction Jon A. Lambert
- Introduction clawrenc@cup.hp.com
- generic objects, behaviors Andy Davidoff
- generic objects, behaviors Chris Gray
- generic objects, behaviors Jon A. Lambert
- generic objects, behaviors clawrenc@cup.hp.com
- Introduction Oliver Jowett
- Introduction clawrenc@cup.hp.com
- Introduction Oliver Jowett
- Introduction clawrenc@cup.hp.com
- Introduction Matt Chatterley
- Introduction Oliver Jowett
- generic objects, behaviors Ross Nicoll
- generic objects, behaviors Nathan Yospe
- generic objects, behaviors Jeff Kesselman
- generic objects, behaviors Chris Gray
- generic objects, behaviors Jeff Kesselman
- generic objects, behaviors Chris Gray
- generic objects, behaviors clawrenc@cup.hp.com
- generic objects, behaviors Jeff Kesselman
- several messages Ling
- several messages Jeff Kesselman
- several messages clawrenc@cup.hp.com
- several messages Ling
- Role-playing [was several messages] Matt Chatterley
- Role-playing [was several messages] Adam Wiggins
- Role-playing [was several messages] Matt Chatterley
- Role-playing [was several messages] Adam Wiggins
- Role-playing [was several messages] clawrenc@cup.hp.com
- Role-playing [was several messages] Adam Wiggins
- Role-playing [was several messages] Nathan Yospe
- Role-playing [was several messages] Ling
- Role-playing [was several messages] clawrenc@cup.hp.com
- Role-playing [was several messages] coder@ibm.net
- Role-playing [was several messages] Chris Gray
- Introduction Dan Root
- Introduction Chris Gray
- Introduction Dan Root
- Introduction Chris Gray
- Introduction Ling
- Introduction Dan Root
- Introduction Ling
- Introduction clawrenc@cup.hp.com
- Introduction Chris Gray
- Introduction Dan Root
- Introduction Chris Gray
- Introduction Dan Root
- Introduction Ling
- Introduction Dan Root
- Introduction clawrenc@cup.hp.com
- Introduction clawrenc@cup.hp.com
- Introduction Jeff Kesselman
- Introduction Dan Root
- Introduction clawrenc@cup.hp.com
- Introduction Chris Gray
- Introduction clawrenc@cup.hp.com
- Introduction clawrenc@cup.hp.com
- Introduction Jeff Kesselman
- Introduction Chris Gray
- Introduction clawrenc@cup.hp.com
- Introduction Dan Root
- Introduction Miroslav Silovic
- Introduction Chris Gray
- Introduction Miroslav Silovic
- Introduction clawrenc@cup.hp.com
- Introduction Miroslav Silovic
- Introduction coder@ibm.net
- Introduction Chris Gray
- RP thesis... Jeff Kesselman
- RP thesis... Matt Chatterley
- RP thesis... Adam Wiggins
- RP thesis... Matt Chatterley
- RP thesis... Adam Wiggins
- RP thesis... Matt Chatterley
- RP thesis... Nathan Yospe
- RP thesis... Matt Chatterley
- RP thesis... Adam Wiggins
- RP thesis... Chris Gray
- RP thesis... Matt Chatterley
- RP thesis... Jon A. Lambert
- RP thesis... Marian Griffith
- RP thesis... Adam Wiggins
- RP thesis... clawrenc@cup.hp.com
- RP thesis... Matt Chatterley
- RP thesis... Caliban Tiresias Darklock
- RP thesis... Jon A. Lambert
- RP thesis... Jeff Kesselman
- RP thesis... Jon A. Lambert
- RP thesis... Jeff Kesselman
- RP thesis... coder@ibm.net
- RP thesis... Jeff Kesselman
- RP thesis... clawrenc@cup.hp.com
- RP thesis... clawrenc@cup.hp.com
- RP thesis... Adam Wiggins
- RP thesis... clawrenc@cup.hp.com
- RP thesis... Ling
- RP thesis... clawrenc@cup.hp.com
- RP thesis... Jon A. Lambert
- RP thesis... Marian Griffith
- RP thesis... Adam Wiggins
- RP thesis... Adam Wiggins
- RP thesis... Matt Chatterley
- RP thesis... Adam Wiggins
- RP thesis... Matt Chatterley
- RP thesis... Adam Wiggins
- RP thesis... Nathan Yospe
- RP thesis... clawrenc@cup.hp.com
- RP thesis... Matt Chatterley
- RP thesis... clawrenc@cup.hp.com
- RP thesis... Marian Griffith
- RP thesis... Adam Wiggins
- RP thesis... Marian Griffith
- RP thesis... Nathan Yospe
- RP thesis... Shawn Halpenny
- RP thesis... Adam Wiggins
- RP thesis... Caliban Tiresias Darklock
- RP thesis... Travis S Casey
- RP thesis... Ling
- RP thesis... Chris Gray
- RP thesis... Chris Gray
- RP thesis... Adam Wiggins
- RP thesis... Marian Griffith
- RP thesis... Jeff Kesselman
- RP thesis... coder@ibm.net
- RP thesis... Matt Chatterley
- RP thesis... clawrenc@cup.hp.com
- RP thesis... clawrenc@cup.hp.com
- RP thesis... Jeff Kesselman
- RP thesis... Nathan Yospe
- RP thesis... clawrenc@cup.hp.com
- RP thesis... Ling
- RP thesis... coder@ibm.net
- RP thesis... Jeff Kesselman
- RP thesis... Marian Griffith
- RP thesis... Caliban Tiresias Darklock
- RP thesis... Marian Griffith
- Distribution of Exp [was Administrative notes] Matt Chatterley
- unsibscribe Carter T. Shock
- Late introduction Wout Mertens
- Introduction Ross Nicoll
- Roll-playing Khanone@aol.com
- Disk v. Mem ashen
- Disk v. Mem Dan Root
- Disk v. Mem Cynbe ru Taren
- Disk v. Mem Jeff Kesselman
- Disk v. Mem Chris Gray
- Disk v. Mem Nathan Yospe
- Disk v. Mem Chris Gray
- Disk v. Mem Miroslav Silovic
- Disk v. Mem clawrenc@cup.hp.com
- Abnother RP paradigm Jeff Kesselman
- Mud tree coder@ibm.net
- Introduction (Marian) Marian Griffith
- Introduction (Marian) Jeff Kesselman
- Introduction (Marian) Marian Griffith
- Introduction (Marian) Miroslav Silovic
- Levels (was: Administrative notes) Marian Griffith
- Levels (was: Administrative notes) Miroslav Silovic
- Levels (was: Administrative notes) clawrenc@cup.hp.com
- Levels (was: Administrative notes) Adam Wiggins
- Levels (was: Administrative notes) clawrenc@cup.hp.com
- Levels (was: Administrative notes) Adam Wiggins
- Levels (was: Administrative notes) coder@ibm.net
- Levels (was: Administrative notes) Adam Wiggins
- Levels (was: Administrative notes) Nathan Yospe
- Levels (was: Administrative notes) Adam Wiggins
- Levels (was: Administrative notes) coder@ibm.net
- Levels (was: Administrative notes) Adam Wiggins
- Levels (was: Administrative notes) Marian Griffith
- Levels (was: Administrative notes) Ling
- Levels (was: Administrative notes) clawrenc@cup.hp.com
- Levels (was: Administrative notes) Adam Wiggins
- Levels (was: Administrative notes) coder@ibm.net
- Levels (was: Administrative notes) Adam Wiggins
- Role-playing Marian Griffith
- non combat muds (was: Administrative notes) Marian Griffith
- Role-playing Khanone@aol.com
- Role-playing Shawn Halpenny
- Role-playing Ling
- Role-playing Shawn Halpenny
- Languages Chris Gray
- Languages Miroslav Silovic
- Languages Chris Gray
- Languages coder@ibm.net
- Languages Dan Root
- Languages Miroslav Silovic
- Languages Chris Gray
- Languages Miroslav Silovic
- Languages Chris Gray
- Languages Caliban Tiresias Darklock
- Languages Jeff Kesselman
- Languages clawrenc@cup.hp.com
- Languages Caliban Tiresias Darklock
- Languages Chris Gray
- Languages Ben Greear
- Languages Brandon Gillespie
- Languages Chris Gray
- Languages Miroslav Silovic
- Languages Jon A. Lambert
- Languages clawrenc@cup.hp.com
- Quoting and attributions clawrenc@cup.hp.com
- Levels: An abstraction of character abilities. Jon A. Lambert
- Levels: An abstraction of character abilities. Adam Wiggins
- Administration: Subscription problems clawrenc@cup.hp.com
- Languages Chris Gray
- Skills in RP games Matt Chatterley
- Skills in RP games Adam Wiggins
- Skills Ling
- Skills Adam Wiggins
- OO design patterns coder@ibm.net
- Lathander's Introduction Dustan M. Hough
- Lathander's Introduction coder@ibm.net
- A brief introduction.. ok, Nathan Yospe
- Availability of our stuff Chris Gray
- Verb binding Chris Gray
- Verb binding Adam Wiggins
- Support mud [was Languages] ashen
- Support mud [was Languages] Matt Chatterley
- Support mud [was Languages] Oliver Jowett
- Support mud [was Languages] Matt Chatterley
- A brief introduction.. ok, coder@ibm.net
- Role-playing coder@ibm.net
- The limits of system Jamie Norrish
- The limits of system Matt Chatterley
- The limits of system Jamie Norrish
- The limits of system Chris Gray
- The limits of system Shawn Halpenny
- The limits of system Jamie Norrish
- CORBA Miroslav Silovic
- Player coding and security Jeff Kesselman
- Player coding and security Shawn Halpenny
- Player coding and security Nathan Yospe
- Player coding and security clawrenc@cup.hp.com
- Player coding and security Shawn Halpenny
- Player coding and security Chris Gray
- (fwd) Multi-threaded mudding (was a flamefest) clawrenc@cup.hp.com
- handling ambiguity, and prompts Chris Gray
- handling ambiguity, and prompts clawrenc@cup.hp.com
- handling ambiguity, and prompts Raz
- handling ambiguity, and prompts Chris Gray
- Language Adam Wiggins
- DB lock and MT models clawrenc@cup.hp.com
- Virtual rooms (was: RP thesis...) Shawn Halpenny
- Virtual rooms (was: RP thesis...) clawrenc@cup.hp.com
- Virtual rooms (was: RP thesis...) Shawn Halpenny
- Virtual rooms (was: RP thesis...) clawrenc@cup.hp.com
- Virtual rooms (was: RP thesis...) Shawn Halpenny
- Virtual rooms (was: RP thesis...) clawrenc@cup.hp.com
- Virtual rooms (was: RP thesis...) Shawn Halpenny
- Invite/Introduction.... Jeff Kesselman
- Invite/Introduction.... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Miroslav Silovic
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Caliban Tiresias Darklock
- Alright... IF your gonan do DESIESE... coder@ibm.net
- Alright... IF your gonan do DESIESE... Caliban Tiresias Darklock
- Alright... IF your gonan do DESIESE... coder@ibm.net
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... coder@ibm.net
- Alright... IF your gonan do DESIESE... Shawn Halpenny
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Caliban Tiresias Darklock
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Marian Griffith
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Marian Griffith
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Marian Griffith
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Alex Oren
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Caliban Tiresias Darklock
- Alright... IF your gonan do DESIESE... coder@ibm.net
- Alright... IF your gonan do DESIESE... Marian Griffith
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Marian Griffith
- Alright... IF your gonan do DESIESE... Caliban Tiresias Darklock
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Caliban Tiresias Darklock
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Caliban Tiresias Darklock
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Caliban Tiresias Darklock
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Jon A. Lambert
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Chris Gray
- Alright... IF your gonan do DESIESE... coder@ibm.net
- Alright... IF your gonan do DESIESE... Chris Gray
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Marian Griffith
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Caliban Tiresias Darklock
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Caliban Tiresias Darklock
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Shawn Halpenny
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Shawn Halpenny
- Alright... IF your gonan do DESIESE... Raz
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Shawn Halpenny
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Shawn Halpenny
- Alright... IF your gonan do DESIESE... Nathan Yospe
- Alright... IF your gonan do DESIESE... Miroslav Silovic
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Miroslav Silovic
- Alright... IF your gonan do DESIESE... Caliban Tiresias Darklock
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Nathan Yospe
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Matt Chatterley
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Miroslav Silovic
- Alright... IF your gonan do DESIESE... Ben Greear
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Matt Chatterley
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Raz
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Caliban Tiresias Darklock
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Matt Chatterley
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Marian Griffith
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Jon A. Lambert
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Matt Chatterley
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Matt Chatterley
- Alright... IF your gonan do DESIESE... Nathan Yospe
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Jeff Kesselman
- Alright... IF your gonan do DESIESE... Matt Chatterley
- Alright... IF your gonan do DESIESE... Alex Oren
- Alright... IF your gonan do DESIESE... Adam Wiggins
- Alright... IF your gonan do DESIESE... Shawn Halpenny
- Alright... IF your gonan do DESIESE... Nathan Yospe
- Alright... IF your gonan do DESIESE... Huibai
- Alright... IF your gonan do DESIESE... Alex Oren
- Alright... IF your gonan do DESIESE... Brandon J. Rickman
- Alright... IF your gonan do DESIESE... Matt Chatterley
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Alex Oren
- Alright... IF your gonan do DESIESE... Matt Chatterley
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Marian Griffith
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... clawrenc@cup.hp.com
- Alright... IF your gonan do DESIESE... Alex Oren
- Prepositions and Parsing... S001GMU@nova.wright.edu
- Prepositions and Parsing... Chris Gray
- Prepositions and Parsing... S001GMU@nova.wright.edu
- Prepositions and Parsing... Chris Gray
- Prepositions and Parsing... S001GMU@nova.wright.edu
- Prepositions and Parsing... Chris Gray
- unsubscribe mud-dev Dustan M. Hough
- Multiple characters and nested prompts clawrenc@cup.hp.com
- Nutirtion and a Resource Question Jeff Kesselman
- Nutirtion and a Resource Question coder@ibm.net
- Nutirtion and a Resource Question Nathan Yospe
- Nutirtion and a Resource Question coder@ibm.net
- Nutirtion and a Resource Question Nathan Yospe
- Languages Ling
- Q's Ling
- Q's coder@ibm.net
- Dupes. coder@ibm.net
- Languages coder@ibm.net
- Rooms, 3D arrays, etc. Michael Hohensee
- Rooms, 3D arrays, etc. Nathan Yospe
- Rooms, 3D arrays, etc. coder@ibm.net
- Rooms, 3D arrays, etc. RHS Linux User
- Rooms, 3D arrays, etc. Jeff Kesselman
- Rooms, 3D arrays, etc. Shawn Halpenny
- Rooms, 3D arrays, etc. clawrenc@cup.hp.com
- Rooms, 3D arrays, etc. clawrenc@cup.hp.com
- Rooms, 3D arrays, etc. Michael Hohensee
- Rooms, 3D arrays, etc. Adam Wiggins
- Rooms, 3D arrays, etc. Raz
- Rooms, 3D arrays, etc. Nathan Yospe
- Rooms, 3D arrays, etc. Raz
- Rooms, 3D arrays, etc. Nathan Yospe
- Rooms, 3D arrays, etc. Ling
- Rooms, 3D arrays, etc. Miroslav Silovic
- Rooms, 3D arrays, etc. Chris Gray
- Rooms, 3D arrays, etc. Miroslav Silovic
- Rooms, 3D arrays, etc. Chris Gray
- Rooms, 3D arrays, etc. Miroslav Silovic
- Rooms, 3D arrays, etc. Chris Gray
- Rooms, 3D arrays, etc. clawrenc@cup.hp.com
- Rooms, 3D arrays, etc. Chris Gray
- Rooms, 3D arrays, etc. clawrenc@cup.hp.com
- Rooms, 3D arrays, etc. Miroslav Silovic
- Rooms, 3D arrays, etc. Jon A. Lambert
- Rooms, 3D arrays, etc. Jeff Kesselman
- Rooms, 3D arrays, etc. Chris Gray
- Rooms, 3D arrays, etc. clawrenc@cup.hp.com
- Rooms, 3D arrays, etc. Jeff Kesselman
- Rooms, 3D arrays, etc. Jon A. Lambert
- Rooms, 3D arrays, etc. Chris Gray
- Rooms, 3D arrays, etc. clawrenc@cup.hp.com
- Rooms, 3D arrays, etc. Caliban Tiresias Darklock
- Rooms, 3D arrays, etc. Marian Griffith
- Languages Jeff Kesselman
- Internal Mud Languages Jon A. Lambert
- Internal Mud Languages Jeff Kesselman
- Internal Mud Languages Jon A. Lambert
- Internal Mud Languages Jeff Kesselman
- Internal Mud Languages Chris Gray
- Starting characters (was: Alright...) Jamie Norrish
- Starting characters (was: Alright...) Jamie Norrish
- Starting characters (was: Alright...) Jeff Kesselman
- Starting characters (was: Alright...) Jon A. Lambert
- Spoken Languages & Food [was RP thesis...] Matt Chatterley
- Spoken Languages & Food [was RP thesis...] Adam Wiggins
- Spoken Languages & Food [was RP thesis...] Matt Chatterley
- Spoken Languages & Food [was RP thesis...] Adam Wiggins
- Spoken Languages & Food [was RP thesis...] clawrenc@cup.hp.com
- Spoken Languages & Food [was RP thesis...] Travis S Casey
- Spoken Languages & Food [was RP thesis...] Jeff Kesselman
- Spoken Languages & Food [was RP thesis...] Nathan Yospe
- Spoken Languages & Food [was RP thesis...] clawrenc@cup.hp.com
- Spoken Languages & Food [was RP thesis...] Jon A. Lambert
- Spoken Languages & Food [was RP thesis...] Nathan Yospe
- Spoken Languages & Food [was RP thesis...] Matt Chatterley
- Spoken Languages & Food [was RP thesis...] clawrenc@cup.hp.com
- Spoken Languages & Food [was RP thesis...] Marian Griffith
- Spoken Languages & Food [was RP thesis...] Travis S Casey
- Spoken Languages & Food [was RP thesis...] Matt Chatterley
- Spoken Languages & Food [was RP thesis...] Adam Wiggins
- Spoken Languages & Food [was RP thesis...] Jeff Kesselman
- Pidgin Language & Writing [was RP Thesis] Matt Chatterley
- Resets, repops and quests Alex Oren
- Resets, repops and quests Jeff Kesselman
- Resets, repops and quests Caliban Tiresias Darklock
- Resets, repops and quests Ling
- Resets, repops and quests Chris Gray
- Resets, repops and quests Matt Chatterley
- Resets, repops and quests Todd Lair
- Resets, repops and quests Chris Gray
- Resets, repops and quests Jeff Kesselman
- Resets, repops and quests Raz
- Resets, repops and quests Alex Oren
- Resets, repops and quests Chris Gray
- Resets, repops and quests Raz
- Resets, repops and quests Chris Gray
- Resets, repops and quests Nathan Yospe
- Resets, repops and quests Alex Oren
- Resets, repops and quests Chris Gray
- Resets, repops and quests clawrenc@cup.hp.com
- Resets, repops and quests Shawn Halpenny
- Resets, repops and quests clawrenc@cup.hp.com
- Resets, repops and quests Adam Wiggins
- Resets, repops and quests Chris Gray
- Resets, repops and quests Alex Oren
- Resets, repops and quests clawrenc@cup.hp.com
- Resets, repops and quests Huibai
- Resets, repops and quests clawrenc@cup.hp.com
- Resets, repops and quests clawrenc@cup.hp.com
- Nutirtion and a Resource Question Jeff Kesselman
- Nutirtion and a Resource Question clawrenc@cup.hp.com
- Conventions (was RP thesis) S001GMU@nova.wright.edu
- Conventions (was RP thesis) Jeff Kesselman
- Conventions (was RP thesis) Adam Wiggins
- Levels and Goals [was Alright..IF your gonan do DESIESE] Matt Chatterley
- Levels and Goals [was Alright..IF your gonan do DESIESE] Jeff Kesselman
- Numbers [was RP thesis...] Matt Chatterley
- RP thesis... (Chinese stuff) Ling
- Meta issues [was Alright... IF your gonan do DESIESE...] Matt Chatterley
- Meta issues [was Alright... IF your gonan do DESIESE...] clawrenc@cup.hp.com
- Meta issues [was Alright... IF your gonan do DESIESE...] Matt Chatterley
- Important: Posting requirements coder@ibm.net
- Levels and Goals [was Alright..IF your gonan do Adam Wiggins
- Levels and Goals [was Alright..IF your gonan do Jeff Kesselman
- Levels and Goals [was Alright..IF your gonan do clawrenc@cup.hp.com
- Levels and Goals [was Alright..IF your gonan do Jeff Kesselman
- Levels and Goals [was Alright..IF your gonan do clawrenc@cup.hp.com
- Levels and Goals [was Alright..IF your gonan do Jeff Kesselman
- Levels and Goals [was Alright..IF your gonan do clawrenc@cup.hp.com
- Levels and Goals [was Alright..IF your gonan do Jeff Kesselman
- Goal orienetd NPCs Jeff Kesselman
- Goal orienetd NPCs Nathan Yospe
- lots of stuff, sigh. Chris Gray
- Levels and Goals [was Alright..IF your gonan do Jon A. Lambert
- Probability (was: Alright... IF your gonan do DESIESE...) Shawn Halpenny
- Quests [was Resets, repops and quests] Matt Chatterley
- Quests [was Resets, repops and quests] Shawn Halpenny
- Quests [was Resets, repops and quests] Jeff Kesselman
- Quests [was Resets, repops and quests] Ling
- Quests [was Resets, repops and quests] Matt Chatterley
- Aims [was Alright... IF your gonan do DESIESE...] Matt Chatterley
- Habitat Data clawrenc@cup.hp.com
- Habitat Data clawrenc@cup.hp.com
- Habitat Anecdotes clawrenc@cup.hp.com
- Habitat Anecdotes Chris Gray
- Social Dimensions of Habitat's Citizenry clawrenc@cup.hp.com
- Social Dimensions of Habitat's Citizenry Jeff Kesselman
- The Lessons of Lucasfilm's Habitat clawrenc@cup.hp.com
- The Lessons of Lucasfilm's Habitat Jon A. Lambert
- The Lessons of Lucasfilm's Habitat clawrenc@cup.hp.com
- The Lessons of Lucasfilm's Habitat Jeff Kesselman
- The Lessons of Lucasfilm's Habitat clawrenc@cup.hp.com
- The Lessons of Lucasfilm's Habitat Jeff Kesselman
- The Lessons of Lucasfilm's Habitat clawrenc@cup.hp.com
- The Lessons of Lucasfilm's Habitat Jeff Kesselman
- The Lessons of Lucasfilm's Habitat Ling
- The Lessons of Lucasfilm's Habitat Chris Gray
- The Lessons of Lucasfilm's Habitat clawrenc@cup.hp.com
- The Lessons of Lucasfilm's Habitat coder@ibm.net
- Oracle Layza's Tales from Fujitsu Habitat clawrenc@cup.hp.com
- Powergamers [Was..Alright If] ashen
- Taming free PK ashen
- Taming free PK Marian Griffith
- Taming free PK Adam Wiggins
- Taming free PK Jeff Kesselman
- Taming free PK clawrenc@cup.hp.com
- MUDs - An environment, not a game Adam Wiggins
- MUDs - An environment, not a game Raz
- MUDs - An environment, not a game Adam Wiggins
- DESIGN: The Rules of Magic (fwd) Nathan Yospe