Jump to content
FoxFort

Disable hit animations

Recommended Posts

Hey

 

Is there a way to safely disable hit animations/feedback from happening when soldier is hit with bullets? So when bullet hits soldier nothing is animated/twitching/that weird flexing movement. 

 

Last few days I started play R6:RS from 2003 and models there don't have hit animation feedback and oddly, it's more satisfying than A3 vanilla weird flexing. 

  • Thanks 2

Share this post


Link to post
Share on other sites

You can use the 'Project Injury Reaction' from 0Y0 to have better and more realistic animation

Share this post


Link to post
Share on other sites

Interesting mod, thanks, I'll try it out

Share this post


Link to post
Share on other sites

does it really effect the hit animations though?

Share this post


Link to post
Share on other sites
/// general parameters for physx
class PhysXParams
{
/// coefficient for epe contacts on applying impulse damage
    epeImpulseDamageCoef = 30.0;

    /// coefficient used to multiply impulse force when adding force to ragdoll (impulse force is force from shell hits, explosion hits, etc.)
    impulseForceRagdollCoef = 200;
    /// coefficient used to multiply impulse torque when adding torque to ragdoll (impulse torque is torque from shell hits, explosion hits, etc.)
    impulseTorqueRagdollCoef = 75;
    /// coefficient used to multiply object speed when adding force to ragdoll
    impulseSpeedRagdollCoef = 3;
    /// maximal possible magnitude of force added tor ragdoll
    maxRagdollImpulseForceMagnitude = 300;
    /// maximal possible magnitude of torque added tor ragdoll
    maxRagdollImpulseTorqueMagnitude = 100;
    /// coefficient used to multiply mass of ragdoll bone for computation of underwater force (this should be sligthly smaller than gravity constant 9.81)
    ragdollUnderwaterForceCoef = 9.6;
    /// coefficient used to multiply initial impulse of ragdoll bone, when it gets underwater (this should be slightly less then 1.0f)
    ragdollUnderwaterInitImpulseCoef = 0.98;
    /// when the soldier collides with the object, that has speed larger then this limit, it will start ragdoll (speed is in m/s)
    ragdollOnCollideSpeedLimit = 4;
    /// when the soldier collides with the object, that has mass larger then this limit, it will start ragdoll
    ragdollOnCollideMassLimit = 200;
    /// coefficient, that is used to multiply speed of the object to get the force, that is applied to ragdoll on object collision
    ragdollOnCollideForceCoef = 0.1;
    /// maximal possible force applied to ragdoll at collision with object
    ragdollOnCollideMaxForce = 1;
    /// max distance that the soldier can be shifted when it collides with object (in m)
    ragdollOnCollideMaxOffset = 10;
    /// speed of the colliding object at which the offset will gain its max value (that is ragdollOnCollideMaxOffset) - in m/s
    ragdollOnCollideMaxOffsetSpeed = 100;
    /// time of hit ragdoll animation (in s)
    ragdollHitTime = 0.01;
    /// coef used to multiply force of hit
    ragdollHitForceCoef = 3;
    /// damage limit for hit ragdoll animation to start (set to <0 to disable)
    ragdollHitDmgLimit = 0.01;

    /// Wheel PhysX
    wheelPointRejectLimitSpeed  = 5; // 'Fast' values are used if vehicle moves faster this speed (m/s)
    /// threshold angle used when comparing the angle between collision point direction and suspension direction. Value must be in range (0, Pi).
    wheelPointRejectAngle       = Pi/4.0;
    wheelPointRejectAngleFast   = Pi/3.0;
    /// Threshold angle used when comparing the angle between negative surface normal and suspension direction. Value must be in range (0, Pi).
    wheelNormalRejectAngle      = Pi/4.0;
    wheelNormalRejectAngleFast  = Pi/2.4;
};

You can try modifying ragdollHitDmgLimit to -1 and see if it's working. It's defined in core config

  • Like 2
  • Thanks 3

Share this post


Link to post
Share on other sites

Thread moved to correct forum section 😉

Share this post


Link to post
Share on other sites

Hi @reyhard

 

Thank you for the information, I found out that by increasing required force "ragdollHitDmgLimit = 0.75;" is also doing the trick, so animation is not disabled, just increasing the threshold is good enough. 

 

One more thing, are there different pre-made animations for being hit? Or it's just one with random values applied to move/bend body parts?

 

I'm asking since simple twitch is looking good in game, but for some reason random bullet hits causes animation to bend body parts in unnatural motion and not every time. Sometimes animation would move arm but not torso, so there has to me more animations? 

0.01 speed is good when simple twitch is made (whole upper buddy is shaked) but when animation is played to "throw arm away" 0.01 is too fast for it, so that's causes weird looking of body parts flexing.

So would it be possible to limit to only one animation to be used at all time? or Readjust animation speed per animation and not use one general speed?

 


Here is with and without hit animation adjustment:

 

 

  • Thanks 2

Share this post


Link to post
Share on other sites
On 6/10/2019 at 12:18 PM, reyhard said:

/// general parameters for physx
class PhysXParams
{
/// coefficient for epe contacts on applying impulse damage
    epeImpulseDamageCoef = 30.0;

    /// coefficient used to multiply impulse force when adding force to ragdoll (impulse force is force from shell hits, explosion hits, etc.)
    impulseForceRagdollCoef = 200;
    /// coefficient used to multiply impulse torque when adding torque to ragdoll (impulse torque is torque from shell hits, explosion hits, etc.)
    impulseTorqueRagdollCoef = 75;
    /// coefficient used to multiply object speed when adding force to ragdoll
    impulseSpeedRagdollCoef = 3;
    /// maximal possible magnitude of force added tor ragdoll
    maxRagdollImpulseForceMagnitude = 300;
    /// maximal possible magnitude of torque added tor ragdoll
    maxRagdollImpulseTorqueMagnitude = 100;
    /// coefficient used to multiply mass of ragdoll bone for computation of underwater force (this should be sligthly smaller than gravity constant 9.81)
    ragdollUnderwaterForceCoef = 9.6;
    /// coefficient used to multiply initial impulse of ragdoll bone, when it gets underwater (this should be slightly less then 1.0f)
    ragdollUnderwaterInitImpulseCoef = 0.98;
    /// when the soldier collides with the object, that has speed larger then this limit, it will start ragdoll (speed is in m/s)
    ragdollOnCollideSpeedLimit = 4;
    /// when the soldier collides with the object, that has mass larger then this limit, it will start ragdoll
    ragdollOnCollideMassLimit = 200;
    /// coefficient, that is used to multiply speed of the object to get the force, that is applied to ragdoll on object collision
    ragdollOnCollideForceCoef = 0.1;
    /// maximal possible force applied to ragdoll at collision with object
    ragdollOnCollideMaxForce = 1;
    /// max distance that the soldier can be shifted when it collides with object (in m)
    ragdollOnCollideMaxOffset = 10;
    /// speed of the colliding object at which the offset will gain its max value (that is ragdollOnCollideMaxOffset) - in m/s
    ragdollOnCollideMaxOffsetSpeed = 100;
    /// time of hit ragdoll animation (in s)
    ragdollHitTime = 0.01;
    /// coef used to multiply force of hit
    ragdollHitForceCoef = 3;
    /// damage limit for hit ragdoll animation to start (set to <0 to disable)
    ragdollHitDmgLimit = 0.01;

    /// Wheel PhysX
    wheelPointRejectLimitSpeed  = 5; // 'Fast' values are used if vehicle moves faster this speed (m/s)
    /// threshold angle used when comparing the angle between collision point direction and suspension direction. Value must be in range (0, Pi).
    wheelPointRejectAngle       = Pi/4.0;
    wheelPointRejectAngleFast   = Pi/3.0;
    /// Threshold angle used when comparing the angle between negative surface normal and suspension direction. Value must be in range (0, Pi).
    wheelNormalRejectAngle      = Pi/4.0;
    wheelNormalRejectAngleFast  = Pi/2.4;
};

You can try modifying ragdollHitDmgLimit to -1 and see if it's working. It's defined in core config

 

hello,

is it also possible to define how long a player stays in ragdoll state?

like disable any animation because it seems unrealistic if a player falls unconscious and still plays any "revive" animations.

i wanted to use setUnconscious on a player falling from a high building to simulate ragdoll but in mid-air he performs a animation..

thx for any help!

Share this post


Link to post
Share on other sites

Perhaps, but @rayhard could answer this

 

Share this post


Link to post
Share on other sites
On 3/22/2020 at 11:43 AM, Alert23 said:

is it also possible to define how long a player stays in ragdoll state?

afaik no. It wasn't last time I looked for it.

 

  • Haha 1

Share this post


Link to post
Share on other sites
On 3/25/2020 at 10:41 AM, Dedmen said:

afaik no. It wasn't last time I looked for it.

 

nice, i dident know about that command =)

On 3/24/2020 at 1:51 PM, FoxFort said:

Perhaps, but @rayhard could answer this

 

On 3/25/2020 at 10:41 AM, Dedmen said:

afaik no. It wasn't last time I looked for it.

i hope it will be added anytime.

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

×