Rounds - Combat Initiative [by Daniel Koepke]
Snippet Posted Wednesday, August 12th @ 11:36:16 PM, by George Greer in the Utils dept.
Added Dec 8, 1997. Click the link below to read it or download it.

From: Daniel Koepke <dkoepke@california.com>
Subject: Combat order

> I was wondering if anyone had implemented an initivative <sp?> system
> for MUD combat. Where the order of attacks each round was not the same
> all the time, it could take into account dex mods and weapon speed and
> things like that. I have been looking around the code and wondering if
> it is even such a good idea...
>
> Anyone been down this road at all?

  Did it.  And it was actually quite easy!  [IF ANYONE INTREPRETS THAT
  AS AN INSULT TO ANYONE'S INTELLIGENCE I WILL SLAP THE LIVING HELL OUT
  OF THEM]  What I did was change the combat pulses to occur every second,
  then I made a temp variable for characters (where-ever they have
  'fighting' and 'hunting' and all those other temporary things) that
  would save how long it takes to attack.  Next I created a function
  called 'calculate_speed' that took into account HASTE and SLOW, and
  dextrity, weapon weight, what they person was wearing (eg., huge armor
  slowed them down), what they were carrying (lots of weight slowed them
  down), terrain, etc., etc. and a bit of randomisity then returned that.
  In hit() I would do: 'NEXT_HIT(ch) = calculate_speed(ch);' and a check
  to make sure that their opponent was fighting (if not then I made them
  hit the person to get them fighting).  Finally, in perform_violence() I
  did something like:

    if ((NEXT_HIT(ch)--))
      continue;

  Inside my loop...

  Oh, now that I think about it, my multi-code (which was very simple)
  that, in response to someone else, I tried to have mix attacks up, would
  benefit from this.  And actually, on my MUD, this completely replaces
  the multi-hit code.  I figure if the person is fast enough, they'll get
  off a hit or two before their opponent does, anyway.



<< Room Saving [by Reza Nejad] | Reply | View as text | Flattened | Same Mob EXP limits [by Andrey Fidrya] >>

 


Related Links
  download
Related Articles
More by greerga
 
 

CircleMUD Snippets
 
Note: Not all of these snippets will work perfectly with your version of code, so be prepared to fix one or two bugs that may arise, and please let me know what you needed to do to fix it. Sending a corrected version is always welcome.
Finally, if you wish to use any of the snippets from this page, you are more than welcome, just mention the authors in your credits. If you wish to release any of these snippets to the public on another site, contact me FIRST.
 
 


Re: Initiative System
by Martin Thomson (mwt02@uow.edu.au) on Monday, February 7th @ 09:06:03 PM
http://
I have played with a number of systems, all of them complex, I am most interesting in seeing a system that is less complex than my own with a back and forth style (for those with multiple attacks).

At the moment I am doing some tedious sorting of the characters in a room and I find that this, combined with the methods I use for seeing who goes next are too complex, has anyone done anything on this that they can post?
[ Reply to this comment ]