May 1998
- OT: CGDC Adam Wiggins
- OT: CGDC Mike Sellers
- There can be.. only ONE! (fwd) Ling
- There can be.. only ONE! (fwd) Matt Chatterley
- Some thoughts on languages and users - was: Ma Jon A. Lambert
- Some thoughts on languages and users - was: Ma Chris Gray
- Some thoughts on languages and users - was: Ma Adam Wiggins
- Some thoughts on languages and users - was: Ma J C Lawrence
- (fwd) AD: [custom graphical] whitestar Crossfi Jon A. Lambert
- LIST: The "MUD-DEV" MUD Development mailing list J C Lawrence
- Wired, UO, Mike Sellers
- Wired, UO, John Bertoglio
- Wired, UO, and Internet Gaming (was OT: Dr. Cat
- Wired, UO, and Internet Gaming (was OT: Koster, Raph
- Wired, UO, and Internet Gaming (was OT: J C Lawrence
- Wired, UO, and Internet Gaming (was OT: John Bertoglio
- OT: Supporting articles found for UOL play style Jon A. Lambert
- PK's: A solution? J C Lawrence
- Preview of Asheron's Call J C Lawrence
- Asheron's Call Interview with Toby Ragaini, Lead Designer, and Jon Grande, Product Planner. J C Lawrence
- Character maintinence - expenditure of resources Adam Wiggins
- Character maintinence - expenditure of resources Dan Shiovitz
- Character maintinence - expenditure of resources Adam Wiggins
- Character maintinence - expenditure of resources J C Lawrence
- Character maintinence - expenditure of resources Koster, Raph
- Character maintinence - expenditure of resources J C Lawrence
- Character maintinence - expenditure of resources John Bertoglio
- Character maintinence - expenditure of resources J C Lawrence
- Motivations for Creating Mud-Like Worllds and Servers | John Bertoglio
- FW: (Fwd) Bouncing mail J C Lawrence
- FW: (Fwd) Bouncing mail John Bertoglio
- FW: (Fwd) Bouncing mail Matt Chatterley
- FW: (Fwd) Bouncing mail s001gmu@nova.wright.edu
- FW: (Fwd) Bouncing mail J C Lawrence
- FW: (Fwd) Bouncing mail s001gmu@nova.wright.edu
- FW: (Fwd) Bouncing mail J C Lawrence
- Character development [was ] Koster, Raph
- Motivations for Creating Mud-Like Worlds and Servers Holly Sommer
- META -- membership Jay Sax
- META -- membership Koster, Raph
- META -- membership J C Lawrence
- Motivations (was something else...) s001gmu@nova.wright.edu
- Motivations (was something else...) Richard Woolcock
- client UI written in server's language (was Some thoughts...) Erik Ostrom
- Some thoughts on languages and users - was: Ma J C Lawrence
- Some thoughts on languages and users - was: Ma Travis S. Casey
- Some thoughts on languages and users - was: Ma J C Lawrence
- META: Character of the list's membership J C Lawrence
- quickie CGDC report Mike Sellers
- quickie CGDC report Adam Wiggins
- Some essays I've written lately Koster, Raph
- Some essays I've written lately Koster, Raph
- Some essays I've written lately Koster, Raph
- Some essays I've written lately Koster, Raph
- Some essays I've written lately Koster, Raph
- Some essays I've written lately J C Lawrence
- Some essays I've written lately Koster, Raph
- Some essays I've written lately J C Lawrence
- Some essays I've written lately J C Lawrence
- Frandel 3D (fwd) Holly Sommer
- MURKLE: Wot it is J C Lawrence
- MURKLE: Wot it is J C Lawrence
- MURKLE: Wot it is Raph Koster
- MURKLE: Wot it is J C Lawrence
- MURKLE: Wot it is Koster, Raph
- MURKLE: Wot it is Dr. Cat
- MURKLE: Wot it is J C Lawrence
- MURKLE: Wot it is Shawn Halpenny
- MURKLE: Wot it is Mike Sellers
- MURKLE: Wot it is Nathan F Yospe
- MURKLE: Wot it is J C Lawrence
- MURKLE: Wot it is Chris Gray
- MURKLE: Wot it is J C Lawrence
- MURKLE: Wot it is Chris Gray
- MURKLE: Wot it is J C Lawrence
- MURKLE: Wot it is Ling
- MURKLE: Wot it is Oliver Jowett
- MURKLE: Wot it is J C Lawrence
- MURKLE: Wot it is Ling
- MURKLE: Wot it is J C Lawrence
- MURKLE: Wot it is Ling
- MURKLE: Wot it is J C Lawrence
- MURKLE: Wot it is jacob langthorn
- MURKLE: Wot it is Jon A. Lambert
- MURKLE: Wot it is J C Lawrence
- We're Tiny, we're Toonie, we're all a little Loonie! Ling
- META: Search features of the MUD-Dev archive J C Lawrence
- CGDC, a summary Adam Wiggins
- CGDC, a summary Koster, Raph
- CGDC, a summary Holly Sommer
- CGDC, a summary Caliban Tiresias Darklock
- CGDC, a summary J C Lawrence
- CGDC, a summary Chris Gray
- CGDC, a summary J C Lawrence
- CGDC, a summary Marian Griffith
- CGDC, a summary J C Lawrence
- CGDC, a summary Koster, Raph
- CGDC, a summary J C Lawrence
- CGDC, a summary J C Lawrence
- CGDC, a summary Mike Sellers
- CGDC, a summary J C Lawrence
- CGDC, a summary Chris Gray
- CGDC, a summary Travis S. Casey
- CGDC, a summary Koster, Raph
- CGDC, a summary Adam Wiggins
- CGDC, a summary Koster, Raph
- CGDC, a summary Chris Gray
- CGDC, a summary Koster, Raph
- CGDC, a summary John Bertoglio
- CGDC, a summary s001gmu@nova.wright.edu
- CGDC, a summary John Bertoglio
- CGDC, a summary Koster, Raph
- CGDC, a summary s001gmu@nova.wright.edu
- CGDC, a summary J C Lawrence
- CGDC, a summary John Bertoglio
- CGDC, a summary Koster, Raph
- CGDC, a summary Joel Kelso
- CGDC, a summary J C Lawrence
- CGDC, a summary Marian Griffith
- CGDC, a summary J C Lawrence
- CGDC, a summary Marian Griffith
- CGDC, a summary Jon A. Lambert
- CGDC, a summary J C Lawrence
- CGDC, a summary J C Lawrence
- CGDC, a summary J C Lawrence
- CGDC, a summary Adam Wiggins
- CGDC, a summary Jon A. Lambert
- CGDC, a summary Orion Henry
- MUD mentation system Matthew R. Sheahan
- How to handle log-outs in a totally dynamic world. Ben Greear
- How to handle log-outs in a totally dynamic world. John Bertoglio
- How to handle log-outs in a totally dynamic world. Ben Greear
- How to handle log-outs in a totally dynamic world. Dan Shiovitz
- How to handle log-outs in a totally dynamic world. Ben Greear
- How to handle log-outs in a totally dynamic world. Adam Wiggins
- How to handle log-outs in a totally dynamic world. Vadim Tkachenko
- How to handle log-outs in a totally dynamic world. Richard Woolcock
- How to handle log-outs in a totally dynamic world. Ben Greear
- How to handle log-outs in a totally dynamic world. Dan Shiovitz
- How to handle log-outs in a totally dynamic world. J C Lawrence
- On tanks... J C Lawrence
- On tanks... Ling
- More on LetsSystems J C Lawrence
- Attributes: Sanity Holly Sommer
- Attributes: Sanity Travis S. Casey
- Attributes: Sanity Holly Sommer
- Attributes: Sanity Holly Sommer
- Attributes: Sanity Adam Wiggins
- Attributes: Sanity Travis S. Casey
- Attributes: Sanity Holly Sommer
- Attributes: Sanity Holly Sommer
- mudschools Marian Griffith
- mudschools Matt Chatterley
- Mudschool Ling
- Using HTML for a Mud character generator John Bertoglio
- Using HTML for a Mud character generator s001gmu@nova.wright.edu
- Using HTML for a Mud character generator John Bertoglio
- Using HTML for a Mud character generator Holly Sommer
- Using HTML for a Mud character generator John Bertoglio
- Using HTML for a Mud character generator s001gmu@nova.wright.edu
- Using HTML for a Mud character generator Vadim Tkachenko
- Using HTML for a Mud character generator John Bertoglio
- Using HTML for a Mud character generator J C Lawrence
- Using HTML for a Mud character generator Vadim Tkachenko
- Using HTML for a Mud character generator John Bertoglio
- Using HTML for a Mud character generator Robert Woods
- Leaving characters in play Joel Kelso
- Leaving characters in play Ben Greear
- Leaving characters in play John Bertoglio
- Leaving characters in play Adam Wiggins
- Leaving characters in play J C Lawrence
- Leaving characters in play John Bertoglio
- Leaving characters in play Travis S. Casey
- Leaving characters in play Adam Wiggins
- Leaving characters in play John Bertoglio
- Leaving characters in play J C Lawrence
- Leaving characters in play J C Lawrence
- Leaving characters in play Travis S. Casey
- Leaving characters in play J C Lawrence
- Leaving characters in play D. B. Brown
- Leaving characters in play Travis S. Casey
- Leaving characters in play Adam Wiggins
- Leaving characters in play Jon A. Lambert
- Leaving characters in play s001gmu@nova.wright.edu
- Leaving characters in play Ben Greear
- Request "unsubscribe calvin@orinconhi.com mud-dev" Petidomo Mailing List Server
- Natural Language Processing (NLP) Shawn Halpenny
- Is There a There in Cyberspace? J C Lawrence
- Is There a There in Cyberspace? Jon A. Lambert
- Is There a There in Cyberspace? J C Lawrence
- [OT] Web Pages Jon A. Lambert
- AR Mining System John Bertoglio
- AR Mining System Oliver Jowett
- AR Mining System John Bertoglio
- mudschools Mike Sellers
- Using HTML for a Mud character generator Travis S. Casey
- Character creation, was: Mudschool Richard Woolcock
- Character creation, was: Mudschool Jon A. Lambert
- Onchat -- Java based chat room. J C Lawrence
- A short introduction of a (quite) long-time lurker Per Vognsen
- [MUD-Dev]World Size and The "Hot House" Factor Was PK and my "Mobless MUD" idea John Bertoglio
- mudschools jacob langthorn
- world concept jacob langthorn
- world concept Jo Dillon
- world concept J C Lawrence
- world concept Holly Sommer
- world concept jacob langthorn
- OT: Java multithreading performance Vadim Tkachenko
- OT: Java multithreading performance Ben Greear
- OT: Java multithreading performance Vadim Tkachenko
- OT: Java multithreading performance Chris Gray
- OT: Java multithreading performance Vadim Tkachenko
- OT: Java multithreading performance Chris Gray
- OT: Java multithreading performance Vadim Tkachenko
- OT: Java multithreading performance Chris Gray
- OT: Java multithreading performance Ben Greear
- OT: Java multithreading performance Jon A. Lambert
- OT: Java multithreading performance Chris Gray
- OT: Java multithreading performance Vadim Tkachenko
- OT: Java multithreading performance J C Lawrence
- META: Lost messages J C Lawrence
- Titanic's demise (was MURKLE: Wot it is) Mike Sellers
- Titanic's demise (was MURKLE: Wot it is) Koster, Raph
- mudschools jacob langthorn
- mudschools Marian Griffith
- mudschools Mike Sellers
- mudschools Marian Griffith
- mudschools Robert Woods
- mudschools Mike Sellers
- mudschools Robert Woods
- mudschools Robert Woods
- mudschools Caliban Tiresias Darklock
- MUD Schools Adam Casbarian
- MUD Schools Chris Lloyd
- MUD Schools Jon Lambert
- Combat Was Leaving characters in play Orion Henry
- Combat Was Leaving characters in play Oliver Jowett
- Combat Was Leaving characters in play Orion Henry
- Combat Was Leaving characters in play Oliver Jowett
- Combat Was Leaving characters in play D. B. Brown
- Combat Was Leaving characters in play Orion Henry
- Combat Was Leaving characters in play Adam Wiggins
- Combat Was Leaving characters in play J C Lawrence
- Combat Was Leaving characters in play Orion Henry
- Combat Was Leaving characters in play Adam Wiggins
On Mon, 18 May 1998, Oliver Jowett wrote:
> On Mon, 18 May 1998, Orion Henry wrote:
> > -- Actions all have a priority that the queue is sorted by. The priority
> > levels we had decided on were (from lowest to highest) menial, information
> > gathing, life-or-death, reactionary, and involentary.
>
> I have a feeling I've seen discussion of this before on the list, but
> anyway..
Yes, I wrote many a message on this topic. Mainly when we had just
finished implementing it (about a year and a half ago now, I think) and
were very busy patting ourselves on the back. :) Seriously, it's a very
cool system that has stood the test of time very well. We've yet to come
across any actions which we couldn't do elegantly in this system. And the
source file for *all* the handler code is something like 250 lines, so
it's not like it's difficult to implement.
> How long do actions last in the queue? How are they affected by changes in
> the environment?
This is probably the least fleshed out part so far. Actions get kicked
out based on simple length of the queue. At a certain point low priority
actions start getting dropped off the far end if they've been "put off"
for too long. As Orion has illustrated with his examples (I'll try not to
repeat him too much), that means that if you are momentarily interrupted,
you return to what you were doing, but if you do something important for a
long time your 'forget' about the piddling stuff you were doing before.
Thus:
% hide
You hide in the shadows.
% [...]
Bubba arrives from the south.
Bubba looks around furtively.
Bubba sets down a bag of treasure.
Bubba picks up a shovel.
Bubba begins digging a hole.
% palm bag
You furtively nab the bag.
You return to hiding.
% [...]
Bubba finishes digging the hole.
Bubba frowns.
Bubba says, 'hum, must have left it in the other room'
Bubba leaves north.
But:
% hide
You hide in the shadows.
% [..]
A dragon appears from the north.
The dragon massacres you with his bite.
%
[long fight]
The dragon is dead!
%
Note no 'you return to hiding' at the end.
> > get sword
> > open chest
> You pick up the sword.
> Bubba charges in and swings his sword at you!
> > parry
> You parry Bubba's wild blow.
>
> [.. combat ..]
>
> Bubba casts the dreaded "make all chests electrified" spell.
> > skewer bubba
> You skewer Bubba with your sword. He collapses to the ground.
> You open the chest. ZAP! You are dead!
> > say damn!
Although I realize this isn't a very good answer, we actually get around
this by not doing things like the above. :) Seriously, we've designed
character actions as things that take time and perparation, in hopes to
reduce the action-game feel to the gameplay. Our magic system doesn't
have any spells, instead it involves a pretty complicated process of
channeling elemental forces from some source, focusing them in your body,
and then streaming them into a target. There are *no* commands that
happen instantly when you type them. Thus you always have warning. I
might add that magic (which is *very* hard to come by, and does not have
any 'spells' persay) takes a long time to execute, and gives several
pretty nasty-looking messages warning you what's going on. If you're
still around when the spell is released, you get what you deserve.
Which brings up an important point: the system doesn't work unless *all*
actions which physically affect the world are implemented as tasks.
Otherwise you get the affects I mentioned in that thread about Jon's
turn-based combat where you can abuse the asyncronous freebie commands in
order to get advantages. (Note: status commands like "config" or "score"
are flagged as being system-level commands and do happen the moment you
type them. But those are the only ones.)
> Perhaps parse commands when received, to the point where you know what it
> refers to (ie. resolve context at the point the command is entered, not
> when the action un-queues). Then, if there is a visible state change in
Yes, that's what happens. In some cases, if the action is a long one, it
gives a "you begin.." message, which ends up chaining a series of tasks.
One of the first major uses I made of the task system was to implent
lockpicking in a slightly more interesting way than "You pick the lock."
Since I'm at work I can't pull up a direct log at the moment, and I'm too
lazy to try to remember all the messages, but I'll try to give the gist of
it:
% pick lock with lockpicks
You begin attempting to pick the lock on the door with your lockpicks.
You slip one lockpick into the lower part of the keyhole.
You slip the second lockpick into the upper part of the keyhole.
% say okay just give me a sec
You say, 'Okay, just give me a sec'
You continue lockpicking.
You probe gently with the lower pick, searching for the tooth-guard.
[...]
You press gently inwards with the top pick.
A soft click cues the completion of your work.
% smile
> what a queued action refers to, and the action has been queued for >N
> seconds, cancel it / require confirmation from the player.
Nods...actually, this is all rather tranparent to the player, so we've
tried to limit the amount of manipulation they do to the queue. In fact,
they shouldn't even really be aware that they have a queue at all.
There is the 'stop' command, but tasks generally transpire so quickly (it
is rare that a task should have an execution time of more than two
seconds) that it's not really all that useful.
We *do* do simple validation of object targets, of course, but that's just
simple stuff like:
You raise your weapon to swing at Bubba.
Bubba flees north.
Your weapon cuts through empty air.
or:
% open door
You are suddenly teleported away.
You stop attempting to open the door, confused.
%
or, more likely:
% tickle bubba
A huge fireball arrives from the north and incinerates Bubba, leaving a
small pile of black goo on the ground.
You decide not to tickle Bubba, after all.
%
> Or the system could drop lower-priority actions if something "important"
> happens? eg. >X higher-priority actions queued since the low-priority
> action was.
Right. Little things tend to get 'lost' in times of stress. If it's
something that you really care about you can always use the '!' override
to increase the priority of a small action.
> This could be desirable and/or irritating for other reasons:
>
> Ouch! You have an itchy ear! You scratch it.
> > open chest
> Ooh, that ear really is sore. You scratch it some more.
> > look in mirror
> Scratch, scratch.
> Yup, looks like you've got a nasty rash on your ear.
> Scratch, scratch.
> You forget about opening the chest for now. That ear sure is itchy!
> > grumble
Hehe, sure.
Adam
--
MUD-Dev: Advancing an unrealised future.
- Combat Was Leaving characters in play Travis S. Casey
- Combat Was Leaving characters in play Adam Wiggins
- Combat Was Leaving characters in play Travis S. Casey
- Combat Was Leaving characters in play Adam Wiggins
- Bad Game Designer, No Twinkie! -- By Ernest Adams J C Lawrence
- Bad Game Designer, No Twinkie! -- By Ernest Adams T. Alexander Popiel
- Bad Game Designer, No Twinkie! -- By Ernest Adams J C Lawrence
- Bad Game Designer, No Twinkie! -- By Ernest Adams John Bertoglio
- Bad Game Designer, No Twinkie! -- By Ernest Adams Caliban Tiresias Darklock
- Bad Game Designer, No Twinkie! -- By Ernest Adams John Bertoglio
- Bad Game Designer, No Twinkie! -- By Ernest Ada ms Koster, Raph
- Bad Game Designer, No Twinkie! -- By Ernest Adams Caliban Tiresias Darklock
- Bad Game Designer, No Twinkie! -- By ErnestAdam s Koster, Raph
- Bad Game Designer, No Twinkie! -- By Ernest Ada ms J C Lawrence
- Bad Game Designer, No Twinkie! -- By Ernest Adams J C Lawrence
- Bad Game Designer, No Twinkie! -- By Ernest Adams John Bertoglio
- Java multithreading test source Vadim Tkachenko
- Java multithreading test source J C Lawrence
- Java multithreading test source Vadim Tkachenko
- Java multithreading test source Ben Greear
- Java multithreading test source Vadim Tkachenko
- Java multithreading test source Chris Gray
- Mud Tales John Bertoglio
- Nested coorindate space model J C Lawrence
- Nested coorindate space model Ling
- Nested coorindate space model J C Lawrence
- Nested coorindate space model Ling
- Nested coorindate space model Michael Hohensee
- Nested coorindate space model J C Lawrence
- Nested coorindate space model Michael Hohensee
- Nested coorindate space model Jason Goodwin
- Nested coorindate space model J C Lawrence
- Nested coorindate space model Michael Hohensee
- Nested coorindate space model J C Lawrence
- Nested coorindate space model Benjamin D. Wiechel
- Nested coorindate space model J C Lawrence
- Nested coorindate space model Michael Hohensee
- Now For Something Completely Different: PK with style John Bertoglio
- Sex in Games -- ya gotta, um, yeah J C Lawrence
- Combat in the Abandoned Realms John Bertoglio
- A Metaphysics System s001gmu@nova.wright.edu
- META: New list features J C Lawrence
- OT: Java multithreading test source Jon A. Lambert
- OT: Java multithreading test source Mike Sellers
- OT: Java multithreading test source Ben Greear
- OT: Java multithreading test source Jon A. Lambert
- OT: Java multithreading test source Jon A. Lambert
- OT: Java multithreading test source Jon A. Lambert
- OT: Java multithreading test source Jon A. Lambert
- OT: Java multithreading test source Ben Greear
- OT: Java multithreading test source John Bertoglio
- OT: Java multithreading test source Vadim Tkachenko
- OT: Java multithreading test source Jon A. Lambert
- OT: Java multithreading test source Ben Greear
- Plug: Got my java client to work using the java-plugin. Ben Greear
- UO's rep system, was: CGDC Koster, Raph
- UO's rep system, was: CGDC J C Lawrence
- BIAP Chat/Chat Pro (fwd) Nathan F Yospe
- BIAP Chat/Chat Pro (fwd) Holly Sommer
- Tutorial for Multi-User Environments Niklas Elmqvist
- Tutorial for Multi-User Environments Niklas Elmqvist
- skill system Andrew C.M. McClintock
- skill system Jo Dillon
- skill system Andrew C.M. McClintock
- skill system Adam Wiggins
- skill system Marian Griffith
- skill system J C Lawrence
- skill system Jon A. Lambert
- skill system John Bertoglio
- skill system J C Lawrence
- skill system s001gmu@nova.wright.edu
- skill system Adam Wiggins
- skill system Katrina McClelan
- skill system Richard Woolcock
- skill system Koster, Raph
- skill system John Bertoglio
- skill system Adam Wiggins
- skill system Mike Sellers
- skill system Richard Woolcock
- skill system Adam Wiggins
- skill system Richard Woolcock
- skill system Katrina McClelan
- skill system Adam Wiggins
- skill system Richard Woolcock
- skill system Katrina McClelan
- skill system Adam Wiggins
- skill system Dan Shiovitz
- skill system Adam Wiggins
- skill system Richard Woolcock
- skill system Adam Wiggins
- skill system Richard Woolcock
- skill system J C Lawrence
- skill system s001gmu@nova.wright.edu
- skill system J C Lawrence
- skill system John Bertoglio