September 2003
- [TECH] Server Bottlenecks Jim Purbrick
- [TECH] Server Bottlenecks J C Lawrence
- [TECH] Server Bottlenecks Bruce Mitchener
- [TECH] Server Bottlenecks Jim Purbrick
- [TECH] Server Bottlenecks Bruce Mitchener
- [TECH] Server Bottlenecks J C Lawrence
- [TECH] Server Bottlenecks Roy Riggs
- [TECH] Server Bottlenecks Daniel.Harman@barclayscapital.com
- [TECH] Server Bottlenecks Jim Purbrick
- [TECH] Server Bottlenecks Sean Kelly
- [TECH] Server Bottlenecks Mike Shaver
- [TECH] Server Bottlenecks Eamonn O'Brien
- [TECH] Server Bottlenecks Daniel.Harman@barclayscapital.com
- [TECH] Server Bottlenecks ceo
- [TECH] Server Bottlenecks ceo
- [TECH] Server Bottlenecks Lazarus
- [TECH] Server Bottlenecks Jeff Thompson
- [Tech] Garbage collection Brian Hook
- [Tech] Garbage collection Lars Duening
- [Tech] Garbage collection Bruce Mitchener
- [Tech] Garbage collection Jay Carlson
- TECH: Question about Bartle's new book Christer Enfors
- TECH: Question about Bartle's new book Richard A. Bartle
- Generating Cities John Arras
Content generation has been beaten to death before, and I got
interested in trying to make it work about a year ago. I've finally
gotten something that's been in the back of my mind for a few years
has started to get into a working state:
recursive generation of cities and buildings
In this system, the information about the world is sliced into
strips of meaning by representing objects and spaces of different
scales in such a way that each detail constructs itself, and then
adds more details to itself at smaller scales, until atomic details
are reached.
For example: Suppose that you want a spatula to appear on a cook
inside of a kitchen in a house in a neighborhood in a city.
You generate a city grid in which you place large regions of
rooms.
You create a neighborhood object that will contain houses.
You create a house object that will contain rooms, such as a
kitchen.
You create a kitchen object that will contain people such as a
cook.
You create a spatula object that can be held in a hand.
The spatula is considered atomic.
The neighborhood, house and kitchen represent regions of rooms and
the cook and the spatula are in-game mobjects.
Theoretically, you should be able to put as much detail into these
objects as you want, so as time goes on, you can get better
instantiations of these cities and buildings. It should also mean
that any time you get a good idea for something to put into a city,
you should be able to find the proper "place" for it and add it in
there, so it's available from then on whenever you want that idea to
be a part of a city or building.
The code starts with a 3D array of rooms. Several translated
rectangles are ORed in a single XY plane to form the base shape of
the city, and rooms are created on this "street" level of the city
in any coordinate touched by any rectangle. These rooms are set to
depth 1 to act as the target region for the recursion to follow.
Then, a sequence of other details, generally representing regions
like marketplaces, neighborhoods, religious grounds, arenas, or
towers or citadels are added at depth 2. All details inside of each
of these regions or buildings are added at higher depths until the
atomic objects at the bottom of the recursion tree are created.
The core of the code is a function called:
citygen_add_detail (RESET *reset, THING *area, THING *to,
VALUE *dimensions, int depth);
The reset gives the number of the detail object that will be used to
generate the current detail. It is passed this way, because there
are other randomization procedures that allow the code could choose
any one of several detail objects to use as the foundation for this
detail. For example, if the current object is a "tree" object,
instead of making all trees the same, and just differing in name,
there could be several kinds of trees, such as fruit trees and such,
and one of those types could be picked with the corresponding fruit
being created on of the tree.
The area is the zone where all of the rooms and objects will be
stored. It is checked when new rooms or mobjects are created to
make sure that is has enough space for the new things being created.
The to object is used to determine where this object will "reset"
within the game. It could be a room, such as the location where a
fountain will go, or it could be a magical treasure that gets placed
into a chest.
The dimensions are the min/max x/y/z coordinates within the global
city grid where this detail can be placed. If this is not specified,
there are cases where the object is placed in the "to" object, or
randomly someplace in the area.
The depth is how far we are into the recursion. It is used mainly
for determining how and when rooms can be connected to other
rooms. Generally, at depth N, rooms connect to other rooms at depth
N, and then a few attempts are made at connecting to rooms at depth
N-1, so that there are real divisions between rooms at different
detail levels.
citygen_add_detail has an outer loop that iterates over the number
of times the reset is set to happen. For each try, the reset percent
is checked to see if the reset is added. For example, this makes it
possible to reset 10 bar patrons at 50 percent, to have an average
of 5 bar patrons. Since each bar patron is checked and created
separately, you could generate 5 different bar patrons with one
reset command.
Then, the xyz size of the current object (in room dimensions) is
calculated to see how large the rectangle is that must be fit into
the target region. Mobjects and rooms without dimensions are
considered to be 1x1x1.
The dimensions of the detail can also specify other information
about its placement. If the detail is "stringy", like a road or
hallway, different code is used to determine how it is placed. If
the detail is set to "full" size, then the detail dimensions expand
to the size of the target region (in the x and y directions).
The detail can also be set to appear in the north, south, east, or
west region of its target coordinates. It could also be set to
appear in the "top" or "bottom" of the target area, such as an inn
that has a bar below, and rooms above, or it can be set to be
"above" the target area for things like steeples and towers, or
"below" the target area for things like basements or cellars.
Then, each possible coordinate in the region set out by the
dimensions is checked. Every place where the current detail could be
added "perfectly" with the above constraints is enumerated, and the
places where it could be added "imperfectly" are also
recorded. After all possible locations are chceked, if there are
"perfect placements", one of them is used, otherwise an imperfect
placeemnt is chosen, if possible. If no such place can be chosen,
then the detail fails to be generated.
If the detail is a block of rooms, then its data is generated into a
starting room, and then copied to other rooms in the region to be
taken up by the new detail rooms, as long as those rooms have a
depth equal to the current depth - 1. (So that we only place details
into things that wanted details in them in the first place. -- This
is not *quite* correct, but it's worked pretty well.) Then some
up/down links are added to the rooms contained in the detail.
If the detail is a mobject, then it gets created and set up, and a
reset is added to the "to" parameter for the new object. If no "to"
object is available, then use the randomly picked room from above.
After that, the dimensions of the current detail are recorded, and
citygen_add_detail() is called on the resets of this detail.
Now, if this is a set of rooms, all of the rooms at the current
depth (that didn't get overwritten by finer details) are linked to
each other. There is some code to deal with the case where finer
details split this block of rooms into several components, but it's
imperfect and there's a catchall connectivity algorithm that's
performed at the very end of city generation. After the rooms at
this depth are connected to each other, some connections are made to
rooms at depth - 1. In this way, technically, the finer details
inside of the current block of rooms should have connected to each
other, then connected to the blocks of rooms at the current depth.
And it all works pretty well. I expect it will take quite a bit of
data entry and tweaking to get it working perfectly, but I'm pleased
with it.
If you're interested, the code's at
http://www.sf.net/projects/genmud/
and you use the "citygen" command as an admin inside to play with
this.
Finally, although I haven't done 3D work with this, it seems that
these ideas will translate to 3D worlds with trees of blocks
representing explicit XYZ dimensions and positions of the details.
John - Load Testing a MUD sszretter@hotmail.com
- Load Testing a MUD Ren Reynolds
- Load Testing a MUD Ben Greear
- Load Testing a MUD Daniel.Harman@barclayscapital.com
- Load Testing a MUD Matthew D. Fuller
- Load Testing a MUD Marc Bowden
- Load Testing a MUD Lars Duening
- Load Testing a MUD Marc Bowden
- [DGN] Writing... a mud... erich-herz@uiowa.edu
- [DGN] Writing... a mud... Amanda Walker
- [DGN]: Ludicrous scheme. Yaka St.Aise
- [DGN]: Ludicrous scheme. Matt Mihaly
- [DGN]: Ludicrous scheme. Yaka St.Aise
- [DGN]: Ludicrous scheme. Michael Chui
- [DGN]: Ludicrous scheme. Amanda Walker
- [DGN]: Ludicrous scheme. Matthew Dobervich
- [DGN]: Ludicrous scheme. Justin Randall
- [DGN]: Ludicrous scheme. Yaka St.Aise
- [DGN]: Ludicrous scheme. Chris Duesing
- [DGN]: Ludicrous scheme. Crosbie Fitch
- [DGN]: Ludicrous scheme. Yaka St.Aise
- [DGN]: Ludicrous scheme. John Buehler
- [DGN]: Ludicrous scheme. Ola Fosheim Grøstad
- BIZ: Who owns my sword? Corpheous Andrakin
- BIZ: Who owns my sword? Scott Jennings
- BIZ: Who owns my sword? Matthew Dobervich
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Daniel Anderson
- BIZ: Who owns my sword? Mike Shaver
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Daniel Stahl
- BIZ: Who owns my sword? Ren Reynolds
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Tamzen Cannoy
- BIZ: Who owns my sword? Mike Shaver
- BIZ: Who owns my sword? ceo
- BIZ: Who owns my sword? Nathan Yospe
- BIZ: Who owns my sword? Ren Reynolds
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Linder Support Team
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Marian Griffith
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Michael Chui
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Paul Schwanz
- BIZ: Who owns my sword? J C Lawrence
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Amanda Walker
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Jeff Cole
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Jeff Cole
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Amanda Walker
- BIZ: Who owns my sword? Marian Griffith
- BIZ: Who owns my sword? Jeff Cole
- BIZ: Who owns my sword? Michael Chui
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Marian Griffith
- BIZ: Who owns my sword? Jeff Cole
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Ren Reynolds
- BIZ: Who owns my sword? ceo
- BIZ: Who owns my sword? ceo
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Scott Jennings
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Daniel Anderson
- BIZ: Who owns my sword? Scott Jennings
- BIZ: Who owns my sword? ren@aldermangroup.com
- BIZ: Who owns my sword? Dave Rickey
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Baar - Lord of the Seven Suns
- BIZ: Who owns my sword? Michael Chui
- BIZ: Who owns my sword? Ryan S. Dancey
- BIZ: Who owns my sword? Ren Reynolds
- BIZ: Who owns my sword? Hans-Henrik Staerfeldt
- BIZ: Who owns my sword? John Buehler
- BIZ: Who owns my sword? Ren Reynolds
- BIZ: Who owns my sword? Dave Rickey
- BIZ: Who owns my sword? Ren Reynolds
- BIZ: Who owns my sword? Ren Reynolds
- BIZ: Who owns my sword? Matt Mihaly
- BIZ: Who owns my sword? Ren Reynolds
- BIZ: Who owns my sword? Amanda Walker
- BIZ: Who owns my sword? Ren Reynolds
- BIZ: Who owns my sword? Amanda Walker
- BIZ: Who owns my sword? Ren Reynolds
- BIZ: Who owns my sword? Amanda Walker
- BIZ: Who owns my sword? Marian Griffith
- BIZ: Who owns my sword? Chris Mancil
- BIZ: Who owns my sword? Zach Collins {Siege}
- BIZ: Who owns my sword? Ren Reynolds
- BIZ: Who owns my sword? Crosbie Fitch
- BIZ: Who owns my sword? Ren Reynolds
- BIZ: Who owns my sword? Ren Reynolds
- BIZ: Who owns my sword? Tamzen Cannoy
- Why doesn't Lineage count as the most popular MMOG ever? Daniel Anderson
- Why doesn't Lineage count as the most popular MMOG ever? Koster, Raph
- Why doesn't Lineage count as the most popular MMOG ever? Scott Jennings
- Why doesn't Lineage count as the most popular MMOG ever? Martin Bassie
- Why doesn't Lineage count as the most popular MMOG ever? Chris Holko
- Why doesn't Lineage count as the most popular MMOG ever? burra@alum.rpi.edu
- Why doesn't Lineage count as the most popular MMOG ever? Scott Jennings
- Why doesn't Lineage count as the most popular MMOG ever? Daniel Anderson
- Why doesn't Lineage count as the most popular MMOG ever? Matt Mihaly
- Why doesn't Lineage count as the most popular MMOG ever? Threshold RPG
- Why doesn't Lineage count as the most popular MMOG ever? Jason Smith
- MUD-Dev Digest, Vol 4, Issue 5 Jessica Mulligan
- [Tech] Functional languages Brian Hook
- [Tech] Functional languages ceo
- [Tech] Functional languages Brian Hook
- [Tech] Functional languages Kim
- [Tech] Functional languages J C Lawrence
- [Tech] Functional languages Joshua Judson Rosen
- [Tech] Functional languages sproctor@ccs.neu.edu
- SW:G Matt Mihaly
- Grief teaching? (Was: Why doesn't Lineage count asthe most pop burra@alum.rpi.edu
- Grief teaching? (Was: Why doesn't Lineage count as the most popular MMOG ever?) ghovs
- Grief teaching? (Was: Why doesn't Lineage count as the most popular MMOG ever?) Daniel.Harman@barclayscapital.com
- R: MUD-Dev Digest, Vol 4, Issue 5 Ghilardi Filippo
- Ghostmode (was: SW:G) Lars Duening
- Ghostmode (was: SW:G) Michael Tresca
- Ghostmode (was: SW:G) Marian Griffith
- MUD-Dev Digest, Vol 4, Issue 5 Crosbie Fitch
- BIZ: Who holds your cahonas in their hand? (runs your infrastructure...; ) ceo
- ghost mode (was SW:G) Tess Lowe
- ghost mode (was SW:G) Amanda Walker
- ghost mode (was SW:G) Vladimir Cole
- ghost mode (was SW:G) Erik Bethke
- ghost mode (was SW:G) Daniel.Harman@barclayscapital.com
- ghost mode (was SW:G) Erik Bethke
- ghost mode (was SW:G) Amanda Walker
- ghost mode (was SW:G) Daniel.Harman@barclayscapital.com
- ghost mode (was SW:G) Corpheous Andrakin
- ghost mode (was SW:G) Mike Shaver
- ghost mode (was SW:G) Daniel.Harman@barclayscapital.com
- ghost mode (was SW:G) Daniel.Harman@barclayscapital.com
- ghost mode (was SW:G) Amanda Walker
- ghost mode (was SW:G) Vladimir Cole
- ghost mode (was SW:G) Lars Duening
- ghost mode (was SW:G) Peter Harkins
- ghost mode (was SW:G) Daniel.Harman@barclayscapital.com
- ghost mode (was SW:G) Lars Duening
- ghost mode (was SW:G) Marian Griffith
- ghost mode (was SW:G) Scott Moore
- ghost mode (was SW:G) Justin Coleman
- ghost mode (was SW:G) Amanda Walker
- ghost mode (was SW:G) David Cooksey
- ghost mode (was SW:G) Marian Griffith
- ghost mode (was SW:G) Rayzam
- ghost mode (was SW:G) Amanda Walker
- ghost mode (was SW:G) Rayzam
- ghost mode (was SW:G) Amanda Walker
- ghost mode (was SW:G) Marian Griffith
- ghost mode (was SW:G) Amanda Walker
- ghost mode (was SW:G) Rayzam
- ghost mode (was SW:G) Amanda Walker
- ghost mode (was SW:G) Corpheous Andrakin
- ghost mode (was SW:G) Amanda Walker
- ghost mode (was SW:G) Spot
- ghost mode (was SW:G) Daniel.Harman@barclayscapital.com
- ghost mode (was SW:G) Acius
- ghost mode (was SW:G) Rayzam
- ghost mode (was SW:G) J C Lawrence
- ghost mode (was SW:G) Mike Shaver
- ghost mode (was SW:G) Smith, David {Lynchburg}
- ghost mode (was SW:G) Daniel.Harman@barclayscapital.com
- ghost mode (was SW:G) Eli Stevens
- ghost mode (was SW:G) Rayzam
- ghost mode (was SW:G) John Buehler
- ghost mode (was SW:G) Vladimir Cole
- ghost mode (was SW:G) Amanda Walker
- ghost mode (was SW:G) Mike Shaver
- ghost mode (was SW:G) Amanda Walker
- ghost mode (was SW:G) Daniel.Harman@barclayscapital.com
- [DGN]: Ludicrous speed. Chris Duesing
- [DGN]: Ludicrous speed. Michael Chui
- [DGN]: Ludicrous speed. Yaka St.Aise
- [DGN]: Ludicrous speed. Michael Chui
- [DGN]: Ludicrous speed. Yaka St.Aise
- ghost mode (was SW:G) Xyrrus
- Ghost Mode Pat Ditterline
- Player malleable worlds (was Expected value and standard deviation) Crosbie Fitch
- Player malleable worlds (was Expected value and sta ndard deviation) Daniel.Harman@barclayscapital.com
- Player malleable worlds (was Expected value and standard deviation) John Buehler
- Player malleable worlds (was Expected value and sta ndard deviation) Katie Lukas
- Player malleable worlds (was Expected value and sta ndard deviation) Paul Schwanz
- Player malleable worlds (was Expected value and sta ndard deviation) Amanda Walker
- Player malleable worlds (was Expected value and standard deviation) Crosbie Fitch
- Player malleable worlds (was Expected value and sta ndard deviation) Matt Mihaly
- Player malleable worlds (was Expected value and standard deviation) Kerry Fraser-Robinson
- Player malleable worlds (was Expected value and sta ndard deviation) Daniel.Harman@barclayscapital.com
- Player malleable worlds (was Expected value and standard deviation) Torgny Bjers
- Player malleable worlds (was expected value and standard deviation) Chanur Silvarian
- Player malleable worlds (was expected value and standard deviation) Corpheous Andrakin
- Player malleable worlds (was expected value and sta ndard deviation) Daniel.Harman@barclayscapital.com
- Player malleable worlds (was Expected value and sta ndard deviation) Sean Kelly
- Player malleable worlds (was Expected value andstandard deviation) Richard
- ghost mode Tess Lowe
- ghost mode Daniel.Harman@barclayscapital.com
- ghost mode Mike Shaver
- ghost mode Daniel.Harman@barclayscapital.com
- ghost mode Amanda Walker
- ghost mode Vincent Archer
- ghost mode Tess Lowe
- ghost mode Daniel.Harman@barclayscapital.com
- ghost mode Amanda Walker
- ghost mode Corey Crawford
- ghost mode Amanda Walker
- ghost mode Daniel.Harman@barclayscapital.com
- ghost mode ceo
- ghost mode Rayzam
- ghost mode Daniel.Harman@barclayscapital.com
- ghost mode Rayzam
- ghost mode Tess Lowe
- ghost mode David Cooksey
- ghost mode Daniel.Harman@barclayscapital.com
- ghost mode Tess Lowe
- ghost mode Amanda Walker
- ghost mode Amanda Walker
- ghost mode Daniel.Harman@barclayscapital.com
- ghost mode Amanda Walker
- ghost mode Matt Mihaly
- ghost mode Marian Griffith
- ghost mode Tess Lowe
- ghost mode Richard
- Seamlessly Distributed Online Environments Draymoor {Philip Loguinov}
- Seamlessly Distributed Online Environments Bo Zimmerman
- Seamlessly Distributed Online Environments Frank Crowell
- Seamlessly Distributed Online Environments Crosbie Fitch
- Seamlessly Distributed Online Environments J C Lawrence
- Seamlessly Distributed Online Environments Crosbie Fitch
- Seamlessly Distributed Online Environments J C Lawrence
- Seamlessly Distributed Online Environments Crosbie Fitch
- Seamlessly Distributed Online Environments J C Lawrence
- Seamlessly Distributed Online Environments J C Lawrence
- Seamlessly Distributed Online Environments Paolo Piselli
- Seamlessly Distributed Online Environments Crosbie Fitch
- Seamlessly Distributed Online Environments J C Lawrence
- Seamlessly Distributed Online Environments Crosbie Fitch
- Seamlessly Distributed Online Environments ceo
- Seamlessly Distributed Online Environments Crosbie Fitch
- Seamlessly Distributed Online Environments Pat Ditterline
- Seamlessly Distributed Online Environments Brent P. Newhall
- Seamlessly Distributed Online Environments Hans-Henrik Staerfeldt
- Seamlessly Distributed Online Environments Roy Riggs
- Seamlessly Distributed Online Environments Sean Kelly
- Rewarding Beta Testers (There's Pricing Deal) Vladimir Cole
- Rewarding Beta Testers (There's Pricing Deal) Amanda Walker
- Rewarding Beta Testers (There's Pricing Deal) Derek Licciardi
- Rewarding Beta Testers (There's Pricing Deal) Amanda Walker
- Rewarding Beta Testers (There's Pricing Deal) Samurai Cat @ Catacombs
- Rewarding Beta Testers (There's Pricing Deal) David Loving
- Rewarding Beta Testers (There's Pricing Deal) Samurai Cat! @ Catacombs
- Rewarding Beta Testers (There's Pricing Deal) Daniel.Harman@barclayscapital.com
- Rewarding Beta Testers (There's Pricing Deal) Walton, Gordon
- Rewarding Beta Testers (There's Pricing Deal) David Kennerly
- Rewarding Beta Testers (There's Pricing Deal) Daniel.Harman@barclayscapital.com
- variable difficulty levels (was: ghost mode) Corey Crawford
- variable difficulty levels (was: ghost mode) David Snyder
- variable difficulty levels (was: ghost mode) Daniel.Harman@barclayscapital.com
- variable difficulty levels (was: ghost mode) Michael Tresca
- ghost mode Amanda Walker
- Player malleable worlds (was Expected value andstandard deviation) Ren Reynolds
- R: BIZ: Who owns my sword? Ghilardi Filippo
- DGN: Why give the players all the numbers? Chanur Silvarian
- DGN: Why give the players all the numbers? Joshua Uyehara
- DGN: Why give the players all the numbers? Lars Duening
- DGN: Why give the players all the numbers? Rayzam
- DGN: Why give the players all the numbers? Brian Hook
- DGN: Why give the players all the numbers? J C Lawrence
- DGN: Why give the players all the numbers? Matt Mihaly
- DGN: Why give the players all the numbers? Zach Collins {Siege}
- DGN: Why give the players all the numbers? Matt Mihaly
- DGN: Why give the players all the numbers? Daniel.Harman@barclayscapital.com
- DGN: Why give the players all the numbers? Matt Mihaly
- DGN: Why give the players all the numbers? Sheela Caur'Lir
- DGN: Why give the players all the numbers? Lee Sheldon
- DGN: Why give the players all the numbers? David Cooksey
- DGN: Why give the players all the numbers? Lee Sheldon
- DGN: Why give the players all the numbers? Daniel.Harman@barclayscapital.com
- DGN: Why give the players all the numbers? Rayzam
- DGN: Why give the players all the numbers? Kwon J. Ekstrom
- DGN: Why give the players all the numbers? Ben Chambers
- DGN: Why give the players all the numbers? Russ Whiteman
- DGN: Why give the players all the numbers? Ben Chambers
- DGN: Why give the players all the numbers? Russ Whiteman
- DGN: Why give the players all the numbers? Daniel.Harman@barclayscapital.com
- DGN: Why give the players all the numbers? Amanda Walker
- DGN: Why give the players all the numbers? Derek Licciardi
- DGN: Why give the players all the numbers? Chanur Silvarian
- DGN: Why give the players all the numbers? Mike Shaver
- DGN: Why give the players all the numbers? Sheela Caur'Lir
- DGN: Why give the players all the numbers? Amanda Walker
- DGN: Why give the players all the numbers? Chanur Silvarian
- ghost mode (was SW:G) Crosbie Fitch
- ghost mode (was SW:G) Michael Tresca
- play styles and difficulty settings ceo
- BIZ: Markee Dragon katie@stickydata.com
- BIZ: Markee Dragon Mike Shaver
- BIZ: Markee Dragon Frank Crowell
- BIZ: Markee Dragon Frank Crowell
- BIZ: Markee Dragon Derek Licciardi
- Meta-games (not META list ;)) ceo
- Meta-games (not META list ;)) Crosbie Fitch
- Meta-games (not META list ;)) ceo
- Meta-games (not META list ;)) Mark Cheverton
- Meta-games (not META list ;)) Michael Sellers
- Meta-games (not META list ;)) ceo@grexengine.com
- Meta-games (not META list ;)) ceo
- [DGN]: Ludicrous speed. Yaka St.Aise
- variable difficulty levels Matt Mihaly
- ghost mode (was SW:G) Amanda Walker
- ghost mode (was SW:G) Freeman, Jeff
- Terra Nova, virtual world blog Castronova, Edward
- R: Rewarding Beta Testers (There's Pricing Deal) Ghilardi Filippo
- ghost mode Amanda Walker
- [list] DGN: Why give the players all the numbers? Scion Altera
- [list] DGN: Why give the players all thenumbers? Rayzam
- [list] DGN: Why give the players all the numbers? Marian Griffith
- [list] DGN: Why give the players all thenumbers? John Buehler
- ghost mode ceo
- Class hierarchies for objects Brian Hook
- Class hierarchies for objects Bo Zimmerman
- A Theory of Fun Paul Schwanz
- The State of Play: On the Second Life Tax Revolt J C Lawrence
- The State of Play: On the Second Life Tax Revolt F. Randall Farmer
- Hidden Character Attribs Spot
- Hidden Character Attribs Owen Matt
- Hidden Character Attribs Sheela Caur'Lir
- Hidden Character Attribs J C Lawrence
- size Matt Mihaly
- size Daniel.Harman@barclayscapital.com
- size Amanda Walker
- size Matt Mihaly
- size Sheela Caur'Lir
- size Sheela Caur'Lir
- A world without charity Eamonn O'Brien
- A world without charity Corpheous Andrakin
- A world without charity Eamonn O'Brien
- A world without charity Marian Griffith
- A world without charity Matt Mihaly
- A world without charity Mike
- A world without charity Eamonn O'Brien
- A world without charity Castronova, Edward
- A world without charity Erik Bethke
- A world without charity gbtmud
- A world without charity Dave Rickey
- A world without charity ceo@grexengine.com
- A world without charity Samurai Cat @ Catacombs
- A world without charity Crosbie Fitch
- A world without charity Ola Fosheim Grøstad
- A world without charity Jeff Crane
- A world without charity eric
- A world without charity David Cooksey
- A world without charity Eli Stevens
- A world without charity Michael Tresca
- A world without charity Ola Fosheim Grøstad
- A world without charity (was Discussion of MUD system design, development, and implementation) Chanur Silvarian
- In Norrath, Tattoine and Rubi-ka, Just What Are Your Legal Rights? Vladimir Cole
- C# as MUD Language, Linux as platform =?koi8-r?Q?=22?=Andrew Batyuck=?koi8-r?Q?=22=20?=< javaman@mail.ru>
- MUD-Dev Digest, Vol 4, Issue 30 Chanur Silvarian
- The Automated Online Role-Player Michael Tresca