[MUD-Dev] C&C and Event Rescheduling

Adam Wiggins nightfall at user1.inficad.com
Tue Aug 19 21:03:16 CEST 1997


[JCL, on priority level of actions and event interruption:]
>   Bubba is trying to climg a very slippery tree.  A swarm of bees
> approaches and begins to sting Bubba:
> 
>   a) Bubba stops climbing and now does something about the bees.  They
> hurt!
> 
>   b) Bubba knows that if he doesn't get off the ground soom that
> approaching flood is going to drown him.  He ignores the bees and
> continues working on climbing.
> 
> AdamW -- Can your system model this last case?

I'd say these matters are a bit above the level of our priority handling.
There is a certainly level of 'threat analysis' in place for two reasons -
one, for mobs to figure out what to do in those situations, and two, so
that we can decide that when Bubba Newbie is confronted with an ancient
multihued dragon he will scream and run the other way regardless of the
player's repeated commands of "climb up the dragon's face and tweak his
nose."

In the case of situation a, I can't give you an exact example, because
we've yet to tackle modeling 'swarm' creatures.  We could certainly
make a creatures with a bajillion limbs, all of which are non-vital to its
survival, each of which has a single small attack...hum.  Since I don't
think that it's imperative to the example that it be a swarm of bees, allow
me to use a pack of wolves, something which actually exists in the game
right now.

> climb tree
You begin climbing the tree.
Many wolves are approaching from the north.
[this is one place I'd like to do group container stuff, so that this would
read 'a pack of..']
You loose your foothold on the slippery bark and are forced to begin again.
The wolves continue to approach.
You grasp a low branch with one hand, and plant your foot solidly against the trunk.
The wolves fan out and encircle the tree.
You get your second foot onto a large knot in the trunk.
A wolf snarls and advances on you, teeth bared.
Holding onto the tree, you draw your knife and face the wolf.
Another wolf moves in on your flank, teeth bared.
> let go [or "stop climbing" or "down" or "stop"]
You let go of your handhold and drop to the ground.
The wolf snaps its jaws at your arm, but you deflect it with your knife, cutting
a gash in the wolf's mouth.

Basically what happens here (climbing + combat was one of our main
concerns while creating this system) is that, when faced with a threat, you
react as normal, ceasing to climb.  However, you continue to basically 'hold
onto' the tree.  If the player didn't intervene at all (via the 'leg go'
command), Bubba would have basically defended himself as best he could
hanging from the tree, and should a lull arise in combat (unlikely in
this situation) he would turn back to the tree and continue to climb.
The reason for this, rather than just dropping to the ground, is that he
could be hanging from a ladder on a helicopter flying over Hong Kong, or
hanging from the side of Half Dome in Yosemite.  At the moment the player
end of the system doesn't attempt to analyze this for you; I consider
this too far outside the realm of the system.  Basically the whole idea is
for your character to react as best as they can and follow your orders to
the best of their ability - it's up to the player to decide whether to
drop back down and fight, try to fight there on the tree (kinda dumb in
this situation), or stop fighting and climb the tree exclusively.  The
last is rather tricky - only the most iron-willed of characters will be
able to avoid turning and throwing up an arm when they see a wolf leap
at the back of their neck out of the corner of their eye.
We're still fooling with ways to increase or decrease the priority of certain
commands - mainly we rely on the '!' tacked onto the end of commands, and
we also have 'ignore' and 'focus' commands to push things up higher in your
priority queue.

Situation b (which was the real question, I know) is a bit trickier, of
course.  It's essentially no different from the above, except that if a
character has a low enough mental fortitude, he'll basically panic
and take off running.  This is, of course, a Bad Thing, as panic
running will generally not get you where you actually want to be.
Once again, the system doesn't decide on what is a greater or lesser threat,
but leaves that to the player.  This is for two reasons - one, we prefer
it that way, and two - there are far too many factors to take into account
in order to decide which is a larger threat.

Setting aside prayers, thaumaturgy, or other more complicated stuff, we
can basically have four situations:

Bubba Newbie who is asleep at his keyboard.
Bubba Newbie who is alert and directing his character intelligently.
Boffo Oldbie who is asleep at his keyboard.
Boffo Oldbie who is alert and directing his character intelligently.

One at a time, they might go something like this...

Bubba asleep:

> climb tree
You begin climbing the tree.
A swarm of bees flies out of the hive above and begins stinging you like mad.
You begin slapping madly at the bees, trying to keep your hold on the tree.
A huge flood is arriving from the far north.
The bees continue to sting you.  Ouch!
You continue to slap at the bees, barely keeping hold of the tree.
The huge flood sweeps in from the north, drowing you and the bees.

Bubba awake:

>climb tree
You begin climbing the tree.
A swarm of bees flies out of the hive above and begins stinging you like mad.
You begin slapping madly at the bees, trying to keep your hold on the tree.
A huge flood is arriving from the far north.
> ' oh shit
> climb tree!
You focus intently on climbing the tree.
> ignore bees!
You try to ignore the bees for now.
The bees continue to sting you.  Ouch!
Those stings are just too painful!  You begin slapping at the bees again.
> ignore bees!
You try to ignore the bees for now.
You climb a bit higher into the tree.
The huge flood sweeps in from the north, drowing you and the bees.

Boffo asleep:

[same as Bubba asleep, possibly he gets a little higher in the tree]

>climb tree
You begin climbing the tree.
A swarm of bees flies out of the hive above and begins stinging you like mad.
You begin slapping madly at the bees, trying to keep your hold on the tree.
A huge flood is arriving from the far north.
> ' oh shit
> climb tree!
You focus intently on climbing the tree.
> ignore bees!
You try to ignore the bees for now.
The bees continue to sting you.  Ouch!
You swing yourself up into the branches of the tree.
The huge flood sweeps in from the north, drowing some of the bees.
You begin slapping madly at the bees.

I suppose the main point here is that life-threatening is basically the
same priority level all the time - the system won't try to decide for you
whether the wry guy with the rapier is a larger or smaller threat to
you than the guy with the big axe.  They are both trying to kill you, and
it's up to the player to make the exact judgement calls.

One nice thing about the character blow-prediction stuff Orion put into combat
is that you'll happily ignore attacks that (you predict) won't hurt you.
Thus if Boffo were in a bee-proof-suit, he wouldn't even bother with the
bees unless the player specifically requested it.  Naturally this has some
other nice side effects, like Boffo *thinking* that his suit is bee-proof
but actually finding out it has a giant rip right through the seat, resulting
in the bees basically getting a free attack on the exposed area.




More information about the mud-dev-archive mailing list