[crossfire] Project: Slow down combat

Mark Wedel mwedel at sonic.net
Mon Sep 24 23:16:54 CDT 2007


Lalo Martins wrote:
> Here's a relatively simple alternative suggestion:
> 
> Actions have a speed rating.  Essentially, this represents how often an 
> average character would be able to perform that action.  So this will be 
> an attribute of weapons and of skills (specially interesting for unarmed 
> combat skills), and possibly spells.
> 
> A special case is walking.  Either just decide that this is a constant 
> value, or make that an attribute of the living creature.
> 
> Then, on top of that, every living creature has a speed modifier: a 
> multiplier that is applied to every action's speed.
> 
> While I call that "speed", we could just as well do the opposite and call 
> it "time" (T for the purposes of this email), meaning how many seconds, 
> ticks, or whatever the action takes.  Or call it "speed" to make 
> archetype writing easier to understand, but internally convert that to T.
> 
> So when your "turn" arrives, if you have an action queued, you perform 
> that action, and then your next "turn" is after this action finishes, T 
> ticks(/seconds/...) later.  If there is no action queued, you're assumed 
> to take the default action of "wait", which has a (low) constant T.
> 
> I believe this is simple to implement, easy for map/arch writers to grok, 
> and easy for new players to understand.

  In some sense, this is sort of an inverse of how things work now - all actions 
more or less take the same time, but the characters speed differs.

  And in many ways, the above makes a fair amount of sense - some objects should 
modify certain action speeds, and not others - for example, speed boots should 
reduce cost of movement, but really shouldn't reduce cost of swinging a weapon.

  But visibility to the player probably is important.  In the above system, I 
would think that the amount of stuff being carried should have some effect on 
the cost of movement.  But in that system, it is unclear how you would display 
that to the player - since they may be doing any number of possible actions, you 
can't really say 'action cost is xxx'.

  I think this would also need to be explored more - one quick concern I have 
off the top of my head is that all the different actions may now have custom 
code to figure out extra cost for this action based on various attributes.  It 
also seems to me that a basic speed multiplier for each living creature may be a 
bit simplistic - if one were to do that approach, one would think different 
actions should perhaps have different costs based on races (some may be fast at 
spell casting, slow at combat).  OTOH, that is a distinction that is currently 
missing from crossfire.






More information about the crossfire mailing list