Issues from the digests and Wout's list

clawrenc at cup.hp.com clawrenc at cup.hp.com
Thu Apr 17 11:52:04 CEST 1997


In <199704170251.CAA53028 at out1.ibm.net>, on 04/16/97 
   at 10:38 AM, Nathan Yospe <yospe at hawaii.edu> said:
>On Thu, 10 Apr 1997 clawrenc at cup.hp.com wrote:
>:In <199703040508.FAA81286 at out2.ibm.net>, on 03/03/97 
>:   at 12:13 PM, alexo at europa.com (Alex Oren) said:

>:>I know that C&C, Spoofs, Watchers, Affects/affects, etc. have been
>:>beaten to death in the previous (Wout's) incarnation of this list,
>:>but some of the later participants might benefit from a concise
>:>summary.
>:
>:Is this still true?

>(shrug) I wouldn't mind another in-depth of affects... or
>alternatives thereof. At 

<shoot>

I guess we're back into the affect vs Affect vs spoof game again. 
I'll see if I can't get somethingoether on the area for spoofs.

>:The only outstanding one I can remember here is suggesting command
>:compleation ala:
>:
>:  > get bag
>:  Do you want the:
>:    1 -- Mouldy sack
>:    2 -- Paper bag
>:    3 -- Leather satchel
>:    0 -- Cancel command
>:  >> 3
>:  You take the leather satchel,

>:I currently do this, with caveats for nested compleations, multiple
>:character support (multi-playing) and priority interrupts.

>I think there was a pretty heavy discussion on the rgm.* groups of
>command completion.... mainly because I started it. 

Didn't see that one.  Orion Henry and I stared a spirited chat on the
area in r.g.m.m back when (which I think ended up with me inviting him
to the old list).

>:>Some of the discussions that (IMHO) were left unfinished were:
>:
>:>1) The combat system.
>:>* Limb based combat.
>:
>:Someone else will have to resurrect this one/  I'm not a big fan.

>Limb based combat as a seperate topic bites rocks. It just
>complicates an already ingrown combat system. Now limb based
>existance, with everything being limb based, is a different story.
>More to the point, a limb is just an object attatched to the body
>that happens to respond to mental control. If an agressor wants to
>target that limb in particular for an aggro action, that's fine. I
>have elliminated the combat round, with all of its baggage, and
>instead use a sort of 'combat is just another type of action'
>approach, where having someone attack you is a bias factor in your
>command parser, but nothing more, and your reflexive reactions are
>defensive only, as they are at all times. Offensive moves must be
>activated implicitly or by a script. (IE: if attacked, draw gun,
>shoot attacker until one of you is dead.)

>:>* Staged combat (scripts).
>:>} > By default chop at Bubba's legs with the shield.  But, if Bubba swings
>:>}   at my head, buck and stab at him with the sword.  If Bubba attacks my
>:>}   legs, jump clear while smashing his head with the shield.  If Bubba
>:>}   attacks my middle or arms, block with the shield and stab his legs >:>}   with the sword.
...

Note: A combat script needs to be able to codify the above set of
planned attacks, defenses etc.  It should also be able to handle
something of the form:

"Smash Boffo with buckler while kicking Bernie in the goolies, and
waving my sword in Blubbo's direction.  If Blubbo runs, then feint
chopping Boffo's head of, and stab him, in the leg.  If Blubbo attacks
high, drop to the ground and smash his kees with the buckler.  If
Blubbo uses his mace, feint at his face with the sword, block with the
buckler, and roll away.  If Bernie attacks my legs, jump on top of him
and break neck while blocking with buckler.  If Blubbo doesn't attack
me, feint high, smash arm with buckler and stab with sword in
stomache.  etc..."

It is from here that the below primitives (attack, defend, sequence,
etc) were derived.  

>:Hurm.  A combat script needs to be able to express the following:
>:
>:--  Attacks, where blows are any of magic, physical, mental, or
>:aggressive defenses.

>How about: an attack is any action which deliberately harms you, from
>your POV. 

Because the definition of damage is both contextual and subjective. 
Consider the staged mana fight I posted earlier:

--<cut>--
  UggUgg slashes at you with his Sword of Instant Beheading 
  and minor discomfort!
  > cast soakhole on uggugg
  You cast the dreaded mana eater soakhole on UggUgg!
  UggUgg sneezes and buries your in green snot!
  Your armour suddenly dissappears!  
  Your spell of magical summon protection fails!
  Your spell of magical sight fails!
  UggUgg's Nose Ring of Killer Snot dissappears!
  UggUgg's Belt of Gas Containment dissappears!  Phew!
  UggUgg's dagger of wart removal dissappears!
  > cast create mana
  You create 5,000 units of mana!
  Your mana stores are now empty.
  >cast $my_protections
  You are now magically potected from summons.
  You can now see all magically hidden objects.
  UggUgg thows a blade of painful castration at you!
  > jump!
  You leap mightily.
  The blade misses!  You are still a baritone.
  > attack uggugg with spear
  You ram UggUgg through with the spear of Icy Death!
  UggUgg now has the flu and looks a bit watery about the eyes.
  UggUgg picks up a rock.
  UggUgg bases you with a rock!  Ouch!  That hurt!
  > throw TC at uggugg
  You throw the charmed trash collector at UggUgg.
  The TC englobes UggUgg!
  UggUgg gives you the Sword of Instant Beheading and minor
    discomfort.
  UggUgg gives you the Boots of Mighty Chilblains,
  UggUgg gives you the Goggles of Big Farts.
  UggUgg gives you Super Nose Hair Puller.
  The TC has eaten everything UggUgg was carrying!  Yech!
  UggUgg is naked!
  Your spell of magical summon protection fails!
  Your spell of magical sight fails!
  Your spell of magical tummy tuck fails!
  Your spell of power voice fails!
  Your spell of land control fails!
  Your spell of bowel control fails!  
  Your spell of toe cheese protection fails!
  > stat spells
  You have no spells.
  > stat mana
  There is no mana here.
  > strangle uggugg
  You wrap your hands about UggUgg's neck and begin to squeeze!
  UggUgg prays to the Great God GooGoo!
  GooGoo mana blesses the area!  
  There is a LOT of mana here!  You skin prickles!
  > i
  You have a mana shielding sack
  > l in sack
  There are 5,000,000 TC spores in the sack.
  >empty sack on UggUgg
  The spores eat all the mana!
  There are 5,000,000 TC's here!  Wow.
  All the mana is gone!  
  ...
--<cut>--

In one case UggUgg gave his magical objects to you to exhaust your
mana and cause your and his magical objects to instantly decay, and
your spells to fail.  The problem here is that this action is not
necessarily harmful.  It depends on whether you consider the
destrution of the magic items to be damaging or not (their absence
certainly simplifies the combat), whether your mana reserves can
withstand the strain, or even whether those magic items are actually
helpful to you to accomplish something you want (last component for a
super spell?)  There's a lot of context here, and a lot of subjective
assessment.

>If it was unintentional, but the attacker is of a sort
>unfamiliar enough to you that you didn't realize his electric buzz
>was a joke and not an attempt to fry you, then to you, that was an
>attack. No matter what the attacker intended it as. I can't see these
>scripts going inactive when not "in combat", mainly because combat is
>an arbitrary description of a state in which you and another entity
>are mutually attempting to cause each other damage, in my system.

I have two contentions here:

  1) Combat is not a state.  There is (or should be) no equivalent to
a flag being set to indicate a combat condition.  

  2) Result, not intent or activity characteristics, defines combat

I'm (recently) firmly convinced now that the classical model of having
a combat state is so inherently flawed that it is indefensible. 

The problem (for me) which raises #2 above is that I've just turned
combat on its ear.  Fairly obviously (or at least safely assumably)
someone running up and trying to run you thru with a spear is, err,
both unfriendly and attempting to kill you.  However someone giving
you some magic objects, or TC's, or partially/fully exhausting the
mana (for something harmful/helpful/innocuous/unrelated?) in a room
you happen to also be in, or taking something from you, or damn near
anything can now, subjectively, be VERY easily classified as a violent
life-threatening attack, massively helpful, or ignorable.

Its this second generality that raises the interest points for me. 
The MUD world, and the comparitive survival and success of other
players in the MUD world has suddenly become something that can be
most easily manipulated and controlled/affected indirectly thru
changes to the _environment_, and not thru attempted effects upon them
directly.

You want Bubba dead?  Go stand by him and drop a bag of TC spores on
the floor.  The TC's hatch, eat all the mana, all Bubba's magical
items and spells decay and fail.  The TC's now concentrate on eating
each other, resulting in a few very large TC's, who then attempt to
eat Bubba.  You walk out unscathed.

Even more indirect methods are event more effective, decently
guaranteed, and difficult to track.

>:--  Defenses, where defenses are any of magic, physical, mental, or
>:defensive attacks.

>Why must the script be able to recognize these as a seperate class of
>actions? Or do you mean successful defenses against your own actions,
>ie. failure of the target to display damage after you threw
>everything you had at it?

Nope, the attempted diversion or prevention of damage from an enemy
attack.  Bubba chops at you with a sword -- what do you do to prevent
your arm from being severed?

>:-- Feints, where a feint can be an illusory attack or defense.

>Again, why does this stand alone? There are too many ambiguities
>associated with breaking non harmful actions into categories..

Because a feint can be used as a diversion to mislead an adversary
into reacting/defending against the feint while your main attack goes
thru unhindered.

>:-- Sequences, where a sequence is any ordered set of attacks,
>:defenses, and feints (including a sequence of one member).

>Do you mean like "charge, dodge, swing, parry, duck, block"? Hmmm.

Sorta.  See above.

>:-- Reactions, where a reaction is a defined sequence to be used in
>:response to a stated sequence or sequence characteristic from a
>:defined or undefined opponent.

>OK, this I can see. But why does it require recognizing the actions
>as "defensive", "feint"?

Because I see those as the atomic sections of sequences.  Think of it
ala the forms in Karate, Tai Chi etc.  They are a sequence, a known
pre-planned pattern of blocks, attacks, and feints (well sorta).

>:-- Scripts, where a script is a statement of the various sequences and
>:reactions to attempt during a combat round.

>*nod*

>:The design is for every combatant to submit a script (as above) to the
>:controlling Combat Object for the fight for each round (I use round
>:based combats).  At the end of the round, the combat object resolves
>:the scripts against each other (eg feedback loops between reactions),
>:and sets the sequences attempted by each combatant.  These resolutions
>:are then sent back to the combatants, they do them, the relevant
>:damages are levied (this is all automatic), and the next round starts. 

>Ack! Round based combat. That explains a lot. *gag* Sorry, but this
>went out the door for me a long time ago. It tends to spoil the
>momentum of a good story sequence, whereas reactive and monoactive
>events do not. In other words, it doesn't flush with the rest of the
>game.

I'm trying hard to get away from having a twitch game; where the human
player's reaction speed, ability to enter commands, and ability to
react quickly and correctly to current state data is key.  I want a
game, and I specifically want combat where preparation, planning, and
finesse are are the key elements of combat, and all the twitch stuff
is almost compleatly devalued.

I want combat to have to be a thing of deliberation; not engaged in
lightly, and not participated in without considerable ongoing thought. 
This isn't DOOM.  This is CRobots with a human face.

>:The problem here is to define a simple user-friendly scripting
>:language which is capable of expressing the sequences and reactions
>:constituting a script.

>That is extremely difficult. I'm still trying to create one of these
>myself. (My reflex system)

Yup.

>:This also raises the doubt in my mind that my basic approach to combat
>:is flawed.  Most MUDs treat a fight as some sort of special state. 
>:Various commands are no longer available, new ones are added, motion
>:is commonly curtailed, etc.  To an extent the combatants are removed
>:from the normal run of the game.  

>Ah. There you go. Go with these doubts, they will lead you to a
>better way of doing things(tm).

Yeah...

>:This creates verisimilitude problems.  Bubba sits high on a cliff with
>:a sniper's rifle and shoots at some chap a couple miles away on the
>:plains.  Are they *really* in a fight?  What if the guy on the plains
>:climbs into a tank and fires a howitzer back?  How about the sniper is
>:instead a spell caster and the plains hugger is a knight in a tin can? 
>:How about the lurker in ambush who throws a knife?  The guy in the
>:middle of the street who throws a knife?  They guy who stabs you in
>:the back?  The pitched battle?  The melee?  The two tanks sitting on
>:opposing hills trading shells?

>Under my system, these is all as much a fight as two idiots in armor
>trading blows with swords. The only difference is that the guys in
>armor with swords are toast when that longbowman finally gets a bead
>on them. The critical thing to remember is that a) I use a levelless
>system, and b) experience is not given for winning a combat sequence,
>it is confered to each appropriate skill and/or attribute on an
>action by action basis, making the action of shooting a guy from a
>mile off with a longbow pretty good experience, where the action of
>hacking at a guy with a sword and getting in a lucky shot might not
>be so great, experience wise, as barely surviving, and not killing
>the other guy, but getting a damn good workout.

A side comment on my intentions for combat:

  Newbies whould have a definite if small chance of being able to 
    kill high level players.

  Probability of outcome for any combat should be unstable, if 
    weighted toward the more skilled.

  Result of combat should NEVER be solidly predictable,  (Variation 
    on above)

  A newbie character played by an expert human player should have 
    the advantage over a high level character played by a newbie 
    human.

  All blows/spells/etc have a chance of failing, whereupon they all 
    also have a chance of reflecting back on their source (swing 
    sword at Bubba and chop off own leg, shell explodes in barrel, 
    ice spell freezes you instead)

  Combat doesn't last long.  Less than 5 - 10 minutes IRL.

  And of course: Death is permanent.

>:There's a concept of level of engagement here that I'm not sure how to
>:deal with.  It get messier when you realise that many actions are not
>:fighting actions in themselves, but may effectively act as attacks or
>:defenses when in a battle.

>The point I raised earlier: there is a bias based on the "aggresion
>coefficient", that makes a combatish interpretation of a command more
>likely for me, but aside from that, things flow much more smoothly
>without combat rounds. Don't get insulted by this, please, but rounds
>make me think Diku/LP. They are so typical of those systems...

True, they reek of their pulse/heartbeat based systems.  The problem
is that I explicitly DON'T want to pace normal action in the game.  If
the guy wants to walk across the entire land, and can enter (and have
the server process) the commands quickly enough, then by Gum, he'll
walk 10,000 miles in 3 seconds flat.  The comparitive problem with
this is that I want combat to be forced to be a less hurried affair,
and thus requiring pacing.  

Or so I semi-thought.

>:Consider the hyopothetical battle I posted earlier:
>:--<cut>--
>:
>:Your giving the charmed TC to UggUgg __acted__ as an attack in the
>:context of a fight because the TC attempted to eat UggUgg's inventory. 
>:However, normally giving someone a TC, even a charmed TC would not be
>:an attack.  Similarly, UggUgg giving you his magical inventory in an
>:effort to exhaust your mana stores and cause all your magical objects
>:to destruct in the context of this fight was an attack.  However
>:giving someone a macgical item or items during a fight is often NOT an
>:attack.  This same sort of dichotomy holds true for the TC spores.

>Not really. Whatever your intent, the results are the same, yes/no?

Nope.  The actual result could be beneficial, innocuous, or harmful
depending on your subjective evaluation.

>The only complaint I can see is that this means the script has to
>have a friend/foe value for the other guy...

<shudder>

Not in any system I have anything to do with.

>:These are not fighting actions any more -- but in the context of a
>:magical battle where indirect control and manipulation of the the mana
>:supply is the major weapon, they suddenly turn into fighting actions.
>:
>:Think you have a rule?

>Yeah. I think its not that bad, actually. At this point in time, both
>of these guys have each other pegged as major foes. Anything the
>other guy does, short of raising a white flag or running away
>screaming, is going to be interpreted as hostile. Even sneezing.

True.  Consider the activity starts however with UggUgg giving you the
magic items.  Or starting with your dropping the TC spores... 
Determining when a combat state is initiated (something I think
shouldn't be done anyways) is *really* messy.

>:I'm beginning to think that fights should be handled like any other
>:player interaction.  Let each player enter individual commands for
>:each blow which are then handled as if they were exactly the same as
>:every other command.  Allow automation of this process via scripts
>:etc, but forget the whole deal of combat objects, rounds, etc.  Let
>:the guy pick his nose one command, shoot his neighbor the next, and
>:water his garden the third.

>Yup. Now your talking sense. *grin*

'Fraid so.

--
J C Lawrence                           Internet: claw at null.net
(Contractor)                           Internet: coder at ibm.net
---------------(*)               Internet: clawrenc at cup.hp.com
...Honorary Member Clan McFUD -- Teamer's Avenging Monolith...




More information about the mud-dev-archive mailing list