Jump to content

Torndeco Mission System - DZAI AI


Torndeco

Recommended Posts

Have removed it :)

 

but I get this error

22:43:40 "DEBUG: Mission Code: Waiting...."
22:43:40 ["DEBUG MISSIONS: playableUnits: %1",[B 1-1-C:1 (JohnTheCamero) REMOTE]]
22:43:40 "DEBUG: Mission Code Spawn Loot: _this: [[3320.95,4068.53],"USVehicleBox","Random"]"
22:43:40 "DEBUG: Mission Code Spawn Loot: _this: [[3341.4,4014.16],"USLaunchersBox","Random"]"
22:43:40 "DEBUG: Mission Code Spawn Loot: _this: [[3329.75,4013.28],"USVehicleBox","Random"]"
22:43:40 "DEBUG: Mission Code Spawn Loot: _this: [[3314.37,4038.53],"USLaunchersBox","Random"]"
22:43:40 "DEBUG: Mission Code Spawn Loot: _this: [[3348.16,4013.33],"USLaunchersBox","Random"]"
22:43:40 "DEBUG: Mission SPAWN AI: _this: [[3337.87,4041.48],2,6,["ambush","patrol"]]"
22:43:41 "DEBUG: Mission Code: Debug Monitor: []"
22:43:41 "DEBUG: Mission Code: AI INFO: [["SAR_mission_0",O 1-1-A],["SAR_mission_1",O 1-1-B]]"
22:43:41 Error in expression <s select _index;
_itemType = _itemTypes select _index;
[_itemType select 0, _ite>
22:43:41   Error position: <select _index;
[_itemType select 0, _ite>
22:43:41   Error Zero divisor
22:43:41 File z\addons\dayz_server\missions\misc\fillBoxes.sqf, line 120
22:43:41 "DEBUG ADD LOOT: _iItem: any _iClass: any _crate: 33332b00# 1062623: usvehicleammo.p3d"
22:43:41 Error in expression <s select _index;
_itemType = _itemTypes select _index;
[_itemType select 0, _ite>
22:43:41   Error position: <select _index;
[_itemType select 0, _ite>
22:43:41   Error Zero divisor
22:43:41 File z\addons\dayz_server\missions\misc\fillBoxes.sqf, line 120
22:43:41 Error in expression <s select _index;
_itemType = _itemTypes select _index;
[_itemType select 0, _ite>
22:43:41   Error position: <select _index;
[_itemType select 0, _ite>
22:43:41   Error Zero divisor
22:43:41 File z\addons\dayz_server\missions\misc\fillBoxes.sqf, line 120
22:43:41 Error in expression <s select _index;
_itemType = _itemTypes select _index;
[_itemType select 0, _ite>
22:43:41   Error position: <select _index;
[_itemType select 0, _ite>
22:43:41   Error Zero divisor
22:43:41 File z\addons\dayz_server\missions\misc\fillBoxes.sqf, line 120
22:43:41 "DEBUG ADD LOOT: _iItem: any _iClass: any _crate: 33332400# 1062624: uslaunchers.p3d"
22:43:41 "DEBUG ADD LOOT: _iItem: any _iClass: any _crate: 3339ab00# 1062625: usvehicleammo.p3d"
22:43:41 "DEBUG ADD LOOT: _iItem: any _iClass: any _crate: 3339a400# 1062626: uslaunchers.p3d"
22:43:41 "DEBUG ADD LOOT: _iItem: any _iClass: any _crate: 33399d00# 1062627: uslaunchers.p3d"
22:43:42 Error in expression <s select _index;
_itemType = _itemTypes select _index;
[_itemType select 0, _ite>
22:43:42   Error position: <select _index;
[_itemType select 0, _ite>
22:43:42   Error Zero divisor
22:43:42 File z\addons\dayz_server\missions\misc\fillBoxes.sqf, line 120
22:43:42 "DEBUG ADD LOOT: _iItem: any _iClass: any _crate: 33332b00# 1062623: usvehicleammo.p3d"
22:43:42 Error in expression <s select _index;
_itemType = _itemTypes select _index;
[_itemType select 0, _ite>
22:43:42   Error position: <select _index;
[_itemType select 0, _ite>
22:43:42   Error Zero divisor
22:43:42 File z\addons\dayz_server\missions\misc\fillBoxes.sqf, line 120
22:43:42 Error in expression <s select _index;
_itemType = _itemTypes select _index;
[_itemType select 0, _ite>
22:43:42   Error position: <select _index;
[_itemType select 0, _ite>
22:43:42   Error Zero divisor
22:43:42 File z\addons\dayz_server\missions\misc\fillBoxes.sqf, line 120

Link to comment
Share on other sites

Great contribution thank you. I do seem to have a couple of problems:

 

  • Currently only spawns two missions and once complete does not spawn additional missions
  • When last AI is killed loot despawns with markers

Minor things that I think can be edited/modified by myself or server owner:

 

  • 1-4 large crates looks wrong, perhaps changing crate types from large vehicle ammo to smaller would work better
  • Loot tables a little too random, risk vs reward. Perhaps modifying loot table to wards medical, industrial etc
  • Custom mission specific loot using pre-defined table? I.e most missions spawn in using the random loot tables from Epoch, while one mission can spawn in user specified loot table?
  • 1 out of 2 missions the AI spawn in too far from crates, a simple fix might be changing the Sarge spotting range
Link to comment
Share on other sites

If u use custom mission loot tables in your mission file i.e https://github.com/Torndeco/Epoch-Custom-Loot

U can define the custom loot tables to use @ https://github.com/Torndeco/Epoch-Missions/blob/master/dayz_server/missions/misc/fillBoxes.sqf#L101

 

 

As for boxes its just a matter of finding some better looking boxs i can use + thier respective classnames.

 

U should get more missions after they despawn...

The code checks to spawn missions every 10-25 mins, with a 60% chance of spawning a mission if there is a slot available.

Just noticed it was set to 40% fixed it on github now https://github.com/Torndeco/Epoch-Missions/commit/562b61e15132041d8f827205f13aa65dcecd480b

 

Timer = https://github.com/Torndeco/Epoch-Missions/blob/master/dayz_server/missions/mission_deamon.sqf#L26

Mission Chance = https://github.com/Torndeco/Epoch-Missions/blob/master/dayz_server/missions/mission_deamon.sqf#L33

 

U can change the number of max concurrent missions @ https://github.com/Torndeco/Epoch-Missions/blob/master/dayz_server/missions/config.sqf

 

Note:

Loot will despawn if all players nearby are in a vehicle its on my todo list to fix.

Link to comment
Share on other sites

Thanks for the update, I am not sure I waited the full 10 minutes to be honest so I will put it back on and try again. Is there anyway to stop the loot disappearing after the AI are killed? The second mission I completed I was using vehicles but the first but no vehicles were present, basically I killed the ground troops and then destroyed the heli and the minute it went down the boxes despawned. 

Link to comment
Share on other sites

U really gonna have to find away to get a reliable players count yourself...

U could try use  (count playableUnits) instead of the hardcoded -1

 

I have noidea if that will work with epoch standard anti-hack.

 

I am using blur anti hack pro myself + it prevents clients getting a list of playableunits via http://community.bistudio.com/wiki/playableUnits

So i ended up using custom code to keep track of player count serverside + using a publicEH to send the player count to the clients...

Link to comment
Share on other sites

New updates on Github are

 

Uploaded Sarge Files

Contains fixes / workarounds for

 

Saving AI Vehicles to Hive

Invisible AI

AI Bloodbag

 

 

Missions can have 30% Chance of spawning AI Land Vehicle to patrol mission area, vehicle is saved to database.

New code to destroy AI Vehicle(s) spawned by mission if no player approaches Vehicle within a hour.

Link to comment
Share on other sites

Thx man owe u one...

I just assumed that error was due to some config clash with me using taviana.com version lol :)

 

Fix now on github... also afew tweaks + added nvgoggles to ai loadout.

 

During the week i tidy up my code & add blacklist ai dynamic patrols near plotpoles to the sarge code

Link to comment
Share on other sites

Thanks for the update!

 

Including Sarge with fixes is a good thing, but with your sarge version I have this error in RPT :
 

3:16:02 "HIVE: WRITE: "CHILD:308:11:any:0:0:[72,[0,0,0]]:[]:[]:1:00072:""
 3:16:02 Error in expression <0) + 10, _rndpos select 1, 80];
_heli = createVehicle [_vehicle, _position, [], >
 3:16:02   Error position: <createVehicle [_vehicle, _position, [], >
 3:16:02   Error Type Quelconque, Chaîne attendu
 3:16:02 File mpmissions\DayZ_Epoch_11.Chernarus\addons\SARGE\SAR_setup_AI_patrol_heli.sqf, line 119
 

For those who are interested I provide a little more complete sample debug monitor (with count playableUnits and some localizations)

Custom_debug_monitor.zip

Link to comment
Share on other sites

Do u have heli types defined for SARGE AI to use ?

 

Check your addons\SARGE\SAR_config.sqf

SAR_heli_type=["UH1H_DZE","Mi17_DZE","UH1Y_DZE","CH_47F_EP1_DZE"];

 

 

edit:

Once u got it sorted u should look @ your database and check your object_data table

Check if any classname entires are blank / empty  or have the word any  & remove the entry

Link to comment
Share on other sites

Very odd...

It appears from the error its not selecting at random the vehicle type for heli patrol

 

U couldn't do me a favor and send me your server + mission pbo & when i get a chance i debug whats gone wrong

 

edit:- Its just easier for me to debug a known pbo that has the error...

Since i don't have the same problem, only difference i have code wise to github is extra code for plotpoles i will add later to github.

Link to comment
Share on other sites

The mission locations are dynamic created near a road or building on the map, it also checks no players are nearby

 

The loot spawned in the crates is randomly generated using ingame or if u are using custom loot tables.

There is also a chance to spawn a vehicle in the middle of loot, if the vehicle has reached its max limit (configurable)

 

As for the missions they are generally the same atm

 

U get boxs + random loot and either of the 3 types of AI spawns

AI + AI + AI

AI + AI + Heli

AI + AI + Ground Vehicle with Guns

Sarge AI also can use land mines, kills urals ;)

 

AI vehicles are destroyed if no player approaches them within a hour (un-tested)

There is also a debug monitor notication of mission spawned + u can configure how many missions can run at once.

 

------

Short version there is just 1 type of mission atm with random loot + different ai spawns

Link to comment
Share on other sites

I got some complains from our players, there are random vehicles falling from the sky lol (had like 50 motorbikes in 10m circle and some helis too), should be from the AI or mission script but I am not 100% sure :D

anyone else having issues like that? :o

 

Also I have a little question: why do the missions always do spawn in close succession like 30 sec or 1 minute max I get 2 missions??

Link to comment
Share on other sites

I have it working on my 1.0.2.4 test server using SAR_heli_type=["UH1H_DZ","Mi17_DZ","UH1Y_DZ","CH_47F_EP1_DZ"];

with no error and heli spawned.

 

I don't understand why this works with the DZ finishing names whereas in my database and dynamic_vehicle.sqf I find only the names finishing with DZE

Link to comment
Share on other sites

@AxeCop

The code atm kills off ai units at end of missions, so it kills off the chopper pilot & leaves the heli behind :)

It falls to its death...

 

https://github.com/Torndeco/Epoch-Missions/blob/master/dayz_server/missions/mission_functions.sqf#L444-L458

 

 

If i get time tomorrow i look over the code for killing AI at end of missions.

Have afew changes i wanna do, haven't had time yet to code + test them out.

 

---------------

 

U can define the number of concurrent missions @

https://github.com/Torndeco/Epoch-Missions/blob/master/dayz_server/missions/config.sqf#L3

 

 

There is a single while loop that checks how many missions are running + if there is any free slots  to start a mission.

There is a 60% chance of a mission spawning

https://github.com/Torndeco/Epoch-Missions/blob/master/dayz_server/missions/mission_deamon.sqf#L32

 

After checking + spawning missions there is a random length sleep timer 

https://github.com/Torndeco/Epoch-Missions/blob/master/dayz_server/missions/mission_deamon.sqf#L26

Before the code checks again if there is any missions to spawn.

 

 

@Th4z

Try with 1.0.2.5, rather not try + figure out issue thats only with an older epoch version & sarge ai...

I only been using SARGE AI + DZE classnames since 1.0.2.5

 

 

 

Edit:-

Known issue with loop for spawning missions i.e can spawn more missions than the max atm..

Seems to occur randomly + not a showstopper issue

Added debug statements in attempt to debug it..

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



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