Jump to content
Persian MO

[Release] Injured Ai script/Mod

Recommended Posts

Injured Ai script provide a little more realistic fight against Ais for player.
When player shot ais , there is a chance that ais fall down with ragdoll and injured and unconscious with animations and begging for help.
Here is demo mission with some descripts in there how script work.
Tested on sp and mp and zeus
 

- Ais unconscious with animations and sounds
- Ais team mate will try to help by dragging injured guy and heal him
- Smoke drop around injured Ai
- React hit for Ais
- Injured Ais will die if not get help in 2 minutes
- Ais talk with radio or yelling while firing
 
How to use: 
Copy folder and files from demo mission into your mission folder. 
Check out init.sqf and injured.sqf and killer.sqf for more setting and add your own sounds. 
 
/*//parameters
_this select 0, true or false, ais war voices,ais will talk with radio or yelling while firing, (default = true)
_this select 1, true or false, drop smoke around injured ai, (default = true)
_this select 2, true or false, drag to cover, dragger will drag injured to covers like bushes or rocks, for longer distance drag set this false, (default = true)
_this select 3, unconscious and drag chance, determine chance unit unconscious if got hit, min 0%-100% max (default = 50%)
_this select 4, hit react chance, determine chance unit have react animation if got hit, min 0%-100% max (default = 20%)
*** Important Note: if you increase hit react chance, it also decrease unconscious and drag chance ***
*/
_null = [true, true, true, 70, 20] execvm "scripts\injured.sqf";
 

 
Download Demo Mission
 
Armaholic Download
 
Steam Workshop
 

 

------------------------------------------------------------------------------------------------------------------
 Mod Version

 

here is a mod version of injured ai.The mod can run only on the server but if you want to hear injured ais pain and hit sounds, clients must have the mod too.

 

Download Injured Ai Mod


How to use: 

Just move injured ai mod to your mod folder.

*******************************************

Disable the mod for a mission:

init.sqf

dam_injured_ai = false;
publicVariable "dam_injured_ai";

exclude a unit from mod:

put this code in unit init

this setVariable ["dam_ignore_injured",true];

**************************************

 

 

 

 

 

 

PS: some of codes are from forum community members
 
Update to ver 1.1
changelog:
- now script working with zeus 
- script will add to spawned units in middle of mission

 

Update to ver 1.2

- Added hit sounds

-Added Finisher sounds

 

Update to ver 1.3

added dragging action to Ais to drag injured body and heal
Added hit react to Ais
fix some zeus issues
Added timer to injured Ais to die if not get heal
 

Update to ver 1.4

added voices , ais will talk with radio or yelling while firing
fix remove firstaid and medkit
fix some performance issues , thanks to hunter1000
added 2 new killer voices
added parameters for control script
 

Update to Ver 1.4.1

Fixed injured dead timer 
Now script run smooth and better

 

update to ver 1.4.2
separate sound sources for each side
Ais will do regroup after job done"need more tests"

  • Like 7
  • Thanks 1

Share this post


Link to post
Share on other sites

looks great, I look forward to giving it a try.

Share this post


Link to post
Share on other sites

I don't know how to modding.sorry.

The script version should be ok , no need to create a mod for everything's and add dependency on missions for it.

  • Like 1

Share this post


Link to post
Share on other sites

Hi, sounds very interesting. But how´s the behaviour with AIvsAI, will they kill injured ones ?

Share this post


Link to post
Share on other sites

I don't know how to modding.sorry.

The script version should be ok , no need to create a mod for everything's and add dependency on missions for it.

I can help you for make a mod version

Share this post


Link to post
Share on other sites

I can help you for make a mod version

Allright.If you can do mod, feel free and go for it.

Share this post


Link to post
Share on other sites

Is this compatible with ACE or just vanilla arma?

 

i had a new test.looks like this script working with ace 3. just you have to disable ai unconscious in ace medical setting module

 

Hi, sounds very interesting. But how´s the behaviour with AIvsAI, will they kill injured ones ?

 

Ais will continue to shot to injured units and kill them. you can add a setCaptive command to injured units if you want to stop them to shoting to injured mans.

 

add it to fnc_injured

fnc_injured = { 
_unit = _this select 0;
    _unit removeAllMPEventHandlers "MPHit";


_unit setcaptive true;


[ _unit ] remoteExec [ "Lar_fnc_setunconscious", 2 ];


sleep 3;


//animations
_anim = [
"UnconsciousReviveArms_A","UnconsciousReviveArms_B","UnconsciousReviveArms_C","UnconsciousReviveBody_A",
"UnconsciousReviveBody_B","UnconsciousReviveDefault_A","UnconsciousReviveDefault_B","UnconsciousReviveHead_A",
"UnconsciousReviveHead_B","UnconsciousReviveHead_C","UnconsciousReviveLegs_A","UnconsciousReviveLegs_B"
 ] call bis_fnc_selectRandom;


[[[_unit,_anim],"animation.sqf"],"BIS_fnc_execVM",true,false] call BIS_fnc_MP;


//play sounds while man is injured, not dead
while {(true)} do {


sleep (30 + random 60);


_ls = lifeState _unit;


if (_ls != "INCAPACITATED") exitWith {};


_sound = [
"pain1", "pain2", "pain3", "pain4", "pain5", "pain6", "pain7", "pain8", "pain9", "pain10", "pain11", "pain12", "pain13"
] call BIS_fnc_selectRandom;


_unit say3D [_sound, 100, 1];


sleep (60 + random 60);


};
};

Share this post


Link to post
Share on other sites

Update to ver 1.1


changelog:


- now script working with zeus 


- script will add to spawned units in middle of mission

Share this post


Link to post
Share on other sites

 

Ais will continue to shot to injured units and kill them. you can add a setCaptive command to injured units if you want to stop them to shoting to injured mans.

No, I would prefer if they shoot injured ones. Otherwise they need to arrest each other....

I like your idea much and implemented it into my mission but need to test more. All ai´s I had shot died instantly.... ;)

They should scream after every hit imo.

Share this post


Link to post
Share on other sites

No, I would prefer if they shoot injured ones. Otherwise they need to arrest each other....

I like your idea much and implemented it into my mission but need to test more. All ai´s I had shot died instantly.... ;)

They should scream after every hit imo.

 

Open injured.sqf , line 82: increase number 35, this is chance number about ais move to unconscious instead dead.(min 1 - max 100)

Cool ideas, let see if i can make it.  :)

  • Like 1

Share this post


Link to post
Share on other sites

This is cool Persian!  Reminds me back in ARMA 1 I wrote a script that after a firefight, the AI winning side would walk by dead bodies and put a couple of extra rounds in the body, just to be sure.  Then I had a list of voice files where one was chosen randomly.  "Have a dirt nap on me", "Adios, mother****er", "Goodnight Irene", etc.  Never published that script.  One problem it had was the position of the dead body object did not perfectly align with the getpos returned position, so sometimes they shot into the ground.  But in your case you're playing an animation on the injured guy, so he's still a real obect, so the position should be valid.

 

Maybe the occasional dialogue like that for when AI pops an injured guy would spice it up a little.

  • Like 1

Share this post


Link to post
Share on other sites

added sound when Ais got shot and sound for finishers . just need fix MP issue and find some good voices for finishers

 

  • Like 1

Share this post


Link to post
Share on other sites

Haha, thats awesome !!!

Finishers are a great idea. Cant wait to have this in my missions.

Really good job Dude !

Share this post


Link to post
Share on other sites

Sweet brother!  I dig it. :cheers:

The say "Surprise MF" was on the player when he finished the dude off.  Will AI also finish guys off and talk?

Share this post


Link to post
Share on other sites

Thanks guys.

 

 

The say "Surprise MF" was on the player when he finished the dude off.  Will AI also finish guys off and talk?

Yes.Ais finish the job and talk also.

  • Like 1

Share this post


Link to post
Share on other sites

Very cool!

 

Is it possible to make it so that medics and combat life savers in a squad can revive, carry, drag or help their fallen squad mates get back into the fight?

I know its probably very complex, but it would be great to have an AI squad actually act to help defend a fallen soldier. Throwing smoke to cover a downed soldiers position so a medic can extract them to a safe place and revive them or simply work on them on the spot. The AI also seems very hesitant to use full auto suppression fire to create a "beaten zone" the will give human players a pause for thought while such actions are being taken.

 

Again I don't know how much of this is possible or easy, but having medics revive squad mates seems like a logical progression for this script.

Share this post


Link to post
Share on other sites

Everything possible in arma but it depends on scripter skills. I'm not good to much at it.

For now i trying with drag and revive part.so Ais drag injured mate to cover and heal.

If i can make it :)

  • Like 1

Share this post


Link to post
Share on other sites

Everything possible in arma but it depends on scripter skills. I'm not good to much at it.

For now i trying with drag and revive part.so Ais drag injured mate to cover and heal.

If i can make it :)

 

Fantastic! I think this would help make the enemy feel a lot more dynamic in combat - acting as if they actually care about their comrades.

Would it be possible to make the AI revive time a variable that can be edited easily by someone putting the script into their mission? This would allow mission makers to have AI revive times as long or short as they like. Also perhaps another variable to make it so that the same soldier can A) not be revived twice or B) be revived multiple time. Finally a third variable to determine what % of their maximum health a revived soldier has after being healed.

Thanks once again for making this script! :)

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

×