Jump to content
Sign in to follow this  
madrussian

CfgMovesBasic and CfgMovesMaleSdr - Some wisdom... and a few questions

Recommended Posts

I have put together a proof of concept Fatigue System that blocks sprinting when a player gets "tired". It works in the editor as intended. That is to say, when a player is "tired" and attempts to sprint, he is only able to run. When he recovers, he can sprint again. Pretty cool, huh?

Unfortunately I've hit a (hopefully minor) snag. Here's the issue, but first some background.

My system is predicated on the use of special new animations (in CfgMovesMaleSdr) used to invoke special new "action states" (in CfgMovesBasic). When the player is tired and enters any of the normal sprinting animations, my system interrupts the current sprint animation by playing one of the special new Sprint-Blocking animations (all running anims themselves), and thus forces the player into one of several new Sprint-Blocking "action states" (which determine what his controls do from there). That part works like a charm.

However, in order to interrupt the sprint, I have to play one of the new animations on the player via one of the following commands:

playMove

playMoveNow

switchMove

switchMoveNow

The unfortunate thing is that each of these commands plays the animation in it's entirety, and the player is stuck watching the entire animation until complete, before regaining control.

I need a way to play only the initial part of the animation -OR- interpolate from one anim to another via script command only.

If this doesn't quite make sense yet, think of the ArmA2 controls during normal gameplay. For most of the movement controls, you can switch freely at any time from one to the other. Then you go to switch weapons, and whammo, you are stuck watching that weapon-switch animation until completion, and in the mean time you can't interupt it.

In CfgMovesMaleSdr, the example above is the difference between ConnectTo[] and InterpolateTo[].

So back to my fatigue system...

For everything to work smoothly, I need a way to do one of the following:

1. Interpolate from one anim to another via a script command

2. Only play a small portion of an animation via a script command.

3. Create very small animation file that is a small subset of the existing animation

Then we can have full robust fatigue system that slows the player down when he gets tired.

Any ideas???

btw- I know that CfgMovesBasic and CfgMovesMaleSdr can be pretty intimidating. If nothing else, I hope at least someone can learn something by reading this thread. I've spent quite a bit of time in those two configs. If anyone has any questions regarding any of this anim stuff, however basic, please don't hesitate to ask here. There's a decent chance I can help. :)

Share this post


Link to post
Share on other sites

Well, I haven't messed with vehicle cfgs. But I assume it's pretty straightforward. My guess is look for "speed" or something similar in there. I imagine you could get a vehicle going really fast with a tweak or two.

One thing I'm sure of, by messing with speed in CfgMovesMaleSdr, you can get a foot soldier to run like a comic-book superhero. :)

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×