Subject: Combat Systems

From: [email-masked] (Michael McAleese)
Date: Wed, 28 Apr 1993 12:17:36 -0700

Regarding Stefan's query on combat systems, and the timing problems
therein, I'm trying to implement a combat system that side-steps those
problems entirely.  It's a copy of the _Lost Worlds_ combat system, for
any who might know this method.  Briefly, it requires both combatants
to pick a maneuver and then the result can be figured out.  This allows
for lag and dithering on the part of one player, it also allows for pauses
in combat while each soliloquize each other.  My current plan has an
option for one person to press the attack if it seems that their 
opponent is taking too long to respond with a maneuver, this give the
opponent notice that they have 15 seconds to pick a maneuver or they will
get dodge or jump away.
  Another bonus with this combat system is that its very visual.  Most
systems give you something like:

  Bill hits Bob very hard.
  Bob misses Bill.
  Bill massacres Bob very hard.

  ... which is a bit boring in a text-only environment.  My alternative:

  Bill slashes low against Bob.
  Bob tries to kick Bill.
  Bill slashes at Bob's legs and knocks him down, wounding him slightly.
  Bob kickes out but doesn't hit and is knocked down.
  Bill thrusts low against Bob.
  Bob tries to jump up.
  Bill thrusts low but Bob leaps up and Bill misses him.  Bob leaps into
  the air.

  Well, you get the idea.  The basic premise is that combat timing can
be ajudicated by making it more of a series of choices, like a card game,
rather than a real-time thing.  I don't think this would really detract
from MU* combat, in fact in a role-playing environment I think it would
add to it.  Rather than two figures bashing away at each other like 
clockwork, it becomes more of a series of moves and counter-moves.

---

From: Byron Montgomerie <[email-masked]>
Date: Wed, 28 Apr 1993 14:20:43 -0700

I once coded a combat system on a personal moo I ran just for myself and a
few others.  I took the simulation approach, I attempted to remove the
distinction between NPC's and players.  All NPC's and players had a bunch of
stats like endurance, stamina and strength all of which were modelled using
forked tasks and interaction between each other.  Ie, if you are tired you
don't hit as hard and can't avoid being hit as easily etc... The NPC's followed
tracks using a list containing commands similar to what the player would type
to do the same thing, for example {"go north", "unlock door with key", "open
door", "go north", "close door", "lock door with key",..., "go south"}. I also
implemented a bunch of hooks to determine whether the NPC attacked first.

Byron... (Tarod@LambdaMOO)
 __________________________________________________________________________
| __  ///    "Byron Montgomerie"  Internet: [email-masked]   __  /// |
| \\\///      "Does anybody here remember Vera Lynn?               \\\///  |
|  \XX/        How she said that we would meet again,               \XX/   |
|  Amiga       some sunny day..." -- Pink Floyd --                 Amiga   |
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~