Jump to content

Recommended Posts

New RC!

www.giallustio.altervista.org/downloads/=BTC=_revive_093_rc6.zip

- The new system should work fine, i'm waiting for feedback!

- The "respa" problem should be fixed (i need a confirmation because i didn't have this problem)

- Mobile respawn problem should be fixed once for all (i hope :P)

- Improved gear fnc. Thanks to aeroson now all the gear will be placed where you put it. (I've to check the binoculars, the script seems to ignore them)

Share this post


Link to post
Share on other sites

Hey Giallustio, I've got a bit of a random question for you. How do you test your revive script when you're doing testing? Any time I want to test anything with revive I have to drag a few friends in to check it out, and if there was a way I could test things out by myself it'd be a lot easier. :)

Share this post


Link to post
Share on other sites

It depends, i usually create all the code and at the end i test it with the AI and then for the final test i've to grab some human player to test the locality and stress him until he falls down dead for real. ;)

Share this post


Link to post
Share on other sites

Is it normal to have the script errors flashing my screen when I'm previewing in the editor? Undefined variable in expression _ar and _veh, on lines 1459 and 1510 of functions.sqf

Share this post


Link to post
Share on other sites

With the new system activated, you don't respawn with your latest gear. You'll get the standard starter gear.

Share this post


Link to post
Share on other sites
Guest

Release frontpaged on the Armaholic homepage.

===================================================

We have also "connected" these pages to your account on Armaholic.

This means in the future you will be able to maintain these pages yourself if you wish to do so. Once this new feature is ready we will contact you about it and explain how things work and what options you have.

When you have any questions already feel free to PM or email me!

Share this post


Link to post
Share on other sites

@BadHabitz

Version script/Game?

@Valixx

It's wierd 'cause it worked for me...Did you get shot or just hit respawn?

Share this post


Link to post
Share on other sites
@BadHabitz

Version script/Game?

Dev build. Custom scenario. I just pasted over the old files with your new stuff. Everything in the description and init files seem the have stayed the same. It wasn't doing that prior to adding the new files.

Share this post


Link to post
Share on other sites

enableSaving [false,false];

What's this do? A ReadMe would be much appreciated.

EDIT: Found out. It has nothing to do with the script, forgive a newb.

Edited by GMJaken

Share this post


Link to post
Share on other sites

I don't know if that was already report :

Sometimes, when I respawn, the respawn option is still here. If I use it, I die and have respawn place option. To " delete " it, I have to press ( or spam ) the button unitil it disaper.

If I use BTC_action_respawn = 1, I have 7 respawn option, but this time i can't delete them when I use them.

Share this post


Link to post
Share on other sites

Thank you RoadField, i'll fix in the next version!

In the meanwhile you can replace the old fnc with this one in your =BTC=_functions.sqf:

BTC_player_killed =

{

private ["_type_backpack","_weapons","_magazines","_weapon_backpack","_ammo_backpack","_score","_score_array","_name","_body_marker","_ui"];

titleText ["", "BLACK OUT"];

_body = _this select 0;

[_body] spawn

{

_body = _this select 0;

_dir = getDir _body;

_pos = getPosATL vehicle _body;

if (BTC_lifes != 0 || BTC_active_lifes == 0) then

{

WaitUntil {Alive player};

detach player;

//player setPos [getMarkerPos BTC_respawn_marker select 0, getMarkerPos BTC_respawn_marker select 1, 5000];

_body_marker = player;

player setcaptive true;

BTC_r_camera_nvg = false;

BTC_killed_pveh = [2,_body_marker];publicVariable "BTC_killed_pveh";player allowDamage false;

player setVariable ["BTC_need_revive",1,true];

player switchMove "AinjPpneMstpSnonWrflDnon";

_actions = [] spawn BTC_assign_actions;

if (BTC_respawn_gear == 1) then

{

_gear = [player,BTC_gear] spawn BTC_set_gear;

};

WaitUntil {animationstate player == "ainjppnemstpsnonwrfldnon"};

sleep 2;

player setDir _dir;

player setVelocity [0,0,0];

player setPosATL _pos;

deletevehicle _body;

_side = playerSide;

_injured = player;

if (BTC_injured_marker == 1) then {BTC_marker_pveh = [0,BTC_side,_pos,_body_marker];publicVariable "BTC_marker_pveh";};

disableUserInput true;

for [{_n = BTC_revive_time_min}, {_n != 0 && damage player > 0.2}, {_n = _n - 0.5}] do

{

if (BTC_active_lifes == 1) then {titleText [format ["Lifes remaining: %1",BTC_lifes], "BLACK FADED"];} else {titleText ["", "BLACK FADED"];};

sleep 0.5;

};

if (BTC_black_screen == 0) then {titleText ["", "BLACK IN"];};

disableUserInput false;

_time = time;

_timeout = _time + BTC_revive_time_max;

private ["_id","_lifes"]; removeAction

BTC_respawn_cond = false;

if (BTC_disable_respawn == 1) then {player enableSimulation false;};

_id = player addAction [("<t color=""#ED2744"">") + ("Respawn") + "</t>","=BTC=_revive\=BTC=_addAction.sqf",[[],BTC_player_respawn], 9, true, true, "", "true"];

if (BTC_camera_unc == 0) then

{

if (BTC_black_screen == 0 && BTC_disable_respawn == 0) then {if (BTC_action_respawn == 0) then {disableSerialization;_dlg = createDialog "BTC_respawn_button_dialog";};};

if (BTC_black_screen == 1 && BTC_disable_respawn == 0 && !Dialog) then {_dlg = createDialog "BTC_respawn_button_dialog";};

BTC_display_EH = (findDisplay 46) displayAddEventHandler ["KeyDown", "_anim = [] spawn {sleep 1;player switchMove ""AinjPpneMstpSnonWrflDnon"";};"];

}

else

{

BTC_r_u_camera = "camera" camCreate (position player);

BTC_r_u_camera camSetTarget player;

BTC_r_u_camera cameraEffect ["internal", "BACK"];

BTC_r_u_camera camSetPos [(getpos player select 0) + 15,(getpos player select 1) + 15,10];

BTC_r_u_camera camCommit 0;

disableSerialization;

_r_dlg = createDialog "BTC_spectating_dialog";

_ui = uiNamespace getVariable "BTC_r_spectating";

(_ui displayCtrl 120) ctrlShow false;

BTC_r_camera_EH_keydown = (findDisplay 46) displayAddEventHandler ["KeyDown", "_keydown = _this spawn BTC_r_s_keydown"];

{_lb = lbAdd [121,_x];if (_x == BTC_camera_unc_type select 0) then {lbSetCurSel [121,_lb];}} foreach BTC_camera_unc_type;

};

while {format ["%1", player getVariable "BTC_need_revive"] == "1" && time < _timeout && !BTC_respawn_cond} do

{

if (BTC_disable_respawn == 0) then {if (BTC_black_screen == 1 || (BTC_black_screen == 0 && BTC_action_respawn == 0)) then {if (!Dialog && !BTC_respawn_cond) then {_dlg = createDialog "BTC_respawn_button_dialog";};};};

_healer = call BTC_check_healer;

_lifes = "";

if (BTC_active_lifes == 1) then {_lifes = format ["Lifes remaining: %1",BTC_lifes];};

if (BTC_black_screen == 1 && BTC_camera_unc == 0) then {titleText [format ["%1\n%2\n%3", round (_timeout - time),_healer,_lifes], "BLACK FADED"]} else {hintSilent format ["%1\n%2\n%3", round (_timeout - time),_healer,_lifes];};

if (BTC_camera_unc == 1) then

{

titleText [format ["%1\n%2\n%3", round (_timeout - time),_healer,_lifes], "PLAIN DOWN"];

if (!dialog) then {disableSerialization;_r_dlg = createDialog "BTC_spectating_dialog";sleep 0.01;_ui = uiNamespace getVariable "BTC_r_spectating";(_ui displayCtrl 120) ctrlShow false;{_lb = lbAdd [121,_x];if (_x == BTC_camera_unc_type select 0) then {lbSetCurSel [121,_lb];}} foreach BTC_camera_unc_type;};

BTC_r_u_camera attachTo [player,BTC_r_s_cam_view];

BTC_r_u_camera camCommit 0;

if (BTC_r_camera_nvg) then {camusenvg true;} else {camusenvg false;};

};

//sleep 0.5;

};

if (BTC_camera_unc == 0) then

{

(findDisplay 46) displayRemoveEventHandler ["KeyDown",BTC_display_EH];

}

else

{

player cameraEffect ["TERMINATE", "BACK"];

camDestroy BTC_r_u_camera;

BTC_r_u_camera = objNull;

(findDisplay 46) displayRemoveEventHandler ["KeyDown",BTC_r_camera_EH_keydown];

};

closedialog 0;

if (time > _timeout && format ["%1", player getVariable "BTC_need_revive"] == "1") then

{

_respawn = [] spawn BTC_player_respawn;

};

if (format ["%1", player getVariable "BTC_need_revive"] == "0" && !BTC_respawn_cond) then

{

if (BTC_black_screen == 1) then {titleText ["", "BLACK IN"];} else {hintSilent "";};

if (BTC_need_first_aid == 1 && ((items player) find "FirstAidKit" != -1)) then {player removeItem "FirstAidKit";};

player playMove "amovppnemstpsraswrfldnon";

player playMove "";

};

player removeAction _id;

player setcaptive false;

if (BTC_disable_respawn == 1) then {player enableSimulation true;};

//player setvehicleInit "this allowDamage true;";ProcessInitCommands;

player switchMove "";

player allowDamage true;

hintSilent "";

};

};

};

Share this post


Link to post
Share on other sites

Thanks for this quick replay, but :

In the mission initialisation, i have :

130829100918477957.png

When I die, I have this :

http://nsa34.casimages.com/img/2013/08/29/130829100727504046.png (799 kB)

When I try to respawn, this is show really quickly (1 second max. ):

130829100829239839.png

I still have multiple respawn option in the menu with BTC_action_respawn = 1, don't try without, and I respawn don't work ( nothing happend, just the error ).

Good luck ;D

Share this post


Link to post
Share on other sites

Sorry, my fault, there's a removeAction with no reason :rolleyes: Copy/paste error

This should work:

BTC_player_killed =

{

private ["_type_backpack","_weapons","_magazines","_weapon_ backpack","_ammo_backpack","_score","_score_array" ,"_name","_body_marker","_ui"];

titleText ["", "BLACK OUT"];

_body = _this select 0;

[_body] spawn

{

_body = _this select 0;

_dir = getDir _body;

_pos = getPosATL vehicle _body;

if (BTC_lifes != 0 || BTC_active_lifes == 0) then

{

WaitUntil {Alive player};

detach player;

//player setPos [getMarkerPos BTC_respawn_marker select 0, getMarkerPos BTC_respawn_marker select 1, 5000];

_body_marker = player;

player setcaptive true;

BTC_r_camera_nvg = false;

BTC_killed_pveh = [2,_body_marker];publicVariable "BTC_killed_pveh";player allowDamage false;

player setVariable ["BTC_need_revive",1,true];

player switchMove "AinjPpneMstpSnonWrflDnon";

_actions = [] spawn BTC_assign_actions;

if (BTC_respawn_gear == 1) then

{

_gear = [player,BTC_gear] spawn BTC_set_gear;

};

WaitUntil {animationstate player == "ainjppnemstpsnonwrfldnon"};

sleep 2;

player setDir _dir;

player setVelocity [0,0,0];

player setPosATL _pos;

deletevehicle _body;

_side = playerSide;

_injured = player;

if (BTC_injured_marker == 1) then {BTC_marker_pveh = [0,BTC_side,_pos,_body_marker];publicVariable "BTC_marker_pveh";};

disableUserInput true;

for [{_n = BTC_revive_time_min}, {_n != 0 && damage player > 0.2}, {_n = _n - 0.5}] do

{

if (BTC_active_lifes == 1) then {titleText [format ["Lifes remaining: %1",BTC_lifes], "BLACK FADED"];} else {titleText ["", "BLACK FADED"];};

sleep 0.5;

};

if (BTC_black_screen == 0) then {titleText ["", "BLACK IN"];};

disableUserInput false;

_time = time;

_timeout = _time + BTC_revive_time_max;

private ["_id","_lifes"];

BTC_respawn_cond = false;

if (BTC_disable_respawn == 1) then {player enableSimulation false;};

_id = player addAction [("<t color=""#ED2744"">") + ("Respawn") + "</t>","=BTC=_revive\=BTC=_addAction.sqf",[[],BTC_player_respawn], 9, true, true, "", "true"];

if (BTC_camera_unc == 0) then

{

if (BTC_black_screen == 0 && BTC_disable_respawn == 0) then {if (BTC_action_respawn == 0) then {disableSerialization;_dlg = createDialog "BTC_respawn_button_dialog";};};

if (BTC_black_screen == 1 && BTC_disable_respawn == 0 && !Dialog) then {_dlg = createDialog "BTC_respawn_button_dialog";};

BTC_display_EH = (findDisplay 46) displayAddEventHandler ["KeyDown", "_anim = [] spawn {sleep 1;player switchMove ""AinjPpneMstpSnonWrflDnon"";};"];

}

else

{

BTC_r_u_camera = "camera" camCreate (position player);

BTC_r_u_camera camSetTarget player;

BTC_r_u_camera cameraEffect ["internal", "BACK"];

BTC_r_u_camera camSetPos [(getpos player select 0) + 15,(getpos player select 1) + 15,10];

BTC_r_u_camera camCommit 0;

disableSerialization;

_r_dlg = createDialog "BTC_spectating_dialog";

_ui = uiNamespace getVariable "BTC_r_spectating";

(_ui displayCtrl 120) ctrlShow false;

BTC_r_camera_EH_keydown = (findDisplay 46) displayAddEventHandler ["KeyDown", "_keydown = _this spawn BTC_r_s_keydown"];

{_lb = lbAdd [121,_x];if (_x == BTC_camera_unc_type select 0) then {lbSetCurSel [121,_lb];}} foreach BTC_camera_unc_type;

};

while {format ["%1", player getVariable "BTC_need_revive"] == "1" && time < _timeout && !BTC_respawn_cond} do

{

if (BTC_disable_respawn == 0) then {if (BTC_black_screen == 1 || (BTC_black_screen == 0 && BTC_action_respawn == 0)) then {if (!Dialog && !BTC_respawn_cond) then {_dlg = createDialog "BTC_respawn_button_dialog";};};};

_healer = call BTC_check_healer;

_lifes = "";

if (BTC_active_lifes == 1) then {_lifes = format ["Lifes remaining: %1",BTC_lifes];};

if (BTC_black_screen == 1 && BTC_camera_unc == 0) then {titleText [format ["%1\n%2\n%3", round (_timeout - time),_healer,_lifes], "BLACK FADED"]} else {hintSilent format ["%1\n%2\n%3", round (_timeout - time),_healer,_lifes];};

if (BTC_camera_unc == 1) then

{

titleText [format ["%1\n%2\n%3", round (_timeout - time),_healer,_lifes], "PLAIN DOWN"];

if (!dialog) then {disableSerialization;_r_dlg = createDialog "BTC_spectating_dialog";sleep 0.01;_ui = uiNamespace getVariable "BTC_r_spectating";(_ui displayCtrl 120) ctrlShow false;{_lb = lbAdd [121,_x];if (_x == BTC_camera_unc_type select 0) then {lbSetCurSel [121,_lb];}} foreach BTC_camera_unc_type;};

BTC_r_u_camera attachTo [player,BTC_r_s_cam_view];

BTC_r_u_camera camCommit 0;

if (BTC_r_camera_nvg) then {camusenvg true;} else {camusenvg false;};

};

//sleep 0.5;

};

if (BTC_camera_unc == 0) then

{

(findDisplay 46) displayRemoveEventHandler ["KeyDown",BTC_display_EH];

}

else

{

player cameraEffect ["TERMINATE", "BACK"];

camDestroy BTC_r_u_camera;

BTC_r_u_camera = objNull;

(findDisplay 46) displayRemoveEventHandler ["KeyDown",BTC_r_camera_EH_keydown];

};

closedialog 0;

if (time > _timeout && format ["%1", player getVariable "BTC_need_revive"] == "1") then

{

_respawn = [] spawn BTC_player_respawn;

};

if (format ["%1", player getVariable "BTC_need_revive"] == "0" && !BTC_respawn_cond) then

{

if (BTC_black_screen == 1) then {titleText ["", "BLACK IN"];} else {hintSilent "";};

if (BTC_need_first_aid == 1 && ((items player) find "FirstAidKit" != -1)) then {player removeItem "FirstAidKit";};

player playMove "amovppnemstpsraswrfldnon";

player playMove "";

};

player removeAction _id;

player setcaptive false;

if (BTC_disable_respawn == 1) then {player enableSimulation true;};

//player setvehicleInit "this allowDamage true;";ProcessInitCommands;

player switchMove "";

player allowDamage true;

hintSilent "";

};

};

};

Share this post


Link to post
Share on other sites

Still having this multiple respawn option :( , but no error or other problem

130830125101771021.png

Keep it up :cool:

Share this post


Link to post
Share on other sites
Had a look at the new system and it looks cool, but its hard to say more at this stage =)

I'm also running into a problem when I try and move the respawn marker.

I use the following in a script that is executed upon task complete in a trigger:

respawnPos = getMarkerPos "respawn1";
publicVariable "respawnPos";
"Respawn_west" setMarkerPos RespawnPos;

so I can give the updated marker to JiP players.

but we always seem to spawn at the original place of Respawn_west, even the non-JiP players.

or do you have a built-in way to enable / disable respawn positions that I don't know of?

Anyway to change the respawn location after completing a task? I am having the same problems described above, even with RC6.

Thanks,

//SinBad

Share this post


Link to post
Share on other sites
Well, move the respawn_west marker should work....

Sorry to say it doesn't. At least for me. I am using this code in a script that is called by a trigger:

respawnPos = getMarkerPos "respawn1";
publicVariable "respawnPos";
"Respawn_west" setMarkerPos RespawnPos;  

It did work with an earlier version of your script, not now.

//SinBad

Share this post


Link to post
Share on other sites

Apologizes if this has been asked before I am new but I'm having a few problem with the script in the development build of the game. I keep getting the following errors repeatedly throughout a MP game.

2013-08-31_00019.jpg

2013-08-31_00020.jpg

Thanks in advance. :)

Share this post


Link to post
Share on other sites

Maybe the revive wasn't be set correctly, but i can't tell for sure, i'm in stable.

Share this post


Link to post
Share on other sites

Hi Giallustio,

When i open the function file it's written version 0.93 rc4

And normally the file name is version 0.93 rc6 can you check please...

Share this post


Link to post
Share on other sites

Yep! Check always the revive init! I'll remove the version from fnc, too much things to change :rolleyes:

Share this post


Link to post
Share on other sites
Apologizes if this has been asked before I am new but I'm having a few problem with the script in the development build of the game. I keep getting the following errors repeatedly throughout a MP game.

https://dl.dropboxusercontent.com/u/4551386/2013-08-31_00019.jpg

https://dl.dropboxusercontent.com/u/4551386/2013-08-31_00020.jpg

Thanks in advance. :)

Hello all :)

I've just updated to the latest version also running in dev build and have the same errors shown above.

I was running the older version and didn't get these errors, also on dev build.

More information on the errors not visible above in the screenshots:

it was saying the fault was in

"\=BTC= revive\=BTC= function.sqf

Line 1510"

On the other error I think it said line 1495 or something near there anyway.

Hope this helps.

Regards

ToM

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×