Jump to content

[Release] Wicked AI 2.2.0


f3cuk

Recommended Posts

I already have the code changes in place to offer variable humanity gain based on the unit spawn call if you would like me to share it, I'm sure you already have started on this though since it's planned for next update ;)

 

I'm very interested to see any working solution. Not yet started on coding for 2.1.0 and only have a general idea of how to do it.

 

I have been running Bandit and Soldier missions with WAI for a while now. I am interested to know if you are going to make it possible to do this in one file or if you will need to have two like i do now. I would offer advise on how i did it but i am sure you guys are way better at this than I am. Everything i write seems like a jacked  up version of what should be.

 

See above. I'd like to see any code that has already achieved hero and bandit missions. I've not decided if hero and bandit missions are going in the same files or they need seperating. Although it looks like it can be done without limiting functionality.

 

How does the blacklist work? What are the 2 set of cords for?

 

[[cords 1],[cords 2]],

 

Is it like a radius or something lol. The simple bits always confuse me :(

 

Sorry, I realise there is no proper documentation yet. I wanna focus on 2.1.0 first and try and get some decent Howto and explenation together after that.

Blacklisting works with rectangle area's where the first coord is top-left and the second one is bottom right.

 

Nice work, way more organized..

 

Is it true, that the files in the static folder, is customspawns, linked to each map, and if there is no matcing, then it is the default.sqf custom spawn?

 

No there is NO check if a file for that map exists (but this is actually a valid suggestion which i'll look at in next release). Right now if you have set custom_per_world to true it will try and load a file for that world and probably generate an error if it's not present. If set to false it will fallback on the default.sqf file.

Link to comment
Share on other sites

 

Sorry, I realise there is no proper documentation yet. I wanna focus on 2.1.0 first and try and get some decent Howto and explenation together after that.

Blacklisting works with rectangle area's where the first coord is top-left and the second one is bottom right.

 

 

Ideal, thank you very much! Maybe way off in the future when you bored :D , you could do just 1 set of cords, and people can set the radius size. be easier for traders and custom bases. Or use custom markers like DZAI uses.

 

Anyway good job and thanks for working on this!

Link to comment
Share on other sites

Ideal, thank you very much! Maybe way off in the future when you bored :D , you could do just 1 set of cords, and people can set the radius size. be easier for traders and custom bases. Or use custom markers like DZAI uses.

 

Anyway good job and thanks for working on this!

 

Yeah the radius is something I might add later. At first i just wanted a decent option to blacklist area´s and i prefered this one over the radius because it give you more control over the selected area.

Link to comment
Share on other sites

How do you turn on tank traps for every mission?

you would need to add this into each mission file

Up the top you'll need this

private ["_tanktraps"];
_tanktraps = [];

and this

	// deploy roadkill defense (or not)
	if(wai_enable_tank_traps) then {
		_tanktraps = [_position] call tank_traps;
	};

and also the cleanup section down the bottom

	if (_playerPresent) then {

		[1] call mission_type;

		[_box,"The supplies have been secured by survivors!",[_tanktraps]] call mission_succes;	

	} else {

		[[_box,_baserunover,_tanktraps],"Survivors did not secure the supplies in time"] call mission_failure;

	};
Link to comment
Share on other sites

I forgot the initialization of the variable so don't forget that,   :rolleyes: yeah mines is the same

 

the format is position radius minimum, maximum, number of mines
 
if(wai_enable_minefield) then {
_mines = [_position,50,100,50] call minefield;
};
Edited by Jossy
Link to comment
Share on other sites

Thank u for the updated static spawn files :)

 

First thing: I need static Loot-Boxes, too - for my AI-Base. Is there any chance to do this with wai2.1 ?

 

 

edit

 

Second:

15:33:22 "WAI: Spawned a group of 5 bandits at [8112.57,13644.4,0.001]"
15:33:22 "WAI: Spawned in 1 M2StaticMG"
15:33:22 "WAI: Spawned in 1 M2StaticMG"
15:33:22 "WAI: Spawned in 1 M2StaticMG"
15:33:22 "WAI: Spawned in 1 M2StaticMG"
15:33:22 "WAI: Spawned in 1 M2StaticMG"
15:33:22 "WAI: Static mission for DayZ_Epoch_11 loaded"
15:33:22 "WAI: Paradrop waiting for player"
15:33:23 Error in expression <(_x select 0),(_x select 1)];
} forEach _aicskill;

{
_x addweapon "Makarov";
_x>
15:33:23   Error position: <_aicskill;

{
_x addweapon "Makarov";
_x>
15:33:23   Error Nicht definierte Variable in Ausdruck: _aicskill
15:33:23 File z\addons\dayz_server\WAI\compile\heli_patrol.sqf, line 63
15:33:23 Error in expression <nitor,_helicopter];
[_helicopter] spawn veh_monitor;

_unitGroup allowFleeing 0;>
15:33:23   Error position: <veh_monitor;

_unitGroup allowFleeing 0;>
15:33:23   Error Nicht definierte Variable in Ausdruck: veh_monitor
15:33:23 File z\addons\dayz_server\WAI\compile\heli_patrol.sqf, line 76
15:33:23 Error in expression <(_x select 0),(_x select 1)];
} forEach _aicskill;

{
_x addweapon "Makarov";
_x>
15:33:23   Error position: <_aicskill;

{
_x addweapon "Makarov";
_x>
15:33:23   Error Nicht definierte Variable in Ausdruck: _aicskill
15:33:23 File z\addons\dayz_server\WAI\compile\heli_patrol.sqf, line 63

These are my static spawn errors - any idea? Helicopter problem :o

 

 

edit2

 

i saw mission npcs at bandit base shooting each other - one group in the middle was shoot down by the others.

Link to comment
Share on other sites

Que?

 

 

Could you please eleborate on what you are trying to accomplish? Custom ammo boxes should work like they did in the previous version.

Hi . I want to ad custom crate_box.

Best way i show you guys how i have made it to work on WAI 0.17

 

I have create a Pck_Box.sqf:

//PCK Supply Box

_box = _this select 0;
_box setVariable ["ObjectID","1",true];
_box setVariable ["permaLoot",true];
PVDZE_serverObjectMonitor set [count PVDZE_serverObjectMonitor,_box];

clearWeaponCargoGlobal _box;
clearMagazineCargoGlobal _box;
// ITEMS
_box addWeaponCargoGlobal ["ItemToolbox", 2];
_box addWeaponCargoGlobal ["ItemMatchbox", 2];
_box addWeaponCargoGlobal ["ItemCompass", 2];
_box addWeaponCargoGlobal ["ItemHatchet", 1];
_box addWeaponCargoGlobal ["ItemKnife", 2];
_box addWeaponCargoGlobal ["ItemFlashlight", 1];
_box addWeaponCargoGlobal ["NVGoggles", 2];
_box addWeaponCargoGlobal ["binocular_vector", 1];
// CLOTHING
_box addMagazineCargoGlobal ["Skin_Soldier1_DZ", 1];
_box addMagazineCargoGlobal ["Skin_CZ_Soldier_Sniper_EP1_DZ", 1];
_box addMagazineCargoGlobal ["Skin_Survivor2_DZ", 1];
_box addMagazineCargoGlobal ["Skin_Sniper1_DZ", 1];
_box addMagazineCargoGlobal ["Skin_SurvivorW3_DZ", 1];
_box addMagazineCargoGlobal ["Skin_Haris_Press_EP1_DZ", 1];
_box addMagazineCargoGlobal ["Skin_SurvivorWcombat_DZ", 1];
_box addMagazineCargoGlobal ["Skin_Pilot_EP1_DZ", 1];
_box addMagazineCargoGlobal ["Skin_FR_OHara_DZ", 1];
// BACKPACKS
_box addBackpackCargoGlobal ["DZ_Backpack_EP1", 1];
//MEDICAL SUPPLIES
_box addMagazineCargoGlobal ["ItemBandage", 10];
_box addMagazineCargoGlobal ["ItemMorphine", 2];
_box addMagazineCargoGlobal ["ItemEpinephrine", 2];
_box addMagazineCargoGlobal ["ItemPainkiller", 2];
_box addMagazineCargoGlobal ["ItemWaterbottle", 2];
_box addMagazineCargoGlobal ["FoodCanBakedBeans", 2];
_box addMagazineCargoGlobal ["ItemAntibiotic", 2];
_box addMagazineCargoGlobal ["ItemBloodbag", 2];
_box addMagazineCargoGlobal ["ItemHeatPack", 3];
//MISC
_box addMagazineCargoGlobal ["HandRoadFlare", 2];
_box addMagazineCargoGlobal ["HandChemBlue", 1];
_box addMagazineCargoGlobal ["HandChemGreen", 1];
_box addMagazineCargoGlobal ["HandChemRed", 1];
_box addMagazineCargoGlobal ["PartWheel", 2];
_box addMagazineCargoGlobal ["PartGeneric", 2];
_box addMagazineCargoGlobal ["ItemJerrycan", 2];
_box addMagazineCargoGlobal ["ItemTent", 1];

put it inside dayz_server\WAI\missions\compile

 

Next i have add into StaticAmmoBoxes.sqf the spawn locations:

//PCK
_box5 = createVehicle ["RUBasicWeaponsBox",[2655.64,2296.98,0.2], [], 0, "CAN_COLLIDE"];
[_box5] call Pck_Box;
_box6 = createVehicle ["RUBasicWeaponsBox",[7551.63,3908.92,0.1], [], 0, "CAN_COLLIDE"];
[_box6] call Pck_Box;
_box7 = createVehicle ["RUBasicWeaponsBox",[10943.7,3382.27,0.4], [], 0, "CAN_COLLIDE"];
[_box7] call Pck_Box;
_box8 = createVehicle ["RUBasicWeaponsBox",[12988.4,5972.07,0.75], [], 0, "CAN_COLLIDE"];
[_box8] call Pck_Box;

Last one i have add  compile line into missionIni.sqf:

Pck_Box = compile preprocessFileLineNumbers "\z\addons\dayz_server\WAI\missions\compile\Pck_Box.sqf";

Now the qestion is how do i mess around with this and the new WICKED AI?

I am stack with this because there are no StaticAmmoBoxes.sqf file.

 

Should i put this:

//PCK
_box5 = createVehicle ["RUBasicWeaponsBox",[2655.64,2296.98,0.2], [], 0, "CAN_COLLIDE"];
[_box5] call Pck_Box;
_box6 = createVehicle ["RUBasicWeaponsBox",[7551.63,3908.92,0.1], [], 0, "CAN_COLLIDE"];
[_box6] call Pck_Box;
_box7 = createVehicle ["RUBasicWeaponsBox",[10943.7,3382.27,0.4], [], 0, "CAN_COLLIDE"];
[_box7] call Pck_Box;
_box8 = createVehicle ["RUBasicWeaponsBox",[12988.4,5972.07,0.75], [], 0, "CAN_COLLIDE"];
[_box8] call Pck_Box; 

inside WAI\static\default.sqf somewhere?

Link to comment
Share on other sites

Ah okay, that explains. There are multiple ways of achieving what you want. This is how i would probably do it.

1.) Create a folder called boxes inside /static

 

2.) Add the Pck_Box.sqf file there

3.) Add this to default.sqf

Pck_Box = compile preprocessFileLineNumbers "\z\addons\dayz_server\WAI\missions\compile\Pck_Box.sqf";
 
//PCK
_box5 = createVehicle ["RUBasicWeaponsBox",[2655.64,2296.98,0.2], [], 0, "CAN_COLLIDE"];
[_box5] call Pck_Box;
_box6 = createVehicle ["RUBasicWeaponsBox",[7551.63,3908.92,0.1], [], 0, "CAN_COLLIDE"];
[_box6] call Pck_Box;
_box7 = createVehicle ["RUBasicWeaponsBox",[10943.7,3382.27,0.4], [], 0, "CAN_COLLIDE"];
[_box7] call Pck_Box;
_box8 = createVehicle ["RUBasicWeaponsBox",[12988.4,5972.07,0.75], [], 0, "CAN_COLLIDE"];
[_box8] call Pck_Box;
4.) Make sure you have static_missions set to true inside your config.sqf

This way ensures you got all your custom files in one place (static).

----

@Thay-skill3d: I'll look into the issue with bandits killing themselves.

In heli_patrol.sqf find

private ["_wpnum","_radius","_gunner2","_gunner","_skillarray","_startingpos","_heli_class","_startPos","_helicopter","_unitGroup","_pilot","_skill","_position","_wp"];
Replace with

private ["_aicskill","_wpnum","_radius","_gunner2","_gunner","_skillarray","_startingpos","_heli_class","_startPos","_helicopter","_unitGroup","_pilot","_skill","_position","_wp"];
Link to comment
Share on other sites

The other thing you may want to consider adding in is if a radio is required for players to get the messages about the new mission.

 

Something like radiomessages = true; or something along those lines, because realistically (my server is focused on realism) how would they get the info.

Link to comment
Share on other sites

Now i got these:

21:47:40 Error in expression <nitor,_helicopter];
[_helicopter] spawn veh_monitor;

_unitGroup allowFleeing 0;>
21:47:40   Error position: <veh_monitor;

_unitGroup allowFleeing 0;>
21:47:40   Error Nicht definierte Variable in Ausdruck: veh_monitor
21:47:40 File z\addons\dayz_server\WAI\compile\heli_patrol.sqf, line 76
21:47:40 Error in expression <nitor,_helicopter];
[_helicopter] spawn veh_monitor;

_unitGroup allowFleeing 0;>
21:47:40   Error position: <veh_monitor;

_unitGroup allowFleeing 0;>
21:47:40   Error Nicht definierte Variable in Ausdruck: veh_monitor
21:47:40 File z\addons\dayz_server\WAI\compile\heli_patrol.sqf, line 76
Link to comment
Share on other sites

HEY OP love that you revamped (heh) this, have yet to try it out but is this just reworked mission systems? I only use WAI for custom spawns on my server so that is why im asking..... who knows though this might replace the current mission system until ZFM is 100%

Link to comment
Share on other sites

Ok my Pck_boxes works well. Unfortunately the build in boxes have an error if called from custom spawn.

22:28:54 "HIVE: got 236 Epoch Objects and 280 Vehicles"
22:29:01 "WAI: Spawned in 1 Igla_AA_pod_East"
22:29:03 "WAI: Spawned in 1 M2StaticMG"
22:29:04 "WAI: Spawned in 1 M2StaticMG"
22:29:04 "WAI: Static mission loaded"
22:29:04 "WAI: Paradrop waiting for player"
22:29:04 "WAI: Paradrop waiting for player"
22:29:04 "WAI: Paradrop waiting for player"
22:29:04 "WAI: Paradrop waiting for player"
22:29:05 "WAI: Paradrop waiting for player"
22:29:05 "WAI: Spawning in a dynamic box with <null> guns, <null> tools and <null> items"
22:29:05 Error in expression <ns	= _this select 1;
_num_tools	= _this select 2;
_num_items	= _this select 3;

>
22:29:05   Error position: <select 2;
_num_items	= _this select 3;

>
22:29:05   Error Zero divisor
22:29:05 File z\addons\dayz_server\WAI\compile\box_dynamic.sqf, line 8
22:29:21 AH6X_DZ: FLIR_turret - unknown animation source FLIR_turret
22:29:21 AH6X_DZ: FLIR_gun - unknown animation source FLIR_gun
22:29:23 Cannot create non-ai vehicle Camel_DZ,
22:29:28 car_American_Law_Enforcement: Invalid parent bone 'osa_door_r1' for 'door_r1'
22:29:28 car_American_Law_Enforcement: Invalid parent bone 'osa_door_r2' for 'door_r2'
22:29:28 car_American_Law_Enforcement: Invalid parent bone 'osa_door_l1' for 'door_l1'
22:29:28 car_American_Law_Enforcement: Invalid parent bone 'osa_door_l2' for 'door_l2'
22:29:28 car_American_Law_Enforcement: Invalid parent bone 'osa_kapota' for 'kapota'
22:29:28 car_American_Law_Enforcement: Invalid parent bone 'osa_kufr' for 'kufr'
22:29:29 UH1Y_DZ: ObsTurret - unknown animation source ObsTurret
22:29:29 UH1Y_DZ: ObsGun - unknown animation source ObsGun
22:29:32 "HIVE: Vehicle Spawn limit reached!"
22:29:32 "HIVE: Spawning # of Debris: 300"
22:29:32 "HIVE: Spawning # of Ammo Boxes: 3"
22:29:32 "HIVE: Spawning # of Veins: 50"
22:29:37 "Total Number of spawn locations 5"
22:29:37 "[DZAI] Initializing DZAI version 2.1.1 Release Build 08032014 using base path z\addons\dayz_server\DZAI."
22:29:37 "[DZAI] Reading DZAI configuration file."
22:29:37 "[DZAI] DZAI configuration file loaded."
22:29:37 "[DZAI] Compiling DZAI functions."
22:29:37 "[DZAI] DZAI functions compiled."
22:29:37 "[DZAI] Epoch classnames loaded."
22:29:37 "[DZAI] DZAI settings: Debug Level: 0. DebugMarkers: false. WorldName: chernarus. ModName: epoch (Ver: 1.0.5.1). DZAI_dynamicWeaponList: true. VerifyTables: true."
22:29:37 "[DZAI] AI spawn settings: Static: true. Dynamic: false. Air: true. Land: true."
22:29:37 "[DZAI] AI settings: DZAI_findKiller: true. DZAI_useHealthSystem: true. DZAI_weaponNoise: false. DZAI_zombieEnemy: true."
22:29:37 "[DZAI] DZAI loading completed in 0.0359955 seconds."
22:29:37 "EPOCH EVENTS INIT"
22:29:39 "DEBUG: Too many at [10637.3,12481.5]"
22:29:41 "TIME SYNC: Local Time set to [2013,8,3,18,29]"
22:29:41 "DEBUG VEIN: Too many objects at [6113.29,6950.39]"
22:29:53 "WAI: Spawning a UH1H_DZ with 5 units to be para dropped at [4420.63,10648,0]"
22:29:54 "WAI: Spawning a UH1H_DZ with 5 units to be para dropped at [4430.63,10648,0]"
22:29:54 "WAI: Spawning a UH1H_DZ with 5 units to be para dropped at [4440.63,10648,0]"
22:30:04 "RUNNING EVENT: crash_spawner on [2014,8,18,18,30]" 

Here is the trigger:

//Boxes
//Bandit Supply Base

_box1 = createVehicle ["BAF_VehicleBox",[4467.0278,10659.71,-3.0517578e-005], [], 0, "CAN_COLLIDE"];
[_box1] call spawn_ammo_box;
_box2 = createVehicle ["BAF_VehicleBox",[4403.1333,10581.208,-3.0517578e-005], [], 0, "CAN_COLLIDE"];
[_box2] call Chain_Bullet_Box;
_box3 = createVehicle ["BAF_VehicleBox",[4423.4888,10611.725,6.1035156e-005], [], 0, "CAN_COLLIDE"];
[_box3] call Extra_Large_Gun_Box; 

.Any idea whats could be wrong?

Link to comment
Share on other sites

Having issues with getting this message popping up when adding custom spawns for my A.I cities. This is also resulting in no a.i spawning at the cities at all. Missions work fine :) great work!

 4:23:50 "WAI: AI Config File Loaded"
 4:23:51 "WAI: Initialising missions"
 4:23:51 "WAI: Initialising static missions"
 4:23:51 Warning Message: Script z\addons\dayz_server\WAI\static\dayz_epoch_11.sqf not found
 4:23:51 "WAI: AI Monitor Started"

Any idea what the problem is?

Link to comment
Share on other sites

Having issues with getting this message popping up when adding custom spawns for my A.I cities. This is also resulting in no a.i spawning at the cities at all. Missions work fine :) great work!

 4:23:50 "WAI: AI Config File Loaded"
 4:23:51 "WAI: Initialising missions"
 4:23:51 "WAI: Initialising static missions"
 4:23:51 Warning Message: Script z\addons\dayz_server\WAI\static\dayz_epoch_11.sqf not found
 4:23:51 "WAI: AI Monitor Started"

Any idea what the problem is?

maybe it's not finding dayz_epoch_11.sqf  :rolleyes:

 

Either change custom_per_world to false in the config or double check that you actually have this file if you are meant to have it

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
  • Advertisement
×
×
  • Create New...