Jump to content
KC Grimes

Grimes Simple Revive Script

Recommended Posts

@KC Grimes thank you for the continued support on this script. Bohemian has really never really put effort in the whole medical system for sure. 

 

Please if you can added the ability for the AI to heal players when incapacitated that would be awesome.

 

Please if you could added the ability use the team switch option when you are incapacitated to switch to another AI character. 

 

Thank you Avibird.

Share this post


Link to post
Share on other sites

I have taken the time to establish this script's issue tracker on github, now linked in the OP. I have compiled the many posts, e-mails, and PMs received by this awesome community and made an issue that references them (and of course credits the poster). Feature requests are also included. If anyone feels there is something missing off of that list, feel free to add it or otherwise let me know so I can add it.

 

As you can see in the closed issues, there has been significant progress over the past few days, largely thanks to community input over the past few years! Big issues with Drag/Carry/Load/Unload bugs have been fixed, issues with locality since BIS_fnc_MP became outdated have been fixed, and respawn now works as intended with the updated MenuPosition dialog. These were the game breakers! Although I still have a few potentially game-breaking bugs to reproduce and, if verified, fix, I believe the heavy lifting is complete. 

 

That said, I am not quite ready to release V0.8. However, for those who want to help test, contribute changes, or just start playing the now-working "dev" version, you can find everything you need on the Grimes Simple Revive github page

 

Thanks again!

  • Like 1

Share this post


Link to post
Share on other sites

@fortun, @Ignotus17, @BunnyLord, @mech79, @airfell, @DroopyPiles, @doktorflan, @runforrest, @Ironman13
 

In what I swear is not an April Fool's joke, I am happy to announce the release of V0.8 of Grimes Simple Revive, available in the OP.  This update includes significant bug fixes in response to ArmA 3 updates from 1.20 to 1.80, mostly 1.60. This includes fixes to game-breaking components of the script such as the Respawn Menu, the Drag/Carry/Load system, and other issues caused by the game's change in handling "public" events. The script now features the new BIS Respawn Menu, the new ragdoll system, a few logic fixes, and a few optimizations allowed by the game updates. The script is also now hosted on Steam Workshop. Take a look at the V0.8 milestone tracker for a more complete changelog, and at the commit history for a comprehensive changelog. 

 

I cannot thank the community enough for the feedback provided over the past few years that has led me to push this update in an efficient manner. With all of those game-breakers fixed and a few minor bugs/features also addressed, I am excited to start work on V0.9 which will be focused more on content and optimization and actually bring new features to the script.

 

Thank you again, and as always, keep the feedback coming.

  • Like 1

Share this post


Link to post
Share on other sites

Very close to completion of AI integration into revive (AI reviving players and eachother, in a realistic manner). I will post about a pre-release with that in a few days. Additionally, game update 1.82 has given this script some additional opportunities for improvement, so stay tuned for an exciting V0.9. 

  • Like 1

Share this post


Link to post
Share on other sites

Always looking for good revive Scripts.

Additional features that would be great to see.

1. The ability to drag carry and load wounded units or dead units.

2. The ability to set a unit do never die ( turn off bleed out time ) so the unit will stay unconscious 

3. The ability to turn off the loot system for medical equipment ie med packs for wounded or killed units. 

 

Avibird ?

 

Share this post


Link to post
Share on other sites
25 minutes ago, avibird 1 said:

Always looking for good revive Scripts.

Additional features that would be great to see.

1. The ability to drag carry and load wounded units or dead units.

2. The ability to set a unit do never die ( turn off bleed out time ) so the unit will stay unconscious 

3. The ability to turn off the loot system for medical equipment ie med packs for wounded or killed units. 

 

Avibird ?

 

 

#1 and #2 already exist in this script for incapacitated units, including friendly AND enemy players and AI (if desired)

For #3 - Can you elaborate? 

Share this post


Link to post
Share on other sites

I am using a AI script I can't recall the name it's only for the AI. The AI will throw smoke and drag wound units units to cover and heal them.it only works for non playable AI units. 

 

One of the cool function is that you can't loot any wound units or dead units to get med packs only weapons and ammo. So in my mission I use a modified BTC quick revive and AIS wound system that the units will never bleedout but I play with limited med packs in missions so you don't have unlimited revives with a trigger to end the missions when all playable units are down incapacitated. I hope you understand ?

Share this post


Link to post
Share on other sites

@KC Grimes

 

This is the AI injured script very cool script adds a lot to mission

http://www.armaholic.com/page.php?id=31843

 

This is the part I was talking about that AI wounded or dead do not have health packs or health kits in their inventory so you can't just pick up random medpacks off of bodies.  When you're playing with no bleedout time this is a must to help balance out the mission.

 

v1.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

Share this post


Link to post
Share on other sites

@avibird 1 I took a look at the script and understand now what you mean by removing medikits and first aid kits. For the sake of realism, I actually encourage the idea of using the incapacitated unit's medical supplies to "patch them up". Although I understand you are trying to reduce the revive capability, this can be done outside of Grimes Simple Revive yet in parallel. That said, this script includes pre-placed "custom executions" that allow the mission maker to execute a certain script upon certain events, such as incapacitation. The unit's status could also be tracked with the variable "G_Unconscious" and, hopefully soon, the engine command "lifeState". When G_Unconscious toggles true you could remove the FAKs, then when it toggles back to false you could add them back in, and just have that cycle for each unit.

  • Like 1

Share this post


Link to post
Share on other sites

Speaking of AI doing cool things, I have made a commit to the master branch on github that adds the ability for AI to revive each other and players. Upon incapacitation of a friendly unit, one nearby AI, who is able to revive, will be assigned to revive the downed unit while a second nearby AI will be assigned to guard the "reviver". All involved AI will then resume normal play once the downed unit is revived. Currently this does not include incapacitated units while they are inside vehicles, and the AI will not respect any FAK or Medikit requirements that may be set for players. Both of these are future features. 

 

Feel free to give it a download on github and test it out. Hopefully I will make another release here soon with even more features and optimizations. 

  • Like 1

Share this post


Link to post
Share on other sites

Hey @KC Grimes Just trying the script as it sounds awesome, one question, how do I get this to run on AI spawned after missions start

Share this post


Link to post
Share on other sites
6 minutes ago, Rockapes said:

Hey @KC Grimes Just trying the script as it sounds awesome, one question, how do I get this to run on AI spawned after missions start

 

Goooood question. I will address this more easily in V0.9.

 

For now, as long as the client that the spawned AI are local to has the system running (they probably do), you should just have to execute the following line:

[_unit] spawn G_fnc_EH;

For right now (this will change), it may be best to ensure that line is executed on all clients via remoteExec. 

[_unit] remoteExec ["G_fnc_EH", 0, true];

If you do not remoteExec it to everyone, there may be some locality issues, specifically if the AI becomes local to a different client (such as a change in squad leader, owner disconnect, etc.)

 

Take a look at G_Revive_Init_Vars.sqf, specifically searching for G_fnc_EH and how it is defined and used. 

 

Let me know how it goes!

Share this post


Link to post
Share on other sites

I got it to work temporarily by executing the following from debug console after spawned or recruiting units

 

{  if (side _x == blufor) then { [_x] spawn G_fnc_EH; }; 
} ForEach AllUnits;

 

Loving it so far, only issue I have encountered on dedicated server ( could be random bug not related to this revive script ) is after a few revives the AI on my squad can no longer be revived ( the ones that had been downed a few times ), ie I dont get the menu option to revive carry etc. I even noticed that the other AI squad members would come over to help but they couldn't either.

 

Love the fact you are continuing to work on this mod, it is awesome.
 

Share this post


Link to post
Share on other sites
1 minute ago, Rockapes said:

I got it to work temporarily by executing the following from debug console after spawned or recruiting units

 

{  if (side _x == blufor) then { [_x] spawn G_fnc_EH; }; 
} ForEach AllUnits;

 

Loving it so far, only issue I have encountered on dedicated server ( could be random bug not related to this revive script ) is after a few revives the AI on my squad can no longer be revived ( the ones that had been downed a few times ), ie I dont get the menu option to revive carry etc. I even noticed that the other AI squad members would come over to help but they couldn't either.

 

Love the fact you are continuing to work on this mod, it is awesome.
 

 

Take a look at G_Revive_init.sqf. You'll notice a setting "G_Revive_DownsPerLife". This limits the number of incapacitation events per life, at which point the unit will be forced to respawn. Another setting that may be involved is "G_Num_Respawns", which will not respawn the unit if limited. 

 

Thanks for playing, glad you like it. More to come. 

Share this post


Link to post
Share on other sites

Grimes awesome work sir.

 

Are you going to use the now (1.82) default revive way of handling dead players in a vehicle?

 

Tweaked: Changes to the Revive system:
Players incapacitated in vehicles are no longer automatically killed
Incapacitated crew can now be unloaded from their vehicle using a new action

 

Share this post


Link to post
Share on other sites
8 minutes ago, Jnr4817 said:

Grimes awesome work sir.

 

Are you going to use the now (1.82) default revive way of handling dead players in a vehicle?

 


Tweaked: Changes to the Revive system:
Players incapacitated in vehicles are no longer automatically killed
Incapacitated crew can now be unloaded from their vehicle using a new action

 

 

In V0.9 I will be addressing numerous changes and improvements to the BIS Revive system from 1.82 (remember, my goal is to be as stock as possible while meeting common mission needs). These commits are already in github. Grimes Simple Revive has long had the ability to both Load and Unload incapacitated units into vehicles. The issue that BIS had with setUnconscious was something I worked around while still being able to use the ragdoll. Now that they have greatly improved upon setUnconscious and the associated "Unconscious" animation, I have simplified my Load/Unload process. To the front-end user, my version of Unload looks no different than the BIS version of Unload. What sets this script apart is that you can also Load. 

 

The reason that I play with Grimes Simple Revive instead of BIS Revive, even now, is because of a few things:

1. Greater flexibility, while remaining simple

2. Completely documented!

3. Use of Load/Unload

4. Use of Drag (Carry will always be "meh")

5. Most importantly... Implementation of AI.

Share this post


Link to post
Share on other sites

Can I ask for one very small request. 

When down if possible to not lose control of your squad. 

So far only revive system that doesnt is A3 Wounding

 

If not due to BI revive all good as still love this updated version:don11:

Share this post


Link to post
Share on other sites
1 hour ago, Rockapes said:

Can I ask for one very small request. 

When down if possible to not lose control of your squad. 

So far only revive system that doesnt is A3 Wounding

 

If not due to BI revive all good as still love this updated version:don11:

 

This is indeed a result of the use of setUnconscious, and it is actually one that I do not really mind as it is somewhat realistic. You won't be giving orders if you are incapacitated. 

 

That said, for those who utilize the squad member UI indicators, this may pose an issue. I do plan on at some point using a 3D object to indicate an incapacitated unit, similar to what you see in BIS revive. 

Share this post


Link to post
Share on other sites

I understand the incapacitpated concept, only issue is with the AI I cant issue any orders whilst in single player so when Im down I cant tell them to heal me and the NEW AI squad leader that takes over quite mildly doesnt give a stuff about his old boss...lol

Share this post


Link to post
Share on other sites

@Rockapes very issues fix.

1. Download a script cool automatic medic. The medic in your squad which is not playable will heel any wounded unit within a set distance from him. I usually keep two medics in my squad 1 playable one using the script. 

 

2. If you playing with AI and  mostly single player player just use team switch in your mission. When your unit is down just switch to a new member and if you are not the new team leader he will order the medics to heal the old you.?

Share this post


Link to post
Share on other sites
42 minutes ago, avibird 1 said:

@Rockapes very issues fix.

1. Download a script cool automatic medic. The medic in your squad which is not playable will heel any wounded unit within a set distance from him. I usually keep two medics in my squad 1 playable one using the script. 

 

2. If you playing with AI and  mostly single player player just use team switch in your mission. When your unit is down just switch to a new member and if you are not the new team leader he will order the medics to heal the old you.?

Hey mate, thanks for the info. I did check out the medic script/mod but since AI are spawned after mission start on most missions I play using zeus / recruit script it doesnt seem to activate  ( works on AI in mission at start ) unless I missed something.

As for team switch the main missions I play dont support team switching, bit of a bummer 

Share this post


Link to post
Share on other sites

@Rockapes Keep in mind that V0.8 does include revivable AI, but not AI that perform revive. So unless you downloaded the latest commits specifically, you would not have a version of the script that has the scripts included for AI to revive each other and players. I assure you it works well, even when an AI is the squad leader. No need for team switch.

 

Here in a few days I will try to push out a V0.85 if not V0.9, so folks can start to play with the fully integrated AI. 

Share this post


Link to post
Share on other sites

Thanks mate, I did get your master branch version but when I went down the AI started running away from the engagment zone rather than healing me. That was on a dedicated server. Also with the AI issue that I encountered with not being able to revive them I did have the number of incapacitations set as zero which if I remember correctly was unlimited. But I will double check the settings. Thanks again

Share this post


Link to post
Share on other sites
7 hours ago, Rockapes said:

Thanks mate, I did get your master branch version but when I went down the AI started running away from the engagment zone rather than healing me. That was on a dedicated server. Also with the AI issue that I encountered with not being able to revive them I did have the number of incapacitations set as zero which if I remember correctly was unlimited. But I will double check the settings. Thanks again

 

Interesting, thanks for the note. I need to do a pass through on locality, but did not realize it was that bad. Will let y'all know when I progress.

 

Regarding number of lives, a value of -1 indicates unlimited, and 0 is a true value of 0 (ie, no respawn). 

Share this post


Link to post
Share on other sites

Put in a pretty solid optimization commit today, hoping to get back to features.

 

@Rockapes Played around with the script a bit today on Dedicated and can confirm that your AI brethren have not forgotten about you, they just really, really want to forget about you when you are not the squad leader. Taking around 3 minutes to travel 50m while in combat to do a revive. It is a fairly "basic" behavior system at this point, involving setBehavior and maintaining group integrity (2 things that really do not go together). The alternative to this is the "CARELESS" behavior which, although fast, results in cringe-worthy combat behavior. I will see about making what I have now a little more detailed in order to get a more desired (read: direct) revive approach. Thanks for testing. 

 

Check out the master branch now. Added in the following:

_unit disableAI "TARGET";
_unit disableAI "SUPPRESSION";
_unit disableAI "COVER";
_unit disableAI "AUTOCOMBAT";

and countered it once appropriate. Seems to have done the trick. They will bump from SAFE to AWARE, but won't go to COMBAT (and start proning around everywhere). Additionally they will focus less on cover, and not be as effected by incoming fire. Finally, they will still engage their own targets while on their path and at the victim, but they won't be distracted by the squad leader's orders. I gave this some testing on Dedicated with an AI squad leader, and it seemed to help quite a bit while still being reasonably realistic. Let me know what y'all think. 

  • Like 2

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

×