PDA

View Full Version : Revive Script



Pages : 1 [2] 3 4

[GLT] Legislator
Sep 27 2009, 13:39
Oh my god :( That's not good to hear. Get some rest and take your breath. I can image how hard and time affording this project is.

Matte54
Sep 27 2009, 15:06
Sorry if this has already come up but there is alot to read through
Is there any possibility to include revive in PvP for both sides?
if not is that kind of function planned?

Norrin your great work has improved gaming in my community big time , thank you for your hard work!

kylania
Sep 27 2009, 15:57
Is there any possibility to include revive in PvP for both sides?
if not is that kind of function planned?

This was covered earlier in the thread. Just use a separate revive script for each side.

RedRacer
Sep 28 2009, 05:07
I believe that this is possible with one revive script running. The only drawback i can see is the fact that only one mhq is usable atm within the script.

[GLT] Legislator
Sep 28 2009, 20:19
Norrin, I've got a bad message for you :( Do you remember the mission you fix for me? Well .. I didn't change anything and started the mission on the 1.04 dedicated server. The mobile respawn didn't work again! So I did some tests because I had several addons running. I removed the Community Base Addon & Extended Eventhandler from the mod directory and started the mission again - mobile respawn worked again.

I guess some the (extended?) event handlers are not compatible with your revive script :(

Maybe you can reproduce it?! If not, let me send you the mission again.

shanawa
Sep 29 2009, 23:37
So I have 2 helicopters and 4 soldiers that are playable. The problem I am having is the 2 helicopter names don't seem to work on the crew inside them. I would just create an empty vehicle and put in individual soldiers to make it work but when I do the helicopters don't unload transport very well but they do when I use a preloaded one. So does anyone know how I would name the individual crew members inside a preloaded vehicle so I can get the revive script to work on them?

Matte54
Sep 29 2009, 23:56
Anyone got the problem that if a player is rendered "unconsious" he just lands on his back says ouch and then rolls over on his stomach lying there looking normal like hes lying down aiming. but still waiting for revive?

I have seen this on the last few updates of the script, the mechanics works perfectly but it just looks anoying :P

Edit : problem is solved thanks Norrin!

SFisher
Sep 30 2009, 16:06
Norrin, thanks for the revive sripts! I am interested in how I change revive parameters, so that they become Param3, while you have them in the script is set Param2 ???

Pardon me for my bad English... =)

JW Custom
Sep 30 2009, 17:16
Edit : problem is solved thanks Norrin!

So how did you solve it?

Maybe other people could benefit from your solution :)

Harry747
Oct 1 2009, 03:47
Hi all

I am trying to solve a problem for one of our players.

Whilst playing Domination missions (which uses this script), if he is shot and killed we cannot revive him or drag his body. Whilst he is laying wounded he cannot see his body. After the 240+ seconds has elapsed he does not get the option to re-spawn at either the base or MR1/2.

Everyone else can be revive/dragged, get s the option after 45+ seconds to respawn etc. I ahve had him create a new profile and the same issues occur. He does not have the same issue on any other server (other than our server).

I am certain that DOM uses the "Revive AI-disabled" script , and he is the only one to get a message to say so!

Has anyone else experienced this? It just seems so odd that it only affects one player, and for the life of me i cannot see what would cause it.

Any suggestions on how to fix this. As you can understand it is very annoying for him to leave the game and rejoin every time he is shot!

Cheers Harry

vengeance1
Oct 1 2009, 04:19
Hi all

I am trying to solve a problem for one of our players.

Whilst playing Domination missions (which uses this script), if he is shot and killed we cannot revive him or drag his body. Whilst he is laying wounded he cannot see his body. After the 240+ seconds has elapsed he does not get the option to re-spawn at either the base or MR1/2.

Everyone else can be revive/dragged, get s the option after 45+ seconds to respawn etc. I ahve had him create a new profile and the same issues occur. He does not have the same issue on any other server (other than our server).

I am certain that DOM uses the "Revive AI-disabled" script , and he is the only one to get a message to say so!

Has anyone else experienced this? It just seems so odd that it only affects one player, and for the life of me i cannot see what would cause it.

Any suggestions on how to fix this. As you can understand it is very annoying for him to leave the game and rejoin every time he is shot!

Cheers Harry

I am not sure I can answer your question or if NORRIN can as XENO who wrote the Domination Revive Version has modified NORRIN's script heavily. Assuming you have not modified Xeno's Version in any way then it has to be something on your Clients side. A Mod conflict or ping rate too long, I would suggest you look at both first. Mind you the version of Revive that Xeno is using is quite old.

Harry747
Oct 1 2009, 04:53
Appreciate the information, I will try to send Xeno a message.

cheers Harry

Natalon
Oct 1 2009, 16:31
I'm useing in the Xeno-revive-version from his domination-maps in my map and have a simple (?) question:

How can I change the hight of the base_respawn_1? I would like to place the revive-respawn-marker on a scripted LHD, but everytime some uses the respawn back to main-base ends in the water UNDER the LHD.

Can anyone help or has some ideas?

vengeance1
Oct 1 2009, 17:05
Not simple at all unfortunately, I would not use Xeno's Revive in your mission as NORRIN has already setup his New Version to use the LHD as a Spawn Point.

andersson
Oct 1 2009, 18:38
I also want to announce that I'm taking a backward step from the community. I'll still be updating the revive script for new patches, I may even add some new features from time to time but I won't be supporting this script or any of my other work to the same extent as previously.

This means I won't be answering PMs or emails for help any more - I'm very sorry about this but its been getting a little out of hand recently and I simply can't help everyone who asks for scripting/addon help and advice and maintain my own sanity, which is questionable at the best of times.

Understandable. Im very glad that you will continue to support your revive through the patches as this is essential for me :)
Thank you!

Natalon
Oct 1 2009, 22:12
Not simple at all unfortunately, I would not use Xeno's Revive in your mission as NORRIN has already setup his New Version to use the LHD as a Spawn Point.

I've tested the new scripts with a scripted carrier and I used a MV-22 instead the AAV7 on the carrier. It works with the AAV7 and the MV-22 very well, but i think the new respawn-script is to extensive for a domination map.

Is it possible to transfer the respawnSpecial into the "old" revive-script (version 1.4) with this function only to respawn in a vehicle?

MugAben
Oct 2 2009, 15:25
I'm using this as a template for my mission. I have only changed the players names...s1,s2 to accomodate up to 10 players.

Most of the time, people are able to revive. I dont want any respawns. The game will end when everyone is unconcious, but occasionally when a player dies they simply respawn straight away at the Respawn_West marker (which i have placed miles away from boot_hill or the combat) (does this have to be in, if I dont want respawns?)

Why is this happening?

Cheers

How did you fix this? I could use a solution to this aswell. :yay:

jmkkkk
Oct 4 2009, 11:45
Hello,

I am trying to change the weapons in the ammo box
created by deploy_camo.sqf.


I try to add :
null = _vcl execVM "ammo.sqf";

But it doen't work.

Thanks for your help and thanks for your revive script.

norrin
Oct 4 2009, 20:38
Try something like this:
switch (playerSide) do
{
case west: {_ammo = "USSpecialWeaponsBox" createVehicle [(_pos_vcl select 0) + (4 * sin (_dir_vcl + 90)), (_pos_vcl select 1) + (4 * cos (_dir_vcl + 90)) , 0];};
case east: {_ammo = "RUBasicAmmunitionBox" createVehicle [(_pos_vcl select 0) + (4 * sin (_dir_vcl + 90)), (_pos_vcl select 1) + (4 * cos (_dir_vcl + 90)) , 0];};
case resistance: {_ammo = "GuerillaCacheBox" createVehicle [(_pos_vcl select 0) + (4 * sin (_dir_vcl + 90)), (_pos_vcl select 1) + (4 * cos (_dir_vcl + 90)) , 0];};
};

_ammo setVehicleInit "nul = [] execVM 'ammo.sqf'";
processInitCommands;

jmkkkk
Oct 5 2009, 23:23
It doesn't work for me.
Here the script and your modification.

/*
DEPLOY CAMO SCRIPT

© norrin, April 2008
***********************************************************************************************************************************
deploy_camo.sqf
*/

_vcl = _this select 0;
_pos_vcl = getPos _vcl;
_dir_vcl = getDir _vcl;

switch (playerSide) do
{
case west: {_the_box ="USBasicWeaponsBox" createVehicle [_pos_vcl select 0, (_pos_vcl select 1) - 2, (_pos_vcl select 2) - 4];};
case east: {"RUBasicWeaponsBox" createVehicle [_pos_vcl select 0, (_pos_vcl select 1) - 2, (_pos_vcl select 2) - 4];};
case resistance: {"GuerillaCacheBox " createVehicle [_pos_vcl select 0, (_pos_vcl select 1) - 2, (_pos_vcl select 2) - 4];};
};

_the_box setVehicleInit "nul = [] execVM 'ammo.sqf'";
processInitCommands;

_vcl setFuel 0;
_camo = "Land_CamoNetB_NATO" createVehicle _pos_vcl;
_camo setDir (_dir_vcl + 90);
_camo setPos [(_pos_vcl select 0) + (sqrt (4) * cos (155 - _dir_vcl)), (_pos_vcl select 1) + (sqrt (4) * sin (155 - _dir_vcl)) , 0];

NORRN_camo_net = true;
publicVariable "NORRN_camo_net";
_vcl removeAction NORRN_l_spawn_act;

if (true) exitWith {};

uait
Oct 6 2009, 01:02
hi :)

somone know why sometimes people that are killed spawn in 152.000?

they cant play anymore if they dont exit and rejoin the map...

the corps remain on ground but playable unit go in 152.000 on north of map

norrin
Oct 6 2009, 22:25
F2 Mission Development Framework now includes the revive scripts

http://www.norrin.org/images/F2_logo_135x135.gif

My friends over at F2 have kindly agreed to incorporate the revive scripts as part of their Mission Development Framework as this has been requested by a number of people over the last few months.

You can get the latest release of F2 that includes revive from here:
http://forums.bistudio.com/showthread.php?t=81694

The Framework simplifies and takes the guess work out of mission making and is just the thing for both budding and experienced mission builders. It also has some really great additional features and scripts that can really add that little bit of shine to your missions.

The best thing about it is that its been thoroughly tested and because its all script based no ugly addons are needed so anyone can jump in and play your missions. The final thing is that the F2 components are very well documented and the scripts are all annotated so its easy to see why the scripters have used certain types of code, if you're trying to learn more about how these things work.

I thoroughly endorse this concept as its been helping misison makers all the way back to the old days of OFP.

[GLT] Legislator
Oct 7 2009, 09:01
I hope there's still an independent release of the script ;) F2 sounds good, but we're using our own framework solution to get things done.

Btw, I had no time to test the CBA vs. mobile respawn issues with the CBA fix :( Seems like I've got hardware issues at home. :cry:

gnarly_rider
Oct 9 2009, 08:00
Searched and searched, but I think I'm simply going blind. We use Norrins Revive exclusively on all of our Coop missions, and the PDF says the version we are using is for Coop AI supported play. But it also mentions a non-AI TvT version, I'm assuming of the revive_init.sqf??

Where can I find this version (if I'm not guestimating badly)? Or has anyone built a TvT mission using Revive for each side? Example mission would be appreciated, or a link to a post on this topic. Tx muchly!

jmkkkk
Oct 9 2009, 15:26
Norrin give me the right code for changing the ammo
in the case.

deploy_camo.sqf :


switch (playerSide) do
{
case west: {_ammo = "USSpecialWeaponsBox" createVehicle [(_pos_vcl select 0) + (4 * sin (_dir_vcl - 90)), (_pos_vcl select 1) + (4 * cos (_dir_vcl - 90)) , 0];};
case east: {_ammo = "RUBasicAmmunitionBox" createVehicle [(_pos_vcl select 0) + (4 * sin (_dir_vcl - 90)), (_pos_vcl select 1) + (4 * cos (_dir_vcl - 90)) , 0];};
case resistance: {_ammo = "GuerillaCacheBox" createVehicle [(_pos_vcl select 0) + (4 * sin (_dir_vcl - 90)), (_pos_vcl select 1) + (4 * cos (_dir_vcl - 90)) , 0];};
};

_ammo setVehicleInit "nul = [this] execVM 'ammo.sqf'";
processInitCommands;



Thanks Norrin.

norrin
Oct 9 2009, 21:09
Geez I'm feeling hung this morning. :803:

@<hidden> - check this post here mate: http://forums.bistudio.com/showpost.php?p=1431479&postcount=209

@<hidden> - didn't you send me a mission that I fixed and sent back - I guess that was someone else - anyway try

_ammo = objNull;
switch (playerSide) do
{
case west: {_ammo = "USSpecialWeaponsBox" createVehicle [(_pos_vcl select 0) + (4 * sin (_dir_vcl - 90)), (_pos_vcl select 1) + (4 * cos (_dir_vcl - 90)) , 0];};
case east: {_ammo = "RUBasicAmmunitionBox" createVehicle [(_pos_vcl select 0) + (4 * sin (_dir_vcl - 90)), (_pos_vcl select 1) + (4 * cos (_dir_vcl - 90)) , 0];};
case resistance: {_ammo = "GuerillaCacheBox" createVehicle [(_pos_vcl select 0) + (4 * sin (_dir_vcl - 90)), (_pos_vcl select 1) + (4 * cos (_dir_vcl - 90)) , 0];};
};

_ammo setVehicleInit "nul = [this] execVM 'ammo.sqf'";
processInitCommands; Then make sure in your ammo.sqf that the first line says something like
_crate = _this select 0; and then add your ammo to _crate in this script.

gnarly_rider
Oct 10 2009, 01:02
Geez I'm feeling hung this morning. :803:

@<hidden> - check this post here mate: http://forums.bistudio.com/showpost.php?p=1431479&postcount=209



You're not alone there Norrin, 3:30am I think a little bunch of ZSU guys finished...

And I thought you were taking a break from directly supporting your script??? :)

Cheers mate for that!

JW Custom
Oct 10 2009, 13:08
Can anyone tell me howto configure revive script so when revive timer runs out you die wether you have lives left or not?

I have tried many settings but i can't seem to get it right :(

vengeance1
Oct 10 2009, 14:16
Can anyone tell me howto configure revive script so when revive timer runs out you die wether you have lives left or not?

I have tried many settings but i can't seem to get it right :(

Check these parameters

_revive_timer = 1; //array no.7 - Whether you want to limit the amount of timer a player has while unconscious
_revive_time_limit = 300; //array no.27 - Amount of time a player remains unconscious before respawning or dying

_respawn_position = 2; //array no.28 - 0 - respawn at base_1; 1 - the closest enemy free respawn point; 2 - players choice; and 3 - dies

JW Custom
Oct 10 2009, 14:24
Check these parameters

_revive_timer = 1; //array no.7 - Whether you want to limit the amount of timer a player has while unconscious
_revive_time_limit = 300; //array no.27 - Amount of time a player remains unconscious before respawning or dying

_respawn_position = 2; //array no.28 - 0 - respawn at base_1; 1 - the closest enemy free respawn point; 2 - players choice; and 3 - dies

Thanks m8, actually just got it working by:

_respawn_position = 3;

Should it be 2 instead ?

vengeance1
Oct 10 2009, 14:47
No I was just pointing you in the direction of parameters.

JW Custom
Oct 10 2009, 14:55
No I was just pointing you in the direction of parameters.

Rgr, thanks appreciated :)

norrin
Oct 12 2009, 22:14
These are the planned bug fixes for the next version.
1. Enemy AI shooting at unconscious units
2. Fix for having call-out voices disabled and correct unconscious animations
3. Fix for base marker dependency when using the mobile spawn scripts

Note at this point I'm not interested in new feature requests but are there any other bugs I've forgotten?

vengeance1
Oct 13 2009, 13:06
Thanks NORRIN for finishing it up.

PeterEyres
Oct 16 2009, 11:20
Hi guys,

How would I go about configuring the script so you can only revive someone once they are inside the Warfare Field Hospital.

I see the option in the script, i have turned that on, i see you also have to define something after turning it on, is this simply a name for the field hospital, or does it have to be the name of a marker over the field hospital.

Also how would I go about making that the ONLY way to revive someone.

Matte54
Oct 18 2009, 17:21
Hi guys,

How would I go about configuring the script so you can only revive someone once they are inside the Warfare Field Hospital.

I see the option in the script, i have turned that on, i see you also have to define something after turning it on, is this simply a name for the field hospital, or does it have to be the name of a marker over the field hospital.

Also how would I go about making that the ONLY way to revive someone.

It is put on as stanard that u can revive people by putting them in the MASH tent, though you can just add the warfare hospital in the array and it should work the same way.

as for only having tents and such for revive just remove "soldierWB" in array18 (can_revive)

norrin
Oct 20 2009, 22:31
Revive Script 0.3f Update

Download
http://norrin.org/downloads/ArmA2/revive/AI_enabled/Revive_TEST_03f.utes.rar - if you're updating just replace the revive_sqf folder with the one in the test mission

Fixes
There's very little change really just attempted fixes for a couple of lingering bugs:

1. AI no longer target unconscious units
2. Animations work correctly now if call-out is disabled
3. When using the mobile spawn option the script automatically uses _base_2 as the starting point for the mobile spawn marker - there is no longer a need to create a "base" marker on the map for mobile spawn. - Note: updated the readMe to reflect this change

If you get a chance to try it let me know if you run into any problems.

Many thanks,

norrin

vengeance1
Oct 21 2009, 12:47
Thanks so much for continuing the updates.

Question:

If you now don't need "base" marker when using Mobile Spawn and we update missions do we need to make any changes.

PeterEyres
Oct 21 2009, 17:35
It is put on as stanard that u can revive people by putting them in the MASH tent, though you can just add the warfare hospital in the array and it should work the same way.

as for only having tents and such for revive just remove "soldierWB" in array18 (can_revive)

ah sounds logical, I will try it out:)

norrin
Oct 21 2009, 20:34
Thanks so much for continuing the updates.

Question:

If you now don't need "base" marker when using Mobile Spawn and we update missions do we need to make any changes.

The short answer is no - as long as you have 2 markers in your mission set-up in the revive_init.sqf then it should work fine eg.


_base_1 = "mobile";
_base_2 = "mission_start";

There's also no need to delete the "base marker", just replace the revive_sqf folder with the new one and you should be good to go - but let me know if you run into any problems when you try this vengeance.

Revive 0.3f: http://norrin.org/downloads/ArmA2/revive/AI_enabled/Revive_TEST_03f.utes.rar
XDF DESCAM units: http://www.armaholic.com/page.php?id=7793

MCPXXL
Oct 22 2009, 18:57
Mobile bug stays ...


Mission in MP Editor local all is fine including Mobile
Dedicated Server fails mostly

Where is the differnece between local mp and dedicated ?

norrin
Oct 22 2009, 23:08
Hi MC,

There really hasn't been much of a change in the mobile spawn code since the previous version so I'm not surprised if you were having it before that the problem is still occurring.

Thing is I'm having a great deal of trouble replicating this error. The only times I have been able to do so is when using addons that use extended eventhandlers (apparently these are incompatible with version 1.04 and Sickboy is working on a fix: http://forums.bistudio.com/showthread.php?t=78622&page=13 ) and when there was a problem with an older version of SLX's ragdoll addon. In my own missions on a dedicated server I've never had a problem nor do a couple of groups that I know of who routinely use the mobile spawn revive in their missions since the release of 1.04 (I'll check again and make sure though) - that doesn't mean there isn't a problem just that I'm having trouble narrowing down. Anyway you'll see my PM.

norrin

Dasca
Oct 23 2009, 16:32
Hi Norrin

I'm using your superb revive script in my MP mission I've found just a little problem which I try to fix with no luck.
It's possibile to leave the GEAR action while the "deadbody" is waiting to be revived?
I really need this feature because in MP mission sometimes BLUEs need to take some object back to base but if some REDs shot at the BLUE soldier who is carring the object after that the RED soldier couldnt take it.

One more info... we use only revive no respawn :)

thank you

Dasca

AndresCL
Oct 25 2009, 18:59
Thanks for the script norrin, its awesome.

Now, im having a bit of a trouble when implementing the revive to my mission. Im not sure what the problem is.

Anyway, im using US Army 2009 units as the playable units, named them and all that stuff, and gave the option only to the medic to revive, but instead of going unconcious they just respawn to base. Im a bit new to using your script, so if you could help me out a bit, it would be great.

norrin
Oct 25 2009, 21:36
I'm sorry guys, I'm busy working on other projects at the moment so I won't be adding any new features to the revive scripts or doing one off modifications - so there's no point in asking. However, I will be fixing bugs, optimising the existing code (just got a new one today from barmyarmy) and also updating the scripts to make them compatible with new ArmA patches. Some time in the future I will come back to this as there is a lot I'd like to add (a more sophisticated wound system for instance) but its going to have to wait for now.

Once again my apologies,

norrin

Chaostika7-17th
Oct 25 2009, 22:44
Revive Script 0.3f Update

Download
http://norrin.org/downloads/ArmA2/re...T_03f.utes.rar - if you're updating just replace the revive_sqf folder with the one in the test mission


http://i147.photobucket.com/albums/r286/vincent999_bucket/profil/thank-you.jpg

thx alot norrin, for your great work and 4 continuing in updating the script to make it compatible with new arma patches in the future!
your the man, good luck and all the best 4 your other projects!!

Fer
Nov 2 2009, 00:26
FYI the latest version of Norrin's Revive Script (0.3f) is now integrated with the latest build of F2 (http://forums.bistudio.com/showthread.php?t=81694) (v2-1-2). Norrin dropped me the updated files a few days ago, apologies I was not able to upload the new build earlier.

bartkusa
Nov 2 2009, 05:51
I have a stupid question: What does this script do, and why would I want to use it instead of the built-in First Aid Modules? Assume I'm not interested in any respawn functionality, just revive.

I wasn't able to find a feature list on the first page of this thread, in the F2 docs, or in this PDF file: http://www.ferstaberinde.com/f2/downloads/revive_readMe.pdf.

Lightninguk
Nov 3 2009, 11:06
not sure if it been ask but here goes at thestart of a mult player mission i get s1/s2 player is unconscious please return to start of missions and pick again but if i pick s3 it work any ideai why i get this error thanks for your time in this matter

kampfgeist
Nov 3 2009, 13:35
Not sure if I get you right.. but have you double checked the unit names in the editor and the script itselfs... I think I had that error once I didn't name the units right...

example..

in the sript you called your units P1,P2 and P3..
but in the editor you named them S1,S2 and P3.. so if you play with S1 or S2 the script can't find them and say the are unconscious...

Not totally sure, but I'd double check that..

Lightninguk
Nov 3 2009, 13:46
yer check that and it ok any more ideais

here it is but is only s1 s2 that start the game unconscious andthen it says please return to start of missions and pick a diff unit but just test it with the unit not in a built up base and it ok so that ok aslong asi start them outside the base


// LIST OF PLAYABLE UNITS
NORRN_player_units = ["s1","s2","s3","s4","s5","s6","s7","s8","s9","s10","s11","s12","s13","s14","s15","s16","s17","s18","s19","s20"];
// ==================================================================

JW Custom
Nov 3 2009, 14:44
yer check that and it ok any more ideais

here it is but is only s1 s2 that start the game unconscious andthen it says please return to start of missions and pick a diff unit but just test it with the unit not in a built up base and it ok so that ok aslong asi start them outside the base

Try make a little space between units make sure they got enough room. If that doesn't help then also try set units Special to None.

These things worked for me!

norrin
Nov 3 2009, 22:44
@<hidden> bartkusa - you've asked a question that I've been dreading answering, but here it goes:

What does the revive script do?
In its most basic form the revive script offers an alternative to the built in respawn function provided by BIS - it only works in MP missions. Essentially when a player is killed rather than dying and respawning at base he falls unconscious where he was shot and then he can be revived by another player and start from where he was killed, with the same weapons and ammo he was carrying.

While the player is lying unconscious waiting to be revived he can spectate any of the other units in his team using a range of cameras.

The script is designed to enforce team play as the only way you 're going to respawn is if some one comes to you aid.

You can see an old video showing (from 2 and a half years ago) showing this basic functionality here: http://www.youtube.com/watch?v=0zdcLWKcM5w - mind you it’s a lot more refined than this now eg. additional camera functionality amongst other things.

Now that's the script in its simplest form but there are a myriad of additional options.
These include but are not limited to:
* Can enforce a set number of lives per player before he is declared dead outright
* Enable a revive time which if it elapses results in (your choice of) player death, automatic respawn at base or the players choice of multiple respawn points
* You can limit who can revive, for instance may specify that only medics can revive.
* Unconscious bodies can be dragged and carried, loaded onto vehicles and taken to specified CASEVAC points to be revived.
* Bleeding and bandages can be enabled - when damage reaches a certain level a unit starts bleeding - this can be stopped with bandages, if bandaging does not occur bleeding can cause unconsciousness - it also causes temporary black-outs
* You can also designate the number of revive packs a player carries so that he may only be able to revive lets say 3 players before he has to restock at a MASH tent
* Possibility of a mobile respawn point, either player or vehicle based
* The scripts are playable AI compatible and there are options so that playable AI automatically move to and revive unconscious team mates or only come to the aid of a player if he calls for help (an option to the player while unconscious) - or if sent by the team leader to help another player or unit.
* If using AI you can specify that the AI throw smoke when attempting to revive as well as have a second AI unit provide cover while the other revives.
etc etc.
* Revived units can be given damage so that they are not a full health once the regain consciousness.

Using these options, the basic game play of ArmA2 can be made easier or a hell of a lot harder - most importantly they will hopefully enforce team play in the MP environment.

@<hidden> Lightninguk - It sounds like your respawn marker (eg respawn_west) is too close (within 100 metres) to where your playable units start the mission. If this is the case try moving respawn_west a lot further away.

bartkusa
Nov 3 2009, 23:54
@<hidden> bartkusa - you've asked a question that I've been dreading answering, but here it goes:...

I'm really glad you answered it :D

The video looks a lot like ArmA2's First Aid module. Looking at your broad feature list, it looks like the differences are:
Smarter AI (smoke, cover)
More configurable (max # revives, configurable time to bleeding-unto-death)
Bleeding + bandages
Loading bodies onto vehicles


If I'm not going to use the (impressive) respawn functionality, I'm not sure it's worth using this over the built-in First Aid module.

AndresCL
Nov 4 2009, 00:05
not sure if it been ask but here goes at thestart of a mult player mission i get s1/s2 player is unconscious please return to start of missions and pick again but if i pick s3 it work any ideai why i get this error thanks for your time in this matter

That may happen if:

- You didint set up the players name in the editor as you wrote it in the revive_init.sqf (it has to be the SAME name on both the editor and the script)

- The respawn marker (respawn_west, respawn_east, etc) its at the same location of the players respawn, to fix this you have to move the marker away and it should work

RonnieJ
Nov 5 2009, 21:40
I dont know why but I can get this thing to work proberbly... I only need the revive bit and thats the only thing I cant get to work.

When I shoot a teammate I get no revive option and the player is plain dead on the ground not in the "hurt" state.

I tryed to change the test mission posted by norrin but nothing... I made 2 players s1 / s2 West soliders... and added:

/ LIST OF PLAYABLE UNITS
NORRN_player_units = ["s1","s2","s3","s4","s5","s6","s7","s8"];

/ UNITS THAT CAN REVIVE/UNITS THAT CAN BE REVIVED
_can_revive = "soldierWB"; //array no.18
_can_revive_2 = "soldierGB"; //array no.19
_can_revive_3 = ""; //array no.72
_can_revive_4 = ""; //array no.73
_can_be_revived = "soldierWB"; //array no.20
_can_be_revived_2 = "soldierGB"; //array no.21

norrin
Nov 7 2009, 02:56
Revive Update Version 0.3g (7th November 2009)

Had a chance to actually play a couple of missions that use the script over the last couple of weeks and realised the revive timer count down was hopelessly inaccurate so I've tweaked the code - it should now only be a couple of seconds out after a 300 second revive time limit rather than 30 seconds out. I've also fixed the anti-water code to make it more compatible with AI and removed the second death that occurs after washing ashore so the number of deaths on the scoreboard should accurately reflect the number that have occurred. If you get the swimming on dry land bug please let me know.

Download
http://norrin.org/downloads/ArmA2/revive/AI_enabled/Revive_TEST_03g.utes.rar

You know the drill - if you're a repeat offender then just copy the new revive_sqf folder over the existing one in your mission

[GLT] Legislator
Nov 7 2009, 08:42
Great work, thanks :) You'll be glad to hear that I haven't found any bugs in weeks now.

Cool Breeze-ICON
Nov 7 2009, 10:33
Hi All,

Can I drag/carry injured players if I set the game to "no revive"?


Thanks

Cool Breeze

[GCA] Salah ad Din
Nov 7 2009, 13:41
@<hidden> bartkusa - you've asked a question that I've been dreading answering, but here it goes:

What does the revive script do?
In its most basic form the revive script offers an alternative to the built in respawn function provided by BIS - it only works in MP missions. Essentially when a player is killed rather than dying and respawning at base he falls unconscious where he was shot and then he can be revived by another player and start from where he was killed, with the same weapons and ammo he was carrying.

While the player is lying unconscious waiting to be revived he can spectate any of the other units in his team using a range of cameras.

The script is designed to enforce team play as the only way you 're going to respawn is if some one comes to you aid.

You can see an old video showing (from 2 and a half years ago) showing this basic functionality here: http://www.youtube.com/watch?v=0zdcLWKcM5w - mind you it’s a lot more refined than this now eg. additional camera functionality amongst other things.

Now that's the script in its simplest form but there are a myriad of additional options.
These include but are not limited to:
* Can enforce a set number of lives per player before he is declared dead outright
* Enable a revive time which if it elapses results in (your choice of) player death, automatic respawn at base or the players choice of multiple respawn points
* You can limit who can revive, for instance may specify that only medics can revive.
* Unconscious bodies can be dragged and carried, loaded onto vehicles and taken to specified CASEVAC points to be revived.
* Bleeding and bandages can be enabled - when damage reaches a certain level a unit starts bleeding - this can be stopped with bandages, if bandaging does not occur bleeding can cause unconsciousness - it also causes temporary black-outs
* You can also designate the number of revive packs a player carries so that he may only be able to revive lets say 3 players before he has to restock at a MASH tent
* Possibility of a mobile respawn point, either player or vehicle based
* The scripts are playable AI compatible and there are options so that playable AI automatically move to and revive unconscious team mates or only come to the aid of a player if he calls for help (an option to the player while unconscious) - or if sent by the team leader to help another player or unit.
* If using AI you can specify that the AI throw smoke when attempting to revive as well as have a second AI unit provide cover while the other revives.
etc etc.
* Revived units can be given damage so that they are not a full health once the regain consciousness.

Using these options, the basic game play of ArmA2 can be made easier or a hell of a lot harder - most importantly they will hopefully enforce team play in the MP environment.

@<hidden> Lightninguk - It sounds like your respawn marker (eg respawn_west) is too close (within 100 metres) to where your playable units start the mission. If this is the case try moving respawn_west a lot further away.

Wow, I didn't know your script contains all those options, because most servers that even use it, just let everyone revive everyone as often as they want.

Question: I suppose if someone drops unconscious, bleeding is pointless, since his hitpoints probably are already zero. A timer could limit the time span for a possible revive, simulating people bleeding out.
Is it possible to stop such a timer while people are loaded into a Medevac, simulating casualties being stabilized?

What I would love to see implemented is a limited number of bandages for bleeding, one or two for regular soldiers, ten for Medics.

norrin
Nov 7 2009, 20:13
@<hidden> Breeze - if the "no revive" option is chosen in the mission start-up screen then the units respawn at base rather than falling unconscious so you will not have the drag and carry options as these can only be used on unconscious units.

If the mission is set up in a way that it allows revive at Medevac only then playable units will not be able to revive but they would be able to cary or drag units to a medevac vehicle or structure for revive.

@<hidden> ad Din - Different numbers of bandages and revive packs for normal and medic class units can already be set in the revive options. Down load the script and check out the readMe for details on how to do this.

The stabilize option is a nice idea and its something that I wanted to implement - if you scroll down the revive_init.sqf revive options you'll see a line already there for the function just haven't had a chance to write the necessary code yet and at this point its going to be a while before I get a chance.

Wolffy.au
Nov 8 2009, 01:50
Hey Norrin - first of all, great work mate.

Not sure if this has already been mentioned, but I found I was getting this error in my arma2.rpt:

Error in expression <];
_count_enemies = 0;
_known_enemy = nearestObjects [_name, [_enemy_units_1,_>
Error position: <nearestObjects [_name, [_enemy_units_1,_>
Error Type Any, expected String

So to fix it, I've added two lines to revive_init.sqf:

_enemy_units_1 = "SoldierEB";
_enemy_units_2 = "SoldierEB";

Not sure if its the right solution, but it did make the error go away! :)

Keep up the excellent work and thanks again!

Cool Breeze-ICON
Nov 8 2009, 17:31
Thanks for that Norin,

But I need to be able to pull injured troops out of harms way so that medics can do their job, so should I:-

1. Use the revive script and add the battlefield simulation module, I think there maybe some problems with this though?

2. Not use revive script as I just want the re-spawn part and just re-spawn the old way and accept that players will have to check weapon load-outs when they re-spawn.

Do you have any suggestions?


Thanks

Cool Breeze

[GLT] Legislator
Nov 11 2009, 07:16
Norrin, I'm sorry to say there is a problem with respawning on the USS Khe Sanh. Here's what I did:

- taking the example of your example mission and fitting it into my mission (respawn works so far in local mp mode)
- however I didn't use the USS Khe Sanh on Utes, but on a community island: using USS Khe Sanh by Myke (http://www.armaholic.com/page.php?id=5858)
- every time a player respawns on the LHD he stands on the deck for a few seconds, then falls through the deck into the water. Even if there would be some addon issues the player would have to be transported into the vehicle that had to be set up for the Khe Sanh respawn?!
- the issue occured on the 1.04 windows dedicated server while playing with 6 players

My people are taking a look into it. If they discover a solution for the problem (if there is) I'll post it here :)

vengeance1
Nov 12 2009, 20:19
Norrin, I'm sorry to say there is a problem with respawning on the USS Khe Sanh. Here's what I did:

- taking the example of your example mission and fitting it into my mission (respawn works so far in local mp mode)
- however I didn't use the USS Khe Sanh on Utes, but on a community island: using USS Khe Sanh by Myke (http://www.armaholic.com/page.php?id=5858)
- every time a player respawns on the LHD he stands on the deck for a few seconds, then falls through the deck into the water. Even if there would be some addon issues the player would have to be transported into the vehicle that had to be set up for the Khe Sanh respawn?!
- the issue occured on the 1.04 windows dedicated server while playing with 6 players

My people are taking a look into it. If they discover a solution for the problem (if there is) I'll post it here :)

If it helps I have seen this very problem as I use this configuration in all my missions but have seen this error in other peoples missions when I add the LHD. What I have found is that because of script in the init file that is either WaitUntil or other scripts being run it slows down the creation of the LHD, but the player (or AI) are created ahead of it. You can raise the elevation of the spawn of the Player but unfortunately this creation time is not very consistant. Only solution I have found was either script a delay of moving your Player or AI to the deck or delay the time consuming script giving time for the LHD to be created first before placing objects. I have also moved my Player and AI into a Helo at start and had it land on the LHD using Mando Heliroute.

Hope this helps.

Buzz_Fledderjohn
Nov 15 2009, 19:41
Hi, I've been trying to get this script working for AGES...

When I test my mission, something strange happens. 30 - 60 seconds after the mission has started, the screen goes black and it says "Mission Failed: All players are unconscious". However, I'm still alive and I can still fire my weapon during the time that text is on screen.

I have set up the description.ext, added the markers, copied all of the files to my mission directory... nothing. I'm getting desperate here.:( Can anyone help me, please?

Wolffy.au
Nov 16 2009, 00:02
Just check where you placed your Playable units is not within 50m of your respawn_west marker. Thats the problem I was having recently.

H3NRY
Nov 16 2009, 01:21
Hi, I've been trying to get this script working for AGES...

When I test my mission, something strange happens. 30 - 60 seconds after the mission has started, the screen goes black and it says "Mission Failed: All players are unconscious". However, I'm still alive and I can still fire my weapon during the time that text is on screen.

I have set up the description.ext, added the markers, copied all of the files to my mission directory... nothing. I'm getting desperate here.:( Can anyone help me, please?


make sure your units are named in the editor AND that you have those names in the "revive_init.sqf" file where they are supposed to be. also make sure the "respawn_west/east" marker is over 50m away like wolffy said. i had the same problem tell i realised where i had to put the names

R.Flagg
Nov 20 2009, 06:40
Big thank you to Norrin for such a wonderful bit of script. As far as I'm concerned, it's what makes Arma2 worth playing for hour upon hour. I've even taken to adding it to missions I find online, to help me learn about editing, and to help me get survive/finish the missions when playing alone with AI. :o

I just wanted to say that I have seen a few times where my mobile spawn point seems to stop getting 'moved along' / updated. Sorta sounds like what has been talked about earlier in the thread.

I'll take the tent, and move it along with me throughout the mission, to various points. But sometimes, I'll set it up somewhere newer, closer to the action, but when I hit the "Mobile" respawn button, it sends me back to where I had the tent set up a few times ago. Much further back.

Wish I could be of more help. I don't expect anything in terms of reply, just wanted to offer my 2cents (I am using latest Revive script, and latest non-beta Arma2).

Once again, Thank You for making so much fun possible.

[GLT] Legislator
Nov 20 2009, 06:42
Norrin, I'm sorry to say there is a problem with respawning on the USS Khe Sanh.

I have to correct myself :o It was my mistake. There was a wrong marker defined in the revive_init.sqf and the AAV was given no name. :o Everything works now.

vengeance1
Nov 20 2009, 12:54
I have to correct myself :o It was my mistake. There was a wrong marker defined in the revive_init.sqf and the AAV was given no name. :o Everything works now.

Hate when that happens! :)

Buzz_Fledderjohn
Nov 22 2009, 21:04
Alright, the revive script works a lot better now, but I still have a small problem.

My teammate doesn't get a revive option in his action menu. All he can do is "Greeting".

I think it has something to do with units that can / can't revive. How do I fix this? I also see something about _allied_side_1, I assume those have to be East, and enemy side has to be GUER?

FYI, the mission takes places on the Russian side (MVD Spetsnaz) and the players fight against the NAPA.

Raziaar
Nov 24 2009, 04:17
Hello.

I have a problem, and I can't seem to fix it. I have everything working properly, but whenever a player dies, a new npc spawns right next to him and falls down to a prone position. There are two npcs standing there... and it looks incredibly weird.

In the test example given and in other missions that use this script that I have tested, they don't cause this. And I haven't seen ANYTHING in my options that could be causing this bizarre behavior!

Any help please? Thanks!

EDIT: CRAP. I once again didn't see that this was for Arma 2 and not Arma... gah, time to find the Arma thread, unless I can get in answer in this one!

JW Custom
Nov 24 2009, 10:21
My teammate doesn't get a revive option in his action menu. All he can do is "Greeting".
.

Are you sure his unit name is in the NORRN_player_units array?


NORRN_player_units = ["unitName1","unitName2","unitName3"];

Buzz_Fledderjohn
Nov 24 2009, 16:41
Are you sure his unit name is in the NORRN_player_units array?

Yes, the playable unit names are filled in. Although I have renamed them (for Alpha squad) into a1, a2, a3, a4, a5, a6 and (for Bravo squad) b1, b2, b3, b4, b5 and b6.

Is that a problem?

JW Custom
Nov 24 2009, 17:40
Yes, the playable unit names are filled in. Although I have renamed them (for Alpha squad) into a1, a2, a3, a4, a5, a6 and (for Bravo squad) b1, b2, b3, b4, b5 and b6.

Is that a problem?

No i don't think that should be a problem.

What do you have the the parameter _can_revive and _can_be_revived set to?

I think it should be "SoldierEB" for _can_be_revived and same for _can_revive unless you want to restrict medics to be the only one who can revive then it should be "SoldierEMedic". I'm not complete sure about this though.

Buzz_Fledderjohn
Nov 24 2009, 18:01
No i don't think that should be a problem.

What do you have the the parameter _can_revive and _can_be_revived set to?

Right now, it's still the default value, soldierWB. I think you're right, it should be soldierEB.

I'll give it another try. I'll get back to you guys soon.

Thanks.

docmabuse
Nov 29 2009, 00:58
hi there,

i managed to run the revive script properly (within f2 framework).
but unfortunately the vanilla style healing options for medic still remain in the menu. when i use the vanilla "heal player" option, than i surpass norrins revive option. (not necessary to stop bleeding and so on).

is this normal or do i have to take out the "vanilla heal" option?
if so, how to do that? im confused right now.

the revive is v3e within f2 framework. things work fine so far but this
is really annoying as it prevents to play the medic like intended.

any ideas?

greets
docmabuse

norrin
Nov 29 2009, 21:34
hi there,

i managed to run the revive script properly (within f2 framework).
but unfortunately the vanilla style healing options for medic still remain in the menu. when i use the vanilla "heal player" option, than i surpass norrins revive option. (not necessary to stop bleeding and so on).

is this normal or do i have to take out the "vanilla heal" option?
if so, how to do that? im confused right now.


Hi mate,

I think you're talking about magic healing ie. the option a medic will get to heal damage of other players back to 0. If you are then this option is hard-coded into the medic/corpsman units config, so short of reconfig'ing your own medic units there's not much you can do about it.

There is a work around though as you can choose some other unit as a medic, let say the scout for arguments sake. You can then designate the scout unit as can_revive in the revive_init.sqf and even only give the scout unit bandages so only the scout which is now medic can revive and bandage others.

norrin

Master85
Nov 29 2009, 23:20
... the option a medic will get to heal damage of other players back to 0. If you are then this option is hard-coded into the medic/corpsman units config, so short of reconfig'ing your own medic units there's not much you can do about it...

you can use a "HandleHeal" eventhandler to replace the hard-coded healing.

andersson
Dec 7 2009, 16:31
Hi, I have followed this thread since the start but now I have a problem that I dont recall reading a solution to.

If I have a group, all playable, and have AI enabled the AI also gets more lifes and help in reviving and can be revived.

Is there a way to have a group playable but to have revive available only to the players? The AI can revive, thats ok, but I dont the AI to be revivable.

vengeance1
Dec 7 2009, 20:54
Hi, I have followed this thread since the start but now I have a problem that I dont recall reading a solution to.

If I have a group, all playable, and have AI enabled the AI also gets more lifes and help in reviving and can be revived.

Is there a way to have a group playable but to have revive available only to the players? The AI can revive, thats ok, but I dont the AI to be revivable.

Well I am not sure this is exactly what you want but this does work.

What I learned is you can have AI that are NON-Playable and some that ARE-Playable and if the NON-Playable are part of your Group all can/will revive you.

However I have DisableAI = 1.

So when the AI die they do not respawn but players do. I have tested this in MP and works.

Vengeance

Hope this helps.

andersson
Dec 7 2009, 23:28
Sorry no :)

I have playable units in some missions so people can choose what to play. But as it turns out it is a revive-fest. Its all about reviving AIs and players. For example when 2 have 5 lives each they are unstoppable AND slow because of everyone running around reviving lol.
I dont want to limit the playable slots because of choice and possibility of many players. I cant take away AI as they play an important part in the missions.

I guess I have to go group respawn on this.

norrin
Dec 8 2009, 00:08
Thanks for trying Vengeance :)

@<hidden> - I'm sorry mate but I'm really confused about what you are asking here.

Can you please give a clear explanation of exactly what you are trying to do and what the problem is so I can understand your requirements.

andersson
Dec 8 2009, 08:39
ok.

Example (have a few missions so I make a general example):

5 teams of 10 units each. All playable.

Players normally between 2 and 10. The slots that are not taken must be AI controlled as all play a part.

I wanted only the players, regardless of slot, to be revivable.

If all AI is revivable the full force will be "multiplied" by the number of lifes which makes it too unbalanced. Also the progress of the mission suffer as AI is spending too much time reviving each other and getting shot and getting revived :)


norrin, this is not of a real importance for me as groupspawn will work fine in the missions due to the amount of AI. I, we, are just so hooked up using your script :D
So unless you find some kind of satisfaction/interest in making this work I suggest you spend your time with better things, I dont want to demand too much ;)
I asked too see if I missed some feature, but I guess not?

Many thanks norrin!

norrin
Dec 13 2009, 08:36
Just a small update adding compatibility with ACE2 rucks and a couple of fixes

Download
http://norrin.org/downloads/ArmA2/revive/AI_enabled/Revive_TEST_04.utes.rar

Added
New option in revive_init - _ACE_mod - when turned on enables respawning ruck sacks

Fixed
Hopefully fixed missing parameters for _AI_aware function as identified by Wolfy.au
Ability to change posture while dragging - eg. you can no longer drag other units while prone etc.

NB: No need to update the revive unless you're planning on using ACE2. Also remember there have been changes made to the revive_init.sqf so if you update your going to have update this config file as well

[F.S.F] Guiguit59
Dec 17 2009, 11:51
Hi all,

I want a script like weapons_respawn.sqs Revive compatible with the script. If someone can help me?

norrin
Dec 17 2009, 19:23
Guiguit59;1517528']Hi all,

I want a script like weapons_respawn.sqs Revive compatible with the script. If someone can help me?


Hi mate, revive already has a built in weapon respawn system. Here's how it works, if you are revived you respawn with the weapons you fell unconscious with, if you respawn at base you can respawn with the weapons you fell unconscious with, the weapons you started the mission with or a specific set of weapons as set in the revive options.

Wolffy.au
Dec 20 2009, 00:22
Haven't been able to confirm if this is related to Revive or another script, but I've had bugs where units spawn as invulnerable. Anyone else experienced that with this version of Revive?

norrin
Dec 20 2009, 00:59
Haven't been able to confirm if this is related to Revive or another script, but I've had bugs where units spawn as invulnerable. Anyone else experienced that with this version of Revive?

The part of the revive relating to invulnerability while unconscious hasn't been changed for some time (maybe last change 6 or 7 versions ago) so if it was OK in the previous few versions it should hopefully still be OK now - unless the beta patches have messed something up, of course.

Tophe
Dec 27 2009, 19:10
Hello... I just loaded up an old Revive mission that worked great with the previous patch (and betas). But after updating Arma2 to 1.05 the revive won't kick in... Neither will any of my parameters (even if I use the new system). The unit will respawns at the marker.

Is the a common poblem?

Undeceived
Dec 31 2009, 16:32
Sorry for asking such a noobish question, but I really am new to this script and didn't read all 35 pages. :o :)

Is this script MP only (that means that it has to be played on a server) or can it be inplemented in a normal SP mission too?

Because I am making a single player mission where civ1 finds civ2 injured in a deep forest and civ2 is unable to stand up (unconcious animation). Civ1 can only drag / carry him, but can't give him first aid.

Can this revive script maybe be something what could help me?
I tried it with the BI modules too but with them it is only possible to have both options available -> drag and first aid. But I need it this way that only the drag option is available for the player.

Can you help me somehow?
Thank you very much.

[KH]Jman
Dec 31 2009, 16:46
The part of the revive relating to invulnerability while unconscious hasn't been changed for some time (maybe last change 6 or 7 versions ago) so if it was OK in the previous few versions it should hopefully still be OK now - unless the beta patches have messed something up, of course.

I'm using this new revive version on ACE2 and 1.05 and when I respawn I am invisible, invulnerable and cannot enter vehicles.

BearBison
Dec 31 2009, 17:25
Jman;1530936']I'm using this new revive version on ACE2 and 1.05 and when I respawn I am invisible, invulnerable and cannot enter vehicles.

Can confirm with the latest build that I and a few others have noticed this problem.

[KH]Jman
Dec 31 2009, 17:51
If I drop my gear peeps can see it, I can pick my gear backup but no one elses. I am invisible, invulnerable and cannot enter vehicles.

I am running no other mods apart from ACE2

norrin
Dec 31 2009, 21:53
I'm back from holidays now and just trying to get ACE2 installed on my second PC so I can test this with multiple players on a dedicated server as I haven't been able to trigger the bug so far with a single player on a dedicated server.

One thing you might want to try is to make sure the
_altUnc_animation = 0; in the revive_init.sqf as Wolffy suggested this may fix the problem.

If this fixes things please let me know or if you get any more information on how to trigger the bug please post.

thanks and sorry for this stuff-up,

norrin

EDIT: OK got two players now running ACE2, nothing else and I still can't trigger the bug - tried AI disabled/enabled using _altUnc_animations on and off, starting mission without weapons then taking weapons from crates etc - can someone please email me a mission in which you are experiencing this problem to norrin@<hidden> as I need to check out what other scripts/ACE modules you are running in case there is a conflict somewhere.

@<hidden> can you send me your mission as well as a list of any addons you are using please mate

One final thing if you are using ACE2 make sure you are not using the ACE2 wounds if you are using revive as this will cause conflicts

[KH]Jman
Jan 1 2010, 01:01
Hi Norrin, thanks for the reply. Yeah if I look into the mission.sqm I see that ace wounds is active in the addOns[] but I've not dropped the ACE wounding module in the mission. I have attached the mission. What is odd is that I seem to be the only person with this issue, other player who have connected to the mission are fine. I'm running ACE 2 and only ace no other mods and 1.05. I can replicate this 100% of the time. If I run Vicious Villains 1.8 all works fine. It seems to point to a script issue but why does it affect just me?. Vanilla 1.05 + the latest ACE2, no addons. I can make a video if required.

It would be really nice to find out what the problem is. I've hit a brick wall.
Download mission (http://www.kellys-heroes.eu/files/missions/Co30_ACE_Greed_17b[KH].Chernarus.rar)

I'm downloading ACE2 again in case I have a corrupt file.

norrin
Jan 1 2010, 02:14
@<hidden> - thanks for posting your mission mate. So far I haven't been able to trigger the bug in your mission yet - but maybe try moving the line
//Initialise revive script (this next line is needed for revive script)
server execVM "revive_init.sqf";until after the
//=============== PLAYER SYNC ====================================
if ( (!isServer) && (player != player) ) then
{
waitUntil {player == player};
waitUntil {time > 10};
};
//============= END OF PLAYER SYNC =============================== in the init.sqf and see if that helps. Its sounding like there maybe some desynch causing the prob and this may help. I'll spend some more time looking into it tonight when the kids are in bed. Just one other thing can you confirm whether you are hosting or is this on a dedicated server?

Cheers

[KH]Jman
Jan 1 2010, 02:30
Dedicated server. 78.129.202.206:2402
I will pm you the password.

Jaime
Jan 1 2010, 22:53
guys if got the same problem with revive and ai missions y turn into a ghost and cant interact with anything

norrin
Jan 2 2010, 02:36
I spent a little bit of time on the Kelly's Heroes Server with Jman and crew this morning and witnessed first hand what's happening.

Here's what I think is occurring - for some reason you are desynching when you respawn and although your position is updating locally for you its not updating across the server so you are not appearing on the other players PCs.

Hopefully with Jman's help I'll get it sorted but just one question for everyone who is having this problem are you using a wireless internet connection?

Jaime
Jan 2 2010, 12:24
norrin im not using wireless and im sufering of the problem if been al day testing in servers what happens and i can say for sure its not only a revive problem it happens also in another mp maps like ai domination, but revive trigers it 100% of the time when you die and in domination ai with or without mods at about 10 min it happens but dont know exactly what trigers it but maibe it might be when you die.

thx a lot for the help cause i love this game and im starting to lose mi faith with the bug cause i cant play in mp nearly nthing:(

BearBison
Jan 2 2010, 12:37
not using wireless when this happens to me or a couple of others.

Jaime
Jan 2 2010, 21:58
Guys by the way if got the problem and mi game is via steam may that influence the error?

Cause in mi server nobody has the steam version and im the only one with the problem

[KH]Jman
Jan 3 2010, 01:35
I sure that's just a redherring as I'm not using the Steam version.

Jaime
Jan 7 2010, 15:10
any news in how to solve the problem or a way to cantact bohemia to get a solution?

norrin
Jan 7 2010, 19:20
I'm very sorry for the delay Jaime . With the help of [KH]Jman and [KH]Cross and everyone else at Kelly's Heroes we've now tracked down the problem and have identified a fix using code kindly provided by Xeno - I'm just waiting on the results of what is hopefully one final test of the revised code from Kelly's Heroes and if that is OK I'll post it straight away.

[GLT] Legislator
Jan 7 2010, 20:56
Hiho norrin, we haven't talked for a very long time now :p I'm using the latest revive for weeks now and - great news - my team and I haven't found any huge bug or problem.

Well ... there is one tiny issue :o I don't know if you have used the GLT Framework or played missions using it. It has a viewdistance dialog that allows the player to alter the gras layer and the viewdistance during a game, even in mp mode. When using the revive script, the action menu entry of the viewdistance dialog is somehow overwritten. Within the GLT Framework there is a own revive creation used by one of my team members. When using this GLT Framework Revive the action menu entry doesn't disappear after some respawns/revives. You're free to look into the code of it. Maybe you can find something that helps you fixing this tiny issue :)

I'm looking forward to future versions of your script!

PS:
Has anyone noticed this? The spectating camera doesn't support every monitor resolution :(
http://img503.imageshack.us/img503/4379/arma22010010721481194.th.jpg (http://img503.imageshack.us/i/arma22010010721481194.jpg/)

-AMI- MoFo
Jan 8 2010, 04:43
The 1.05 "ghosting" problem isn't new to me. I've experienced it since I started playing Arma 2 (with patch 1.04). I ended up leaving my clan because of it as they always played missions with the revive script and I got tired of having to quit the missions after the 1st death.

I'm hoping Norrin finds a fix for it so I can re-join the clan and start playing missions again.

Cross
Jan 8 2010, 06:15
The 1.05 "ghosting" problem isn't new to me. I've experienced it since I started playing Arma 2 (with patch 1.04). I ended up leaving my clan because of it as they always played missions with the revive script and I got tired of having to quit the missions after the 1st death.

I'm hoping Norrin finds a fix for it so I can re-join the clan and start playing missions again.

Read two posts above ;)
Norrin has already found the culprit & implemented a fix and we have the amended RC and hopefully we'll be able to test it out today and let norrin know about the outcome. I believe it should be out shortly after that, ie if there is nothing else to fix/test.

Jaime
Jan 8 2010, 10:11
thx a lot guys for helping us out with the ghosting problem, cause is a mayor game killer for me at the moment.

Sjaba
Jan 8 2010, 22:23
Iv tried to read thrue the post, but not exactly found the answer to the problem i have experienced. I got the revivescript to work nicely on local host, but as soon as i get onto a dedi server, the mobile respawn option only makes you respawn back to "respawn-West" and it does not seem to matter what i do with the mash tent.

Anyone have a suggestion or explanation of this issue ?

Freebie
Jan 9 2010, 00:59
Read two posts above ;)
Norrin has already found the culprit & implemented a fix and we have the amended RC and hopefully we'll be able to test it out today and let norrin know about the outcome. I believe it should be out shortly after that, ie if there is nothing else to fix/test.
Ah bloody excellent! :yay:

I'm keeping my fingers crossed that the problem is all fixed and the updated script will be out real soon.

Thank you to Norrin and all who are helping fix/test it, it's going to be great to get back into some MP clan missions again :)

That will solve one of my two problems, Telstra sees it fit to put a brand new developing estate on a congested rim hence my only option of ADSL 1 & fluctuating speeds. I've recouped some of my personal expenditure costs (trying to find the problem in the 1st place) through the TIO but nothing can be done about the crap infrastructure. As if Telstra is interested in anything more than profits and shareholders.

I've joined the ever longer growing list of Telstra haters.

But enough of that, lets play some Arma 2! :D

norrin
Jan 9 2010, 05:43
@<hidden> Mofo - yes mate I remember your problems well - I'm sorry that its taken so long for it to be finally addressed but the release of 1.05 has exacerbated the problem. If it wasn't for Jman finding two mission that were very similar but in one he had the problem and in the other he didn't I would have never tracked it down.

You can never have too many testers so here's a link to the latest release candidate: http://norrin.org/downloads/ArmA2/revive/Revive_TEST_04f.utes.rar (Please note this is a test release only)

So if any of you ghosts try it please let me know how you get on.

lynxwolf
Jan 9 2010, 17:47
ok im editing a domination mission i added a group of pilots when they die they spawn 4 seconds later on the boot_hill marker ive been reading threw this thread and i dont understand how to fix it:/ its only the pilots that do this

norrin
Jan 9 2010, 20:39
Interim Fix for the "invisible man" bug

You can download it from here: http://norrin.org/downloads/ArmA2/revive/AI_enabled/Revive_TEST_04n.utes.rar

Many thanks to [KH]Jman, [KH]Cross for their patience and good natured help with testing fixes for this problem and to xeno of course for his weapon respawn code.

This should get you up and running again if you are suffering from this problem - it removes a tiny bit of functionality from the revive but I don't think anybody will notice - I'm working on fixing this anyway and will get a new release posted as quickly as possible.

@<hidden> - mate if you can convince Preacher to put this on the server you can check if you're good to go now.

@<hidden> - last time I checked domination uses xeno's modified version of these revive scripts based on a version made some time a go. You'd be best to pursue him about this as if this is true then nothing said here may be relevant to your problem

lynxwolf
Jan 9 2010, 20:45
norrin is there anyway to allow everyone on the map revive i actually think that would fix it

norrin
Jan 9 2010, 22:11
norrin is there anyway to allow everyone on the map revive i actually think that would fix it

Depends on what side your players are, if they are west then "soldierWB" in the _can_be_revived option in the revive_init.sqf should do the trick.


Interim Fix for the "invisible man" bug

You can download it from here: http://norrin.org/downloads/ArmA2/revive/AI_enabled/Revive_TEST_04n.utes.rar

(See previous post for full details)

EDIT: Potential release candidate for final fix
http://norrin.org/downloads/ArmA2/revive/Revive_TEST_04q.utes.rar
Test at your own peril - hopefully will not only fix the invisible man bug and maintain full revive functionality but it also will be compatible with both ACE and vanilla without a need for an entry (_ACE_mod) in the revive_init.sqf

Jaime
Jan 9 2010, 23:06
Guys it works at least for me thx a lot norrin. mate you saved mi live!!!:bounce3::bounce3::bounce3:

Norrin at what time could i catch you on the kelly server to thank you guys for the amazing job?

The question is norrin how will this be implemented in the game, like in future misions or it has to manualy added to the missions?

Thx a lot:yay:

-AMI- MoFo
Jan 10 2010, 00:27
Thank you Norrin! I'll speak to Preach about implementing it on the servers. Can I ask what the problem actually was? I'd love to know why I was getting the ghosting problem but no one else was? What makes me so "special"? :icon4:

inFAMOUS
Jan 10 2010, 02:42
I got it to work but when i revive i get all the actions 2 times on my action bar and then after i revived someone, the action is still in the action bar and when you press revive again then the player that gets revived gets stuck and cant move...

possible fix?

norrin
Jan 10 2010, 02:57
@<hidden> - Its up to the mission maker to add the script - as long as the Potential release candidate is working it should be a simple matter to update existing missions as well - just replace the revive_sqf folder in the mission file with the one in the latest version

Oh, I meant to ask have you tried both versions ie. the "interim fix" as well as the "potential release candidate"? If so are both working for you?

@<hidden> - I need confirmation that the "Potential release candidate" version is working before I can be certain mate - but will let you know ASAP.

@<hidden>, mate its not clear to me whether you were having the ghost problem or you're having more general problems setting up the script in your missions - check your PMs.

Download the two versions here:
1. Interim Fix for the "invisible man" bug:http://norrin.org/downloads/ArmA2/revive/AI_enabled/Revive_TEST_04n.utes.rar

2. Potential release candidate for final fix: http://norrin.org/downloads/ArmA2/revive/Revive_TEST_04q.utes.rar

Jaime
Jan 10 2010, 17:54
norrin I only tested the interim one but ill try to test the other one today ill post the result as soon as if done it

norrin
Jan 10 2010, 22:51
Just got the good news from Messers JMan and Cross :)

Download
http://www.norrin.org/downloads/ArmA2/revive/AI_enabled/Revive_TEST_042.utes.rar

Fixes
* The "C" key press while dragging bug
* The invisible man bug - thanks to [KH]JMan and [KH]Cross at Kelly's Heroes
* Removed dependency for _ACE_mod param in revive_init.sqf - ammo respawn now works for both ACE2 and v1.05 without need for this parameter switch - thank you Xeno
* Updated ReadMe

Other Notes
This revive_sqf folder should work with the revive_init.sqf from any missions made with revive versions 0.3+ so if you need to update your mission because of the "invisible man" bug just swap the revive_sqf folder in your mission with the one in the archive.

The "invisible man" bug
Wow this was a hard one - here's what I think may have been happening but remember I'm only guessing now.

The previous versions of the script generated a global variable that was transferred across the network that contained a list of the weapons and the magazines that a player was carrying when he fell unconscious as well as a couple of other parameters.
_body setVariable ["NORRN_unc_array", [_dir, _offset, _magazines, _weapons, _revive_damage], true]; As you can imagine this array list of magazines and weapons would be quite large (as it lists each mag etc by name) and therefore a huge variable (containing an enormous amount of information) was being transferred across the server network.

In the mission that Jman found that worked the lists of magazines and weapons in the NORRN_unc_array variable were empty as some other code added by the mission maker was taking care of weapon respawn, therefore, the NORRN_unc_array variable was quite small.

So why was this a problem, now be warned the rest is just guess work, depending on certain internet connection conditions, such as your bandwidth, speed of connection, line quality and global warming :) (or any combination of these factors) it appears that sending this huge variable across the network was causing desynch between the client's PC and the server, which in turned caused the "invisible man" bug. This desynch problem seems to only occur for a very small number of revive users and whatever was changed in ArmA2 v1.05 seems to have exacerbated this problem.

So the moral of this story is do not send enormous variables (especially ones that contain lots of strings) across the network.

@<hidden> - will take a look at the GLT Framework first chance I get - also for the camera dialog problems you're having make sure interface size is set to normal and see if that helps

-AMI- MoFo
Jan 11 2010, 04:32
That's great news Norrin :D

I can only speak for myself when I say that my internet isn't the best quality. I'd be interested to know what the net quality is like for the other ppl who suffered from "the ghost who walks" problem.

I haven't tried it out yet myself but it definately sounds like it's fixed. So I'd better get back to ZSU and apply to re-join :756:

[GLT] Legislator
Jan 11 2010, 06:18
My team had the "the ghost who walks"-bug lately. We're playing ArmA II on a windows dedicated server (up to 8 players). However it's affecting even missions with our on revive system. It may not be directly related to norrins revive script.

@<hidden>:
Thank you for your support :) I'm not using normal interface size because it's way to large for me (playing ArmA II in full hd on a 27 inch tft). I guess most people aren't affected by this problem because they've got a smaller tft.

norrin
Jan 11 2010, 06:32
My team had the "the ghost who walks"-bug lately. We're playing ArmA II on a windows dedicated server (up to 8 players). However it's affecting even missions with our on revive system. It may not be directly related to norrins revive script.

Mate just make sure you're not generating any variables that contain a lot of info if you're sending them across the network.

Sjaba
Jan 11 2010, 11:37
Iv tried to read thrue the post, but not exactly found the answer to the problem i have experienced. I got the revivescript to work nicely on local host, but as soon as i get onto a dedi server, the mobile respawn option only makes you respawn back to "respawn-West" and it does not seem to matter what i do with the mash tent.Anyone have a suggestion or explanation of this issue ?

I have continued to look for this problem, but im afraid im not able to figure out the issue. As far as i recal the mobile respawn worked in 1.04 can this problem be caused by the 1.05 patch?

Also i tried to disable the mobile respawn function, but the ingame option is still there, just without the name( mobile respawn) on the button. Iv set mobile respawn function to 0 and changed the player parameter to objnull. Is there anything else i need to do completly remove that function?

Regards Sjaba

Jaime
Jan 11 2010, 18:36
Hi norrin if tried the 2 versions here and the only work that works 100% is the interim one

The potencial release version some times works and some not so at the end of any game your always a ghost but maibe if you oly die 1 or 2 it mite work.

And on the potencial release one its very dificult tu revive only 10 seconds and normaly you die always is that because of ace mod?

If tried both version with ace and without ace at the latest version.

Thx a lot mate for helping us out anything you need im here to help.:bounce3:

norrin
Jan 11 2010, 19:07
@<hidden> - try the 0.42 version here: http://www.norrin.org/downloads/ArmA2/revive/AI_enabled/Revive_TEST_042.utes.rar

The reason for the short revive time is that it was deliberately set to 10 seconds so that I could test what would happen when AI respawn at base. The 0.42 version has a revive time of 300 seconds. Oh and as long as your not using ACE wounds then revive and ACE should be compatible.

If its still not working can you PM me more details on things like server set-up, does it work if you are revived but not if you spawn at base and any else tiny detail you can think of as it all helps - try and write down the exact gameplay steps that you need to perform to make the bug appear reliably.

@<hidden> - there's no way I can diagnose the problem if you don't send me the mission here (norrin@<hidden>) with a list of addons mate

TBCVAMP
Jan 11 2010, 20:54
Outstanding Job!

Sjaba
Jan 12 2010, 09:13
Ok thx for the response Norrin, will do, just read somwhere that you did not want people to send the maps, so i dident ;)
Will send later.

Regards Sjaba

RonnieJ
Jan 13 2010, 20:23
Hey Norrin - first of all - great work on the script!

I tried to add you on MSN but ill ask here as well... my problem is that I have several scripts running looking is the players are !alive ... but with revive script the player never really die he is just unconscious while waiting for a revive... now my question is how can I identify if a player is unconscious? I use the same player names as you s1-s10.

Ghost
Jan 13 2010, 20:30
I think he has the variable
NORRN_unconscious and how you would use that is
nameofunit getVariable "NORRN_unconscious";
which would return true or false I believe. This is a guess by looking at his script.

RonnieJ
Jan 13 2010, 20:42
Cool Ghost... ill give it a go :)

---------- Post added at 10:42 PM ---------- Previous post was at 10:31 PM ----------

Jep thats the stuff ghost! :) worked like a charm!

norrin
Jan 13 2010, 21:29
Thanks Ghost, beat me to it :)

Also wanted to point out that the units do die when they fall unconscious in these revive scripts so !alive should work. The sequence of events is:

1. the player is shot and dies (4 second respawn time);
2. screen turns black as the unconscious camera starts;
3. the player respawns at base but as the screen is black the player is unaware of this,
4. the player's alive body is forced into the unconscious animation and then is transported back to where it was shot
5. view fades in to camera view of player's body on the ground

PS: Everyone, I'm away and off line until 26th Jan so I'll answer any questions, emails and PMs then.

Cross
Jan 14 2010, 03:55
PS: Everyone, I'm away and off line until 26th Jan so I'll answer any questions, emails and PMs then.

LOL @<hidden> out of office reply :)

This is Bosnia
Jan 15 2010, 10:52
i need some help finding where the error is.

the problem is selecting how many revive i like to have in game

if i select 5, 7, 10 or 20 i only get 2 life's infinite life and no revive is working

gonza
Jan 16 2010, 20:56
hello

night vision don't work in incounsious cam (on @<hidden> mod)

generaldeath
Jan 16 2010, 22:41
hey norrin

perhaps you or someone could be kind enough to explain how I could get a seperate script working for east and west sides. I can implement this ok for one side but what would i have to do/change to get this working for opposition as well ? im creating a multiplayer where the player can play us forces or local militia.

Thanks

This is Bosnia
Jan 17 2010, 06:07
hey norrin

perhaps you or someone could be kind enough to explain how I could get a seperate script working for east and west sides. I can implement this ok for one side but what would i have to do/change to get this working for opposition as well ? im creating a multiplayer where the player can play us forces or local militia.

Thanks

this is what i did

_can_revive = "soldierEB"; //array no.18

_can_be_revived = "soldierEB"; //array no.20

_medic_1 = "RU_Soldier_Medic"; //array no.76 - Used in conjunction with

the players are Insurgents

but when i selecting 5, 7, 10 ,20 i only get 2 life's and i dont know how to fix it

inFAMOUS
Jan 17 2010, 13:08
Im making a new mission again but now when i try to play with the revive script it says;

''Player selected is unconcious, press escape and return to the unit selection menu to choose another unit''

Well, its something like that, i cba to check again now. Can anybody help?

generaldeath
Jan 17 2010, 15:53
if you get the unconcious menu you need to move your west and east spawn points further apart

ive @<hidden> is bosnia yeah i foound an example to initiate a script depending on which side the player is. But before I go into that I need help with the spawn selections. if your on west you run revive_init_west or if your on the east side you run revive_init_east

Ok so we have to create a respawn_west which is the main spawn point then additional spawn points as defined west_spawn_1 etc. For them to work from the selection menu I have to make sure the respawn names are used in the revive_inti script otherwise I get sent to position lower left of map. How can i make it so that instead of using the spawn names (respawn_west) in the seleciton menu i can use text i.e vehicle depot or forward operations base ? ive tried naming the spawn points as

name: spawn_point_1
text: vehicle depot

but if i use vehicle depot in the init config it doeesnt work

hope that makes sense

---------- Post added at 04:53 PM ---------- Previous post was at 04:51 PM ----------

update @<hidden> is bosnia

could it be this ?

_JIP_respawns = [2,30]; //array no.63 - 0 - off or the number of lives players receive when they join in progress , JIP time after the mission starts

do you start on allied then change to east ? if so this may be affecting the number of lives you get when switching sides ?

Charliereddog
Jan 17 2010, 17:09
Can someone tell me how I can set it up so that there are NO respawns, but that revive is switched on? I'm not sure it's even possible having read the instructions?

generaldeath
Jan 17 2010, 19:38
try the following

// RESPAWN OPTIONS
_no_respawn_points = 0; //array no.12 - no of respawn points (Max number 4)
_Base_1 = ""; //array no.13 - spawn position names
_Base_2 = ""; //array no.14
_Base_3 = ""; //array no.15
_Base_4 = ""; //array no.16
_Base_free_respawn = [1,0,0,0]; //array no.36 - select whether to allow respawning at spawn points even if enemy troops are present (options OFF = 0, ON = 1)
_respawn_at_base_addWeapons = 1; //array no.11 - unit respawns with waepons it commenced the mission with

Mr Burns
Jan 20 2010, 15:32
Found out about the unc_theme feature and also got it to work.
But i´d like to have the sample being replayed over & over again.

Now where would i need to look at to make this?
Getting seriously lost in all those scripts :blush:


edit: found the line in \revive_sqf\cam_follow.sqf
Time for voodoo now.

[GLT] Legislator
Jan 23 2010, 09:20
Hi norrin,

I've got an issue again with the mobile respawn :( It isn't working anymore. Here's what I did in my tests:

- revive version 0.3f
- respawn tests on the 1.05 windows dedicated server
- Community Base Addons (older version than the current)

I know it worked until patch 1.05 very well. Here is a short description of the problem:

When the player deploys the mobile respawn the tent is placed but the mobile respawn marker isn't visible. Once I died I'm not gonna spawn at the tent but at the position where I placed the mobile respawn marker in the editor.

However if I leave the server and join again I can stowe the tent and deploy it again. Then the mobile respawn works perfect again.

So here's my question. Do you know of any incompatibility between the revive script and community base addons, patch 1.05 or some other related stuff.

I had those problems a few months ago during patch 1.04 and an update of community base addons solved the problem. I'll consider an update. However I'd like to hear your opinion.

Best wishes,
Legis

Jaime
Jan 23 2010, 13:55
Hi Norrin

If tried the new revive you posted for me and it solves completly the ghost error we tried it with up to 20 people at the same time reviving and no trouble at al thx a lot.

PD: Sorry for the delay if been a few days out

[GLT] Legislator
Jan 23 2010, 19:42
@<hidden>:
For further tests I had updated the dedicated server and my client with community base addons 0.3.0. The mobile respawn only works in the first mission loaded. Once I want to play another mission using the mobile respawn I have to reconnect to the server and restart the next mission.

Edit:
I just did a rollback to the prievous cba version and updated the mission I tested with your latest revive (0.42), but the mobile respawn still doesn't work. There might really be some conflict between CBA and your revive script again. However I'm not sure who's causing it, your script or CBA. Please have a look into it again. I neither can drop your script or cba because it's necessary for the caa1 mod :(

Solarghost
Jan 24 2010, 22:57
Need help please......

Ok I am using the Ace special forces Attack grenadiers:

The normal script looks like this....


// ================================================== ================
// UNITS THAT CAN REVIVE/UNITS THAT CAN BE REVIVED
_can_revive = "USMC_Soldier_Medic"; //array no.18
_can_revive_2 = "FR_Corpsman"; //array no.19
_can_revive_3 = ""; //array no.72 - NOT IMPLEMENTED
_can_revive_4 = ""; //array no.73 - NOT IMPLEMENTED
_can_be_revived = "soldierWB"; //array no.20
_can_be_revived_2 = "USMC_Soldier"; //array no.21
_can_be_revived_3 = ""; //array no.74 - NOT IMPLEMENTED
_can_be_revived_4 = ""; //array no.75 - NOT IMPLEMENTED
_medic_1 = "USMC_Soldier_Medic"; //array no.76 - Used in conjunction with medpacks and bleeding
_medic_2 = "FR_Corpsman"; //array no.77 - Used in conjunction with medpacks and bleeding
_medic_3 = ""; //array no.78 - NOT IMPLEMENTED
_medic_4 = ""; //array no.79 - NOT IMPLEMENTED
//================================================== ======



And my script looks like this:

// ================================================== ================
// UNITS THAT CAN REVIVE/UNITS THAT CAN BE REVIVED
_can_revive = "ACE_SF_FR_Corpsman"; //array no.18
_can_revive_2 = "FR_Corpsman"; //array no.19
_can_revive_3 = ""; //array no.72 - NOT IMPLEMENTED
_can_revive_4 = ""; //array no.73 - NOT IMPLEMENTED
_can_be_revived = "soldierWB"; //array no.20
_can_be_revived_2 = "ACE_SF_FR_Assault","ACE_SF_FR_Corpsman","ACE_usar my_sniper"; //array no.21
_can_be_revived_3 = ""; //array no.74 - NOT IMPLEMENTED
_can_be_revived_4 = ""; //array no.75 - NOT IMPLEMENTED
_medic_1 = "ACE_SF_FR_Corpsman"; //array no.76 - Used in conjunction with medpacks and bleeding
_medic_2 = "FR_Corpsman"; //array no.77 - Used in conjunction with medpacks and bleeding
_medic_3 = ""; //array no.78 - NOT IMPLEMENTED
_medic_4 = ""; //array no.79 - NOT IMPLEMENTED
//================================================== ======






Am I doing something wrong? Because when I die my dude just spawns out to the Island spawn point. respawn_rest

Solarghost
Jan 25 2010, 01:40
does anyone know?

norrin
Jan 25 2010, 03:28
@<hidden> - mate you can only have one type of unit listed in the _can_be_revived and _can_be_revived_2 variables ie.

_can_be_revived = "SoldierWB";

not

_can_be_revived = "ACE_SF_FR_Assault","ACE_SF_FR_Corpsman","ACE_ usar my_sniper";

Don't quote me on this (as I haven't looked at the config.cpp of the ACE SF units) but you'll probably find that soldierWB will work for them as well so you could just try:
_can_be_revived = "soldierWB"; //array no.20
_can_be_revived_2 = ""; //array no.21 and see if that fixes the problem.

@<hidden> - did you get the 2nd PM re your mission as I accidentally deleted it after I sent it so I'm not sure if you'll ever get it.

[GLT] Legislator
Jan 25 2010, 04:31
Yes, I got 'em :) You'll have an answer.

[GLT] Legislator
Jan 26 2010, 20:45
Hi Norrin,

I've located the problem! Once again Community Base Addon caused the issue. Here's what I did to verify it:

1. I set up ArmA II dedicated server + clients without CBA and without any mods that use extended eventhandler - the mobile respawn worked, in every mission, no matter what revive script version!

2. I set up ArmA II dedicated server + clients with my old CBA version (prior 0.3.0) and nothing worked!

3. I set up ArmA II dedicated server + clients with CBA 0.3.0 and my extended eventhandler using addons and the mobile respawn worked again.


So upgrading CBA helped in that case. However you have a look into it anyway. I only took care of the trigger not of the source of the problem. Maybe the problem occurs again in future versions again.

exall
Jan 27 2010, 14:22
I also have a problem with mobile respawn. Half of a mission it works fine. But then no matter where you place a tent the marker keeps standing at previous position and doesn't get deleted furthermore. And then you can keep moving the tent but players will be respawned at the same wrong position and it won't change anymore.

tobmic
Jan 27 2010, 15:20
any good news about the ghost mode bug when you respawn ?

norrin
Jan 27 2010, 21:10
I also have a problem with mobile respawn. Half of a mission it works fine. But then no matter where you place a tent the marker keeps standing at previous position and doesn't get deleted furthermore. And then you can keep moving the tent but players will be respawned at the same wrong position and it won't change anymore.

Just got a few questions for you
*Are you using the latest version of the revive script?
*If you are using the CBA addon is it up to date as Legislator believes that the mobile respawn bug he was getting was related to an out of date addon?
*Are you using any other addons that may be causing a conflict?
*Is there a script run half way through the mission or a new addon used at this point that might be conflicting with the revive script.

@<hidden> - as far as I know the 0.42 version of the revive script seems to have fixed the "invisible man" bug: http://forums.bistudio.com/showpost.php?p=1540798&postcount=374

exall
Jan 28 2010, 16:16
Are you using the latest version of the revive script?
It's a good question. I don't know exact version. It is 0.4 but after the 4 there're no numbers. The ACE compatibility was just enabled in this version


If you are using the CBA addon is it up to date as Legislator believes that the mobile respawn bug he was getting was related to an out of date addon?
Last time it was happened on tuesday and my CBA was from weekend. Yesterday i've upgraded via six updater but i didn't test the tent yet.


Are you using any other addons that may be causing a conflict?
Only desert mercenaries.


Is there a script run half way through the mission or a new addon used at this point that might be conflicting with the revive script.
No.

Inspite of all those my problems I find your script one of a few arma community diamonds. I use it in almost all of my missions.

By the way, do you plan to localize Revive in different languages? If so, I can help you to make a translation of it into Russian. Furthermore, I've already done this but in code without stringtables.

Nemorz
Jan 28 2010, 22:57
Is there any way to restore the medics ability to revive when he runs out? Ideally I'd like to be able to have Medics RTB and when at or near a Hospital/MASH they can restock and continue about their Medic duties.

Thanks in advance.

norrin
Jan 28 2010, 23:07
Is there any way to restore the medics ability to revive when he runs out? Ideally I'd like to be able to have Medics RTB and when at or near a Hospital/MASH they can restock and continue about their Medic duties.

Thanks in advance.

Are you talking about running out of bandages and revive/medpacks?

If you are then a resupply of medical items can be obtained by players by going up to a MASH tent and using the "Take medical supplies" action. Playable AI are automatically resupplied if they are within 5 metres of a MASH tent.

Nemorz
Jan 29 2010, 01:45
Aaah ok brilliant thanks.

Derty
Feb 9 2010, 04:35
What do I put in the _can_revive line to make it so only USMC Corpsman can revive players? I have tried soldierWMedic, soldierWCopsman, USMC_Soldier_Medic. None of these work.

Thanks,
Derty

SouthSaturnDelta
Feb 9 2010, 19:34
Hi all.

How do I add say 2 points to the reviver each tijme they save someone?

My mission is rank based you see.

I tried using

player addscore2;

to heal.sqf ...


if (_reward_function == 1) then
{
_var = _name getVariable "NORRN_bonus_life";
_name setVariable ["NORRN_bonus_life", _var + 1, false];
_name addscore 2;
player addscore 2;
};
if (_QG_animation == 1) then
{
sleep 9;
player playMoveNow "ainvpknlmstpsnonwnondr_medic0";
sleep 9;
player playMoveNow "ainvpknlmstpslaywrfldnon_1";
detach _wounded;
_name addscore 2;
player addscore 2;

But on mp server this dosnt work.

Cheers,

Skiddy

Kiptanoi
Feb 19 2010, 15:23
Should this revive script work to respawn with my weapons, magazine and my ace2 backpack?

When I try "Revive_TEST_042.utes" I dont respawn with anything else but my magazines....

norrin
Feb 19 2010, 20:11
I just checked with the latest version of ACE v.272 (just in case they recently added something that would stuff-up the existing revive functionality) and it seems to be working fine. Following both respawn and revive you should have the weapons and the ruck sack you died with and the ruck should be packed with the weapons and ammo that were previously in there. Have you changed the revive_init.sqf in any way? As there are some settings in there that will change this behaviour. Maybe PM me a copy and I'll take a look.

@<hidden> - according to the biki addscore "works only on server (dedicated or hosted) and has global effect, when used on client it has no effect in ArmA 2 (ver. 1.2)." So in the heal script you're going to need to put something like
player setVehicleInit "if (isServer) then {this addScore 2}";
processInitCommands; Note this is untested and I'm feeling pretty crusty this morning so no promises it will work.

D3lta
Feb 21 2010, 18:18
Hi masters of Revive,

I'm using last version of F2 FrameWork with Revive 0.3e, during the preview mode in editor, with ten AI soldiers , I dont have problemas in script log error.

But, When I play the mission in MP dedicated server, with 1 player only, using AI disabled, I get this message on log error file:




Error in expression <
_max_respawns = (paramsArray select 3);
_JIP_respawns = [2,30]>
Error position: <select 3);
_JIP_respawns = [2,30]>
Error Zero divisor
File mpmissions\__CUR_MP.Chernarus\revive_init.sqf, line 60


My revive_init.sqf is:

/*
ARMA2 REVIVE SCRIPT - AI enabled or disabled

© SEPTEMBER 2009 - norrin (norrin@<hidden>)

Version: 0.3e ArmA2
*******************************************************************************************************
See release notes for details on contributors and instructions for incorporating revive scripts into your own missions
************************************************************************************
Start revive_init.sqf
*/
// =====================================================================================================================
// DO NOT MODIFY THIS CODE
// =====================================================================================================================
// sickboy's code modified by _xeno
T_INIT = false;
T_Server = false;
T_Client = false;
T_JIP = false;

T_MP = (if (playersNumber east + playersNumber west + playersNumber resistance + playersNumber civilian > 0) then {true} else {false});

if (isServer) then
{
T_Server = true;
if (!isNull player) then {T_Client = true};
T_INIT = true;
} else {
T_Client = true;
if (isNull player) then
{
T_JIP = true;
[] spawn {waitUntil {!isNull player};T_INIT = true};
} else {
T_INIT = true;
};
};
waitUntil {T_INIT};
// =====================================================================================================================
// THE FOLLOWING CODE CAN BE MODIFIED
// =====================================================================================================================
// GENERAL REVIVE OPTIONS (Off = 0, On = 1)
_mission_end_function = 0; //array no.0 - mission ends when all players are unconscious
_call_out_function = 1; //array no.6 - whether a unit calls out while unconscious
_water_dialog = 1; //array no.45 - whether a dialog appears when a unit dies in water so that it can auto wash ashore
_unconscious_drag = 1; //array no.39 - whether a unit can drag the bodies of unconscious players
_load_wounded = 1; //array no.61 - allows you to load unconscious units on vehicles
_altUnc_animation = 0; //array no.54 - use alternate revive animation
_JIP_spawn_dialog = 0; //array no.2 - whether a dialog appears when a player JIP so that he can be transported to a spawn point near the action
_time_b4_JIP_spawn_dialog = 10000; //array no.17 - time before the respawn dialog appears for JIP players
_perpetual_server = 0; //array no.62 - NOT IMPLEMENTED
// ==================================================================
// LIST OF PLAYABLE UNITS
NORRN_player_units = ["alpha_1","alpha_2","alpha_3","alpha_4","alpha_5","bravo_1","bravo_2","bravo_3","bravo_4","bravo_5"];
// ==================================================================
// WELCOME SCREEN
//titleText ["Joining the Revive Test Mission\n\n(Make sure you check the mission notes for details on how the scripts work\nand the revive_readMe in the attached pdf file for the full notes on implementing \nthe scripts in your own missions and the options available)", "BLACK FADED", 0.6]; // This next line can be commented out or removed if it interferes with intro movies
// ==================================================================
// REVIVE OPTIONS
_max_respawns = (paramsArray select 3); //array no.38 - Number of lives per unit
_JIP_respawns = [2,30]; //array no.63 - 0 - off or the number of lives players receive when they join in progress , JIP time after the mission starts
_revive_timer = 1; //array no.7 - Whether you want to limit the amount of timer a player has while unconscious
_revive_time_limit = 300; //array no.27 - Amount of time a player remains unconscious before respawning or dying
_revive_damage = 0; //array no.37 - Unit's level of damage following revive
_unconscious_markers = 1; //array no. 4 - Whether a marker appears on the game map at the location of the unconscious unit
_caseVAC = [1, ["MASH","HMMWV_Base"]]; //array no.64 - Allows units to be taken to a hospital etc to be revived
_mediVAC = []; //array no.65 - NOT IMPLEMENTED
_chance_ofDeath = [0,0]; //array no.66 - Two parameters in the array the first switches off/on (0/1) chance of death when shot, increases dues to hit location and number of times revived and the second parameter switches on/off the decreasing respawn timer based on how many times you have been revived, if using set respawn-time to at least 300 seconds.
_dualTimer = 0; //array no.67 - NOT IMPLEMENTED - normal units can only revive for eg 30 seconds whereas medics can heal players up to 120 secs - array - [0/1 - off/on, revive timer for normal unit, timer for medic]
_deadSpectator_cam = 1; //array no.92 - leave as 0 - whether a unit can spectate other friendly units when it has run out of lives
// ==================================================================
// RESPAWN OPTIONS
_no_respawn_points = 4; //array no.12 - no of respawn points (Max number 4)
_Base_1 = "Mobile"; //array no.13 - spawn position names
_Base_2 = "BaseBravo"; //array no.14
_Base_3 = "BaseAvancada"; //array no.15
_Base_4 = "BaseInicial"; //array no.16
_Base_free_respawn = [1,1,0,1]; //array no.36 - select whether to allow respawning at spawn points even if enemy troops are present (options OFF = 0, ON = 1)
_respawn_at_base_addWeapons = 0; //array no.11 - unit respawns with weapons it commenced the mission with
_respawn_at_base_magazines = []; //array no.34 - If using the respawn_at_base_addWeapons option then place the magazine and weapon
_respawn_at_base_weapons = []; //array no.35 types in the following arrays, if left blank respawns with weapons from mission start
_respawn_position = 2; //array no.28 - 0 - respawn at base_1; 1 - the closest enemy free respawn point; 2 - players choice; and 3 - dies
_respawnAtBaseWait = [0,0]; //array no.68 - Two parameters: 1st if = 1 makes players that respawn at base wait for (parameter 2) seconds before being able to see surroundings
_objectiveBasedRP = []; //array no.69 - NOT IMPLEMENTED
// Mobile Spawn Settings
_mobile_spawn = 1; //array no.51 - set to 1 if you want to use mobile spawn
_mobile_base_start = "Base"; //array no.52
_mobile_base2_start = ""; //array no.70 - NOT IMPLEMENTED
_mobile_type = 0; //array no.60 - set as 0 - for vehicle and 1 for man
_mobile_man = objNull; //array no.53 - place name of unit here or if not used make sure set as objNull
_mobile_man2 = objNull; //array no.71 - NOT IMPLEMENTED
// ==================================================================
// UNITS THAT CAN REVIVE/UNITS THAT CAN BE REVIVED
_can_revive = "soldierWB"; //array no.18
_can_revive_2 = ""; //array no.19
_can_revive_3 = ""; //array no.72 - NOT IMPLEMENTED
_can_revive_4 = ""; //array no.73 - NOT IMPLEMENTED
_can_be_revived = "soldierWB"; //array no.20
_can_be_revived_2 = ""; //array no.21
_can_be_revived_3 = ""; //array no.74 - NOT IMPLEMENTED
_can_be_revived_4 = ""; //array no.75 - NOT IMPLEMENTED
_medic_1 = "USMC_Soldier_Medic"; //array no.76 - Used in conjunction with medpacks and bleeding
_medic_2 = ""; //array no.77 - Used in conjunction with medpacks and bleeding
_medic_3 = ""; //array no.78 - NOT IMPLEMENTED
_medic_4 = ""; //array no.79 - NOT IMPLEMENTED
//========================================================
// MEDPACK AND BLEEDING OPTIONS
_medpacks = 0; //array no.80 - Whether you want to give the units a limited number of revive kits 0/1 - no/yes
_stabilisation = 0; //array no.81 - NOT IMPLEMENTED
_bleeding = 1; //array no.82 - Make units bleed and require bandages
_medic_medpacks = 5; //array no.83 - No of medpacks for units specified in the _medic variables - they are required for reviving units
_unit_medpacks = 3; //array no.84 - No of medpacks for units specified in the _can_revive variables - they are required for reviving units
_medic_bandages = 5; //array no.85 - Bandages stop bleeding
_unit_bandages = 3; //array no.86 -
_medic_stable = 0; //array no.100 - NOT IMPLEMENTED
_unit_stable = 0; //array no.101 - NOT IMPLEMENTED
_stabTime_tillDeath = 0; //array no.87 - NOT IMPLEMENTED //Time until death following revive without stabilisation
// ==================================================================
// ENEMY SIDE TO PLAYABLE UNITS
_no_enemy_sides = 1; //array no.22 - No of Enemy sides (0, 1 or 2).
_enemy_side_1 = "EAST"; //array no.23 - Enemy sides can be "EAST", "WEST", "GUER" etc
_enemy_side_2 = ""; //array no.24
_enemy_side_3 = ""; //array no.88 - NOT IMPLEMENTED
_enemy_side_4 = ""; //array no.89 - NOT IMPLEMENTED
// ==================================================================
// FRIENDLY SIDE TO PLAYABLE UNITS
_allied_side_1 = "WEST"; //array no.42 - Friendly sides can be "EAST", "WEST","RESISTANCE" etc.
_allied_side_2 = "WEST"; //array no.43 - If all players are from the same side make sure you set the same side for both variables eg "WEST", "WEST"
_allied_side_3 = ""; //array no.90 - NOT IMPLEMENTED
_allied_side_4 = ""; //array no.91 - NOT IMPLEMENTED
// ==================================================================
// UNCONSCIOUS CAMERA OPTIONS
_follow_cam = 1; //array no.5 - option to allow viewing of friendly units while unconscious
_follow_cam_distance = 250; //array no.32 - the range that unconscious players can spectate friendly units
_follow_cam_team = 0; //array no.44 - set to 1 if you wish unconscious players only to spectate players within NORRN_player_units array
_top_view_height = 70; //array no.55 - allows you to set the top down camera height
_visible_timer = 1; //array no.41 - view a cound-down timer while unconscious
_unconscious_music = 0; //array no.46 - music must appear as unc_theme in music.hpp
// ==================================================================
// RESPAWN DIALOG OPTIONS
_nearest_teammate_dialog = 0; //array no.3 - whether a respawn dialog appears when there are no players within this distance
_all_dead_dialog = 0; //array no.1 - whether a respawn dialog appears when all players are unconscious (_all_dead_player = 1)
_respawn_button_timer = 0; //array no.25 - Time until respawn button appears (0 = approx. 12 seconds), NB: Set to a high number like 100000 seconds if you do not want
_distance_to_friend = 250; //array no.26 - If the closest friendly unit is further than this distance away trigger respawn dialog
_all_dead_player = 0; //array no.56
_all_dead_distance = 10000; //array no.57 - whether a respawn dialog appears when all players within a specified distance are unconscious (_all_dead_player = 1)
// ==================================================================
// Bonus life for aiding team mates function
_reward_function = 1; //array no.96 - specify whether a unit receives bonus lives for reviving other players
_revives_required = 1; //array no.97 - Number of revives required before recieving a bonus life
// ==================================================================
// Team kill function
_team_kill_function = 1; //array no.98 - specify whether a unit loses a life for killing team mates
_no_team_kills = 1; //array no.99 - Number of teamkills before punishment
// ==================================================================
// CONFIGURABLE OPTIONS FOR HEAL YOURSELF FUNCTION
_heal_yourself = 1; //array no.8 - whether a unit can heal damage to itself
_no_of_heals = 1; //array no.29 - Number of heals that each player gets during a mission
_lower_bound_heal = 0.1; //array no.30 - The damage level range between which the heal action becomes available
_upper_bound_heal = 0.8; //array no.31
// ==================================================================
// AI REVIVE BEHAVIOUR OPTIONS
_goto_revive = 0; //array no. 9 - closest AI automatically moves to revive a downed team mate
_AI_smoke = 1; //array no. 40 - if available reviving AI throws smoke on downed AI position
_AI_aware = 0; //array no. 49 - AI will clear an enemy units it is aware of before auto reviving
_AI_cover = 1; //array no. 50 - second AI unit moves with AI reviver to give cover
_AI_dismount = 0; //array no. 58 - toggles ability of reviving AI units to dismount vehicles (1 = dismount)
_call_for_AI_help = 1; //array no. 59 - allows AI units to call for help
_goto_revive_distance = 500; //array no. 33 - distance AI units will move to revive a downed team mate
// ==================================================================
// OPTIONS FOR PLAYER'S DEAD BODIES AND EQUIPMENT - Additional revive functions with many thanks to alef (0 - off, 1 - on except for _bury_timeout)
_drop_weapons = 1; //array no.93 - should the respawned player drop his weapons where he died?
_cadaver = 0; //array no.94 - should the respawned player's body remain there?
_bury_timeout = 12; //array no.95 - if drop weapons OR player body, how long before the body is buried?
// 0=maximum (1200s) , n=seconds up to 1200s (hard coded)
// ==================================================================
// USER CODE - eg. NORRNCustonexec1="execvm ""myscript.sqf"";hint ""myoutput"";"
NORRNCustomExec1 =""; // Exec1 occurs following being revived
NORRNCustomExec2 =""; // Exec2 occurs when you team kill
NORRNCustomExec3 =""; // Exec3 occurs when you spawn at base
NORRNCustomExec4 =""; // Exec4 occurs when you try and spawn at base but it is still occupied
NORRNCustomExec5 =""; // Must use variables: MAP_r_rejoin (false - first time,
// true - rejoining the server, and
// MAP_r_no_lives - number of lives if you rejoin server)
// =====================================================================================================================
// DO NOT MODIFY THE FOLLOWING CODE
// =====================================================================================================================
NORRN_revive_array = [];
NORRN_revive_array = [_mission_end_function,_all_dead_dialog,_JIP_spawn_dialog,_nearest_teammate_dialog,_unconscious_markers,_follow_cam,_call_out_function,_revive_timer,
_heal_yourself,_goto_revive,_unconscious_invincibility,_respawn_at_base_addWeapons,_no_respawn_points,_Base_1,_Base_2,_Base_3,_Base_4,_time_b4_JIP_spawn_dialog,
_can_revive,_can_revive_2,_can_be_revived,_can_be_revived_2,_no_enemy_sides,_enemy_side_1,_enemy_side_2,_respawn_button_timer,_distance_to_friend,
_revive_time_limit,_respawn_position,_no_of_heals,_lower_bound_heal,_upper_bound_heal,_follow_cam_distance,_goto_revive_distance,_respawn_at_base_magazines,
_respawn_at_base_weapons, _Base_free_respawn, _revive_damage, _max_respawns, _unconscious_drag,_AI_smoke,_visible_timer,_allied_side_1,_allied_side_2,_follow_cam_team,
_water_dialog, _unconscious_music, _enemy_units_1, _enemy_units_2, _AI_aware,_AI_cover,_mobile_spawn,_mobile_base_start,_mobile_man,_altUnc_animation,_top_view_height,
_all_dead_player,_all_dead_distance,_AI_dismount,_call_for_AI_help,_mobile_type,_load_wounded,_perpetual_server,_JIP_respawns,_caseVAC,_mediVAC,_chance_ofDeath,_dualTimer,
_respawnAtBaseWait,_objectiveBasedRP,_mobile_base2_start,_mobile_man2,_can_revive_3,_can_revive_4,_can_be_revived_3,_can_be_revived_4,_medic_1,_medic_2,_medic_3,_medic_4,
_medpacks,_stabilisation,_bleeding,_medic_medpacks,_unit_medpacks,_medic_bandages,_unit_bandages,_stabTime_tillDeath,_enemy_side_3,_enemy_side_4,
_allied_side_3,_allied_side_4,_deadSpectator_cam,_drop_weapons,_cadaver,_bury_timeout,_reward_function,_revives_required,_team_kill_function,_no_team_kills,_medic_stable, _unit_stable];

// start related revive functions
[] execVM "f\revive\init_related_scripts.sqf";

if (true) exitWith {};
//Last edited 17/08/09

//if (_name == player) then {[_name] execVM 'f\revive\rPrn.sqf'}





How I Fix this problem?


Best Regards!!

norrin
Feb 22 2010, 01:21
@<hidden> - it sounds to me like something is missing from your description.ext - specifically the definition of the paramsArray 3. Check your description.ext and make sure that the required code is not commented out in this file. If you're not sure how how to do this then PM me your mission's description.ext file or post it here.

norrin

D3lta
Feb 22 2010, 02:25
@<hidden> - it sounds to me like something is missing from your description.ext - specifically the definition of the paramsArray 3. Check your description.ext and make sure that the required code is not commented out in this file. If you're not sure how how to do this then PM me your mission's description.ext file or post it here.

norrin

OK master Norrin, this is my description.ext:


#include "R3F_ARTY_AND_LOG\desc_include.h"

// ============================================================================================

// F2 - Mission Header
// Credits: Please see the F2 online manual (http://www.ferstaberinde.com/f2/en/)

class Header
{
gameType = Coop;
minPlayers = 1;
maxPlayers = 10;
};

// ============================================================================================

// F2 - Respawn Settings
// Credits: Please see the F2 online manual (http://www.ferstaberinde.com/f2/en/)

respawn = 3;
respawndelay = 4;

// ============================================================================================

class Params
{

// ============================================================================================

// F2 - Debug Mode
// Credits: Please see the F2 online manual (http://www.ferstaberinde.com/f2/en/)
// WARNING: DO NOT DISABLE THIS COMPONENT

class f_param_debugMode
{
title = "$STR_f_param_debugMode";
values[] = {0,1};
texts[] = {"Off","On"};
default = 0;
code = "f_var_debugMode = %1";
};

// ============================================================================================

// F2 - Mission Conditions Selector
// Credits: Please see the F2 online manual (http://www.ferstaberinde.com/f2/en/)

// class f_param_timeOfDay
// {
// title = "$STR_f_param_timeOfDay";
// values[] = {0,1,2,3,4,5,6,7};
// texts[] = {$STR_f_param_timeOfDay_Option0,$STR_f_param_timeOfDay_Option1,$STR_f_param_timeOfDay_Option2,$STR_f_param_timeOfDay_Option3,$STR_f_param_timeOfDay_Option4,$STR_f_param_timeOfDay_Option5,$STR_f_param_timeOfDay_Option6,$STR_f_param_timeOfDay_Option7};
// default = 3;
// code = "f_param_timeOfDay = %1";
// };
// class f_param_weather
// {
// title = "$STR_f_param_weather";
// values[] = {0,1,2,3,4};
// texts[] = {$STR_f_param_weather_Option0,$STR_f_param_weather_Option1,$STR_f_param_weather_Option2,$STR_f_param_weather_Option3,$STR_f_param_weather_Option4};
// default = 0;
// code = "f_param_weather = %1";
// };

// ============================================================================================

// F2 - AI Skill Selector (coop)
// Credits: Please see the F2 online manual (http://www.ferstaberinde.com/f2/en/)

// class f_param_AISkill_Friendly
// {
// title = "$STR_f_param_AISkill_Friendly";
// values[] = {0,1,2,3};
// texts[] = {$STR_f_param_AISkill_Option0,$STR_f_param_AISkill_Option1,$STR_f_param_AISkill_Option2,$STR_f_param_AISkill_Option3};
// default = 2;
// code = "f_param_AISkill_Friendly = %1";
// };
// class f_param_AISkill_Enemy
// {
// title = "$STR_f_param_AISkill_Enemy";
// values[] = {0,1,2,3};
// texts[] = {$STR_f_param_AISkill_Option0,$STR_f_param_AISkill_Option1,$STR_f_param_AISkill_Option2,$STR_f_param_AISkill_Option3};
// default = 2;
// code = "f_param_AISkill_Enemy = %1";
// };

// ============================================================================================

// F2 - AI Skill Selector (A&D)
// Credits: Please see the F2 online manual (http://www.ferstaberinde.com/f2/en/)

// class f_param_AISkill_BLUFOR
// {
// title = "$STR_f_param_AISkill_BLUFOR";
// values[] = {0,1,2,3};
// texts[] = {$STR_f_param_AISkill_Option0,$STR_f_param_AISkill_Option1,$STR_f_param_AISkill_Option2,$STR_f_param_AISkill_Option3};
// default = 2;
// code = "f_param_AISkill_BLUFOR = %1";
// };
// class f_param_AISkill_OPFOR
// {
// title = "$STR_f_param_AISkill_OPFOR";
// values[] = {0,1,2,3};
// texts[] = {$STR_f_param_AISkill_Option0,$STR_f_param_AISkill_Option1,$STR_f_param_AISkill_Option2,$STR_f_param_AISkill_Option3};
// default = 2;
// code = "f_param_AISkill_OPFOR = %1";
// };

// ============================================================================================

// F2 - Norrin's Revive Respawn (Part 1)
// Credits: Please see the F2 online manual (http://www.ferstaberinde.com/f2/en/)

class f_param_lives
{
title = "Number of Lives:";
values[] = {2000,1000,20,10,7,5};
texts[] = {"No Revive","Infinite - Cadet","20 - Easy ","10 - Normal","7 - Hard","5 - Extreme"};
default = 10;
code = "f_param_lives = %1";
};

// ============================================================================================

};

// ============================================================================================

// F2 - Kegetys Spectator Script
// Credits: Please see the F2 online manual (http://www.ferstaberinde.com/f2/en/)

#include "f\common\f_spect\spectating.hpp"

// ============================================================================================

// F2 - Norrin's Revive Respawn (Part 2)
// Credits: Please see the F2 online manual (http://www.ferstaberinde.com/f2/en/)

disabledAI = 1;
#include "f\revive\dialogs\revive.cpp"

// ============================================================================================

// F2 - Gear Snippets
// Credits: Please see the F2 online manual (http://www.ferstaberinde.com/f2/en/)

// #include "f\common\f_gearSnippets.hpp"

// ============================================================================================

class RscTitles {

#include "R3F_ARTY_AND_LOG\desc_rsct_include.h"

// ============================================================================================

// F2 - Name Tags
// Credits: Please see the F2 online manual (http://www.ferstaberinde.com/f2/en/)

// #include "f\common\f_recog\recogOverlay.hpp"

// ============================================================================================

};

// ============================================================================================




and this in my init.sqf:



// F2 - Norrin's Revive Respawn
// Credits: Please see the F2 online manual (http://www.ferstaberinde.com/f2/en/)

server execVM "revive_init.sqf";

norrin
Feb 22 2010, 04:58
@<hidden> - Ok thanks for posting that. It looks like you only have 2 parameters defined in your paramsArray (f_param_debugMode and f_param_lives) in the description.ext, therefore you'll need to change the line in the revive_init.sqf that currently reads
_max_respawns = (paramsArray select 3); to
_max_respawns = (paramsArray select 1); as f_param_debugMode is paramsArray select 0 and f_param_lives is paramsArray select 1.

Hope this works,

norrin

D3lta
Feb 22 2010, 20:45
@<hidden> - Ok thanks for posting that. It looks like you only have 2 parameters defined in your paramsArray (f_param_debugMode and f_param_lives) in the description.ext, therefore you'll need to change the line in the revive_init.sqf that currently reads
_max_respawns = (paramsArray select 3); to
_max_respawns = (paramsArray select 1); as f_param_debugMode is paramsArray select 0 and f_param_lives is paramsArray select 1.

Hope this works,

norrin


WOW!!! It's Ok now!!! Very Very Thanks!!!!!

Continue the excellent work!!!


Best Regards!! :)

JoeAnorak
Feb 24 2010, 16:40
I realise the Revive Script is, as it 'says on the tin', for Multi-Player only but is there any way of enabling some of the features in single player missions?

Obviously the spawn side of the Script isn't really applicable but I dearly love to get some of the functionality of unconsciousness, bleeding, bandaging, loading onto vehicles and the abilities of the Playable AI into my Missions.

I've tried the BIS First Aid modules and ACE2 but this script really hits the mark in what i'd like to achieve.

norrin
Feb 24 2010, 23:28
I realise the Revive Script is, as it 'says on the tin', for Multi-Player only but is there any way of enabling some of the features in single player missions?

Obviously the spawn side of the Script isn't really applicable but I dearly love to get some of the functionality of unconsciousness, bleeding, bandaging, loading onto vehicles and the abilities of the Playable AI into my Missions.

I've tried the BIS First Aid modules and ACE2 but this script really hits the mark in what i'd like to achieve.

Its quite possible with the new scripting commands in ArmA2 to make a single player revive system - so exactly the same functionality as already exists in the MP version - and its been on my to-do list for some time - unfortunately towards the bottom of the list, if i get a chance I might revisit it over the next couple of weeks.

Manzilla
Feb 25 2010, 00:05
Its quite possible with the new scripting commands in ArmA2 to make a single player revive system - so exactly the same functionality as already exists in the MP version - and its been on my to-do list for some time - unfortunately towards the bottom of the list, if i get a chance I might revisit it over the next couple of weeks.

Please do. An SP revive system would be great.

JoeAnorak
Feb 25 2010, 16:39
Its quite possible with the new scripting commands in ArmA2 to make a single player revive system - so exactly the same functionality as already exists in the MP version - and its been on my to-do list for some time - unfortunately towards the bottom of the list, if i get a chance I might revisit it over the next couple of weeks.


Thanks norrin, fantastic that your considering it at the very least. I think it could really add a lot to the single player experience, especially for those that find 'magic healing' and bullet wound casualties carrying on as normal a bit of an immersion breaker but equally don't like the outlandishly high and wholly unrealistic mortality rate imposed if its not used.

It would be great for the player and the AI to only be able to 'stabilise' a dying or wounded team member in the field then have to call in a MERT / IRT and get them transported back to a location in order to prevent their death. Given ARMA2 delivers such a realistic experience elsewhere I find it a little strange that when playing in SP we're quite happy to leave the bodies of our team-mates face down in the field where they fell! The Revive Script would certainly develop an area of the SP experience which is currently a bit lacking in my opinion. It may even inject a bit more of an attachment to our AI team members and a bit of urgency in trying and save them when they're hit. Failure conditions based on friendly casualties would then be a bit more interesting, forcing the player to make a genuine effort to effectively deal with casualties.

norrin
Feb 26 2010, 22:56
Well you asked for it. Here's a pretty straight port of the revive scripts for SP. There's quite a few other code optimisations that could be done for the SP version but everything I've tried seems to be working so this will do for now. Eventually using this method it would be possible to make a one size fits all script that works in both single player and multiplayer.

Download
http://norrin.org/downloads/ArmA2/revive/SP/Revive_SP_TEST.utes.rar
The readMe containing instructions for using the script in your missions is in the archived mission folder.

Oh, if want to use the parameter option for selecting the number of revives then comment out or delete the line in the revive_init.sqf that looks like this
_max_respawns = 10; and use the line that appears above this line without the comments, it should look like this
_max_respawns = (paramsArray select 1); I've done this so you can preview in the editor without the associated description.ext problems.

One final thing, I've tried to make it more difficult to die from damage to your arms and legs so let me know if I need to tweak this aspect of the scripts further, whereas, head and body shots should hopefully work in an identical fashion to the way they work in vanilla ArmA2.

norrin

Manzilla
Feb 27 2010, 00:13
Thanks again sir. I gotta say you are a damn genius and boy you work fast.

Imutep
Feb 27 2010, 12:22
Very nice norrin! My prayer were heard. :)

SNKMAN
Feb 27 2010, 13:01
Hey norrin,

just a thought...

Why don't you make the revive AddOn based?

With the commands we have in ArmA 2 this really should be possible with only a few changes. ;)

Gringo85
Feb 28 2010, 14:55
Hey guys I need your help, lately I've been playing in U.S SOCOM ACE2 Server with Revive, and the funny thing is every time I get revived my gear gets reset. When I join, first thing I do is to gear up, grab my M4 RCO drop NVGs if it's day time, grab the earplugs and shades, get an AT4 and a bagpack. When someone revives me all that gear is gone and when I check in the Ammo box I can't find them in there(To pick them again) My question is, is it this a new feature of ACE2 or Revive Script? or something is wrong, which I think it might be my case. Please help.

Thanks

JoeAnorak
Feb 28 2010, 15:00
Norrin, a huge thankyou for doing this simply off the back of a couple of us showing an interest. Im going to dive in and have a play immediately!

MugAben
Feb 28 2010, 15:00
Hey norrin,

just a thought...

Why don't you make the revive AddOn based?

With the commands we have in ArmA 2 this really should be possible with only a few changes. ;)

Noes. Not another addon to enable thanks. :D The stack is getting higher and higher. :j:

scouttheboss
Mar 1 2010, 14:10
Ey guys sorry guys but i dont understand the 3rd step in ur description how to use ur script.

"3. Copy the revive_init.sqf file and revive_sqf, spect, and sound folders across to your
mission directory"

Sorry but i really dont know what i have to do by this step, could u explane it easier?

Would be really nice, greets scout

norrin
Mar 2 2010, 03:27
Ey guys sorry guys but i dont understand the 3rd step in ur description how to use ur script.

"3. Copy the revive_init.sqf file and revive_sqf, spect, and sound folders across to your
mission directory"

Sorry but i really dont know what i have to do by this step, could u explane it easier?

Would be really nice, greets scout

Scout what version of the revive are you using as for sometime the spectator and sound folders have been contained in the revive_sqf folder? So the first thing I recommend is to go here and download the latest version of the revive for ArmA2: http://forums.bistudio.com/showpost.php?p=1307463&postcount=1 (you want version 0.42).

Once you've got your hands on that, check out the new readMe and all it means is to open up the revive test mission and copy the revive_sqf folder from the test mission into your mission folder.

MadMike[Brig2010]
Mar 4 2010, 08:29
Hello Norrin!

I´ve been using your revive script a long time now and i cant say anything negative about it. Its absolutely great!

But now i got a problem. I want to use in a new mission the GL4-System. But everytime i use GL4 the revive script won´t work anymore. I guess the problem is on the GL4-side, so i asked SNKMAN about it. I think he is very busy at the moment and not so often in the forum. So i thought i ask you. Maybe you heard about that in the past and still know what to do to use your revive-script and the GL4-system too.

Thx, MadMike.48th

Nomadd
Mar 4 2010, 13:50
@<hidden>

Not sure if this will help but I have found in mission making that putting certain things before "server execVM "revive_init.sqf";" in your Init.sqf will cause the revive not to work. I have no idea why this is ,but I try to keep "server execVM "revive_init.sqf";" near the top of the init.sqf.


If you are trying to run GL4.sqfs (the userconfig sqfs) from inside your mission folder and you put the

waitUntil { !(isNil "GL4_Global") };
[] execVM "GL4_Settings\GL4_Global.sqf";

like Snkman says , before the server execVM "revive_init.sqf"; Revive will not work. I have tried it.

Hope this helps.

Nomadd

MadMike[Brig2010]
Mar 4 2010, 17:32
@<hidden>

Thx for your help, now revive works for me.

norrin
Mar 4 2010, 21:39
Hello Norrin!

I´ve been using your revive script a long time now and i cant say anything negative about it. Its absolutely great!

But now i got a problem. I want to use in a new mission the GL4-System. But everytime i use GL4 the revive script won´t work anymore. I guess the problem is on the GL4-side, so i asked SNKMAN about it. I think he is very busy at the moment and not so often in the forum. So i thought i ask you. Maybe you heard about that in the past and still know what to do to use your revive-script and the GL4-system too.

Thx, MadMike.48th

I've got to admit mate I've downloaded the latest GL4 but I haven't had a chance to try it yet, just too busy with other ARMA2 stuff, so I'm not sure what could be causing this - sorry. I know in the past SNK has tried to keep the GL stuff compatible with the revive scripts but this may have changed - keep trying to contact him as he's probably the best person to answer this question. If I get a chance, its unlikely in the forseeable future though, I'll take a look myself.

norrin

MadMike[Brig2010]
Mar 5 2010, 00:22
@<hidden>

I fixed the problem for myself. I had to execute the revive-script way more earlier in the init.sqf. So i think you can put your focus on other ARMA2-stuff again... :)

By the way: A big thanks to Nomadd for giving me the info that solved the problem!

Gnome_AS
Mar 5 2010, 19:37
like Snkman says , before the server execVM "revive_init.sqf"; Revive will not work. I have tried it.

I don't know that I'd say it won't work. Revive works just fine for me, here is sample of a wip init.sqf I have up right now:


enablesaving [false, false];
player globalChat format["Initializing: Please Standby"];

waituntil {isServer or not isNull player};
player setvariable ["BIS_noCoreConversations", true];

setViewDistance 1750;
setTerrainGrid 25;

if(isNil "mission_init") then {
mission_init = false;
publicVariable "mission_init";
};

if (isServer) then
{
waitUntil { !(isNil "GL4_Global") };
#include "scripts\GL4_Settings\GL4_Global.sqf";
};

[[
["USMC","Kill",["Clear the airfield. Kill all enemies.","Remove enemy forces","Clear airfield"],enemyDude]
],[
["true",["Note1","Note 1 text field"]]
]] execvm "briefing.sqf";

processInitCommands;

f_processParamsArray = [] execVM "f\common\f_processParamsArray.sqf";

f_script_setLocalVars = [] execVM "f\common\f_setLocalVars.sqf";

[] execVM "f\common\f_setMissionConditions.sqf";

server execVM "revive_init.sqf";

waituntil {!isnil "bis_fnc_init"};

waitUntil {!isNil "mando_missile_init_done"};
waitUntil {mando_missile_init_done};
mando_show_hint_global = false;
mando_rearm_sources_classes = ["TowingTractor"];
mando_minairalt = 50;
mando_weapon_master = true;

HW_Arti_CannonNumber = 4; // Number cannons
HW_number_artilleryshells_per_hour = 1000; // Number rounds per hour

[] execVM "bon_artillery\bon_arti_init.sqf";

[] execvm "RMM_Core.sqf";

finishMissionInit;

if (isServer) then {
mission_init = true;
publicVariable "mission_init";
};
waitUntil{mission_init};
player globalChat format["Mission Initialization Complete"];

if(true) exitWith {};


Should have probably posted a cleaner example... but meh, it all works ;)

That being said though, I have no doubt "order of things" may have been an issue for others, I've not had that problem between GL4 & Norrins Revive. GL4 settings in fact need to be at the top somewhere anyway.

Norrins vehicle/respawn/pathing scripts & GL4 on the other hand ... well, just PM me if you ever need a workaround for those. :D


Regards,
Gnome

JoeAnorak
Mar 15 2010, 22:23
Since Norrin released the SP version of the revive script I've been playing with it pretty much non-stop and its really added a whole new dimension to many of my missions just as I thought it would. There's a couple of things I was wondering if it was possible to tweak however to enhance the SP experience even further.

Firstly is it possible to get the 'Protect' rather than the 'Revive' unit to throw smoke on the casualties position? I dug around in AIBehaviour and AI_throwsmoke and experimented a bit but its unfortunately beyond my rather limited scripting skill or understanding of how the functions interact with each other. My reason for asking is that I don't actually want a Medic (revive) unit in my squad hence no-one to throw the smoke. The player is forced to extract unconscious units from combat and load them onto a MEDEVAC vehicle bound for a location where there is a medic / MASH present to revive them. Its often quite difficult to locate the casualty though so marking its position with smoke (or Chem Lights at night) is a great help (and really adds immersion).

Secondly, and I would hazard a guess that this is a much bigger ask; Is it possible to apply the scripts to AI groups that are not led by a player? I'd like to expand the mission I'm working on up to Platoon level using HC and it would be great if the player was forced to respond to a puff of red smoke knowing one of their other sections had a man-down!

PataPalo
Mar 17 2010, 22:23
It seems there´s a problem with Recognize System here http://dev-heaven.net/issues/7476, I got that issue at arma.rpt when player dies 1st time

Error in expression <g_marker", _marker];
;
} else {
_marker setMarkerPosLocal (getPosASL _leader);
i>
Error position: <setMarkerPosLocal (getPosASL _leader);
i>
Error setmarkerposlocal: Tipo Script, esperado Cadena
File x\ace\addons\sys_tracking\loop_markers.sqf, line 76

may be serialization...

thank u very much for that great work

Undeceived
Mar 23 2010, 21:51
Well you asked for it. Here's a pretty straight port of the revive scripts for SP.

WOW, perfect, norrin!! Many thanks!

---------- Post added at 11:51 PM ---------- Previous post was at 10:31 PM ----------

It isn't possible to drag a unconscious person without having a rifle (talking about the SP version).

When the unarmed player opts to drag the person, the guy is attached to the player but the player can't move. The same happens when the player presses the carry option: The "lifting" animation is played but when the wounded one is on the shoulders, the player can't move.

Is there a way to fix this so that unarmed players (e.g. pacifistic and helpful Civilians ;)) can also drag and carry unconscious people? That's exactly what I would need for the mission I'm editing...


Thank you very much, norrin for your work!

Woodstock21
Mar 24 2010, 06:33
Can anyone tell if there is anything wrong with the way i have this script setup?


/*
ARMA2 REVIVE SCRIPT - AI enabled or disabled

© JANUARY 2010 - norrin (norrin@<hidden>)

Version: 0.42 ArmA2
*******************************************************************************************************
See release notes for details on contributors and instructions for incorporating revive scripts into your own missions
************************************************************************************
Start revive_init.sqf
*/
// =====================================================================================================================
// DO NOT MODIFY THIS CODE
// =====================================================================================================================
// sickboy's code modified by _xeno
T_INIT = false;
T_Server = false;
T_Client = false;
T_JIP = false;

T_MP = (if (playersNumber east + playersNumber west + playersNumber resistance + playersNumber civilian > 0) then {true} else {false});

if (isServer) then
{
T_Server = true;
if (!isNull player) then {T_Client = true};
T_INIT = true;
} else {
T_Client = true;
if (isNull player) then
{
T_JIP = true;
[] spawn {waitUntil {!isNull player};T_INIT = true};
} else {
T_INIT = true;
};
};
waitUntil {T_INIT};
// =====================================================================================================================
// THE FOLLOWING CODE CAN BE MODIFIED
// =====================================================================================================================
// GENERAL REVIVE OPTIONS (Off = 0, On = 1)
_mission_end_function = 0; //array no.0 - mission ends when all players are unconscious
_call_out_function = 0; //array no.6 - whether a unit calls out while unconscious
_water_dialog = 1; //array no.45 - whether a dialog appears when a unit dies in water so that it can auto wash ashore
_unconscious_drag = 1; //array no.39 - whether a unit can drag the bodies of unconscious players
_load_wounded = 1; //array no.61 - allows you to load unconscious units on vehicles
_altUnc_animation = 1; //array no.54 - use alternate revive animation
_JIP_spawn_dialog = 0; //array no.2 - whether a dialog appears when a player JIP so that he can be transported to a spawn point near the action
_time_b4_JIP_spawn_dialog = 10000; //array no.17 - time before the respawn dialog appears for JIP players
_perpetual_server = 0; //array no.62 - NOT IMPLEMENTED
_ACE_mod = 0; //array no.102 - NOT IMPLEMENTED - Currently a place holder for possible future functionality
// ==================================================================
// LIST OF PLAYABLE UNITS
NORRN_player_units = ["s1","s2","s3","s4","s5","s6","s7","s8","s9","s10","s11","s12"];
// ==================================================================
// WELCOME SCREEN
titleText ["Joining the Revive Test Mission\n\n(Make sure you check the mission notes for details on how the scripts work\nand the revive_readMe in the attached pdf file for the full notes on implementing \nthe scripts in your own missions and the options available)", "BLACK FADED", 0.6]; // This next line can be commented out or removed if it interferes with intro movies
// ==================================================================
// REVIVE OPTIONS
_max_respawns = (paramsArray select 1); //array no.38 - Number of lives per unit
_JIP_respawns = [2,30]; //array no.63 - 0 - off or the number of lives players receive when they join in progress , JIP time after the mission starts
_revive_timer = 1; //array no.7 - Whether you want to limit the amount of timer a player has while unconscious
_revive_time_limit = 300; //array no.27 - Amount of time a player remains unconscious before respawning or dying
_revive_damage = 0; //array no.37 - Unit's level of damage following revive
_unconscious_markers = 1; //array no. 4 - Whether a marker appears on the game map at the location of the unconscious unit
_caseVAC = [1, ["MASH","HMMWV_Base"]]; //array no.64 - Allows units to be taken to a hospital etc to be revived
_mediVAC = []; //array no.65 - NOT IMPLEMENTED
_chance_ofDeath = [0,0]; //array no.66 - Two parameters in the array the first switches off/on (0/1) chance of death when shot, increases dues to hit location and number of times revived and the second parameter switches on/off the decreasing respawn timer based on how many times you have been revived, if using set respawn-time to at least 300 seconds.
_dualTimer = 0; //array no.67 - NOT IMPLEMENTED - normal units can only revive for eg 30 seconds whereas medics can heal players up to 120 secs - array - [0/1 - off/on, revive timer for normal unit, timer for medic]
_deadSpectator_cam = 1; //array no.92 - leave as 0 - whether a unit can spectate other friendly units when it has run out of lives
// ==================================================================
// RESPAWN OPTIONS
_no_respawn_points = 3; //array no.12 - no of respawn points (Max number 4)
_Base_1 = "Mobile"; //array no.13 - spawn position names
_Base_2 = "Insertion"; //array no.14
_Base_3 = "Medvac"; //array no.15
_Base_4 = "Chopper"; //array no.16
_Base_free_respawn = [1,1,0,0]; //array no.36 - select whether to allow respawning at spawn points even if enemy troops are present (options OFF = 0, ON = 1)
_respawn_at_base_addWeapons = 0; //array no.11 - unit respawns with weapons it commenced the mission with
_respawn_at_base_magazines = []; //array no.34 - If using the respawn_at_base_addWeapons option then place the magazine and weapon
_respawn_at_base_weapons = []; //array no.35 types in the following arrays, if left blank respawns with weapons from mission start
_respawn_position = 2; //array no.28 - 0 - respawn at base_1; 1 - the closest enemy free respawn point; 2 - players choice; and 3 - dies
_respawnAtBaseWait = [0,0]; //array no.68 - Two parameters: 1st if = 1 makes players that respawn at base wait for (parameter 2) seconds before being able to see surroundings
_objectiveBasedRP = []; //array no.69 - NOT IMPLEMENTED
// Mobile Spawn Settings
_mobile_spawn = 1; //array no.51 - set to 1 if you want to use mobile spawn
//_mobile_base_start = "Insertion"; //array no.52 - NO LONGER NEEDED, REDUNDANT VARIABLE
_mobile_base2_start = ""; //array no.70 - NOT IMPLEMENTED
_mobile_type = 1; //array no.60 - set as 0 - for vehicle and 1 for man
_mobile_man = s1; //array no.53 - place name of unit here or if not used make sure set as objNull
_mobile_man2 = objNull; //array no.71 - NOT IMPLEMENTED
// ==================================================================
// UNITS THAT CAN REVIVE/UNITS THAT CAN BE REVIVED
_can_revive = "soldierWB"; //array no.18
_can_revive_2 = ""; //array no.19
_can_revive_3 = ""; //array no.72 - NOT IMPLEMENTED
_can_revive_4 = ""; //array no.73 - NOT IMPLEMENTED
_can_be_revived = "soldierWB"; //array no.20
_can_be_revived_2 = ""; //array no.21
_can_be_revived_3 = ""; //array no.74 - NOT IMPLEMENTED
_can_be_revived_4 = ""; //array no.75 - NOT IMPLEMENTED
_medic_1 = "soldierWB"; //array no.76 - Used in conjunction with medpacks and bleeding
_medic_2 = ""; //array no.77 - Used in conjunction with medpacks and bleeding
_medic_3 = ""; //array no.78 - NOT IMPLEMENTED
_medic_4 = ""; //array no.79 - NOT IMPLEMENTED
//========================================================
// MEDPACK AND BLEEDING OPTIONS
_medpacks = 0; //array no.80 - Whether you want to give the units a limited number of revive kits 0/1 - no/yes
_stabilisation = 0; //array no.81 - NOT IMPLEMENTED
_bleeding = 1; //array no.82 - Make units bleed and require bandages
_medic_medpacks = 10; //array no.83 - No of medpacks for units specified in the _medic variables - they are required for reviving units
_unit_medpacks = 10; //array no.84 - No of medpacks for units specified in the _can_revive variables - they are required for reviving units
_medic_bandages = 10; //array no.85 - Bandages stop bleeding
_unit_bandages = 10; //array no.86 -
_medic_stable = 0; //array no.100 - NOT IMPLEMENTED
_unit_stable = 0; //array no.101 - NOT IMPLEMENTED
_stabTime_tillDeath = 0; //array no.87 - NOT IMPLEMENTED //Time until death following revive without stabilisation
// ==================================================================
// ENEMY SIDE TO PLAYABLE UNITS
_no_enemy_sides = 1; //array no.22 - No of Enemy sides (0, 1 or 2).
_enemy_side_1 = "EAST"; //array no.23 - Enemy sides can be "EAST", "WEST", "GUER" etc
_enemy_side_2 = ""; //array no.24
_enemy_side_3 = ""; //array no.88 - NOT IMPLEMENTED
_enemy_side_4 = ""; //array no.89 - NOT IMPLEMENTED
// ==================================================================
// FRIENDLY SIDE TO PLAYABLE UNITS
_allied_side_1 = "WEST"; //array no.42 - Friendly sides can be "EAST", "WEST","RESISTANCE" etc.
_allied_side_2 = "WEST"; //array no.43 - If all players are from the same side make sure you set the same side for both variables eg "WEST", "WEST"
_allied_side_3 = ""; //array no.90 - NOT IMPLEMENTED
_allied_side_4 = ""; //array no.91 - NOT IMPLEMENTED
// ==================================================================
// UNCONSCIOUS CAMERA OPTIONS
_follow_cam = 1; //array no.5 - option to allow viewing of friendly units while unconscious
_follow_cam_distance = 250; //array no.32 - the range that unconscious players can spectate friendly units
_follow_cam_team = 0; //array no.44 - set to 1 if you wish unconscious players only to spectate players within NORRN_player_units array
_top_view_height = 70; //array no.55 - allows you to set the top down camera height
_visible_timer = 1; //array no.41 - view a cound-down timer while unconscious
_unconscious_music = 0; //array no.46 - music must appear as unc_theme in music.hpp
// ==================================================================
// RESPAWN DIALOG OPTIONS
_nearest_teammate_dialog = 0; //array no.3 - whether a respawn dialog appears when there are no players within this distance
_all_dead_dialog = 0; //array no.1 - whether a respawn dialog appears when all players are unconscious (_all_dead_player = 1)
_respawn_button_timer = 0; //array no.25 - Time until respawn button appears (0 = approx. 12 seconds), NB: Set to a high number like 100000 seconds if you do not want
_distance_to_friend = 250; //array no.26 - If the closest friendly unit is further than this distance away trigger respawn dialog
_all_dead_player = 0; //array no.56
_all_dead_distance = 10000; //array no.57 - whether a respawn dialog appears when all players within a specified distance are unconscious (_all_dead_player = 1)
// ==================================================================
// Bonus life for aiding team mates function
_reward_function = 1; //array no.96 - specify whether a unit receives bonus lives for reviving other players
_revives_required = 1; //array no.97 - Number of revives required before recieving a bonus life
// ==================================================================
// Team kill function
_team_kill_function = 1; //array no.98 - specify whether a unit loses a life for killing team mates
_no_team_kills = 1; //array no.99 - Number of teamkills before punishment
// ==================================================================
// CONFIGURABLE OPTIONS FOR HEAL YOURSELF FUNCTION
_heal_yourself = 1; //array no.8 - whether a unit can heal damage to itself
_no_of_heals = 10; //array no.29 - Number of heals that each player gets during a mission
_lower_bound_heal = 0.1; //array no.30 - The damage level range between which the heal action becomes available
_upper_bound_heal = 0.8; //array no.31
// ==================================================================
// AI REVIVE BEHAVIOUR OPTIONS
_goto_revive = 0; //array no. 9 - closest AI automatically moves to revive a downed team mate
_AI_smoke = 0; //array no. 40 - if available reviving AI throws smoke on downed AI position
_AI_aware = 1; //array no. 49 - AI will clear an enemy units it is aware of before auto reviving
_AI_cover = 1; //array no. 50 - second AI unit moves with AI reviver to give cover
_AI_dismount = 0; //array no. 58 - toggles ability of reviving AI units to dismount vehicles (1 = dismount)
_call_for_AI_help = 1; //array no. 59 - allows AI units to call for help
_goto_revive_distance = 500; //array no. 33 - distance AI units will move to revive a downed team mate


// ==================================================================
// OPTIONS FOR PLAYER'S DEAD BODIES AND EQUIPMENT - Additional revive functions with many thanks to alef (0 - off, 1 - on except for _bury_timeout)
_drop_weapons = 0; //array no.93 - should the respawned player drop his weapons where he died?
_cadaver = 0; //array no.94 - should the respawned player's body remain there?
_bury_timeout = 12; //array no.95 - if drop weapons OR player body, how long before the body is buried?
// 0=maximum (1200s) , n=seconds up to 1200s (hard coded)
// ==================================================================
// USER CODE - eg. NORRNCustonexec1="execvm ""myscript.sqf"";hint ""myoutput"";"
NORRNCustomExec1 =""; // Exec1 occurs following being revived
NORRNCustomExec2 =""; // Exec2 occurs when you team kill
NORRNCustomExec3 ="[_name,'Medvac1','chopper']execVm 'respawnSpecial\respawnSpecial.sqf';"; // Exec3 occurs when you spawn at base
NORRNCustomExec4 =""; // Exec4 occurs when you try and spawn at base but it is still occupied
NORRNCustomExec5 =""; // Must use variables: MAP_r_rejoin (false - first time,
// true - rejoining the server, and
// MAP_r_no_lives - number of lives if you rejoin server)
// =====================================================================================================================
// DO NOT MODIFY THE FOLLOWING CODE
// =====================================================================================================================
NORRN_revive_array = [];
NORRN_revive_array = [_mission_end_function,_all_dead_dialog,_JIP_spawn_dialog,_nearest_teammate_dialog,_unconscious_markers,_follow_cam,_call_out_function,_revive_timer,
_heal_yourself,_goto_revive,_unconscious_invincibility,_respawn_at_base_addWeapons,_no_respawn_points,_Base_1,_Base_2,_Base_3,_Base_4,_time_b4_JIP_spawn_dialog,
_can_revive,_can_revive_2,_can_be_revived,_can_be_revived_2,_no_enemy_sides,_enemy_side_1,_enemy_side_2,_respawn_button_timer,_distance_to_friend,
_revive_time_limit,_respawn_position,_no_of_heals,_lower_bound_heal,_upper_bound_heal,_follow_cam_distance,_goto_revive_distance,_respawn_at_base_magazines,
_respawn_at_base_weapons, _Base_free_respawn, _revive_damage, _max_respawns, _unconscious_drag,_AI_smoke,_visible_timer,_allied_side_1,_allied_side_2,_follow_cam_team,
_water_dialog, _unconscious_music, _enemy_units_1, _enemy_units_2, _AI_aware,_AI_cover,_mobile_spawn,_mobile_base_start,_mobile_man,_altUnc_animation,_top_view_height,
_all_dead_player,_all_dead_distance,_AI_dismount,_call_for_AI_help,_mobile_type,_load_wounded,_perpetual_server,_JIP_respawns,_caseVAC,_mediVAC,_chance_ofDeath,_dualTimer,
_respawnAtBaseWait,_objectiveBasedRP,_mobile_base2_start,_mobile_man2,_can_revive_3,_can_revive_4,_can_be_revived_3,_can_be_revived_4,_medic_1,_medic_2,_medic_3,_medic_4,
_medpacks,_stabilisation,_bleeding,_medic_medpacks,_unit_medpacks,_medic_bandages,_unit_bandages,_stabTime_tillDeath,_enemy_side_3,_enemy_side_4,
_allied_side_3,_allied_side_4,_deadSpectator_cam,_drop_weapons,_cadaver,_bury_timeout,_reward_function,_revives_required,_team_kill_function,_no_team_kills,_medic_stable, _unit_stable,
_ACE_mod];

// start related revive functions
[] execVM "revive_sqf\init_related_scripts.sqf";

if (true) exitWith {};
//Last edited 17/08/09

//if (_name == player) then {[_name] execVM 'revive_sqf\rPrn.sqf'}

if not can anyone tell me why its not working, i have the insertion, respawn_west, center, and boot_hill markers in place, it ran just fine when i first put it in, but since monday when i updated ace it no longer is working, the only other scripts that i have in place is the evidence collection script and a ammo box script. For the units im using the Mercernaires addon.

Nomadd
Mar 24 2010, 11:50
@<hidden>

first thing I see is


// RESPAWN OPTIONS
_no_respawn_points = 3;
_Base_1 = "Mobile";
_Base_2 = "Insertion";
_Base_3 = "Medvac";
_Base_4 = "Chopper";


"_no_respawn_points" should be 4 not 3 , since you are using all 4

there maybe other problems but I am heading out the door and out of time to look.

Nomadd

Woodstock21
Mar 24 2010, 16:35
Hey nomadd, ya i know what you mean about that i just didn't what the chopper one to show up in the buttons, so i changed it from 4 to 3, to techinally im not using the chopper as a repawn point. and its all good man about just leaving, thanks for the suggestion though, any are helpful

PataPalo
Mar 24 2010, 20:42
Hey nomadd, ya i know what you mean about that i just didn't what the chopper one to show up in the buttons, so i changed it from 4 to 3, to techinally im not using the chopper as a repawn point. and its all good man about just leaving, thanks for the suggestion though, any are helpful

Have you name your playable units to s1,s2,s3....?

Woodstock21
Mar 25 2010, 04:32
Yes i do have my units named s1 up to s12, When i first started the map i put in the revive script and a ammo box one, to test it out and it worked just fine, as i continued to edit the map mainly just placing baddies over the area setting up triggers i add in a breifing, and the collect evidence script. then last monday i updated ACE and blam revive doesn't work anymore and neither does the ace backpack and on back feature. so i have no clue

Nomadd
Mar 25 2010, 13:17
@<hidden>

Hey, if revive stopped working it maybe something in your init.sqf. I have found somethings block the
"server execVM "revive_init.sqf";" in the init.sqf if they are processed before it. Try moving the "server execVM "revive_init.sqf";"closer to the top. I don't know why it happens but I have seen it happen in my missions.

Also make sure your markers in the editor match the ones in the revive_init.sqf.
If you are not using all four then be sure to remember and clear the name in the revive_init.sqf.

Hope this helps

Nomadd

Woodstock21
Mar 26 2010, 04:51
For my init all i got the the revive exec and teh brieifing exec, which i copied directly from the test mission that came with norrins revive script

[GLT] Legislator
Mar 26 2010, 20:04
Hi Norrin,

I've located the problem! Once again Community Base Addon caused the issue. Here's what I did to verify it:

1. I set up ArmA II dedicated server + clients without CBA and without any mods that use extended eventhandler - the mobile respawn worked, in every mission, no matter what revive script version!

2. I set up ArmA II dedicated server + clients with my old CBA version (prior 0.3.0) and nothing worked!

3. I set up ArmA II dedicated server + clients with CBA 0.3.0 and my extended eventhandler using addons and the mobile respawn worked again.


So upgrading CBA helped in that case. However you have a look into it anyway. I only took care of the trigger not of the source of the problem. Maybe the problem occurs again in future versions again.


The mobile respawn still doesn't work :( I've updated CBA to 0.3.1.84 on client and server, but somehow the mobile respawn is only working on the first mission loaded. If I switch missions and return to the working mission, everything remains broken. Here's my RPT for those tests:

http://arma.pastebin.com/kzJPYFMY

Edit:
I did a second test ... and again, only the first mission loaded works. This time I've tried your revive test mission: http://arma.pastebin.com/gfwPa8m1
The first the revive test mission worked, the second time not. Tent is gonna be created, action menu entries changed, respawn button appears ... however there's no mobile respawn marker and the player doesn't respawn at the mobile tent but at the starting point.

What would happen if I set CBA as a required addon by placing the CBA game logic? Would this fix something?

Master gamawa
Mar 28 2010, 04:11
Hey Norrin, I just wanted to say thanks. Your script magic has solved all my respawn worries. I hope no serious problems arise in the future.. for the time being, everything works fine.

One question though... Right now, I am using all four of your original respawn points. (mobile tent, insertion, chopper and the carrier which I transfered on land and renamed it base). I assume I can remove some of them as long as I remove the map markers and their respective entries from the revive_init.sqf.
Is that how it works, good sire?

Gnome_AS
Mar 28 2010, 04:32
You are correct.

If you do not need one in particular, simply remove that entry from the revive_init.sqf, looks like this:


_Base_1 = "Mobile";
_Base_2 = "FOB Rainmaker";
_Base_3 = "";
_Base_4 = "";

Be sure to leave the quotes. Hence example ;)


Gnome

Master gamawa
Mar 28 2010, 15:35
Roger that sir. MG out. :)

Oh, are there any serious bugs I should be expecting?

Nomadd
Apr 4 2010, 01:59
Norrin

I put this in the GL4 topic for Snkman to look at. I will just repost it here. You maybe be better able to shed some light on what is happening.


Think I have found a problem with GL4 and Norrins revive. I will try and explain what it is, it is a bit complicated.

I first found this problem trying to use VFAI and norrins revive together. What happens is, when the player dies, for a split second they are moved to the "respawn_west" marker and they drop their equipped gear and go back to whatever gear they originally started with. Then the player drops dead and rolls around waiting for a revive/respawn. The problem is now they are at the respawn_west marker and not where they were killed. This problem happens all the time when I try using VFAI. I do not use VFAI because of this.

How this ties into GL4. Since the last update this exact problem has started happening. It is not as consistent, but it happens enough that it has broken a few of my missions. I have been testing all kinds of different setups , using different mods, scripts etc etc. I found that if I turn off the Player/Friendly AI enhancement this problem goes away. The only thing I can think is it has something to do with the friendly AI rearm ,but I maybe wrong. I just know it really screws up missions. I will post this in Norrins Revive also.

I will continue to try and narrow this down. It may also have something to do with ACE, I am really not sure.

I thought I would throw this out here and see if anyone else has had this problem. I have searched but have not found any posts regarding this particular problem.


Nomadd

MadMike[Brig2010]
Apr 4 2010, 16:51
@<hidden>

Already answered you in the GL4-thread... :)

Katipo66
Apr 13 2010, 05:33
Sorry for a stupid question but does this work for Opfor and if so does it only require changing parts of revive_intit.sqf.

Ive quickly searched all 46 pages and only came up with these references below that dont really answer my question, also the read me doesn't mention any setup for east, admittedlyi have just skimmed over it.

http://forums.bistudio.com/showpost.php?p=1546539&postcount=391
http://forums.bistudio.com/showpost.php?p=1390573&postcount=139
http://forums.bistudio.com/showpost.php?p=1364233&postcount=98

Doodle
Apr 15 2010, 09:27
Can anyone tell me if the enemy ai throw smoke to cover themselves when they move to revive downed teamates? The friendly ai throw smoke to cover themselves but the enemy (EAST & GUER) dont seem to even though I have equipped them all with smoke grenades.

Thanks in advance for any help

JoeAnorak
Apr 15 2010, 13:22
Doodle, I don't believe that the Revive Script covers AI in a group NOT led by a player. I was experimenting with this a few weeks back and did pose a similar question in this thread (no one has got back to me as yet). Basically I wanted the entire Platoon I was leading via HC to use Revive but despite placing all the correct names in the Revive_Init it only ever worked for my group . I think that the AI will only use smoke (or any other features of the package for that matter), if you are the groups leader so it wouldn't work for anyone else irrespective of side. Could someone else confirm?

Doodle
Apr 15 2010, 13:42
Doodle, I don't believe that the Revive Script covers AI in a group NOT led by a player. I was experimenting with this a few weeks back and did pose a similar question in this thread (no one has got back to me as yet). Basically I wanted the entire Platoon I was leading via HC to use Revive but despite placing all the correct names in the Revive_Init it only ever worked for my group . I think that the AI will only use smoke (or any other features of the package for that matter), if you are the groups leader so it wouldn't work for anyone else irrespective of side. Could someone else confirm?

Thanks for the reply - I am trying to make a small 4 man mission against EAST. The ai in my squad throw smoke ok and I have managed to get them to throw different coloured smoke depending who it is. I would like the enemy ai to also throw smoke and revive themselves but I just cant get it working.

Maybe you are right Joe and the enemy ai are unable to throw smoke. I am sure there must be a way of getting to ai to throw smoke or drop a smoke grenade when they are killed even if they cant use the revive option.

Anyone know what I would have to put in a soldiers init to do something like.

if unit is killed create smoke grenade at position of death

Its more for atmosphere rather than the ability to revivie though that would be a nice option.

JoeAnorak
Apr 15 2010, 22:16
Doodle, not sure how your scripting skills are but I don't think it would be massivley difficult. It depends on if characters 'exist' on death, which i'm not sure about. If they do you could write a brief script that states if units in this list not alive create smoke grenade on their position. The commands you would need would be (I think):

getdamage - to determine the level of damage on each unit.
getpos - to determine the location of the fallen unit.
createvehicle - to spawn the smoke.

You would need to run this script on mission initialisation I think due to the commands used. You wouldn't be able to just chuck some stuff in each units 'on initialisation' (and that would translate to running many scripts instead of just one that would possibly kill your frame rates).

I'm also extremely new to scripting but I will see if this works tommorow. Its entirely dependent on the big Q of if corpses 'exist' as I said above. No doubt one of the scripting ninja's round here will be able to give you a firmer idea of what to do and how to do it.

Doodle
Apr 16 2010, 10:14
Dont know if this is of any use to anyone but I did manage to get the enemy to drop smoke when they get killed by adding this to the units "initilization" I am sure there is a better way of doing this but my script/editing skills are not good :-(


Militia_Solider_1 addEventHandler ["killed", {f1="SmokeShellBlue" createVehicle [getPos Militia_Solider_1 select 0,getPos Militia_Solider_1 select 1, 1];}]

Change the Militia_Solider_1 to the name of your unit

The unit does not need to have a smoke grenade in his inventory for this to work.

JoeAnorak
Apr 17 2010, 11:42
Cheers Doodle, i'll certainly use this. Love it when people post little snippets like this, it means I can build a bit of a library to look at when i'm trying to solve a problem.

[EC]M.O.R
Apr 26 2010, 17:18
yo guys..i have 2 questions :

1. - i had an ace mission, i put the revive script into the mission..only thing i edited yet was the player names in revive_init (s1...s10) because its c010..reviving works now..i put markers in the editor (marker="west_respawn" the logic=server boot..center..all the stuff named like that in readme pdf) far away from the squad with playable units,because i've read in here, that it has to be away like 200m.i had that black screen when i came in,like another guy posted here, saying my player is not able to be revived,so it was too close to units i guess...description and stuff is in my mission folder...when ai dies now, they spawn at "west respawn" marker, i put on the map in editor..
-is it possible to make em respawn at the insertion where mission started and not on that "west respawn"? so when revive time is up? and also for players, so humans can respawn there, how do i add another spawnpoint? i tried to put the mobile respawn on the field via action menu and died, i was able to respawn there,so that works..

2. after putting revive in, i cannot shoulder my m16acog and take a 2. one like m4 or sth. , it is not possible anymore..do i have to add some kind of code-line into the init files, to be able to put gun on my shoulder again?


EDIT: ok only the marker story..i found the problem for question 2. , i put the ace-no-stamina module in the editor, for some reason, after that i can't put the gun on the shoulder.so that was the prob.. but still help for the markers needed :)

sry for these noob questions, but i wanna learn its awesome..thx for that script norrin..

mia389
Apr 29 2010, 00:58
I am having problems with this revive. I really want this in my mission. I have went through the pdf 3 times now. I dont know what I am missing.

I think its in the markers somewhere. I put the west_revive, logic, center, and boot_hill markers in my mission. I also added one at the base called FOB. In my revive init i put:

_no_respawn_points = 1;
_Base_1 = "FOB";

Sorry dont know how to put it in code like the other shown in the thread. It seems like some of it is working. When I click on respawn my guy is on the ground yelling and I get the respawn dialog but no option to respawn. I also named all of my soilders.

This is my first mission and I really want the revive in it. If anyone can help I posted my mission below. Take a look at it and see what you can find. Im sure there is errors in that mission file as I have been trying everything to get this to work.

http://www.mediafire.com/file/tyogmdyeakg/AllenDesert.GNT_Sands.pbo

---------- Post added at 12:58 AM ---------- Previous post was Yesterday at 11:52 PM ----------

OH my. Well after posting I decided to give it one more try. I was only trying to get a spawn point at base. So I was skipping the mobile spawn section.

5th time was a charm. Its working now. I feel like an idiot

EvilNate
Apr 30 2010, 15:33
I have a question that will most likely make me sound like an idiot, but here it goes..

How do I disable all "mobile" respawns? I don't want to have this as a respawn option, if someone dies and they aren't revived in 5 min they should be a bird for not sticking with their team.

*edit* Ah, it's the _mobile_spawn option incase someone else doesn't know.

Nomadd
May 1 2010, 15:26
Norrin,

I have been using your revive for along time, in all my missions. I now have a problem and not sure how to fix it. I thought it was GL4 causing it but it is not. Madmike told me some things to try ,but I am still having a bug/problem.

When any player gets killed most of the time revive works just like it is suppose to. They fall to the ground and roll around waiting for revive. Then the buttons pop-up to respawn at whatever location.(you keep your current gear also).
Now, more and more when someone dies the screen for a sec will show you holding the default rifle for that class ( not what you were carrying at the time of death). Then you fall to the ground and respawn/revives works as normal except you have now lost your load-out.

In the description.ext. I changed respawn = "base"; to respawn = "instant"; Otherwise, when you die and the bug hits you will always end up at the "respawn_west" marker. Then you roll around waiting for revive. Depending on where the "respawn_west" was located chances are your screwed. IF respawn is enabled the buttons will popup and you can respawn to whatever location(s) have been set.

I have tried taking the markers "boot_hill","Respawn_west", and "center" out of the missions completely. The bug still happens (just not as often).

I have also tried using a save gear script but when the bug hits you still lose your current gear and go back to default for the class.

Losing your current gear is probably the worst thing when you are deep into a mission. If you get to re-gear the bug may or may not happen again. Sometimes it is every time you die other times it may happen at the 3rd death then may not happen until you die the 2 time.

Any help you can give will be appreciated

Nomadd

Roe[31stMEU]
May 2 2010, 16:35
I am having a problem as well. I think it has to do with the classnames specified to use it. But first I will explain my problem. Shortly after the mission begins, a message pops up saying everyone is unconscious, yet we are still alive... the mission does not end, it just sits that way until the admin ends the mission.

Now, I believe I do have everything set-up correctly... but I am using the ACE2 mod, and using the ACE2 Desert Marines there, so I am thinking maybe the classnames listed under "// UNITS THAT CAN REVIVE/UNITS THAT CAN BE REVIVED" is not set-up for the ace characters so it's not noticing any of my guys? I dunno... If anyone can help me I'd greatly appreciate it, I can even e-mail you the mission if you'd like to take a look and try seeing what I'm doing wrong... Thanks

Nomadd
May 6 2010, 23:24
Is Norrin still around, still supporting revive script? Anyone know?


Nomadd

norrin
May 7 2010, 02:45
Is Norrin still around, still supporting revive script? Anyone know?


Nomadd

Yep I am still around but been very busy with RL and have had little time to check out the posts in the thread - also doing my best not to get too involved as revive requests have a tendency to take over what little time I do have to work on "other" things. Anyway, can you send me your mission and a list of addons it uses to here (norrin@<hidden>) and I'll take a look first chance I get.

@<hidden> who has helped out along the way - many thanks for answering the questions raised here :)

zordak
May 20 2010, 14:01
Hi all, i cant get the revive script to work.

Im using the uk special forces unit, and using that




// ==================================================================
// UNITS THAT CAN REVIVE/UNITS THAT CAN BE REVIVED
_can_revive = "soldierWB"; //array no.18
_can_revive_2 = ""; //array no.19
_can_revive_3 = ""; //array no.72 - NOT IMPLEMENTED
_can_revive_4 = ""; //array no.73 - NOT IMPLEMENTED
_can_be_revived = "soldierWB"; //array no.20
_can_be_revived_2 = ""; //array no.21
_can_be_revived_3 = ""; //array no.74 - NOT IMPLEMENTED
_can_be_revived_4 = ""; //array no.75 - NOT IMPLEMENTED
_medic_1 = "CDF_Soldier_Medic"; //array no.76 - Used in conjunction with medpacks and bleeding
_medic_2 = ""; //array no.77 - Used in conjunction with medpacks and bleeding
_medic_3 = ""; //array no.78 - NOT IMPLEMENTED
_medic_4 = ""; //array no.79 - NOT IMPLEMENTED
//========================================================


Which are the units to use to make only the medics revive?

Nemorz
May 20 2010, 14:41
In my experience, using custom or ACE units will render the Revive Scripts useless.

Stick to default classes or find a work around.

I did consider trying some work around using cfgIdentities, but I highly doubt that would work either.

[GLT] Legislator
May 20 2010, 17:23
In my experience, using custom or ACE units will render the Revive Scripts useless.
Nope it's a matter how a certain is configurated. For example, no matter which mercenary made by Schnapsdrossel you are using you'll have to use the base class for western units even if the units are on the east and resistance side.

From my experience the revive script works with many addons.

Edit:
@<hidden>:
I guess I found a bug in the revive script. It was in version 0.3f so it's hard to say if this may already have been fixed by you. I set up a mission with 10 playable units, all playable by AI too. In the revive_init.sqf I set _AI_aware = 1;
During the mission my RPT showed these errors:

WARNING: Function 'name' - Roland Wolff is dead
Error in expression <];
_count_enemies = 0;
_known_enemy = nearestObjects [_name, [_enemy_units_1,_>
Error position: <nearestObjects [_name, [_enemy_units_1,_>
Error Typ Jede, erwartet Zeichenfolge
Client: Object 4:25 (type Type_90) not found.

There were thousands of these lines. There're referring to the AIBehaviour.sqf around line 143.

norrin
May 21 2010, 02:22
I guess I found a bug in the revive script. It was in version 0.3f so it's hard to say if this may already have been fixed by you.

Its quite some time ago now but I'm pretty sure that was fixed in Revive Version 0.4.

Nemorz
May 21 2010, 02:41
Nope it's a matter how a certain is configurated. For example, no matter which mercenary made by Schnapsdrossel you are using you'll have to use the base class for western units even if the units are on the east and resistance side.

From my experience the revive script works with many addons.



You're right, I was trying to make specific units in addon packs the Medic role, using soldierWB works for everything so far, I meant to say that assigning specific custom classnames doesn't seem to work.

norrin
May 21 2010, 03:18
You're right, I was trying to make specific units in addon packs the Medic role, using soldierWB works for everything so far, I meant to say that assigning specific custom classnames doesn't seem to work.

Are you using a class name like ACE_usarmy_medic for the ACE combat medic? Maybe if you could post the class names you've tried and which addons they come from I could get a better understanding of the problem you are having.

Thanks,

norrin

Nemorz
May 21 2010, 03:29
It was the ACE Special Forces Medic I was using for actual "Revive" function, and some of the Special Forces that had basic "Heal" function.

ACE_SF_FR_Corpsman - Medic

and because my Sniper team had to be self sufficient in a PvP I made the Marksman a Medic too

ACE_SF_FR_Marksman - Marksman

I couldn't place what the problem was, but when I revert back to the BIS USMC Medics and replaced the ACE classnames with BIS, it works fine.

Switch it to ACE or other modpacks it seems to not want to use the functions properly. Could be something daft my end, but if it works BIS I made the assumption that its to do with ACE classnames.

norrin
May 21 2010, 03:43
I am at work so I can't test for myself but looking at the ACE class list wiki: (http://browser.dev-heaven.net/classlists/vehicles) and then by clicking on the ACE_SF_FR_Corpsman entry (http://browser.dev-heaven.net/configclasses/show/12807) it says that the ACE unit inherits from (ie. is a subclass of) FR_Corpsman so it may be worth while trying "FR_Corpsman" for the ACE unit.

Similarly, the ACE_SF_FR_Marksman inherits from the FR_Marksman class so maybe try "FR_Marksman" as well.

Nemorz
May 21 2010, 04:18
I have no doubt that would work, it explains why it wasn't noticing the classnames. Much thanks Norrin!

Undeceived
May 21 2010, 09:47
Hi norrin.

Is there a way to make it possible to drag / carry people without the one who carries having a gun?


I made some tests and had the following results:

When I (as player) am completely unarmed and choose to drag an injured person, the injured one is normally attached to me after the normal lifting animation but I can't move. I can turn around (and with me the attached injured) but I can't move at all.
Then when I choose to carry the injured unit, my unit plays the lifting up to shoulder animation normally but again, movement is not possible.


However when I have a pistol (no rifle) and choose to drag the injured, the moving stangely works. But you have to press "Drag body" option twice because of some weird gun changing animations... After that the dragging process works normally.
Changing to "Carry Person" and moving around works fine having the pistol in the gear.


Something that may hopefully help you in finding the bug is that even though there is no gun visible while dragging or carrying (your hands are empty), the pistol is yes armed. That means that if you click to shoot, a shot will come out of your empty hand and you also see your finger pressing the gun trigger.


Is there a way to solve this?
Maybe adding something like a invisible gun to the unarmed when he chooses to drag? No idea...

Thanks for your help!

Tophe
May 30 2010, 08:17
Without having looked into the latest version...
Is it possible to give a player points for reviving? (for the scoreboard).

I know it would be an easy task to implement myself, but do you have any pointers to a good place to add it to the revive scripts?

Rommel
May 30 2010, 20:39
I believe it has a line where scripts are executed upon certain events, perhaps throw the code in there. (In the revive_init.sqf)

norrin
May 30 2010, 21:30
@<hidden> - if you scroll down the revive_init.sqf you'll find a line that looks like this:
NORRNCustomExec1 =""; // Exec1 occurs following being revived
Any code you put in here will run the moment a unit is revived. The variable that identifies the unit that is doing the reviving is _reviver

@<hidden> - Sorry its taken me so long to get back to you about this. I've taken a quick look and what you describe is definitely happening, however I'm not sure if its a limitation of the animations that I'm using and therefore I'm not sure if there's much I can do about it. I'll try to take a closer look but no promises on when that will be.

Tophe
May 30 2010, 22:21
Thank you Norrin. I solved with an earlier post from you about the same problem.

fleepee
Jun 1 2010, 17:03
Hi Norrin!

In two different missions, I changed the "class" of playable units by editing the mission SQM, so I can have resistance guys dressed like US marines or russian spetsnaz (in the second mission).
Everything works fine with the revive script except one:
After their first death and revive, players use the language of the "class" unit, so it turns from chernarussian to english or russian (in the second mission), and it's not the case with AI units.
I had a look at the scripts, found something about "typeof", but couldn't find how to solve that problem...
is there a way that players keep speaking chernarussian?

PacUK
Jun 1 2010, 21:09
Hey guys I've been having this issue for a while now, I'm making a mission for Invasion 1944 for ARMA2 and as we are currently unreleased I can't really release a version for people to check through just yet.

But anyway I know the revive script DID work in the past, but for some reason recently as my mission has become more complex the revive is bugging more and more.

When a player dies for the 2nd or 3rd time the revive script delays in kicking in, often leaving the player on a black screen, or instantly revived on the spot, other times the respawn at a location button doesn't load.

I've had it working in the past but now I just can't seem to resolve this problem or find an older working version to work from. The only partial solution I've found so far is to change the respawn to Instant to prevent the player respawning at the Respawn_West marker with the default loadout, but I am still stuck with the other problems.

The mission obviously uses custom units so this could be a root cause but as I've said it used to work fine but now seems more unstable than ever.

Any help from people with a similar problem would be greatly appreciated!

norrin
Jun 2 2010, 00:20
@<hidden> - that's an interesting question and one I've never thought about before. Its most likely a hard coded function of the game rather than a problem in the revive.

You probably need a command like setSide that works for units (unfortunately the current one doesn't). Maybe if you make your revived unit join a group that is side "GUER" it would work.

The only other thing I can think of for the time being (and its not a very practical suggestion) would be to create a replacement config, and hence a pbo, for the US units in which you designate they speak Cherno.

If I can think of anything else I'll let you know.

@<hidden> - Very hard to say without seeing the mission mate. One thing though are you using the latest beta patch? If you are maybe try again with the 1.05 release as there is talk that the betas change the way scripts are processed - if this is the case then I might have to make a couple of changes to the revive i.e. replace all the "waitUntil"s with "while" statements.

fleepee
Jun 2 2010, 08:50
Thanks for your response.

Some more infos:
in the description file, I have the speaker voice set:


class Igor
{
name="Igor";
face="face01";
glasses="None";
speaker="Male01CZ";
pitch=0.95;
};

and a "setidentity" in each init line of my units.
In an hosted game, starting language is chernarussian then turns to the one of the unit's class after death/revive. (english or russian, dependding of the mission I edited)
On a dedicated server, starting language is the one of the unit's class... (english or russian)

I tried different things, like adding "[_name] joinsilent revive_dummy" code in the NORRNCustomExec1, adding a high rank guer unit in the group with a probability of presence of 0, etc...
it didn't work, and I don't want to create a specific addon to solve the "problem" as I want these missions to be addon free.
I just want them to be logical, and that units keep speaking their native language.;)

By the way, I recorded the game chernarussian calls when they have to be revived and replaced the sounds of the revive sound folder, keeping the same file names to not edit the call script.
It wasn't logical that chernarussians call for help in english!
the same could be done with russian voices, and perhaps you could add a switch side condition in the call script and side sound folders?:D

JW Custom
Jun 2 2010, 09:41
@<hidden> - Very hard to say without seeing the mission mate. One thing though are you using the latest beta patch? If you are maybe try again with the 1.05 release as there is talk that the betas change the way scripts are processed - if this is the case then I might have to make a couple of changes to the revive i.e. replace all the "waitUntil"s with "while" statements.

Hey norrin.

Could you please direct me to that talk i haven't seen it, i hope that ain't right.

Thanks.

norrin
Jun 2 2010, 11:59
@<hidden>, mate you've just answered your own question. :) You can use just setIdentity once the player is revived so that it will speak in the language of choice. You can get each playable unit to run a looping script or add a "killed" EH to reset the identity once the unit respawns.

Now the voices with the unconscious call outs is an entirely different problem. I'm not sure whether its changed but you could not call voice bytes from the CA folder via a script - only from within the mission folder. Originally I wanted to have individualised voices for each of the units based on their in mission voice so Dan, Brian etc for each side, however because of this sound limitation if I was to do this the revive script would be several MB in size and its already too big. The only way around this is for you to find the appropriate sound bytes for the cherno forces and swap the samples for the ones already there. Other than that you'd need an addon to be loaded with the revive so these sound bytes could be added for each team or have the revive as an addon (something I've never really wanted to do).

@<hidden> - I read it somewhere I think Xeno, Rommel and Sickboy were posting about it in the beta patch threads - blow can't find it now. If you know any of those guys you might want to track them down as it was an issue with some of the ACE code.

I think the problem is something like any condition linked to the waitUntil command is checked too quickly by the game engine and with the new scripting limitations it causes lag in the other scripts running concurrently especially if it takes several seconds or even longer to fulfill this condition (I may have over simplified or have this completely wrong).

The idea is to use something like
while {condition} do {sleep 0.1}; or even a longer sleep instead as this drastically reduces the speed at which the condition is checked and it frees up resources to process the concurrently running scripts.

fleepee
Jun 2 2010, 13:01
The only way around this is for you to find the appropriate sound bytes for the cherno forces and swap the samples for the ones already there.
That's what I did for my missions (all in resistance side), but perhaps I wasn't clear enough in my previous post, it works fine!:p

thanks for the EH idea, I didn't think about it...:bounce3:

EDIT:
I added: "this addEventHandler ["killed",{_this setidentity "Igor";}] in the init line of the leader, but it doesn't change anything.
There's allready the setidentity in its init file, and on a dedicated server, he speaks russian at mission start...

norrin
Jun 2 2010, 13:45
Try this:

this addEventHandler ["killed",{_this execVm "setIdentity.sqf"}];

Then in the mission directory create a script called setIdentity.sqf and in it put:


_unit = _this select 0;

while {!alive player} do {sleep 0.1};
sleep 1;
player setidentity "Igor";


Note this is untested but it should work for players.

EDIT:
Just had a thought this should work for both players and playable AI

//setIdentity.sqf
_unit = _this select 0;

while {!alive (call compile format["%1",_unit])} do {sleep 0.1};
_name = call compile format["%1",_unit];
_name setidentity "Igor";

fleepee
Jun 2 2010, 14:53
sorry, it doesn't work...:rolleyes:

And as I wish that all ten units of the squads keep their face and voice, i tried this (with your suggestion before you edited it):


_unit = _this select 0;

switch (_unit) do {
case alpha1: {while {!alive _unit} do {sleep 0.1};
sleep 1;
_unit setidentity "Igor";
};
case alpha2: {while {!alive _unit} do {sleep 0.1};
sleep 1;
_unit setidentity "Vilem";
};

};

And so on to alpha10.

With your last suggestion, I had an error message:

'|#|<NULL-OBJECT>'
Error invalid number in expression

But as I said, on a dedicated server, the unit I play speaks DIRECTLY in russian, so finally, I don't think it's due to the revive scripts, perhaps simply the game doesn't allow (in exemple) russian class units to speak another language than russian. It works on a hosted game, and stops after the first death and revive...:confused:

EDIT: Just to be sure, I moved the "setidentity" line to init.sqf and created a radio trigger with "alpha1 setidentity "Igor";" in its activation field
on a dedi: alpha1 speaks chernarussian from the beginning and after death/revive, if I use the radio trigger and its setidentity command...

Conclusion and last edit:
"setidentity" mustn't be in the init line of units;
got it working using

NORRNCustomExec1 ="[_name] execVm 'setIdentity.sqf'";
NORRNCustomExec3 ="[_name] execVm 'setIdentity.sqf'";

and setIdentity.sqf:

_unit = _this select 0;

switch (_unit) do {
case alpha1: {_unit setidentity "Igor";};
case alpha2: {_unit setidentity "Vilem";};
etc...
};

thanks for your time, Norrin!!:pray:

JW Custom
Jun 2 2010, 14:58
@<hidden> - I read it somewhere I think Xeno, Rommel and Sickboy were posting about it in the beta patch threads - blow can't find it now. If you know any of those guys you might want to track them down as it was an issue with some of the ACE code.


There was a problem with script lag which has been solved in the newer beta patches(well almost, they are still running slower than in 1.05), maybe thats what your are talking about?

PacUK
Jun 2 2010, 17:56
I'm currently using ARMA2 version 1.05.62017 as far as I know I'm not using any of the beta patches just the standard update. I'll download the beta and see if I get different results.

Update: tried it with the latest beta patch (70951) and it doesn't appear to have the issue, I'll keep testing but looks like a win, thanks all!

Update 2: Well after a while the issue does come back into effect but only after a good hour or two's play, guess this will do for now though thanks again!

norrin
Jun 2 2010, 21:28
@<hidden> - glad to hear you got it working :)

@<hidden> - check your ArmA report and make sure that the units aren't generating a lot of errors as this can also cause script lag.

Undeceived
Jun 9 2010, 20:19
@<hidden> - Sorry its taken me so long to get back to you about this. I've taken a quick look and what you describe is definitely happening, however I'm not sure if its a limitation of the animations that I'm using and therefore I'm not sure if there's much I can do about it. I'll try to take a closer look but no promises on when that will be.

Thanks, norrin, for your answer!

Yeah, would be cool if there was a workaround, because if not then the script would be quite useless for civilians without rifles.

If the solution with the animations doesn't work, maybe a "dirty" workaround could be to make and give the civilian an invisible rifle, so that he has something in his hands and does the animation, but only the player can't see it. :)

Thanks anyway, mate!

fleepee
Jun 14 2010, 17:36
Hi Norrin!
I have another question: How can I add a respawn point during the mission?

kdjac
Jun 16 2010, 20:43
I have a strange problem with this.
if i use this description file



class Header
{
gameType = Coop;
minPlayers = 1;
maxPlayers = 10;
};




// description.ext settings for revive
///////////////////////////////////////////////////////////////////////////////////////////
respawn = "BASE";
respawndelay = 4;
disabledAI = 0;

#include "revive_sqf\dialogs\config.cpp"
#include "revive_sqf\dialogs\define.hpp"
#include "revive_sqf\dialogs\rev_cam_dialog.hpp"
#include "revive_sqf\dialogs\respawn_button_1.hpp"
#include "revive_sqf\dialogs\respawn_button_2.hpp"
#include "revive_sqf\dialogs\respawn_button_3.hpp"
#include "revive_sqf\dialogs\respawn_button_4.hpp"
#include "revive_sqf\dialogs\respawn_button_1b.hpp"
#include "revive_sqf\dialogs\respawn_button_1c.hpp"
#include "revive_sqf\dialogs\respawn_button_2b.hpp"
#include "revive_sqf\dialogs\respawn_button_3b.hpp"
#include "revive_sqf\dialogs\respawn_button_4b.hpp"
#include "revive_sqf\dialogs\respawn_button_1map.hpp"
#include "revive_sqf\dialogs\respawn_button_2map.hpp"
#include "revive_sqf\dialogs\respawn_button_3map.hpp"
#include "revive_sqf\dialogs\respawn_button_4map.hpp"
#include "revive_sqf\dialogs\OK_map.hpp"
#include "revive_sqf\dialogs\dead_cam_dialog.hpp"

///////////////////////////////////////////////////////////////////////////////////////////
titleParam1 = "Time";
valuesParam1[] = {-6, 0, 8, 13};
defValueParam1 = 0;
textsParam1[] = {"Morning", "Clear day", "Sundown", "Night"};
///////////////////////////////////////////////////////////////////////////////////////////
titleParam2 = "Number of Revives:";
valuesParam2[] = {2000,1000,20,10,7,5};
defValueParam2 = 7;
textsParam2[] = {"No Revive","Infinite - Cadet","20 - Easy ","10 - Normal","7 - Hard","5 - Extreme"};
///////////////////////////////////////////////////////////////////////////////////////////


///////////////////////////////////////////////////////////////////////////////////////////
titleParam1 = "Time";
valuesParam1[] = {-6, 0, 8, 13};
defValueParam1 = 0;
textsParam1[] = {"Morning", "Clear day", "Sundown", "Night"};
///////////////////////////////////////////////////////////////////////////////////////////
titleParam2 = "Number of Revives:";
valuesParam2[] = {2000,1000,20,10,7,5};
defValueParam2 = 7;
textsParam2[] = {"No Revive","Infinite - Cadet","20 - Easy ","10 - Normal","7 - Hard","5 - Extreme"};


When i respawn the enemy does not shoot at me :confused:

Have i misread something?

all enemy using Jw Custom USPS script.

Grimes [3rd ID]
Jun 30 2010, 20:59
Is this compatible with Operation Arrowhead? Could we get an example mission on that?

mia389
Jul 2 2010, 02:20
;1664981']Is this compatible with Operation Arrowhead? Could we get an example mission on that?

< Cant wait. Tried to see how the Domination worked with the new ruck thing. Was a bit over my head though