Adeno 10 Posted June 23, 2011 Hi there! I'm trying this script but I can't seem to make it work. I did follow the instructions. 1. I made a cly_removedead.sqs file in my single player mission folder and pasted the script inside in the proper format. 2. In the game, I placed [1,1] exec "cly_removedead.sqs"; in one of the soldier's init boxes (I want them to disappear after 1 second). 2. I started the game, watched my soldiers kill some zombies, but their bodies won't disappear :( Thanks in advance for any help! Share this post Link to post Share on other sites
celery 8 Posted June 23, 2011 Did you put the script in Documents\Arma 2 other profiles\Adeno\missions\missionname? Share this post Link to post Share on other sites
Adeno 10 Posted June 23, 2011 (edited) Hi, yes I did. It's the first thing I did :( Additional: I also tried this to see if it would work but it didn't -> ["1","1"] exec "cly_removedead.sqs"; so I went back to using the normal one without quotes on the numbers. I also placed it in a soldier first, then saved the game, reloaded the editor, then previewed. Still the same, bodies still stayed :( Oh yeah I only have vanilla Arma 2, it works for that game right? Oh uhm another question, how come your script is "SQS" when most of the other scripts are "SQF"? Do they have a difference? Thanks again! Edited June 23, 2011 by Adeno Share this post Link to post Share on other sites
jedra 11 Posted June 23, 2011 Rather than put this in a soldier's init line you need to put it into the init.sqf file. The original way you had it, i.e. [120,240] exec "cly_removedead.sqs"; An sqs file is the older format of script, and sqf is the newer format. You can still use sqs files though. Share this post Link to post Share on other sites
celery 8 Posted June 23, 2011 Are you using Undead mod zombies? Do me a favor and put hintSilent format ["%1",this isKindOf "Man"] in a zombie's init and say if it shows true or false. Also, have -showScriptErrors in your Arma 2 shortcut parameters and see if there is any error output. Share this post Link to post Share on other sites
A-SUICIDAL 11 Posted July 13, 2011 I don't mean to sound like a jerk, but I worked really hard on a mission and one day it started getting so laggy to the point where it was unplayable. For over a week I kept trying to figure out what was causing the problem and how to fix it. I lost a lot of sleep and was ready to just scrap the mission and all the work I put into it, then I tried to remember what things I last added to the mission before it became so laggy. I kept thinking that it couldn't be your remove body/vehicles script, because that is supposed to make the mission less laggy, but then I finally removed it from the mission and suddenly my mission was completely lag free. I don't know if anybody else has had this experience. Maybe there is something else in my mission that is conflicting with it. I don't know. Right now I am once again trying to find a good "remove dead bodies/vehicles" script and so far I haven't found a good one. I think my computer just hates sqs files, lol. I wish your script worked for me. Share this post Link to post Share on other sites
celery 8 Posted July 14, 2011 Script updated - Rewrote the script in sqf (exec "cly_removedead.sqs" -> execVM "cly_removedead.sqf") - Added support for vanilla Arma 2 - Probably fixed some issues Share this post Link to post Share on other sites
A-SUICIDAL 11 Posted July 14, 2011 Going to give it a whirl now. Thanks. Share this post Link to post Share on other sites
A-SUICIDAL 11 Posted July 16, 2011 Works great. No sqs lag this time, lol. I set it to delete dead AI after 3 minutes and vehicles after 10 minutes (180 & 600). Thank you very much Celery. Now my mission won't look like a corpse ridden junkyard. Share this post Link to post Share on other sites
celery 8 Posted October 27, 2011 Script updated! An option to prevent the removal of units with any or specific gear has been added, instructions in script hideBody is now used on units at all altitudes, leaking through floors is prevented by deleting the unit the moment it starts doing so Share this post Link to post Share on other sites
joduh 10 Posted October 28, 2011 Hey, i have a problem that might be up your alley: I want a way to remove the debris left behind from chopper/aircraft crashes. Not the vehicle itself (domination already takes care of that :)), but the heap of dirt that remains there forever. Those really p*ss me off when they're on the runway (aswell my ai, who refuse to taxi over them). I'm a beginner at scripting, but can probably figure it out, i just have no idea what the classnames are of that dirt. Could you please point me in the right direcetion? And sorry for going slightly offtopic here :P Share this post Link to post Share on other sites
celery 8 Posted October 28, 2011 (edited) The classname is "CraterLong". :) You can probably do a crater removal thing by placing a trigger, setting condition as true and putting 0=thisTrigger spawn {while {true} do {sleep 10;{deleteVehicle _x} forEach (getPos _this nearObjects ["CraterLong",(triggerArea _this select 0) max (triggerArea _this select 1)])}} in its activation field and copying the trigger to everywhere you want to keep clean. The cleaned area is dependent on the trigger's, but only a perfect circle represents it. Edited October 28, 2011 by Celery Share this post Link to post Share on other sites
joduh 10 Posted October 28, 2011 Aah thnx allot, it works like a charm :) Share this post Link to post Share on other sites
theblueone 1 Posted October 11, 2012 Hi, sorry for the massive bump but I'm in need of some help. It appears that my script isn't working properly, I'm running this alongside DayZ and the problem is that dead bodies with excluded gear from removal still disappear. This is my init.sqf startLoadingScreen ["","DayZ_loadingScreen"]; enableSaving [false, false]; dayZ_instance = 1; //The instance hiveInUse = true; initialized = false; dayz_previousID = 0; dayz_hiveVersionNo = 1; [600,0,true] execVM "cly_removedead.sqf"; call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\variables.sqf"; //Initilize the Variables (IMPORTANT: Must happen very early) progressLoadingScreen 0.1; call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\publicEH.sqf"; //Initilize the publicVariable event handlers progressLoadingScreen 0.2; call compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\setup_functions_med.sqf"; //Functions used by CLIENT for medical progressLoadingScreen 0.4; call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\compiles.sqf"; //Compile regular functions progressLoadingScreen 1.0; if (isServer) then { hiveInUse = true; _serverMonitor = [] execVM "\z\addons\dayz_server\system\server_monitor.sqf"; }; if (!isDedicated) then { 0 fadeSound 0; 0 cutText [(localize "STR_AUTHENTICATING"), "BLACK FADED",60]; _id = player addEventHandler ["Respawn", {_id = [] spawn player_death;}]; _playerMonitor = [] execVM "\z\addons\dayz_code\system\player_monitor.sqf"; _anticheat = [] spawn {execFSM "cdetect.fsm";}; // Create burn effect for each helicopter wreck _helis = allMissionObjects "UH1Wreck_DZ"; { nul = [_x, 2, time, false, false] spawn BIS_Effects_Burn; } forEach _helis; }; // atv //non-JIP player, someone who's went through role selection and briefing if (!(isNull player)) then { // ============================================================= // GeneralCarver Vehicle Flip Script v2 Init Scripting gc_veh_flip_script_script_action_manager = execVM "scripts\gc_veh_flip\action_manager.sqf"; // // ============================================================= }; //JIP player, role selection then right into mission. if (!isServer && isNull player) then { waitUntil {!isNull player}; // ============================================================= // GeneralCarver Vehicle Flip Script v2 Init Scripting gc_veh_flip_script_script_action_manager = execVM "scripts\gc_veh_flip\action_manager.sqf"; // // ============================================================= }; //server if (isServer) then { }; This is my cly_removedead.sqf /* CLY Remove Dead by Celery Removes dead units and vehicles from the battlefield. Version 2011.10.28 The script is less functional in plain Arma 2 because it lacks the allDead command. In plain Arma 2 the script... - is probably a little heavier - doesn't remove vehicles or animals - lacks the hideBody transition due to its bugged nature in Arma 2 Free Execute in init script: [60,0,true] execVM "cly_removedead.sqf"; [wait time for men,wait time for vehicles,remove units with gear (optional, default true)] execVM "cly_removedead.sqf"; A wait time of 0 prevents that type from being removed. Prevent an individual unit from being removed: this setVariable ["CLY_removedead",false,true] Remove an individual unit immediately upon death: this setVariable ["CLY_removedead",true,true] Use the CLY_ignoregear array to define gear classnames that don't prevent a unit's removal when only gearless bodies are removed. Alternatively, use CLY_keepgear to define gear that prevents removal when geared unit removal is enabled. Remember correct upper and lower case in classnames or it won't work! Check config browsers if not sure. */ if (!isServer) exitWith {}; CLY_ignoregear=[]; CLY_keepgear=["NVGoggles","DZ_Backpack_EP1","BAF_AS50_scoped","BAF_L85A2_RIS_CWS","ItemGPS","M107_DZ","DMR","M14_EP1","Binocular_Vector","SVD_Camo","M4A3_CCO_EP1","FN_FAL","FN_FAL_ANPVS4","M4A1_AIM_SD_camo","m16a4_acg","M4A1_HWS_GL_camo","Mk_48_DZ","M249_DZ","M24"]; CLY_noremovegear=["NVGoggles","DZ_Backpack_EP1","BAF_AS50_scoped","BAF_L85A2_RIS_CWS","ItemGPS","M107_DZ","DMR","M14_EP1","Binocular_Vector","SVD_Camo","M4A3_CCO_EP1","FN_FAL","FN_FAL_ANPVS4","M4A1_AIM_SD_camo","m16a4_acg","M4A1_HWS_GL_camo","Mk_48_DZ","M249_DZ","M24"]; _oa=isClass (configFile/"CfgPatches"/"CA_E"); _manwait=_this select 0; _vehiclewait=if (count _this>1) then {_this select 1} else {_manwait}; CLY_removegeared=if (count _this>2) then {_this select 2} else {true}; CLY_removedeadpending=[]; CLY_dontremovedead=[]; CLY_dontremovedeadremove=[]; publicVariable "CLY_dontremovedeadremove"; //Spawnable script _removedead={ _unit=_this select 0; _wait=_this select 1; sleep _wait; waitUntil {isNull flag _unit}; _gear=if (_unit isKindOf "Man") then {(magazines _unit+weapons _unit)-CLY_ignoregear} else {[]}; if (isNull _unit or _unit in CLY_dontremovedead or (CLY_removegeared and {_x in CLY_keepgear} count _gear>0) or (!CLY_removegeared and count _gear>0)) exitWith { CLY_removedeadpending=CLY_removedeadpending-[_unit]; }; if (_unit isKindOf "Man" and isClass (configFile/"CfgPatches"/"CA_E")) then { hideBody _unit; _removetime=time+8; while {getPos _unit select 2<0.2 and time<_removetime} do {sleep 0.1}; }; CLY_removedeadpending=CLY_removedeadpending-[_unit]; deleteVehicle _unit; }; //Loop _allunits=[]; _alldead=[]; while {true} do { if (!_oa) then {_allunits=allUnits}; sleep 1; if (!_oa) then { {if (!alive _x) then {_alldead set [count _alldead,_x]}} forEach _allunits; {if (isNull _x) then {_alldead=_alldead-[_x]}} forEach _alldead; } else {_alldead=allDead}; { if (isNil {_x getVariable "CLY_removedead"}) then { if !(_x in CLY_removedeadpending) then { _wait=if (_x isKindOf "Man") then {_manwait} else {_vehiclewait}; _gear=if (_x isKindOf "Man") then {(magazines _x+weapons _x)-CLY_ignoregear} else {[]}; if (_wait>0 and ((CLY_removegeared and {_x in CLY_keepgear} count _gear==0) or (!CLY_removegeared and count _gear==0))) then { [_x,_wait] spawn _removedead; CLY_removedeadpending set [count CLY_removedeadpending,_x]; }; }; } else { if (_x getVariable "CLY_removedead") then { if (vehicle _x==_x) then { CLY_removedeadpending set [count CLY_removedeadpending,_x]; [_x,0] spawn _removedead; _x setVariable ["CLY_removedead",nil]; }; } else { CLY_dontremovedead set [count CLY_dontremovedead,_x]; _x setVariable ["CLY_removedead",nil]; }; }; } forEach _alldead-CLY_dontremovedead; if (count CLY_dontremovedeadremove>0) then { CLY_dontremovedead=CLY_dontremovedead-CLY_dontremovedeadremove; CLY_dontremovedeadremove=[]; publicVariable "CLY_dontremovedeadremove"; }; }; Any help appreciated. Share this post Link to post Share on other sites
kylania 568 Posted October 11, 2012 I'm running this alongside DayZ That's your problem. Try asking on the DayZ forums since DayZ is not in any way compatible with ArmA2. Share this post Link to post Share on other sites
theblueone 1 Posted October 11, 2012 That's your problem. Try asking on the DayZ forums since DayZ is not in any way compatible with ArmA2. I beg to differ, it's still the same game, and it's still running the same scripts just a different mission. I don't see how running it on DayZ would make it not work. As it's partly working. Other scripts designed for ArmA2 work perfectly fine too. Share this post Link to post Share on other sites
kylania 568 Posted October 11, 2012 I've tried at least a dozen things that "work in ArmA2" that don't work in DayZ. Scripts and even items in the editor (well, when you finally get into the MP editor since they removed Singleplayer entirely) that just don't display in game or are entirely different items. DayZ questions go on the DayZ forums. It's not ArmA2, it's DayZ. Share this post Link to post Share on other sites
theblueone 1 Posted October 12, 2012 Seriously man, are you here just to give me a hard time about asking a question about this script, only because it happens so that I run it on a DayZ server? All I'm hoping for is to get verification on the script from the OP or people that know this stuff, if it looks alright and if there's anything wrong with it. Items argument isn't really valid since it is know for DayZ to block and or restrict a lot of those. I just don't see how DayZ would make this script not work. Perhaps instead of being on my case you could try and tell me.. Share this post Link to post Share on other sites
cuel 25 Posted October 12, 2012 This is just like how ACE questions belong in the ACE thread and ACRE question in the ACRE thread. Since DayZ do not have a thread I think you'll have more people willing to help you over at the DayZ forums. Share this post Link to post Share on other sites
Guest Posted October 12, 2012 @theblueone Indeed, use the DayZ forums for DayZ related questions. If a script or mod does not work with DayZ but it works with the default game the problem is related to DayZ and as such your question belongs on the DayZ forums. Nobody here is giving you a hard time, you simply seem to not want to be redirected to the right place to ask your question(s), while the redirect is perfectly fine and correct. Share this post Link to post Share on other sites
theblueone 1 Posted October 12, 2012 Jesus Christ. This is NOT a DayZ related question. This is a question about this script, I just want someone to check if it's correct. I don't know if it works with the vanilla ArmaA2 because I haven't tried it and I have no means to try it. You don't know if it works with the default game yet you categorised this to be a DayZ problem. Why do I have to go to DayZ forums, and why am I not allowed to ask for help in this script's topic since it's this script that I'm using? If I needed DayZ specific help I wouldn't be asking it here, it's help about this script that I'm looking for. Do you seriously think anyone over at DayZ forums will be able to help me with this? They'll just tell me to go back to this topic. Me posting in this topic is my best bet. Share this post Link to post Share on other sites
Guest Posted October 12, 2012 You have DayZ, if you have that you also have Arma 2 so yes you can try if it works without DayZ yourself instead of asking others to do that for you. Once you have seen it works without DayZ without issues you can conclude the issues you have or want checked are caused by DayZ and as such you can go to the DayZ forums. Now, keep your cool and post according to the forum rules which everyone here accepted during signup. So, follow a moderators instructions, do not discuss our moderation in public and post in the correct forum section and/or thread (in this case the DayZ forums). Share this post Link to post Share on other sites
iceman77 18 Posted November 1, 2012 (edited) I have a vehicle respawn script, and I don't want the removal script to delete vehicles as it may cause some problems regarding the vehicle respawn script. Is calling the script with only 1 parameter defined okay? >> [60] execVM "cly_removedead.sqf". Just to delete infantry. It works fine when I test it on my own machine. But idk about dedicated servers. Edited November 1, 2012 by Iceman77 Share this post Link to post Share on other sites
prsmcarty 10 Posted March 30, 2013 I have the script working great, thanks heaps, but for some reason its not deleting vehicles Share this post Link to post Share on other sites
Gunter Severloh 4064 Posted March 30, 2013 Whats the time in your code you have set to delete vehicles? As the script works fine for me. Share this post Link to post Share on other sites