TheSuperHackers / GeneralsGamePatch

Community Patch to fix and improve original Generals Zero Hour 1.04
Other
58 stars 19 forks source link

Fine-tune animation distance modifiers to avoid skidding and running-in-place infantry #2204

Open commy2 opened 1 year ago

commy2 commented 1 year ago

There is an optional modifier after the Animation token in W3DModelDraw/ConditionState sub-modules.

Draw = W3DModelDraw ModuleTag_01
      ConditionState = MOVING (MOVING DAMAGED)
        Animation = [model animation name] [integer]
        ; Animation = DUDEANIM_SKN.DUDEANIM_RUN 32 ;<- the distance modifier
        ; there is an OPTIONAL number following the animation
        ; it represents the distance that a single loop of the animation would cover. 
        ; (ie, maybe it has the solder taking three strides, for a distance of 30 or so)
        ;
        ; how to tweak the number:
        ;   -- "skidding"?          reduce the number
        ;   -- "running in place"?  increase the number

This value can be tweaked to avoid skidding and running in place infantry. Someone should take the time and go through all infantry (and preferably also civilian) units and determine the right distance modifiers for nice looking walk cycle animations.

xezon commented 1 year ago

Hmm this could take a lot of trial and error right?

commy2 commented 1 year ago

Yes. We need an intern. Alternatively, you borrow the values from a mod, like NPM or Shockwave.

xezon commented 1 year ago

commy2

Fixing the skidding / sliding thing should best be done with the diagonal movement fix. I tweaked an animation to look properly when moving cardinally, now it looks odd when walking diagonally.