Jump to content

shurix

Member
  • Posts

    119
  • Joined

  • Last visited

Posts posted by shurix

  1. I think I got it. Need to replace a line

    if not(_mag isEqualTo "")

    with

    if not(_mag isEqualTo [])

    10:33:57 "[EPOCH VGS] forEach weaponsItemsCargo _vehObj: [""LMG_Zafir_F"","""",""acc_pointer_IR"",""optic_LRPS"",[""150Rnd_762x54_Box_Tracer"",150],""""]"
    10:33:57 "[EPOCH VGS] forEach weaponsItemsCargo _vehObj: [""hgun_P07_F"",""muzzle_snds_L"","""","""",[""30Rnd_9x21_Mag"",30],""""]"
    10:33:57 "[EPOCH VGS] forEach weaponsItemsCargo _vehObj: [""Rangefinder"","""","""","""",[],""""]"

    _mag = _x select 4;
    if not(_mag isEqualTo []) then { (_gear select 1) pushBack [_mag select 0, _mag select 1] };
    _bipod = _x select 5;

  2. Hi He-Man, one of my users reported a problem. He was moving his CUP_B_Wildcat_Cannon_Armed_Green_AAF into the garage and it did not move-in correctly. The error report is below. I guess there is a need to check for size of the array returned by weaponsItemsCargo

     

    14:54:41 "[EPOCH VGS] EPOCH_vgsWrite: _data = [3,617ac100# 1698155: cup_aw159.p3d REMOTE,B Alpha 1-1:2 (Amolgaut) REMOTE,""EPOCH_vgsKey_4537uT5673tUhF371273""]"
    14:54:41 Error in expression <select 1) pushBack [_mag select 0, _mag select 1] };
    _bipod = _x select 5;
    if no>
    14:54:41   Error position: <select 1] };
    _bipod = _x select 5;
    if no>
    14:54:41   Error Zero divisor
    14:54:41 File a3_epoch_virtualGarage\functions_VGS\fn_vgsInitServer.sqf, line 151
    14:54:41 Error in expression <select 1) pushBack [_mag select 0, _mag select 1] };
    _bipod = _x select 5;
    if no>
    14:54:41   Error position: <select 1] };
    _bipod = _x select 5;
    if no>
    14:54:41   Error Zero divisor
    14:54:41 File a3_epoch_virtualGarage\functions_VGS\fn_vgsInitServer.sqf, line 151
    14:54:41 "[EPOCH VGS] Client (Amolgaut) put his/her CUP_B_Wildcat_Cannon_Armed_Green_AAF in garage"

  3. I installed DayZ Epoch with all one-click scripts from GTXGaming. I want to remove an indicator that shows the object name and distance when I point in the direction of the object with the cursor. This way, I can see what helicopter is approaching and I can see AI units hiding in the grass. How do I remove or block the script that does that? Is this DayZ, infiSTAR or other added feature?
    Please see the snapshot below for a sample: 

    screenshot

     

    P.S. Already found the answer. I had to set EnemyTag=0; in  DayZConfig.ArmA2OAProfile

  4. I installed Esseker and all my players experience random client crashes making the game unplayable. Even when they can actually log into the server. Most of the times they are being kicked to the lobby and then client crashes. Too bad no one has a fix for this issue. The map seems very realistic and full of potential.

  5. I do like this mod, if only there were a way to support so many agents on a multiplayer server ;)

    axeman, is there a way to make BIS_fnc_MP blocking optional in Epoch? I mean I understand it's a security hole and all but it would be nice if you could leave that decision to the server admins. Without this function there is no attack animation for the Zombies. All of server-client interaction in this mod is built on BIS_fnc_MP...

    I think there are plenty of other mods that use this function but won't work with Epoch. I think BIS_fnc_MP is whitelisted in Exile mod.

    Thanks for your consideration!

  6. I upgraded my server(s) and clients to the latest Arma 1.52 and started to notice new issues with opening in-game inventory. For example, I cannot open inventory when inside the vehicle. When I come close to my Huge Storage Box and press "I", all I get is black inventory on the ground - no Cargo. If I open one of Epoch's cabinets - no Cargo inventory is available, only empty inventory on the ground. When I open blue tarp I cannot pickup any items from the skid. I use Lootspawner script and it takes MANY attempts crawling close to the loot items on the ground and looking at the items from the first person view to actually be able to see those items in the inventory screen.

    Also, if I kill an AI driving a vehicle, I'm unable to get in as a driver or unlock the vehicle. Inventory options other then "Inspect" are not available.

    Is this problem unique to my server/mod set or are there other users who experience these problems as well?

  7. So zombies/spawn.sqf i run from my sensor class in mission.sqm

    From where i must to run zombies/start.sqf ?  init.sqf?

     

    If you run your trigger/sensor from the mission file, you should look at how Ryan built his missions and follow his examples.

    My examples refer to running zombies from the server-side AI addon, like WAI or others without using mission.sqm

    I have a custom addon @EpochHive\Addons\custom_server.pbo that I use for initiating AI and zombie triggers as well.

  8. Here's how I made this mod work for my Taviana map.

    zombies/start.sqf contains all coordinates for city locations and places triggers in each one of those

     

    InfAllLocations = [
    	//["Baltic Sea",[4699.25,3524.91,0.01]],
    	["Mitrovice",[3795.29,7222.12,0.01]],
    	["Branibor",[7682.46,4312.29,0.01]],
    	["Bled",[7955.22,5404.22,0.01]],
    	["Shtangrad",[3323.68,7552.9,0.01]],
    	["Treshnyоvo",[8192.9,4999.26,0.01]],
    	["Primorsk",[4647.02,8168.15,0.01]],
    	["Novi Dvor",[7925.88,6725.89,0.01]],
    	["Stari Dvor",[8234.42,6092.46,0.01]],
    	//["Knin",[3429.83,2164.9,0.01]],
    	["Polyanka",[8490.77,5606.31,0.01]],
    	//["Lake Bled",[8593.25,4557.06,0.01]],
    	//["Krasnoznamen'sk Airport",[7169.38,8050.25,0.01]],
    	//["Stara Luka",[8674.96,5519.58,0.01]],
    	["Borska Pole",[6394.68,8607.36,0.01]],
    	["Bilgrad Na Moru",[5452.96,8827.01,0.01]],
    	["Racetrack",[2065.14,7288.99,0.01]],
    	["Zhabinka",[8213.12,2987.59,0.01]],
    	//["Ash",[6048.94,1410.87,0.01]],
    	//["Lake Slyepac",[8480.45,7067.79,0.01]],
    	//["Sobor Khrista Spasitelya",[8579.25,6941.41,0.01]],
    	["Kryvoe",[9114.96,5402.52,0.01]],
    	//["Stare Boriste",[5666.27,9374.34,0.01]],
    	//["Bashka Luka",[9437.74,5439.89,0.01]],
    	["NPP Treblyanka",[9437.92,4457.95,0.01]],
    	["Repkov",[9559.96,5712.55,0.01]],
    	["Topolka",[8881.93,2308.74,0.01]],
    	["Chernovar",[5827.36,9879.22,0.01]],
    	["Vedich",[6705.53,9868.36,0.01]],
    	["Krasnoznamen'sk",[9176.12,8060.1,0.01]],
    	//["Borovka",[5943.5,10527.1,0.01]],
    	["Kosovo",[9623.59,1767.75,0.01]],
    	["Komarovo",[10591.6,6565.65,0.01]],
    	["Krkav",[11008.4,6677.76,0.01]],
    	["Isle Myet",[9881.26,9021.67,0.01]],
    	["Marina",[10009.6,1377.64,0.01]],
    	//["Baltic Sea",[2263.3,10929.5,0.01]],
    	["Oko",[8472.17,11418.2,0.01]],
    	["Plashki",[7836.5,11796,0.01]],
    	["Baranovka",[10516.6,9955.95,0.01]],
    	["Seven",[10985.4,759.202,0.01]],
    	//["Olga",[10822.9,9695.06,0.01]],
    	["Romanov",[11626.9,9063.69,0.01]],
    	["Stare Plashki",[8203.81,12117.6,0.01]],
    	["Vodice",[11817.5,1418.28,0.01]],
    	["Bashka Luka",[11444.9,9512.22,0.01]],
    	["Vishka",[9163.74,11719.2,0.01]],
    	["Sedoy",[8466.01,12156.8,0.01]],
    	["Karelski Channel",[12581.8,7401.8,0.01]],
    	//["Svir",[11462.4,9835.3,0.01]],
    	["Varna",[11026.6,10397.9,0.01]],
    	// ["Blato",[11787.8,747.01,0.01]],
    	["Zagorye",[11492.1,10033.7,0.01]],
    	//["Olga",[10577.7,11081.2,0.01]],
    	["Nagornoye",[9653.81,11844.3,0.01]],
    	//["Isle Krk",[6552.09,13113.6,0.01]],
    	["Slavyansk",[8939.58,12564,0.01]],
    	//["Olga",[9698.88,12177.7,0.01]],
    	//["Olga",[8652.61,12762.1,0.01]],
    	//["Baltic Sea",[13583.8,5618.82,0.01]],
    	//["Otok",[13605.7,3643.98,0.01]],
    	//["Klish",[13624.7,3596.88,0.01]],
    	//["Chertova Styena",[13044.6,8575.23,0.01]],
    	//["Island Hvar",[8592.5,13142.5,0.01]],
    	["Antonovka",[9660.5,12620,0.01]],
    	["Luzhin nad Olgoy",[11164.5,11617,0.01]],
    	["Gostivar",[4206.99,14062.7,0.01]],
    	["Tlen",[8530.9,13546.5,0.01]],
    	//["Olga",[8987,13348.4,0.01]],
    	["Mala Luka",[9501.79,13178.4,0.01]],
    	["Vufelki",[9219.33,13399,0.01]],
    	["Оvisoy",[9614.09,13456.1,0.01]],
    	//["Island Pinsk",[7917.94,14247.3,0.01]],
    	["Grushnoye",[5451.26,14741.8,0.01]],
    	//["Kres",[1202.7,13916.7,0.01]],
    	["Velika Luka",[9630.61,13902.4,0.01]],
    	["Apshironsk",[9179.1,14136.6,0.01]],
    	["Etanovsk",[12664.7,11921,0.01]],
    	["Norilsk",[8677.97,14808.7,0.01]],
    	//["Island Pskov",[9548.47,14485.5,0.01]],
    	["Boye",[15201,7886.56,0.01]],
    	//["Izh",[6329.81,15521.2,0.01]],
    	["Norilsk Military Base",[9152.02,14794.3,0.01]],
    	["Podgorica",[14631.4,9723.67,0.01]],
    	["Zatok",[14804,9510.57,0.01]],
    	["Church of St. Mikolay",[8681.32,15142.5,0.01]],
    	["Center",[14592.7,10252.1,0.01]],
    	//["South Tarakansk",[8925.29,15235.8,0.01]],
    	//["Sabina",[15022.2,9693.54,0.01]],
    	["Postoyna",[15501.5,8512.26,0.01]],
    	["Slovany",[15250.3,9386.37,0.01]],
    	["Gord",[5657.46,16112.1,0.01]],
    	//["Lyubolsky Zaliv",[9973.7,14999.9,0.01]],
    	//["Tarakansk Oil Storage",[8857.9,15544.6,0.01]],
    	["Center",[15140.5,9836.14,0.01]],
    	["Sokoli Gnyazdo",[12464.1,13415.9,0.01]],
    	["Uyezd",[15193.1,10128.3,0.01]],
    	["Dyelnica",[15471,9560.89,0.01]],
    	["Novy Bor",[14507.3,11346.6,0.01]],
    	["Prilep",[14159.2,11912.4,0.01]],
    	//["North Tarakansk",[8642.89,15896.9,0.01]],
    	["Doriyanov",[12487.2,13740.8,0.01]],
    	["Krushevich",[16244.2,7406.14,0.01]],
    	//["Solibor",[13999.6,12240.2,0.01]],
    	["Vratnica",[2385.34,16339.5,0.01]],
    	["Biysk",[5530.9,16761.7,0.01]],
    	//["Tarakansk Oil Fields 2",[8489.29,16311.8,0.01]],
    	//["Bolshaya Plan'",[2432.09,16521.5,0.01]],
    	["Bori",[11581.8,14986.2,0.01]],
    	["Bohdanyuvka",[2770.5,16711.4,0.01]],
    	["Kopech",[16500.9,8339.07,0.01]],
    	["Stare Pole",[16912.3,6213.9,0.01]],
    	["Nekhay",[14873.3,11913.6,0.01]],
    	["Stari Grad",[11187,15350.8,0.01]],
    	["Vinograd",[13585.4,13478.3,0.01]],
    	//["Swamp",[13220.1,13930,0.01]],
    	//["Stadium",[11555.2,15308.7,0.01]],
    	["Chrveni Gradok",[12713.8,14482.6,0.01]],
    	//["Tarakansk Oil Fields 1",[8473.03,16721.1,0.01]],
    	//["Swamp",[16274.8,9866.61,0.01]],
    	["Swallow's Nest",[3777.34,17173.7,0.01]],
    	["Novi Boch",[16873.2,8158.5,0.01]],
    	//["Lake Umag",[15451.4,11600.5,0.01]],
    	//["Lyepestok",[11608.1,15476.1,0.01]],
    	["Yuzhny Sad",[5396.69,17431.4,0.01]],
    	["Zabyela",[13090.5,14523.9,0.01]],
    	["Boleslava",[2796.64,17274,0.01]],
    	["Ilya",[5878.21,17480.9,0.01]],
    	["Dubravka",[11802.8,15590.1,0.01]],
    	["Byelov",[17319.5,7487.96,0.01]],
    	["Vladimir",[1942.44,17177,0.01]],
    	//["Vishkov",[11387.3,15908,0.01]],
    	["Zelenogorod",[12229.4,15392.9,0.01]],
    	["Stari Sad",[17555.4,6343.25,0.01]],
    	//["Nina",[12663.6,15112.6,0.01]],
    	["Works",[17305.3,8104.2,0.01]],
    	["Cement",[17305.4,8142.75,0.01]],
    	["Alexander",[4973.97,17701.7,0.01]],
    	//["Train depot",[11538.7,15985.9,0.01]],
    	["Nizhina",[17751.4,5737.78,0.01]],
    	["Kustik",[12958.3,15053.7,0.01]],
    	["Kryvozhopol",[3885.24,17724,0.01]],
    	//["Rybnik",[3253.58,17652.3,0.01]],
    	["Airport Dubovo",[16442.4,10940.6,0.01]],
    	["Chertovo Oko",[17925.8,5039.47,0.01]],
    	//["Lyubol'",[10405.1,16832,0.01]],
    	["Dubovo",[16222.5,11600.2,0.01]],
    	["Silo",[2453.91,17703.5,0.01]],
    	["Krakov",[10425.3,17003,0.01]],
    	//["Bulbanya",[5529.52,18210.6,0.01]],
    	["Brdo",[15511.6,13207,0.01]],
    	["Skalka",[18311.1,6596.5,0.01]],
    	["Zeleny Kilim",[2263.38,18200.3,0.01]],
    	["Church of St Ivan",[15680.6,13423.1,0.01]],
    	["Dolina",[15315.8,14254.1,0.01]],
    	["Myelkij",[15174.9,14512.1,0.01]],
    	["Baltskaya Guba",[4942.01,18884.4,0.01]],
    	["Martin",[16136.3,13632.5,0.01]],
    	//["Jaroslavski Airport",[10134.8,18157.9,0.01]],
    	["Gorka",[15122.4,14882.2,0.01]],
    	["Molotovsk",[16957.7,12694.3,0.01]],
    	["Duge Selo",[11289.8,17814.5,0.01]],
    	//["Train depot",[16373.7,13718,0.01]],
    	//["Taviana Zoo",[19140.7,2957.32,0.01]],
    	//["Baltic Sea",[3689.7,19269.7,0.01]],
    	["Mill",[16068.6,14248.2,0.01]],
    	["Molotovski Zlaiv",[17353.1,12723.8,0.01]],
    	["Bronka",[5466.52,19677.8,0.01]],
    	["Radynya",[16852.1,14114.7,0.01]],
    	//["Train depot",[10842.7,18754.7,0.01]],
    	["Kameni",[8850.92,19436.6,0.01]],
    	["Yaroslav",[10164,19080.4,0.01]],
    	["Ekaterinburg",[11020.4,18790.6,0.01]],
    	//["Niva Bay",[11416.9,18831.2,0.01]],
    	//["Train depot",[15251.6,16302.5,0.01]],
    	["Sevastopol'",[15464.8,16269.3,0.01]],
    	["Channel Loket",[11567.9,20146.5,0.01]],
    	["Dalnogorsk",[15007.9,18182.2,0.01]],
    	["Helfenburg",[8160.54,21286,0.01]],
    	["Khotanovsk",[13468,19387.3,0.01]],
    	//["Baltic Sea",[22327.6,5360.23,0.01]],
    	//["Isle Shibenik",[11970,20993.4,0.01]],
    	//["Baltic Sea",[22252.5,13237.4,0.01]],
    	//["Baltic Sea",[17730,20080,0.01]],
    	["Castle Georgiev",[24405.9,1367.89,0.01]]
    ];
    
    
    
    
    if (isServer) then
    { 
    
    civilian setFriend [resistance , 0];
    civilian setFriend [east , 0];
    
    resistance setFriend [civilian , 0];
    resistance setFriend [east , 0];
    	
    	_ztriggers = [];
    
    		{
    			private ["_markName","_markPos","_mPosX","_mPosY","_mkrY","_mkrX","_detectorName","_x"];
    			_location=_x;
    			_locationName = _location select 0;
    			_locationPos= _location select 1;
    			//_locationPos = [(_locationPos select 0),(_locationPos select 1),0.01];
    			_trigger=createTrigger["EmptyDetector",_locationPos];
    			_size = 100;
    			if (_locationName in ["Krasnoznamen'sk","Sevastopol'","Airport Dubovo","Lyepestok","Ekaterinburg","Sabina","Branibor"]) then
    			{
    				_size = 500;
    			} else {
    				_size = 300;
    			};
    			_trigger setTriggerActivation ["EAST", "PRESENT", true];
    			
    			_trigger setTriggerArea[_size,_size,0,false];			
    			call compile format ["_trigger setTriggerStatements ['this','[thisTrigger,[%1,true,false]] exec ""\q\addons\custom_server\zombies\spawn.sqf"";',''];", str _size];
    			
    			_ztriggers pushBack [_trigger,_size];
    			sleep 0.1;
    		} forEach InfAllLocations;
    		
    		diag_log format["ZOMBIES: All locations are marked with triggers. Sending _ztriggers=%1",_ztriggers];
    
    };
    

     

     

    zombies/spawn.sqf runs when the trigger is activated by the player

    ~0.5
    
    #first
    _logic = _this select 0
    _paramsArray = _this select 1
    
    _spawnRadius = _paramsArray select 0
    _spawnRegular = _paramsArray select 1
    _spawnDemons = _paramsArray select 2
    
    diag_log format["Z Spawner: _paramsArray=%1",_paramsArray]
    
    if (isnil "ryanzombiesstart") then {ryanzombiesstart = 5}
    if (isnil "ryanzombiesdelay") then {ryanzombiesdelay = 0.5}
    if (isnil "ryanzombiescurrentamount") then {ryanzombiescurrentamount = 0}
    ryanzombiesamount = 14
    ryanzombiestotalamount = 1000
    if (isnil "ryanzombiesfrequency") then {ryanzombiesfrequency = 180}
    if (isnil "ryanzombiesactivation") then {ryanzombiesactivation = 0.9}
    if (isnil "ryanzombieshordesize") then {ryanzombieshordesize = 14}
    
    if (isnil "ryanzombiesdeletion") then {ryanzombiesdeletion = 1}
    if (isnil "Ryanzombieslogicroam") then {Ryanzombieslogicroam = 1}
    
    ryanzombiesdeletion = 1
    Ryanzombieslogicroam = 1
    
    Ryanzombiesjump = 1
    Ryanzombiescanthrow = 1
    Ryanzombiescanthrowtank = 0
    Ryanzombiescanthrowdistance = 30
    ryanzombiescanthrowtankdistance = 0
    
    Ryanzombiesdamagecar = 0.005
    Ryanzombiesdamageair = 0.005
    Ryanzombiesdamagetank = 0
    
    Ryanzombiesdamagetankstrenth = 0
    
    
    _slowZs = ["RyanZombieC_man_1slow", "RyanZombieC_man_polo_1_Fslow", "RyanZombieC_man_polo_2_Fslow", "RyanZombieC_man_polo_4_Fslow", "RyanZombieC_man_polo_5_Fslow", "RyanZombieC_man_polo_6_Fslow", "RyanZombieC_man_p_fugitive_Fslow", "RyanZombieC_man_w_worker_Fslow", "RyanZombieC_scientist_Fslow", "RyanZombieC_man_hunter_1_Fslow", "RyanZombieC_man_pilot_Fslow", "RyanZombieC_journalist_Fslow", "RyanZombieC_Orestesslow", "RyanZombieC_Nikosslow", "RyanZombieB_Soldier_02_fslow", "RyanZombieB_Soldier_02_f_1slow", "RyanZombieB_Soldier_02_f_1_1slow", "RyanZombieB_Soldier_03_fslow", "RyanZombieB_Soldier_03_f_1slow", "RyanZombieB_Soldier_03_f_1_1slow", "RyanZombieB_Soldier_04_fslow", "RyanZombieB_Soldier_04_f_1slow", "RyanZombieB_Soldier_04_f_1_1slow", "RyanZombieB_Soldier_lite_Fslow", "RyanZombieB_Soldier_lite_F_1slow"]
    _mediumZs = ["RyanZombieC_man_1medium", "RyanZombieC_man_polo_1_Fmedium", "RyanZombieC_man_polo_2_Fmedium", "RyanZombieC_man_polo_4_Fmedium", "RyanZombieC_man_polo_5_Fmedium", "RyanZombieC_man_polo_6_Fmedium", "RyanZombieC_man_p_fugitive_Fmedium", "RyanZombieC_man_w_worker_Fmedium", "RyanZombieC_scientist_Fmedium", "RyanZombieC_man_hunter_1_Fmedium", "RyanZombieC_man_pilot_Fmedium", "RyanZombieC_journalist_Fmedium", "RyanZombieC_Orestesmedium", "RyanZombieC_Nikosmedium", "RyanZombieB_Soldier_02_fmedium", "RyanZombieB_Soldier_02_f_1medium", "RyanZombieB_Soldier_02_f_1_1medium", "RyanZombieB_Soldier_03_fmedium", "RyanZombieB_Soldier_03_f_1medium", "RyanZombieB_Soldier_03_f_1_1medium", "RyanZombieB_Soldier_04_fmedium", "RyanZombieB_Soldier_04_f_1medium", "RyanZombieB_Soldier_04_f_1_1medium", "RyanZombieB_Soldier_lite_Fmedium", "RyanZombieB_Soldier_lite_F_1medium"]
    _fastZs = ["RyanZombieC_man_1", "RyanZombieC_man_polo_1_F", "RyanZombieC_man_polo_2_F", "RyanZombieC_man_polo_4_F", "RyanZombieC_man_polo_5_F", "RyanZombieC_man_polo_6_F", "RyanZombieC_man_p_fugitive_F", "RyanZombieC_man_w_worker_F", "RyanZombieC_scientist_F", "RyanZombieC_man_hunter_1_F", "RyanZombieC_man_pilot_F", "RyanZombieC_journalist_F", "RyanZombieC_Orestes", "RyanZombieC_Nikos", "RyanZombieB_Soldier_02_f", "RyanZombieB_Soldier_02_f_1", "RyanZombieB_Soldier_02_f_1_1", "RyanZombieB_Soldier_03_f", "RyanZombieB_Soldier_03_f_1","RyanZombieB_Soldier_03_f_1_1","RyanZombieB_Soldier_04_f","RyanZombieB_Soldier_04_f_1","RyanZombieB_Soldier_04_f_1_1","RyanZombieB_Soldier_lite_F","RyanZombieB_Soldier_lite_F_1"]
    _spiderZs = ["RyanZombieSpider1", "RyanZombieSpider2", "RyanZombieSpider3", "RyanZombieSpider4", "RyanZombieSpider5", "RyanZombieSpider6", "RyanZombieSpider7", "RyanZombieSpider8", "RyanZombieSpider9", "RyanZombieSpider10", "RyanZombieSpider11", "RyanZombieSpider12", "RyanZombieSpider13", "RyanZombieSpider14"]
    _demonZs = ["RyanZombieboss1","RyanZombieboss2","RyanZombieboss3","RyanZombieboss4","RyanZombieboss5","RyanZombieboss6","RyanZombieboss7","RyanZombieboss8","RyanZombieboss9","RyanZombieboss10","RyanZombieboss11","RyanZombieboss12","RyanZombieboss13","RyanZombieboss14"]
    
    
    ryanzombiescurrentamount = missionNamespace getVariable [format ["%1_ZsInThisZone", _logic], 0]
    if (ryanzombiescurrentamount < 0) then {ryanzombiescurrentamount=0}
    
    diag_log format["Z Spawner: _ZsInThisZone=%1",ryanzombiescurrentamount]
    
    if (ryanzombiescurrentamount > ryanzombiesamount) then  {goto "end"}
    
    _grp = createGroup west
    _x = ryanzombiescurrentamount
    _randChance = floor(random(100))
    _numSpawnMultiplier = 1
    if (_spawnRadius > 300) then {_numSpawnMultiplier = 2}
    _numToSpawn = floor(random(ryanzombieshordesize)) MAX (5 * _numSpawnMultiplier)
    
    #loop
    
    _zombieTypes = []
    
    if (_spawnRegular) then {_zombieTypes = [[_slowZs,100],[_mediumZs,50],[_fastZs,15],[_spiderZs,30]]}
    if (_spawnDemons) then {_zombieTypes pushback [_demonZs,3]}
    _arraySelect = _zombieTypes call BIS_fnc_selectRandom
    	if ((_arraySelect select 1) > _randChance) then {
    		_x = _x + 1
    		_array = _arraySelect select 0
    		_random = _array select floor random count _array
    		if (ryanzombiescurrentamount > ryanzombiestotalamount) then {goto "end"}
    		if (ryanzombiescurrentamount < ryanzombiesamount) then {format ["%1",_random] createunit [position _logic, _grp, format ["this switchmove 'AmovPercMstpSnonWnonDnon_SaluteOut';this setpos [(getpos this select 0) + random %1 - random %2, (getpos this select 1) + random %3 - random %4]; [this] exec '\ryanzombies\count.sqf'",_spawnRadius,_spawnRadius,_spawnRadius,_spawnRadius]] }
    		if (ryanzombiescurrentamount < ryanzombiesamount) then {ryanzombiescurrentamount = ryanzombiescurrentamount + 1}
    		if (ryanzombiescurrentamount < ryanzombiesamount) then {missionNamespace setVariable [format ["%1_ZsInThisZone", _logic], ryanzombiescurrentamount] }
    		if (ryanzombiescurrentamount < ryanzombiesamount) then {diag_log format["Z Spawner: Adding a Z : ryanzombiescurrentamount=%1",ryanzombiescurrentamount] }
    		~ryanzombiesdelay
    	}
    //{_x addRating -10000} forEach units _grp
    
    { [_x] exec "\q\addons\custom_server\zombies\checkzone.sqf" } forEach units _grp
    { [_x] exec "\q\addons\custom_server\zombies\fillpockets.sqf" } forEach units _grp
    
    if (_x < _numToSpawn) then {goto "loop"}
    deletegroup _grp
    ~ryanzombiesfrequency
    goto "loop"
    
    
    #end

     

  9. I had to add my own re-ammo script that makes you load your spare ammo mags into the re-ammo truck first before you can use the truck to reload turrets in the nearby vehicle.

    I also have a video but the commentary is in Russian (sorry)

    https://www.youtube.com/watch?v=kgZWI-HdijE

  10. IT07 - awesome work! I'm using your script on my server now.

     

    I made a little change though to trigger the script by pressing CTRL+R buttons instead of via an addaction of the mousewheel.

     

    in fn_initSAR.sqf comment out everything

    // if not(hasInterface) exitWith {};
    // [] spawn // Why? Because of { postInit = 1; };
    // {
    	// waitUntil { uiSleep 0.5; !isNull(findDisplay 46); !isNil"EPOCH_loadingScreenDone"; };
    	// uiSleep 1;
    
    	//_aa = player addAction ["<img size='1.5' image='\a3\ui_f\data\IGUI\Cfg\Actions\reload_ca.paa' />  Ammo Repack",{createDialog'SC_sarDiag';}, "", -1, false, true];
    // };
    

    in init.sqf add one more line 

    if (!isServer) then {
    
    
    //keybind for ammo reload
    waituntil {!(IsNull (findDisplay 46))}; _keyDown = (findDisplay 46) displayAddEventHandler ["KeyDown", "(if ((_this select 1 == 19) && ( _this select 3)) then {createDialog 'SC_sarDiag';})"];
    
    };	
    
  11. I released a few scripts here and I always mention that I'm not going to support any of those. If people ask specific questions about my scripts then I will help, but I completely ignore the complainers that plague this forum.

     

    If you did not write a line of code in your life I would not expect for you to understand how much work and time goes into script writing, testing and debugging. And I will not take any time to respond to those complaints. Let alone be frustrated about them.

     

    IT07 - cheer up and don't stop creating awesome scripts!

  12. Nice share! are these persistent?

    If so fantastic job, I've had a craft able large crate for some time now for that exact reason.

    I even have it set up to be able to move it around as well as load em into pickup trucks and large choppers

     

    My new boxes are all of those things.

  13. I've been struggling with storing all loot that my mates bring from AI missions and I decided to create bigger boxes that would be stored in the database as a storage unit. I took Shelf from Epoch client as an example. The new box can hold up to 10000 lbs of loot compared with 300 lbs of the Shelf. The new box may be built using 4 Large Corrugated + 4 Plank Packs. By using the larger boxes I also managed to remove 100 or so shelves and replace them with 10 boxes. I guess that may increase my server performance just a bit.

     

    Check out this video and let me know what do you think.

     

    https://www.youtube.com/watch?v=jQFY3PchJaQ

     

    Here's the link to the new extra_storage.pbo

    https://drive.google.com/file/d/0BxlL3HGbsA4PQkx5S3k0NTZuRVE/view?usp=sharing

     

    You will need to put extra_storage.pbo into an existing or a custom @mod\addons folder on the server and on each client that connects to the server.

     

    I also added this line into my mission.sqm:

    addOns[] = { ...
    "extra_storage",
    ...
    }
    

    You may also want to customize your cfgCrafting.hpp to include the recipes to build the Storage Box Kit:

    class ItemCorrugatedLg : Default
    {
    	usedIn[] = { "VehicleRepairLg", "KitPlotPole", "KitStorageBox" };
    	recipe[] = { { "ItemCorrugated", 3 } };
    };
    class PartPlankPack : Default
    {
    usedIn[] = {"KitStudWall","KitWoodFloor","KitWoodFoundation","KitWoodStairs","KitWoodRamp","KitTiPi", "KitStorageBox"};
    	recipe[] = {{"WoodLog_EPOCH",2}};
    };
    class KitStorageBox : Default
    {
    	recipe[] = {{"ItemCorrugatedLg",4}, {"PartPlankPack",4} };
    };
    

    That's it! No more struggling with finding place to put that new sniper rifle, or 10 rifles :)

  14. I was able to get this script to the point where I can see the action by adding this into my custom selfActions.sqf:

     

    _cursorTarget = cursorTarget;
    _typeOfCursorTarget = typeOf _cursorTarget;
    _isMan = _cursorTarget isKindOf "Man";
    _isAlive = alive _cursorTarget;
    hint format [" %1 \n %2 \n %3 \n %4 ",_cursorTarget,_isMan,_isAlive,owner _cursorTarget];
    if (_isMan and !_isAlive) then {
    if (s_player_dragbody < 0) then {
    _cursorTarget setVariable ["H8_increm",1,true];
    _cursorTarget setOwner (owner player);
    s_player_dragbody = cursorTarget addaction ["Drag Body",{call H8_DragAction},nil,6,false,false,"",""];
    };
    } else {
    _cursorTarget removeAction s_player_dragbody;
    s_player_dragbody = -1;
    };
     
    I come over to the body and "Drag Body" action appears on the mouse wheel. I select it and the script starts working. However, if I move away from the body, it doesn't move. I thought attachTo function needs to refer to a local object. Maybe infiSTAR blocks onEachFrame movements. I don't know and I'm stuck that's why I'm asking if anyone has something similar working.
  15. Hi guys!

     

    On more than one occasion I lost my dead body in the textures of a rock while hunting bots. The worst thing that may happen is when you come back looking for your body you are not able to recover any of your awesome gear. You try to open inventory but it closes itself in an instant.

     

    So, I had an idea!

     

    There is no Drag Body action available in Arma 3 and I don't think they are anywhere near getting that functionality into the platform.

     

    I found this script http://forums.bistudio.com/showthread.php?182000-Drag-Dead-Body-Script

    on Armaholic but I can't seem to make it work.

     

    Has anyone had a chance to get a similar script to work?

×
×
  • Create New...