February 2002
- Article: Moral Outrage - Bizarre as it seems, indignation makes the world go round (from New Scientist) Christopher Allen
- premium servers Matt Mihaly
- premium servers Talies the Wanderer
- premium servers Matt Mihaly
- premium servers Christopher Allen
- premium servers Christopher Allen
- Girl appeal (was: Boys and Girls) Marian Griffith
- Girl appeal (was: Boys and Girls) rayzam
- Girl appeal (was: Boys and Girls) John Buehler
- Girl appeal (was: Boys and Girls) Matt Mihaly
- Girl appeal (was: Boys and Girls) Caliban Tiresias Darklock
- Girl appeal (was: Boys and Girls) Matt Mihaly
- Girl appeal (was: Boys and Girls) Caliban Tiresias Darklock
- Girl appeal (was: Boys and Girls) Matt Mihaly
- Girl appeal (was: Boys and Girls) Marian Griffith
- Girl appeal (was: Boys and Girls) John Buehler
- Girl appeal (was: Boys and Girls) Matt Mihaly
- Girl appeal (was: Boys and Girls) Caliban Tiresias Darklock
- Girl appeal (was: Boys and Girls) Sasha Hart
- Girl appeal (was: Boys and Girls) Caliban Tiresias Darklock
- Girl appeal (was: Boys and Girls) Freeman, Jeff
- Girl appeal (was: Boys and Girls) Caliban Tiresias Darklock
- Girl appeal (was: Boys and Girls) Matt Mihaly
- Girl appeal (was: Boys and Girls) Caliban Tiresias Darklock
- Girl appeal (was: Boys and Girls) Matt Mihaly
- Girl appeal (was: Boys and Girls) Madrona Tree
- Girl appeal (was: Boys and Girls) Talies the Wanderer
- Girl appeal (was: Boys and Girls) Marc Hernandez
- Girl appeal (was: Boys and Girls) Caliban Tiresias Darklock
- Girl appeal (was: Boys and Girls) Sasha Hart
- Girl appeal (was: Boys and Girls) Caliban Tiresias Darklock
- Girl appeal (was: Boys and Girls) Sasha Hart
- Girl appeal (was: Boys and Girls) Caliban Tiresias Darklock
- Girl appeal (was: Boys and Girls) Caliban Tiresias Darklock
- Girl appeal (was: Boys and Girls) Rogue_Buddha
- Girl appeal (was: Boys and Girls) Caliban Tiresias Darklock
- Girl appeal (was: Boys and Girls) Matt Mihaly
- Girl appeal (was: Boys and Girls) Christopher Allen
- Girl appeal (was: Boys and Girls) Sasha Hart
- Girl appeal (was: Boys and Girls) Caliban Tiresias Darklock
- NEWS: Release of v0.21 of Murpg Core Mike Povoski
- story vs. screenplay Nicholas E. Walker
- story vs. screenplay Koster, Raph
- story vs. screenplay Sean K
- story vs. screenplay ghovs
- story vs. screenplay Nicholas E. Walker
- story vs. screenplay ghovs
- story vs. screenplay James Edward Gray II
- story vs. screenplay ghovs
- story vs. screenplay Marian Griffith
- story vs. screenplay Nicholas E. Walker
- story vs. screenplay Marian Griffith
- MUD Protocols? Neil Edwards
- MUD Protocols? Matt Owen
- MUD Protocols? Bruce Mitchener
- MUD Protocols? Andrew Wilson
- MUD Protocols? Phillip Lenhardt
- MUD Protocols? Lars Duening
- MUD Protocols? Caliban Tiresias Darklock
- MUD Protocols? Jon Leonard
- MUD Protocols? Chris Gray
- BlackSnow sues Mythic for online property rights Koster, Raph
- BlackSnow sues Mythic for online property rights Geoffrey MacDougall
- BlackSnow sues Mythic for online property rights Matt Mihaly
- BlackSnow sues Mythic for online property rights Rudy Fink
- BlackSnow sues Mythic for online property rights Dave Shepherd
- BlackSnow sues Mythic for online property rights Steve {Bloo} Daniels
- BlackSnow sues Mythic for online property rights Derek Licciardi
- BlackSnow sues Mythic for online property rights Dave Rickey
- BlackSnow sues Mythic for online property rights Richard A. Bartle
- BlackSnow sues Mythic for online property rights Blane Bramble
- BlackSnow sues Mythic for online property rights Sellers, Mike
- BlackSnow sues Mythic for online property rights kuvasza
- BlackSnow sues Mythic for online property rights Matt Mihaly
- BlackSnow sues Mythic for online property rights Frank Crowell
- BlackSnow sues Mythic for online property rights Freeman, Jeff
- BlackSnow sues Mythic for online property rights Ola Fosheim Grøstad
- BlackSnow sues Mythic for online property rights Frank Crowell
- BlackSnow sues Mythic for online property rights Dave Rickey
- BlackSnow sues Mythic for online property rights Dr. Cat
- BlackSnow sues Mythic for online property rights Caliban Tiresias Darklock
- BlackSnow sues Mythic for online property rights Alex Kay
- BlackSnow sues Mythic for online property rights Jeff Cole
- BlackSnow sues Mythic for online property rights John Buehler
- BlackSnow sues Mythic for online property rights Jeff Cole
- BlackSnow sues Mythic for online property rights John Buehler
- BlackSnow sues Mythic for online property rights Dr. Cat
- BlackSnow sues Mythic for online property rights Matt Mihaly
- BlackSnow sues Mythic for online property rights Hans-Henrik Staerfeldt
- BlackSnow sues Mythic for online property rights Vincent Archer
- BlackSnow sues Mythic for online property rights John Buehler
- BlackSnow sues Mythic for online property rights Steve {Bloo} Daniels
- BlackSnow sues Mythic for online property rights Hans-Henrik Staerfeldt
- BlackSnow sues Mythic for online property rights Marc Bowden
- [BIZ] Players - GMs ratio Mathieu Castelli
- [BIZ] Players - GMs ratio Robert A. Rice Jr.
- [BIZ] Players - GMs ratio Mathieu Castelli
- Ethical behavior ... a hijacking. Jeff Cole
- Ethical behavior ... a hijacking. Matt Mihaly
- Ethical behavior ... a hijacking. Koster, Raph
- Ethical behavior ... a hijacking. Matt Mihaly
- Ethical behavior ... a hijacking. Jeff Cole
- Ethical behavior ... a hijacking. John Buehler
- Ethical behavior ... a hijacking. Marc Bowden
- Ethical behavior ... a hijacking. Travis Casey
- Ethical behavior ... a hijacking. Matt Mihaly
- Ethical behavior ... a hijacking. John Buehler
- Ethical behavior ... a hijacking. Jon Lambert
- "Advanced" use of virtual worlds? (MMORPGs & MUDs) Caliban Tiresias Darklock
- "Advanced" use of virtual worlds? (MMORPGs & MUDs) J C Lawrence
- "Advanced" use of virtual worlds? (MMORPGs & MUDs) Matt Mihaly
- "Advanced" use of virtual worlds? (MMORPGs & MUDs) Travis Casey
- "Advanced" use of virtual worlds? (MMORPGs & MUDs) Michael Tresca
- Merc++ the_sage2000@juno.com
- ADMIN: Bullets. conservation of momentum etc J C Lawrence
- EULA Structure Eli Stevens
- EULA Structure Hans-Henrik Staerfeldt
- EULA Structure Matt Mihaly
- EULA Structure Frank Crowell
- EULA Structure Bruce Mitchener
- EULA Structure Hans-Henrik Staerfeldt
- EULA Structure Steve {Bloo} Daniels
- Thank you from MudWorld ucmm@inetsolve.com
- Thank you from MudWorld Matt Mihaly
- Thank you from MudWorld Matt Owen
- Thank you from MudWorld Chris Lloyd
- Re[4]: "Advanced" use of virtual worlds? (MMORPGs & MUDs) Travis Casey
- What's Important in a Driver? Jonathan Ross
- Everquest player survey with interesting points Olof Ekström
- Myth II Game server has gone open source Frank Crowell
- Question about threads. Anderson, David
- Question about threads. J C Lawrence
- Question about threads. Nathan F. Yospe
- Question about threads. Sean K
- Question about threads. Caliban Tiresias Darklock
- Question about threads. Daniel.Harman@barclayscapital.com
- TECH : MUD game on a multi agent system Cyril MudDev
- TECH : MUD game on a multi agent system Marc Bowden
- TECH : MUD game on a multi agent system John Robert Arras
- TECH : MUD game on a multi agent system Robert Zubek
- Using the survey Info to make real factual argument WAS: Everquest player survey with interesting points Sasha Hart
- [BIZ] Selling Sex, Power, and Prestige Dave Kennerly
- [BIZ] Selling Sex, Power, and Prestige Sasha Hart
- Mob (NPC) behavior William Murdick
- Mob (NPC) behavior Freeman, Jeff
- Mob (NPC) behavior Valerio Santinelli
- Mob (NPC) behavior Sean K
- Mob (NPC) behavior Sasha Hart
- Mob (NPC) behavior J C Lawrence
- Mob (NPC) behavior Kevin Reid
- Mob (NPC) behavior Mike Povoski
- Mob (NPC) behavior Sasha Hart
- [TECH] Event Queue System the_sage2000@juno.com
- [TECH] Event Queue System Lars Duening
- [TECH] Event Queue System J C Lawrence
- [TECH] Event Queue System Phillip Lenhardt
On Fri, Feb 15, 2002 at 02:50:38AM -0800, J C Lawrence wrote:
> On Thu, 14 Feb 2002 17:02:32 -0600 the_sage2000@juno.com> wrote:
>> 1) Has anyone implemented an event queue system and can give me
>> advise on doing it?
> Note: This is an abuse of the definition of "event".
> Unfortunately its an abuse I popularised in the early days of this
> list, and it doesn't seem willing to die. It should die.
> What you are calling events above and below are really just
> scheduled processes, very akin to cron jobs, not events.
A common and accepted term for the things you put on a schedule to
be executed is "task".
I have implemented task schedulers in Python several times and I
have partial C and Scheme implementations as well.
>> this event list can have many fields, but, unless I've forgotten
>> a key field, all that is really needed is the event the MUD
>> should execute, at what time, and who's wanting to do the event.
That's the typical minimal task structure that I've seen as well.
But you can get a lot more exotic than that. For one, needing a
"who's wanting to do the event" field is a very object-oriented
approach. In a logic programming language (eg Prolog) you could
have a schedule composed of nothing but constraints to be unified.
In a pure functional language each task could be just a (possibly
curried) function that takes a monad. In a procedural language, you
could have a schedule composed of inputs to a finite state machine.
In a Lispish language each task could be a closure/continuation.
I'm sure there are other possibilities as well.
When it comes to the time field, there are a lot of options there
too. You can store an absolute time (eg "1100:00:00 GMT") or you
could store an offset from some fixed time (eg "300 seconds from
now/startup"). Or you could make execution time implicit by
splitting the list into buckets where each bucket is executed in a
particular timeslice.
And if you stick to an object-oriented "who's wanting to do the
event" structure you could do away with the task name field and have
each object keep an internal task list (eg the schedule always calls
object.do_task() and leaves it to the object to decide what task it
needs to do).
In my work I've also noticed that it is good to keep the schedule as
minimal as possible, since that speeds up inserts/deletes and helps
ensure that parts of it don't get paged out. Also, the smaller the
schedule, the easier it is to write to disk for persistance and the
easier it is to regenerate it if it gets corrupted. The structure
used for the schedule itself also bears some consideration: list?
heap? priority queue? something else?
> Most text MUDs have used one of a few structures:
...
> 5) Maintaining a sorted list of predictively scheduled processes
> that involve objects which are likely to be visible to or affect
> the current player base (in their current positions/activities).
> As the players move about and act in the world nodes are removed
> from the set as they pass out of range/notice and new nodes are
> added as additional active systems come into the range of
> awareness of the players. Items are popped off the list and
> executed as applicable. This effectively surrounds each player
> with a nimbus of "active objects" with the rest of the world
> lieing fallow until they are activated by a player coming into
> range. For items which require the apparency of extensed state
> change operations (eg a lake draining thru a smashed dam), while
> out of player range nothing is done, upon a player coming into
> range the then current state of the lake etc is inferentially
> computed and scheduled processes are inserted from there to
> render the apparency of the lake having been continuously
> animated.
I have heard this talked about, but I've never seen an
implementation. And it seems so complicated I doubt it really works
that well anyway.
> They all share the base problem of attempting to define future
> activities on the basis of current state -- which frequently
> causes problems when current state at the time of execution not
> longer matches the state at the time of prediction.
I find that this is less of a problem when the schedule just keeps
track of object references and when to call object.do_task(). The
schedule doesn't know why the object wanted to be called at time T,
it just knows that a some point in the past the object thought that
it might have work to do at time T. This lets the object modify (or
possibly nullify) a task at any time between when it was scheduled
and when it ripened. (as an aside, locality of reference is also
better, since all the state associated with the task is stored in
the object, which needs to be loaded anyway to do a task, instead of
in the schedule, which doesn't do anything with the task state
besides provide it to the object.) - [TECH] Event Queue System Lars Duening
- [TECH] Event Queue System Blane Bramble
- [TECH] Event Queue System Phillip Lenhardt
- [TECH] Event Queue System John Robert Arras
- [TECH] Event Queue System Kwon Ekstrom
- [TECH] Event Queue System Jon Leonard
- Immersion lawsuit Frank Crowell
- Spouse play (was Using the survey Info to make real Ola Fosheim Grøstad
- Spouse play (was Using the survey Info to make real Lars Duening
- RP definitions J C Lawrence
- roleplaying Matt Mihaly
- Girl's Perspective (was: Boys and Girls) Katy Morris
- Girl's Perspective (was: Boys and Girls) Paul Schwanz
- Girl's Perspective (was: Boys and Girls) Katy Anderson {Morris}
- Girl's Perspective (was: Boys and Girls) Amanda Walker
- Spouse play Sasha Hart
- Student Interview Steve Wilson
- Statistics (was: Girl appeal (was: Boys and Girls)) Sasha Hart
- "Advanced" use of virtual worlds? (MMORPGs & MUDs) Caliban Tiresias Darklock
- I 0Wn Y0o, d00d (Latest 'Biting The Hand' column at Skotos) Christopher Allen
- Online Worlds Timeline Update Koster, Raph
- Online Worlds Timeline Update Richard A. Bartle
- Online Worlds Timeline Update Christopher Allen
- Online Worlds Timeline Update Travis Casey
- Online Worlds Timeline Update Jeff Freeman
- DCMA -- another weapon in the fight against Emulators Frank Crowell
- DCMA -- another weapon in the fight against Emulators Eric Rhea
- DCMA -- another weapon in the fight against Emulators Frank Crowell
- DCMA -- another weapon in the fight against Emulators Caliban Tiresias Darklock
- DCMA -- another weapon in the fight against Emulators bruce@cubik.org
- DCMA -- another weapon in the fight against Emulators Frank Crowell
- DCMA -- another weapon in the fight against Emulators Frank Crowell
- DCMA -- another weapon in the fight against Emulators Frank Crowell
- DCMA -- another weapon in the fight against Emulators Jon Lambert
- DCMA -- another weapon in the fight against Emulators Travis Nixon
- DCMA -- another weapon in the fight against Emulators Frank Crowell
- [TECH] Peer-to-peer downloads for MMO games Olof Ekstrom
- [TECH] Peer-to-peer downloads for MMO games Daniel.Harman@barclayscapital.com
- [TECH] Peer-to-peer downloads for MMO games Oliver Jowett
- [TECH] Peer-to-peer downloads for MMO games Jon Leonard
- character longevity statistics Val Trullinger
- MajorMUD recollections. Online Worlds Timeline Update Patrick Mahle
- MajorMUD and other BBS MUDs (was: Online Worlds Timeline Update) Scott Jennings
- DaoC postmortem at Gamasutra Azeraab
- DaoC postmortem at Gamasutra Buddy Grizzard
- DaoC postmortem at Gamasutra Dave Rickey
- DaoC postmortem at Gamasutra Marc Bowden
- DaoC postmortem at Gamasutra Scott Jennings
- DaoC postmortem at Gamasutra Vincent Archer
- DaoC postmortem at Gamasutra Steve {Bloo} Daniels
- DaoC postmortem at Gamasutra Buddy Grizzard
- Skotos TT& Christopher Allen