Jump to content

[RELEASE] WAI 2.2.6


JasonTM

Recommended Posts

15 minutes ago, Schalldampfer said:

wai_keep_vehicles        = false; // save vehicles to database and keep them after restart

(if you want to make only a certain vehicle not to be permanent, then set wai_*** = false just before spawning it and wai_*** = true after it spawned.)

 

Thanks man I'll give it a shot!

also, If I change the parameters from : 
 

_position = [30] call find_position;

to
 

_position = [4884.35, 0.00143433, 9668.19];

do you reckon it would work?

 

Link to comment
Share on other sites

5 minutes ago, JakeQue said:

Thanks man I'll give it a shot!

also, If I change the parameters from : 
 


_position = [30] call find_position;

to
 


_position = [4884.35, 0.00143433, 9668.19];

do you reckon it would work?

 

maybe not, the find_position function reads only first component of array [30] or [4884. ..., ... , ... ]. and use it as safe zone radius. not position.

Quote


if (wai_use_blacklist) then {
    _safepos = [getMarkerPos "center",150,((getMarkerSize "center") select 1),(_this select 0),0,0.4,0,wai_blacklist];
} else {
    _safepos = [getMarkerPos "center",150,((getMarkerSize "center") select 1),(_this select 0),0,0.4,0];
};
 

//////

    _position     = if (!wai_user_spawnpoints) then {_safepos call BIS_fnc_findSafePos} else {WAI_StaticSpawnPoints call BIS_fnc_selectRandom};

if you want to check a position suitable for mission or not, read 
WAI\missions\MISSION_EXAMPLE_WITH_SINGLE_SPAWN_POINT.sqf for sample.

Link to comment
Share on other sites

28 minutes ago, Schalldampfer said:

maybe not, the find_position function reads only first component of array [30] or [4884. ..., ... , ... ]. and use it as safe zone radius. not position.

if you want to check a position suitable for mission or not, read 
WAI\missions\MISSION_EXAMPLE_WITH_SINGLE_SPAWN_POINT.sqf for sample.

Nice one brother, saved me skin there. I had deleted that file so I didn't remember about it haha!

Link to comment
Share on other sites

  • 2 weeks later...

Updated to 2.2.6 have these errors 

12:39:51 Error in expression <= _weapons_array select (floor (random (count _weapons_array)));
_ammo = _weapon>
12:39:51   Error position: <count _weapons_array)));
_ammo = _weapon>
12:39:51   Error count: Type Number, expected Array,Config entry
12:39:51 File z\addons\dayz_server\WAI\compile\dynamic_crate.sqf, line 93
12:39:51 Error in expression <iArrItem = true;
};

if(typeName (_loot select 3) == "ARRAY") then {
_num_pistol>
12:39:51   Error position: <select 3) == "ARRAY") then {
_num_pistol>
12:39:51   Error Zero divisor
12:39:51 File z\addons\dayz_server\WAI\compile\dynamic_crate.sqf, line 55

Also tankcolum m2 gunner is constantly shooting at a prop tank or something

Link to comment
Share on other sites

On 12/3/2018 at 10:33 AM, Tox said:

Updated to 2.2.6 have these errors 

12:39:51 Error in expression <= _weapons_array select (floor (random (count _weapons_array)));
_ammo = _weapon>
12:39:51   Error position: <count _weapons_array)));
_ammo = _weapon>
12:39:51   Error count: Type Number, expected Array,Config entry
12:39:51 File z\addons\dayz_server\WAI\compile\dynamic_crate.sqf, line 93
12:39:51 Error in expression <iArrItem = true;
};

if(typeName (_loot select 3) == "ARRAY") then {
_num_pistol>
12:39:51   Error position: <select 3) == "ARRAY") then {
_num_pistol>
12:39:51   Error Zero divisor
12:39:51 File z\addons\dayz_server\WAI\compile\dynamic_crate.sqf, line 55

Also tankcolum m2 gunner is constantly shooting at a prop tank or something

I forgot to update airdrop_winorfail.sqf. That is causing the loot error. The github is updated.

https://github.com/worldwidesorrow/WICKED-AI/commit/547812ad698c52bdbaec54bed00a4be2809179b7

The Bandit tank column gunner targets object GUE_WarfareBAircraftFactory for some reason. I removed it.

https://github.com/worldwidesorrow/WICKED-AI/commit/be15961acd4a6d2958c0a732a5ac6d24013c701e

I also updated file mission_loot.sqf into a more readable format. Some server owners may not understand the multi-dimensional array.

https://github.com/worldwidesorrow/WICKED-AI/blob/master/WAI/configs/mission_loot.sqf

 

Thanks for the feedback.

 

Link to comment
Share on other sites

Has anyone tried making a mission with a single spawn point? I made a static mission but wanted it to be a "real" mission so i copied everything over to the 'mission example with a single spawn point' file and it's not working right. The mission spawns on the map. it's announced , the groups, vehicles, heli's, and crate spawn but the AI remaining count always starts at zero and the crate fills with the loot, i'm guessing because it thinks the AI are all dead which they are not.   I'm pretty sure i have followed the directions to the letter and I can't figure it out.

Here are my rpt errors.

Spoiler

0:01:12 "WAI DEBUG: FINDPOS: Checking nearby mission markers: ["DZMSMajMarker","DZMSMinMarker","DZMSBMajMarker","DZMSBMinMarker","MainBandit0","MainHero1","MainBandit2","MainHero3","MainHero4","MainHero5"]"
 0:01:12 "WAI: valid position found at[3117,2489,0]"
 0:01:12 "WAI: [Mission:[Hero] Bandit Island Base] started at [3117,2489,0]"
 0:01:12 Error in expression < _unitGroup];
} else {
(wai_static_data select 1) set [count (wai_static_data se>
 0:01:12   Error position: <select 1) set [count (wai_static_data se>
 0:01:12   Error Zero divisor
 0:01:12 File z\addons\dayz_server\WAI\compile\spawn_group.sqf, line 53
 
 0:01:20 Error in expression <lect 1), _unitGroup];
(wai_static_data select 2) set [count (wai_static_data se>
 0:01:20   Error position: <select 2) set [count (wai_static_data se>
 0:01:20   Error Zero divisor
 0:01:20 File z\addons\dayz_server\WAI\compile\vehicle_patrol.sqf, line 118
 0:01:20 Error in expression <_data select 0) + 1)];
(wai_static_data select 2) set [count (wai_static_data se>
 0:01:20   Error position: <select 2) set [count (wai_static_data se>
 0:01:20   Error Zero divisor
 0:01:20 File z\addons\dayz_server\WAI\compile\spawn_static.sqf, line 187
 0:01:20 Error in expression <_data select 0) + 1)];
(wai_static_data select 2) set [count (wai_static_data se>
 0:01:20   Error position: <select 2) set [count (wai_static_data se>
 0:01:20   Error Zero divisor
 0:01:20 File z\addons\dayz_server\WAI\compile\spawn_static.sqf, line 187
 0:01:21 Error in expression <_data select 0) + 1)];
(wai_static_data select 2) set [count (wai_static_data se>
 0:01:21   Error position: <select 2) set [count (wai_static_data se>
 0:01:21   Error Zero divisor
 0:01:21 File z\addons\dayz_server\WAI\compile\spawn_static.sqf, line 187
 0:01:21 Error in expression <_data select 0) + 1)];
(wai_static_data select 2) set [count (wai_static_data se>
 0:01:21   Error position: <select 2) set [count (wai_static_data se>
 0:01:21   Error Zero divisor
 0:01:21 File z\addons\dayz_server\WAI\compile\spawn_static.sqf, line 187
 0:01:21 Error in expression <_data select 0) + 1)];
(wai_static_data select 2) set [count (wai_static_data se>
 0:01:21   Error position: <select 2) set [count (wai_static_data se>
 0:01:21   Error Zero divisor
 0:01:21 File z\addons\dayz_server\WAI\compile\spawn_static.sqf, line 187

 0:01:21 Error in expression <_data select 0) + 1)];
(wai_static_data select 2) set [count (wai_static_data se>
 0:01:21   Error position: <select 2) set [count (wai_static_data se>
 0:01:21   Error Zero divisor
 0:01:21 File z\addons\dayz_server\WAI\compile\spawn_static.sqf, line 187
 
 0:01:21 Error in expression <_data select 0) + 1)];
(wai_static_data select 2) set [count (wai_static_data se>
 0:01:21   Error position: <select 2) set [count (wai_static_data se>
 0:01:21   Error Zero divisor
 0:01:21 File z\addons\dayz_server\WAI\compile\spawn_static.sqf, line 187
 0:01:21 Error in expression <_data select 0) + 1)];
(wai_static_data select 2) set [count (wai_static_data se>
 0:01:21   Error position: <select 2) set [count (wai_static_data se>
 0:01:21   Error Zero divisor
 0:01:21 File z\addons\dayz_server\WAI\compile\spawn_static.sqf, line 187
 0:01:21 Error in expression <_data select 0) + 1)];
(wai_static_data select 2) set [count (wai_static_data se>
 0:01:21   Error position: <select 2) set [count (wai_static_data se>
 0:01:21   Error Zero divisor
 0:01:21 File z\addons\dayz_server\WAI\compile\spawn_static.sqf, line 187
 0:01:21 Error in expression <_data select 0) + 1)];
(wai_static_data select 2) set [count (wai_static_data se>
 0:01:21   Error position: <select 2) set [count (wai_static_data se>
 0:01:21   Error Zero divisor

Any help would be great.

Thanks in advance.

Link to comment
Share on other sites

Are you on Discord? You can send me your mission there and I will look at it. Otherwise you can post it here in a spoiler tag. That error is referring to static data not mission data.

In order for the AI count to go up there needs to be a mission number: https://github.com/worldwidesorrow/WICKED-AI/blob/master/WAI/missions/missions/armed_vehicle.sqf#L3

If the mission variable is nil, then the AI are added to the static count: https://github.com/worldwidesorrow/WICKED-AI/blob/master/WAI/compile/spawn_group.sqf#L179-L184

I have not made a static position mission in this new version of WAI.

Link to comment
Share on other sites

1 hour ago, JasonTM said:

Are you on Discord? You can send me your mission there and I will look at it. Otherwise you can post it here in a spoiler tag. That error is referring to static data not mission data.

In order for the AI count to go up there needs to be a mission number: https://github.com/worldwidesorrow/WICKED-AI/blob/master/WAI/missions/missions/armed_vehicle.sqf#L3

If the mission variable is nil, then the AI are added to the static count: https://github.com/worldwidesorrow/WICKED-AI/blob/master/WAI/compile/spawn_group.sqf#L179-L184

I have not made a static position mission in this new version of WAI.

Here is the mission code.

Thanks a ton for any help. I'm ready to start hitting my head on my desk:biggrin:

Spoiler

// Updated single location mission example for DayZ Epoch 1.0.6+ by JasonTM. Please review missions in the hero and bandit folders for additional examples.

// Include local variables in this list
private ["_mission","_position","_crate","_crate_type"];

// Get mission number, important we do this early
_mission = count wai_mission_data -1;

// Declare your static spawn point. You can also use static positions for your buildings, vehicles, and crate.
// Normally with the z coordinate you will just use 0 because 0 means that it is on the ground.
// Round the coordinates you get from the editor to whole numbers to make it easier. Ex. 1783.42963 is just 1783.
_position = [3117,2489,0];

// If this is a hero mission use this line - delete if not
if !([_position] call wai_validSpotCheck) exitWith {h_missionsrunning = h_missionsrunning - 1; wai_mission_data set [_mission, -1]; WAI_MarkerReady = true;};


diag_log format["WAI: [Mission:[Hero] Bandit Island Base] started at %1",_position];

//Setup the crate
_crate_type = crates_large call BIS_fnc_selectrandom; // Choose between crates_large, crates_medium, and crates_small
_crate = createVehicle [_crate_type,[3117.04,2489.13,0],[],0,"CAN_COLLIDE"];
_crate call wai_crate_setup; // This function wipes the crate and sets variables. It must be called.
 


// Group Spawn Examples
// Parameters:    0: Position
//                1: Unit Count
//                2: Unit Skill ("easy","medium","hard","extreme" or "random")
//                3: Guns (gun or [gun,launcher])
//                    Guns options    : (0 = ai_wep_assault, 1 = ai_wep_machine, 2 = ai_wep_sniper, "random" = random weapon, "Unarmed" = no weapon)
//                    Launcher options: (at = ai_wep_launchers_AT, aa = ai_wep_launchers_AA or "classname")
//                4: Magazine Count
//                5: Backpack ("random" or "classname")
//                6: Skin ("Hero","bandit","random","special" or "classname")
//                7: Gear (0:ai_gear0, 1:ai_gear1, 2:ai_gear2, 3:ai_gear3, 4:ai_gear4 or "random")
//                8: AI Type ("bandit","Hero","special" or ["type", #] format to overwrite default gain amount) ***Used to determine humanity gain or loss***
//                9: Mission variable from line 9 (_mission)

[[3154.91,2519.69,0],4,"extreme",["Random","AA"],6,"Random","bandit","Random","Bandit"] call spawn_group;
[[3169.31,2475.34,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit"] call spawn_group;
[[3149.19,2431.61,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit"] call spawn_group;
[[3110.34,2415.1,0], 4,"extreme",["Random","AA"],6,"Random","bandit","Random","Bandit"] call spawn_group;
[[3062.78,2434.37,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit"] call spawn_group;
[[3059.3,2477.8,0],  4,"extreme","random",       6,"Random","bandit","Random","Bandit"] call spawn_group;
[[3059.74,2520.94,0],4,"extreme",["Random","AA"],6,"Random","bandit","Random","Bandit"] call spawn_group;
[[3101.43,2483.12,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit"] call spawn_group;  
[[3126.34,2482.05,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit"] call spawn_group;
[[3122.78,2465.32,0],4,"extreme",["Random","AA"],6,"Random","bandit","Random","Bandit"] call spawn_group;
[[3096.44,2463.25,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit"] call spawn_group;
[[3678.15,2270.11,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit"] call spawn_group;
[[3595.77,1932.57,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit"] call spawn_group;
[[2883.13,2258.12,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit"] call spawn_group;
[[2733.95,2762.48,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit"] call spawn_group;

 

// Humvee Patrol Example
// Parameters:    0: Patrol position
//                1: Starting position
//                2: Patrol radius
//                3: Number of Waypoints
//                4: Vehicle classname
//                5: Unit Skill ("easy","medium","hard","extreme" or "random")
//                6: Skin ("Hero","bandit","random","special" or "classname")
//                7: AI Type ("bandit","Hero" or "special") ***Used to determine humanity gain or loss***
//                8: Mission Variable


    [[3148.16,2432.92,0],[3148.16,2432.92,0],500,10,"ArmoredSUV_PMC","extreme","Bandit","bandit"] call vehicle_patrol;
    [[4001.21,2400.27,0],[4001.21,2400.27,0],800,10,"RHIB","extreme","bandit","Bandit"] call vehicle_patrol;
    [[2780.71,3124.98,0],[2780.71,3124.98,0],800,10,"RHIB","extreme","bandit","Bandit"] call vehicle_patrol;
    [[2620.23,2058.27,0],[2620.23,2058.27,0],800,10,"RHIB","extreme","bandit","Bandit"] call vehicle_patrol;
    [[3595.22,1545.53,0],[3595.22,1545.53,0],800,10,"RHIB","extreme","bandit","Bandit"] call vehicle_patrol;
    
    
 
// Static Turret Examples
// Parameters:    0: Spawn position
//                1: Classname ("classname" or "random" to pick from ai_static_weapons)
//                2: Unit Skill ("easy","medium","hard","extreme" or "random") ***NO effect if ai_static_skills = true;***
//                3: Skin ("Hero","bandit","random","special" or "classname")
//                4: AI Type ("bandit","Hero" or "special") ***Used to determine humanity gain or loss***
//                5: Gun (0:ai_wep_assault 1:ai_wep_machine 2:ai_wep_sniper or "random") ***NO effect if ai_static_useweapon = false;***
//                6: Magazine Count ***NO effect if ai_static_useweapon = false;***
//                7: Backpack ("random" or "classname") ***NO effect if ai_static_useweapon = false;***
//                8: Gear (0:ai_gear0, 1:ai_gear1, 2:ai_gear2, 3:ai_gear3, 4:ai_gear4 or "random") ***NO effect if ai_static_useweapon = false;***
//                9: Mission variable from line 9 (_mission)

[
    [
        [3307.29,2222.4,0],
        [3178.08,2396.73,0],
        [3082.09,2378.29,0],
        [3029.87,2431.6,0],
        [3019.31,2527.23,0],
        [3077.52,2565.74,0],
        [3156.73,2560.91,0],
        [3196.34,2514.62,0],
        [3608.76,2340.4,0],
        [3210,2451.15,0]
    ],"M2StaticMG","extreme","bandit","Bandit","Random",5,"random","random"] call spawn_static;
    
    
    [[3199.30,2699.33,0],1000,10,"UH1H_DZ","extreme","bandit","Bandit"]call heli_patrol;
    [[3199.94,1899.43,0],1000,10,"UH1Y_DZ","extreme","bandit","Bandit"]call heli_patrol;
    [[2901.09,2299.45,0],1000,10,"UH1H_DZ","extreme","bandit","Bandit"]call heli_patrol;
    [[3600.24,2299.91,0],1000,10,"UH1Y_DZ","extreme","bandit","Bandit"]call heli_patrol;

// Heli Paradrop Example
// Parameters:    0: Paradrop position
//                1: Spawn position
//                2: Trigger radius
//                3: Vehicle classname
//                4: Amount of paratroopers
//                5: Unit Skill ("easy","medium","hard","extreme" or "random") ***NO effect if ai_static_skills = true;***
//                6: Gun (0:ai_wep_assault 1:ai_wep_machine 2:ai_wep_sniper or "random")
//                7: Magazine Count
//                8: Backpack ("random" or "classname")
//                9: Skin ("Hero","bandit","random","special" or "classname")
//                10: Gear (0:ai_gear0, 1:ai_gear1, 2:ai_gear2, 3:ai_gear3, 4:ai_gear4 or "random")
//                11: AI Type ("bandit","Hero" or "special") ***Used to determine humanity gain or loss***
//                12: Heli stay and fight after troop deployment? (true or false)
//                13: Mission variable from line 9 (_mission)

 


    
    [[3103.6,2475.36,0],200,"UH1H_DZ","South",[1500,2000],150,1.0,200,10,"extreme",["Random","at"],5,"Random","Bandit","random","Bandit",true] spawn heli_para;
    [[3103.6,2475.36,0],200,"UH1H_DZ","South",[1500,2000],200,1.0,200,10,"extreme",["Random","aa"],5,"Random","Bandit","random","Bandit",true] spawn heli_para;
    


// Assassination target example
// This is the same as normal group spawns but we assign it to a variable instead for use in the trigger below (if there are multiple units in this group you'll need to kill them all)

//_unitGroup = [[2733.95,2762.48,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit"] call spawn_group;  //test same as line 55


// Array of mission variables to send
[
    _mission, // Mission Variable - This is a number.
    _position, // Position of mission
    "Extreme", // Difficulty "Easy", "Medium", "Hard", "Extreme",
    "Bandit Island Base", // Name of Mission
    "MainHero", // Mission Type: MainHero or MainBandit
    true, // show mission marker?
    true, // make minefields available for this mission?
    _crate,    // crate object info
    ["crate"], // Completion type: ["crate"], ["kill"], or ["assassinate", _unitGroup], : crate - you have to get within 20 meters of the crate and kill at least the number of ai defined by variable wai_kill_percent in config.sqf. kill = you have to kill all of the AI. assassinate - you have to kill a special ai (see Mayor's Mansion mission).
    [], // buildings to cleanup after mission is complete, does not include the crate. An array is expected. If you place the objects in an array above, then you don't need the brackets.
    "Bandits Have set Up an Island Base. What is your testicular fortitude?",    // mission announcement - this message displays when the mission starts
    "Bandit Island Base Neutralized",            // mission success - this message displays when the mission is completed by a player
    "Bandit Island Base timed out nobody was in the vicinity",    // mission fail - this message displays when a mission times out.
    [[30,ai_wep_sniper],0,[30,crate_items_gems],0,[1,crate_backpacks_large]] // Dynamic crate array. Example below.
] call mission_winorfail;

// Dynamic Crate Example
// Parameters:    0: _crate
//                1: Max number of long guns OR [MAX number of long guns,gun_array]
//                2: Max number of tools OR [MAX number of tools,tool_array]
//                3: Max number of items OR [MAX number of items,item_array]
//                4: Max number of pistols OR [MAX number of pistol,pistol_array]
//                5: Max number of backpacks OR [MAX number of backpacks,backpack_array]
//[16,[8,crate_tools_sniper],[3,crate_items_high_value],3,[4,crate_backpacks_large]] - example of calling custom arrays instead of default

 

 

Link to comment
Share on other sites

Yes, you were missing the mission variable on your spawns. Try this one:

Spoiler

 // Updated single location mission example for DayZ Epoch 1.0.6+ by JasonTM. Please review missions in the hero and bandit folders for additional examples.

// Include local variables in this list
private ["_mission","_position","_crate","_crate_type"];

// Get mission number, important we do this early
_mission = count wai_mission_data -1;

// Declare your static spawn point. You can also use static positions for your buildings, vehicles, and crate.
// Normally with the z coordinate you will just use 0 because 0 means that it is on the ground.
// Round the coordinates you get from the editor to whole numbers to make it easier. Ex. 1783.42963 is just 1783.
_position = [3117,2489,0];

// If this is a hero mission use this line - delete if not
if !([_position] call wai_validSpotCheck) exitWith {h_missionsrunning = h_missionsrunning - 1; wai_mission_data set [_mission, -1]; WAI_MarkerReady = true;};


diag_log format["WAI: [Mission:[Hero] Bandit Island Base] started at %1",_position];

//Setup the crate
_crate_type = crates_large call BIS_fnc_selectrandom; // Choose between crates_large, crates_medium, and crates_small
_crate = createVehicle [_crate_type,[3117.04,2489.13,0],[],0,"CAN_COLLIDE"];
_crate call wai_crate_setup; // This function wipes the crate and sets variables. It must be called.
 


// Group Spawn Examples
// Parameters:    0: Position
//                1: Unit Count
//                2: Unit Skill ("easy","medium","hard","extreme" or "random")
//                3: Guns (gun or [gun,launcher])
//                    Guns options    : (0 = ai_wep_assault, 1 = ai_wep_machine, 2 = ai_wep_sniper, "random" = random weapon, "Unarmed" = no weapon)
//                    Launcher options: (at = ai_wep_launchers_AT, aa = ai_wep_launchers_AA or "classname")
//                4: Magazine Count
//                5: Backpack ("random" or "classname")
//                6: Skin ("Hero","bandit","random","special" or "classname")
//                7: Gear (0:ai_gear0, 1:ai_gear1, 2:ai_gear2, 3:ai_gear3, 4:ai_gear4 or "random")
//                8: AI Type ("bandit","Hero","special" or ["type", #] format to overwrite default gain amount) ***Used to determine humanity gain or loss***
//                9: Mission variable from line 9 (_mission)

[[3154.91,2519.69,0],4,"extreme",["Random","AA"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3169.31,2475.34,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3149.19,2431.61,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3110.34,2415.1,0], 4,"extreme",["Random","AA"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3062.78,2434.37,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3059.3,2477.8,0],  4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3059.74,2520.94,0],4,"extreme",["Random","AA"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3101.43,2483.12,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;  
[[3126.34,2482.05,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3122.78,2465.32,0],4,"extreme",["Random","AA"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3096.44,2463.25,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3678.15,2270.11,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3595.77,1932.57,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[2883.13,2258.12,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[2733.95,2762.48,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;

 

// Humvee Patrol Example
// Parameters:    0: Patrol position
//                1: Starting position
//                2: Patrol radius
//                3: Number of Waypoints
//                4: Vehicle classname
//                5: Unit Skill ("easy","medium","hard","extreme" or "random")
//                6: Skin ("Hero","bandit","random","special" or "classname")
//                7: AI Type ("bandit","Hero" or "special") ***Used to determine humanity gain or loss***
//                8: Mission Variable


    [[3148.16,2432.92,0],[3148.16,2432.92,0],500,10,"ArmoredSUV_PMC","extreme","Bandit","bandit",_mission] call vehicle_patrol;
    [[4001.21,2400.27,0],[4001.21,2400.27,0],800,10,"RHIB","extreme","bandit","Bandit",_mission] call vehicle_patrol;
    [[2780.71,3124.98,0],[2780.71,3124.98,0],800,10,"RHIB","extreme","bandit","Bandit",_mission] call vehicle_patrol;
    [[2620.23,2058.27,0],[2620.23,2058.27,0],800,10,"RHIB","extreme","bandit","Bandit",_mission] call vehicle_patrol;
    [[3595.22,1545.53,0],[3595.22,1545.53,0],800,10,"RHIB","extreme","bandit","Bandit",_mission] call vehicle_patrol;
    
    
 
// Static Turret Examples
// Parameters:    0: Spawn position
//                1: Classname ("classname" or "random" to pick from ai_static_weapons)
//                2: Unit Skill ("easy","medium","hard","extreme" or "random") ***NO effect if ai_static_skills = true;***
//                3: Skin ("Hero","bandit","random","special" or "classname")
//                4: AI Type ("bandit","Hero" or "special") ***Used to determine humanity gain or loss***
//                5: Gun (0:ai_wep_assault 1:ai_wep_machine 2:ai_wep_sniper or "random") ***NO effect if ai_static_useweapon = false;***
//                6: Magazine Count ***NO effect if ai_static_useweapon = false;***
//                7: Backpack ("random" or "classname") ***NO effect if ai_static_useweapon = false;***
//                8: Gear (0:ai_gear0, 1:ai_gear1, 2:ai_gear2, 3:ai_gear3, 4:ai_gear4 or "random") ***NO effect if ai_static_useweapon = false;***
//                9: Mission variable from line 9 (_mission)

[
    [
        [3307.29,2222.4,0],
        [3178.08,2396.73,0],
        [3082.09,2378.29,0],
        [3029.87,2431.6,0],
        [3019.31,2527.23,0],
        [3077.52,2565.74,0],
        [3156.73,2560.91,0],
        [3196.34,2514.62,0],
        [3608.76,2340.4,0],
        [3210,2451.15,0]
    ],"M2StaticMG","extreme","bandit","Bandit","Random",5,"random","random",_mission] call spawn_static;
    
    
    [[3199.30,2699.33,0],1000,10,"UH1H_DZ","extreme","bandit","Bandit",_mission]call heli_patrol;
    [[3199.94,1899.43,0],1000,10,"UH1Y_DZ","extreme","bandit","Bandit",_mission]call heli_patrol;
    [[2901.09,2299.45,0],1000,10,"UH1H_DZ","extreme","bandit","Bandit",_mission]call heli_patrol;
    [[3600.24,2299.91,0],1000,10,"UH1Y_DZ","extreme","bandit","Bandit",_mission]call heli_patrol;

// Heli Paradrop Example
// Parameters:    0: Paradrop position
//                1: Spawn position
//                2: Trigger radius
//                3: Vehicle classname
//                4: Amount of paratroopers
//                5: Unit Skill ("easy","medium","hard","extreme" or "random") ***NO effect if ai_static_skills = true;***
//                6: Gun (0:ai_wep_assault 1:ai_wep_machine 2:ai_wep_sniper or "random")
//                7: Magazine Count
//                8: Backpack ("random" or "classname")
//                9: Skin ("Hero","bandit","random","special" or "classname")
//                10: Gear (0:ai_gear0, 1:ai_gear1, 2:ai_gear2, 3:ai_gear3, 4:ai_gear4 or "random")
//                11: AI Type ("bandit","Hero" or "special") ***Used to determine humanity gain or loss***
//                12: Heli stay and fight after troop deployment? (true or false)
//                13: Mission variable from line 9 (_mission)

 


    
    [[3103.6,2475.36,0],200,"UH1H_DZ","South",[1500,2000],150,1.0,200,10,"extreme",["Random","at"],5,"Random","Bandit","random","Bandit",true,_mission] spawn heli_para;
    [[3103.6,2475.36,0],200,"UH1H_DZ","South",[1500,2000],200,1.0,200,10,"extreme",["Random","aa"],5,"Random","Bandit","random","Bandit",true,_mission] spawn heli_para;
    


// Assassination target example
// This is the same as normal group spawns but we assign it to a variable instead for use in the trigger below (if there are multiple units in this group you'll need to kill them all)

//_unitGroup = [[2733.95,2762.48,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit"] call spawn_group;  //test same as line 55


// Array of mission variables to send
[
    _mission, // Mission Variable - This is a number.
    _position, // Position of mission
    "Extreme", // Difficulty "Easy", "Medium", "Hard", "Extreme",
    "Bandit Island Base", // Name of Mission
    "MainHero", // Mission Type: MainHero or MainBandit
    true, // show mission marker?
    true, // make minefields available for this mission?
    _crate,    // crate object info
    ["crate"], // Completion type: ["crate"], ["kill"], or ["assassinate", _unitGroup], : crate - you have to get within 20 meters of the crate and kill at least the number of ai defined by variable wai_kill_percent in config.sqf. kill = you have to kill all of the AI. assassinate - you have to kill a special ai (see Mayor's Mansion mission).
    [], // buildings to cleanup after mission is complete, does not include the crate. An array is expected. If you place the objects in an array above, then you don't need the brackets.
    "Bandits Have set Up an Island Base. What is your testicular fortitude?",    // mission announcement - this message displays when the mission starts
    "Bandit Island Base Neutralized",            // mission success - this message displays when the mission is completed by a player
    "Bandit Island Base timed out nobody was in the vicinity",    // mission fail - this message displays when a mission times out.
    [[30,ai_wep_sniper],0,[30,crate_items_gems],0,[1,crate_backpacks_large]] // Dynamic crate array. Example below.
] call mission_winorfail;

// Dynamic Crate Example
// Parameters:    0: _crate
//                1: Max number of long guns OR [MAX number of long guns,gun_array]
//                2: Max number of tools OR [MAX number of tools,tool_array]
//                3: Max number of items OR [MAX number of items,item_array]
//                4: Max number of pistols OR [MAX number of pistol,pistol_array]
//                5: Max number of backpacks OR [MAX number of backpacks,backpack_array]
//[16,[8,crate_tools_sniper],[3,crate_items_high_value],3,[4,crate_backpacks_large]] - example of calling custom arrays instead of default 

 

Link to comment
Share on other sites

6 minutes ago, JasonTM said:

Yes, you were missing the mission variable on your spawns. Try this one:

  Hide contents


 // Updated single location mission example for DayZ Epoch 1.0.6+ by JasonTM. Please review missions in the hero and bandit folders for additional examples.

// Include local variables in this list
private ["_mission","_position","_crate","_crate_type"];

// Get mission number, important we do this early
_mission = count wai_mission_data -1;

// Declare your static spawn point. You can also use static positions for your buildings, vehicles, and crate.
// Normally with the z coordinate you will just use 0 because 0 means that it is on the ground.
// Round the coordinates you get from the editor to whole numbers to make it easier. Ex. 1783.42963 is just 1783.
_position = [3117,2489,0];

// If this is a hero mission use this line - delete if not
if !([_position] call wai_validSpotCheck) exitWith {h_missionsrunning = h_missionsrunning - 1; wai_mission_data set [_mission, -1]; WAI_MarkerReady = true;};


diag_log format["WAI: [Mission:[Hero] Bandit Island Base] started at %1",_position];

//Setup the crate
_crate_type = crates_large call BIS_fnc_selectrandom; // Choose between crates_large, crates_medium, and crates_small
_crate = createVehicle [_crate_type,[3117.04,2489.13,0],[],0,"CAN_COLLIDE"];
_crate call wai_crate_setup; // This function wipes the crate and sets variables. It must be called.
 


// Group Spawn Examples
// Parameters:    0: Position
//                1: Unit Count
//                2: Unit Skill ("easy","medium","hard","extreme" or "random")
//                3: Guns (gun or [gun,launcher])
//                    Guns options    : (0 = ai_wep_assault, 1 = ai_wep_machine, 2 = ai_wep_sniper, "random" = random weapon, "Unarmed" = no weapon)
//                    Launcher options: (at = ai_wep_launchers_AT, aa = ai_wep_launchers_AA or "classname")
//                4: Magazine Count
//                5: Backpack ("random" or "classname")
//                6: Skin ("Hero","bandit","random","special" or "classname")
//                7: Gear (0:ai_gear0, 1:ai_gear1, 2:ai_gear2, 3:ai_gear3, 4:ai_gear4 or "random")
//                8: AI Type ("bandit","Hero","special" or ["type", #] format to overwrite default gain amount) ***Used to determine humanity gain or loss***
//                9: Mission variable from line 9 (_mission)

[[3154.91,2519.69,0],4,"extreme",["Random","AA"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3169.31,2475.34,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3149.19,2431.61,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3110.34,2415.1,0], 4,"extreme",["Random","AA"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3062.78,2434.37,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3059.3,2477.8,0],  4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3059.74,2520.94,0],4,"extreme",["Random","AA"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3101.43,2483.12,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;  
[[3126.34,2482.05,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3122.78,2465.32,0],4,"extreme",["Random","AA"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3096.44,2463.25,0],4,"extreme","random",       6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3678.15,2270.11,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[3595.77,1932.57,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[2883.13,2258.12,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;
[[2733.95,2762.48,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit",_mission] call spawn_group;

 

// Humvee Patrol Example
// Parameters:    0: Patrol position
//                1: Starting position
//                2: Patrol radius
//                3: Number of Waypoints
//                4: Vehicle classname
//                5: Unit Skill ("easy","medium","hard","extreme" or "random")
//                6: Skin ("Hero","bandit","random","special" or "classname")
//                7: AI Type ("bandit","Hero" or "special") ***Used to determine humanity gain or loss***
//                8: Mission Variable


    [[3148.16,2432.92,0],[3148.16,2432.92,0],500,10,"ArmoredSUV_PMC","extreme","Bandit","bandit",_mission] call vehicle_patrol;
    [[4001.21,2400.27,0],[4001.21,2400.27,0],800,10,"RHIB","extreme","bandit","Bandit",_mission] call vehicle_patrol;
    [[2780.71,3124.98,0],[2780.71,3124.98,0],800,10,"RHIB","extreme","bandit","Bandit",_mission] call vehicle_patrol;
    [[2620.23,2058.27,0],[2620.23,2058.27,0],800,10,"RHIB","extreme","bandit","Bandit",_mission] call vehicle_patrol;
    [[3595.22,1545.53,0],[3595.22,1545.53,0],800,10,"RHIB","extreme","bandit","Bandit",_mission] call vehicle_patrol;
    
    
 
// Static Turret Examples
// Parameters:    0: Spawn position
//                1: Classname ("classname" or "random" to pick from ai_static_weapons)
//                2: Unit Skill ("easy","medium","hard","extreme" or "random") ***NO effect if ai_static_skills = true;***
//                3: Skin ("Hero","bandit","random","special" or "classname")
//                4: AI Type ("bandit","Hero" or "special") ***Used to determine humanity gain or loss***
//                5: Gun (0:ai_wep_assault 1:ai_wep_machine 2:ai_wep_sniper or "random") ***NO effect if ai_static_useweapon = false;***
//                6: Magazine Count ***NO effect if ai_static_useweapon = false;***
//                7: Backpack ("random" or "classname") ***NO effect if ai_static_useweapon = false;***
//                8: Gear (0:ai_gear0, 1:ai_gear1, 2:ai_gear2, 3:ai_gear3, 4:ai_gear4 or "random") ***NO effect if ai_static_useweapon = false;***
//                9: Mission variable from line 9 (_mission)

[
    [
        [3307.29,2222.4,0],
        [3178.08,2396.73,0],
        [3082.09,2378.29,0],
        [3029.87,2431.6,0],
        [3019.31,2527.23,0],
        [3077.52,2565.74,0],
        [3156.73,2560.91,0],
        [3196.34,2514.62,0],
        [3608.76,2340.4,0],
        [3210,2451.15,0]
    ],"M2StaticMG","extreme","bandit","Bandit","Random",5,"random","random",_mission] call spawn_static;
    
    
    [[3199.30,2699.33,0],1000,10,"UH1H_DZ","extreme","bandit","Bandit",_mission]call heli_patrol;
    [[3199.94,1899.43,0],1000,10,"UH1Y_DZ","extreme","bandit","Bandit",_mission]call heli_patrol;
    [[2901.09,2299.45,0],1000,10,"UH1H_DZ","extreme","bandit","Bandit",_mission]call heli_patrol;
    [[3600.24,2299.91,0],1000,10,"UH1Y_DZ","extreme","bandit","Bandit",_mission]call heli_patrol;

// Heli Paradrop Example
// Parameters:    0: Paradrop position
//                1: Spawn position
//                2: Trigger radius
//                3: Vehicle classname
//                4: Amount of paratroopers
//                5: Unit Skill ("easy","medium","hard","extreme" or "random") ***NO effect if ai_static_skills = true;***
//                6: Gun (0:ai_wep_assault 1:ai_wep_machine 2:ai_wep_sniper or "random")
//                7: Magazine Count
//                8: Backpack ("random" or "classname")
//                9: Skin ("Hero","bandit","random","special" or "classname")
//                10: Gear (0:ai_gear0, 1:ai_gear1, 2:ai_gear2, 3:ai_gear3, 4:ai_gear4 or "random")
//                11: AI Type ("bandit","Hero" or "special") ***Used to determine humanity gain or loss***
//                12: Heli stay and fight after troop deployment? (true or false)
//                13: Mission variable from line 9 (_mission)

 


    
    [[3103.6,2475.36,0],200,"UH1H_DZ","South",[1500,2000],150,1.0,200,10,"extreme",["Random","at"],5,"Random","Bandit","random","Bandit",true,_mission] spawn heli_para;
    [[3103.6,2475.36,0],200,"UH1H_DZ","South",[1500,2000],200,1.0,200,10,"extreme",["Random","aa"],5,"Random","Bandit","random","Bandit",true,_mission] spawn heli_para;
    


// Assassination target example
// This is the same as normal group spawns but we assign it to a variable instead for use in the trigger below (if there are multiple units in this group you'll need to kill them all)

//_unitGroup = [[2733.95,2762.48,0],4,"extreme",["Random","At"],6,"Random","bandit","Random","Bandit"] call spawn_group;  //test same as line 55


// Array of mission variables to send
[
    _mission, // Mission Variable - This is a number.
    _position, // Position of mission
    "Extreme", // Difficulty "Easy", "Medium", "Hard", "Extreme",
    "Bandit Island Base", // Name of Mission
    "MainHero", // Mission Type: MainHero or MainBandit
    true, // show mission marker?
    true, // make minefields available for this mission?
    _crate,    // crate object info
    ["crate"], // Completion type: ["crate"], ["kill"], or ["assassinate", _unitGroup], : crate - you have to get within 20 meters of the crate and kill at least the number of ai defined by variable wai_kill_percent in config.sqf. kill = you have to kill all of the AI. assassinate - you have to kill a special ai (see Mayor's Mansion mission).
    [], // buildings to cleanup after mission is complete, does not include the crate. An array is expected. If you place the objects in an array above, then you don't need the brackets.
    "Bandits Have set Up an Island Base. What is your testicular fortitude?",    // mission announcement - this message displays when the mission starts
    "Bandit Island Base Neutralized",            // mission success - this message displays when the mission is completed by a player
    "Bandit Island Base timed out nobody was in the vicinity",    // mission fail - this message displays when a mission times out.
    [[30,ai_wep_sniper],0,[30,crate_items_gems],0,[1,crate_backpacks_large]] // Dynamic crate array. Example below.
] call mission_winorfail;

// Dynamic Crate Example
// Parameters:    0: _crate
//                1: Max number of long guns OR [MAX number of long guns,gun_array]
//                2: Max number of tools OR [MAX number of tools,tool_array]
//                3: Max number of items OR [MAX number of items,item_array]
//                4: Max number of pistols OR [MAX number of pistol,pistol_array]
//                5: Max number of backpacks OR [MAX number of backpacks,backpack_array]
//[16,[8,crate_tools_sniper],[3,crate_items_high_value],3,[4,crate_backpacks_large]] - example of calling custom arrays instead of default 

 

I'm such an idiot l looked all over this code a million ways. Thanks for your help. sorry to waste your time over something so dumb.

Link to comment
Share on other sites

There's not really much I can do to address these issues if I don't have more information, like if there are any errors in the server rpt.

There are generally 2 versions of WAI available, the "stable branch" and the "development branch". The stable branch is kept on f3cuk's github, currently version 2.2.5, here: https://github.com/f3cuk/WICKED-AI

The development branch is on my github, version 2.2.6, here: https://github.com/worldwidesorrow/WICKED-AI

As soon as all of the bugs are worked out of the dev branch, it moves to stable and I make a release announcement. What I see often is that people are mixing these files and that is causing it to break.

If it breaks, I recommend checking to see that the files are not mixed, and ultimately re-installing and testing with default configuration. If errors persist, report them here with as much documentation as possible.

If missions stop spawning after the initial limit is met, then there is an issue with mission data not clearing when a mission is completed. Specifically, the "missions running" variables are not being adjusted here:

https://github.com/worldwidesorrow/WICKED-AI/blob/master/WAI/compile/mission_winorfail.sqf#L191-L196

Link to comment
Share on other sites

Hi mate, yeah I have managed to get more working, it would seem that it now uses both limits which is bandit 2 hero 2 and spawns 4 missions but these missions aren't always 2 of each, sometimes it can be 3 bandit and 1 hero. If that makes sense. No server rpt or client rpt errors my man. ANd I didn't realise that was a test branch, I thought f3cuk was the old WAI and you are now helping mod it on worldwidesorrow. My bad! Hahaha thanks man

 

Link to comment
Share on other sites

16 hours ago, JakeQue said:

Hi mate, yeah I have managed to get more working, it would seem that it now uses both limits which is bandit 2 hero 2 and spawns 4 missions but these missions aren't always 2 of each, sometimes it can be 3 bandit and 1 hero. If that makes sense. No server rpt or client rpt errors my man. ANd I didn't realise that was a test branch, I thought f3cuk was the old WAI and you are now helping mod it on worldwidesorrow. My bad! Hahaha thanks man

 

Worth mentioning, even if you don't think it's got no errors in it, as a developer it's very handy to see your RPT's regardless. I get so many people telling me there's no errors then they send me them and I find them

Link to comment
Share on other sites

On 12/20/2018 at 11:49 AM, JakeQue said:

Hi mate, yeah I have managed to get more working, it would seem that it now uses both limits which is bandit 2 hero 2 and spawns 4 missions but these missions aren't always 2 of each, sometimes it can be 3 bandit and 1 hero. If that makes sense. No server rpt or client rpt errors my man. ANd I didn't realise that was a test branch, I thought f3cuk was the old WAI and you are now helping mod it on worldwidesorrow. My bad! Hahaha thanks man

 

i have 2 missions bandit and 2 hero in config, and i dont have any problem

Link to comment
Share on other sites

after setting wai_user_spawnpoints = true; I have the error, and missions do not start

16:46:13   Error Undefined variable in expression: _color
16:46:13 File z\addons\dayz_server\WAI\compile\find_position.sqf, line 95
16:46:13 Error in expression <ocal "DOT";
_marker setMarkerColorLocal _color;
_marker setMarkerSizeLocal [1.0,>
16:46:13   Error position: <_color;
_marker setMarkerSizeLocal [1.0,>

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×
×
  • Create New...