[Support] DZMS DayZ Mission System

changed the missions boxes to "AmmoBoxBig" (thnx to ebay) so now i can get the boxes to be in mission BUT all the AI disappear almost instantly in 1.8.3 - sometimes there is maybe 2-4 Ai instead of 12 plus but they will all disappear :/ any ideas or anyone else having issues in dayz 1.8.3?
 
took infistar antihack out altogether and still no Ai so its not that, must be cleanup or something
 
no i didnt :/ and now on 1.8.3 its worse, i tried it without the antihack last night and its the same so its not that, tried the latest default DZMS and there was about 3 Ai for about 1 min then they disappeared, the only thing i have on the 1.8.3 is autorefuel and lift and tow, 1.8.3 is a fresh install as well - Does anyone have DZMS running on dayz 1.8.3 properly without the Ai problems?
 
If you have DZAI and DZMs on 1.8.2 and someone with 1.8.3 tries to join your server, it will kill all the ai and none more will spawn till server is rebooted.

I did soem research into how it is happening and it appears to me they moved some antihack in such a way the client is telling the server stuff before you are logged in enough for the server to kick you for wrong version.
 
no i didnt :/ and now on 1.8.3 its worse, i tried it without the antihack last night and its the same so its not that, tried the latest default DZMS and there was about 3 Ai for about 1 min then they disappeared, the only thing i have on the 1.8.3 is autorefuel and lift and tow, 1.8.3 is a fresh install as well - Does anyone have DZMS running on dayz 1.8.3 properly without the Ai problems?

nope, ai dissapearing as soon as i get close to the mission. they do spawn but dissapear.
it's defo not the AH, it whas working properly on 1.8.2 for me but now on 1.8.3 its completely fucked.

this most probably is the culprit of the problem, found it in skin.hpp
Code:
class Eventhandlers {
local = "_z = _this select 0;" \n
   "if ((!isServer and !isNull _z) and {(side _z != west and side _z != civilian)}) exitWith { " \n
   "PVDZ_sec_atp = [ 'wrong side', player ]; publicVariableServer 'PVDZ_sec_atp'; deleteVehicle _z; };";
   // note: the character switch to civilian side when the player quits the game and the locally goes to the server.
};

It for now can be bypassed by using different skins that are not derived from this skin base class "Survivor_DZ"

Tested with these skins and the problem is solved for now:
(on vanilla dayz 1.8.3)
Code:
DZMSBanditSkins = ["GUE_Soldier_CO","TK_INS_Soldier_EP1"];
 
Last edited:
OK, I somewhat figured it out. Our main server was still running an older version of DZMS that worked properly but it wasn't that different from the latest one. By process of elimination, I narrowed it down to the DZMSAIKilled.sqf file. When I run the new scripts except for that one - I run the older version, everything works as expected. They take me out with the RPG, the RPGs disappear on their deaths, I get credit for the kills, and my humanity goes up.

Here's the specific lines: The new script has:
if (!(backpack _unit == "")) then {removeBackpack _unit;};
at line 48 and the old one doesn't.

The old script has:
removeBackpack _unit;
at line 49 and the new one doesn't.

So for now, I'm running all the latest scripts except for DZMSAIKilled.sqf and the world of Epoch is good. I've reverted to an old version of that file.

Bob
 
Hey Soul, tested this morning and the Ai spawn perfectly thnx - only slight problem now is the dead Ai bodys disappear in a short space of time maybe 2mins or so - But so good to get the Ai working again as it makes the server
 
@Soul Thanks for the fix on getting the AI to spawn, been testing it today to see how it would do and it was spawning all of the AI. Only mission that didn't work was the AN2 mission but I think that is due to the pilot having its skin defined in the actual SM2 file. Got the boxes working as well on 1.8.3 thanks to someone as well. Only thing like Tang0 said is that the AI will despawn really fast.
 
i know, its cause if a unit dies they become civillian side and get cleaned up somewhere i think.
care to share the box fix? curently using foodbox1 as a replacer
 
i know, its cause if a unit dies they become civillian side and get cleaned up somewhere i think.
care to share the box fix? curently using foodbox1 as a replacer
Oh i just mean reaplacing the boxes with AmmoBoxBig, its kinda the size of the launcher boxes. Don't remember where I saw it but i wanna say ebay said it somewhere.

**Edit:
the post is at the top of the page about the boxes. The corpse cleanup i think is also in the dayz_server/system/sched/ might have the folder wrong since I'm not looking at it
 
Last edited:
seems the boxes are now banned , trying something else :/

I was under the impression that all weapons crates were banned in Dayz .. At least it was a pain to get some of them to spawn after 1.7.6, had to add them into the allowed objects, and I think there was only 1 or 2 types that weren't banned.
 
hey guys, was just wondering if anyone could possibly show me how to get DZMS to work with Lingor 1.5? im not an expert when it comes to scripting and all that. ive tried editing the DZMSfuctions.sqf several times but still no luck. can someone possibly paste an existing edited file or at least tell me which lines to edit and what i should change it to?
your help will be much appreciated!

im running overpoch by the way
 
I have been running DZMS for awhile now with the heil and vehicle patrol only. I tried to have the ground patrol by changing the settings on both static and dynamic ai to true, but for some reason there are no ai on foot on the map. I am running Epoch Chernarus on my server. Is there some other location I need to change in my files to have the foot patrol working?
 
@DeeDog .. still trouble on Lingor? I ran an epoch lingor server and I will check if I ran DZAI , but it was probably Sarge ...

@lonewolfgaming
in dzai_config.sqf you have this line set to true? oops, you said that ..
DZAI_staticAI = true;

What does your RPT log say? post that and we can take a look.
 
Hi, I have several seemingly random questions for things that I'm trying to figure out.

Is there a way to set a specific weapon type for the AI? I have a sniper mission with a small unit of snipers but haven't been able to figure out how to provide an array of sniper weapons for them to choose from. They select from the whole array of weapons. An array already exists for sniper rifles in DZMSWeaponCrateList.sqf. I just don't know how to use it within one mission. Likewise for uniforms. I have a few missions where I'd like the AI to only use a specific set of like uniforms.

I also notice that when a mission starts, the AI spawn and fan out but as soon as someone comes in-range, the I seem to pop back to the center coordinates. Anyone know how to stop that from happening?

And lastly, is there a way to have a mission star off with a heli (such as major mission SM4), add a pilot and crew, and then have it take off when a player gets within a specific range and become an attack heli? I've been able to add te pilot and crew but cannot even figure out how to make the heli spin up and take off - let alone wait until players are in the area.

Here's what I have so far for the heli mission. The pilot spawns into the heli, but that's as far as I've been able to get. The block commented out is something I found in a general heli script that I'm attempting to modify to set the attributes of the heli crew.

Code:
/*
    Bandit Supply Heli Crash by lazyink (Full credit for original code to TheSzerdi & TAW_Tonic)
    New Mission Format by Vampire
*/

private ["_missName","_coords","_chopper","_truck","_trash","_trash2","_crate","_crate2","_aiGrp","_pilot","_gunner1","_gunner2"];

//Name of the Mission
_missName = "Helicopter Landing";

//DZMSFindPos loops BIS_fnc_findSafePos until it gets a valid result
_coords = call DZMSFindPos;

//We create the vehicles like normal
_chopper = createVehicle ["UH1H_TK_EP1",_coords,[], 0, "NONE"];

//DZMSSetupVehicle prevents the vehicle from disappearing and sets fuel and such
[_chopper] call DZMSSetupVehicle;
_chopper setDir -36.279881;

//Lets make AI for the chopper and get them in it
_aiGrp = creategroup east;
_pilot = _aiGrp createUnit ["SurvivorW2_DZ",getPos _chopper,[],0,"FORM"];
_gunner1 = _aiGrp createUnit ["SurvivorW2_DZ",getPos _chopper,[],0,"FORM"];
_gunner2 = _aiGrp createUnit ["SurvivorW2_DZ",getPos _chopper,[],0,"FORM"];
_pilot moveindriver _chopper;
_pilot assignAsDriver _chopper;
_gunner1 assignAsGunner _chopper;
[_gunner1] orderGetIn true;
_gunner2 assignAsGunner _chopper;
[_gunner2] orderGetIn true;

/*
_rndCount = 3;

for "_x" from 1 to _rndCount do {
_bodyname = format ["TavianaGuard%1",_x];

if(_x == 1) then {
_soldermodel = _modelarray select 0;
_soldermodel createunit [[(_startpos select 0),(_startpos select 1),0], _AISgroup, "_spawnTaviGroupLeader = this; _TavianaSquad = group this;"];
_spawnTaviGroupLeader enableAI "TARGET";
_spawnTaviGroupLeader enableAI "AUTOTARGET";
_spawnTaviGroupLeader enableAI "MOVE";
_spawnTaviGroupLeader enableAI "ANIM";
_spawnTaviGroupLeader enableAI "FSM";
_spawnTaviGroupLeader allowdamage true;
_spawnTaviGroupLeader setCombatMode "YELLOW";
_spawnTaviGroupLeader setBehaviour "STEALTH";
_spawnTaviGroupLeader setFormation "ECH LEFT";
_spawnTaviGroupLeader setSkill ["aimingAccuracy",1];
_spawnTaviGroupLeader setSkill ["aimingShake",1];
_spawnTaviGroupLeader setSkill ["aimingSpeed",1];
_spawnTaviGroupLeader setSkill ["commanding",1];
_spawnTaviGroupLeader setSkill ["endurance",1];
_spawnTaviGroupLeader setSkill ["spotDistance",1];
_spawnTaviGroupLeader setSkill ["spotTime",1];
_spawnTaviGroupLeader setSkill ["courage",1];
_spawnTaviGroupLeader setSkill ["reloadSpeed",1];
_spawnTaviGroupLeader setSkill ["general",1];

_spawnTaviGroupLeader setdamage 0.01;

_spawnTaviGroupLeader moveInTurret [_chopper, [0]];

_soldier1 assignAsGunner _chopper
[_soldier1] orderGetIn true

}
*/

_truck = createVehicle ["HMMWV_DZ",[(_coords select 0) - 8.7802,(_coords select 1) + 6.874,0],[], 0, "CAN_COLLIDE"];
[_truck] call DZMSSetupVehicle;

//Lets add the scenery
_trash = createVehicle ["Body1",[(_coords select 0) - 3.0185,(_coords select 1) - 0.084,0],[], 0, "CAN_COLLIDE"];
_trash2 = createVehicle ["Body2",[(_coords select 0) + 1.9248,(_coords select 1) + 2.1201,0],[], 0, "CAN_COLLIDE"];
[_trash] call DZMSProtectObj;
[_trash2] call DZMSProtectObj;

//DZMSBoxFill fills the box, DZMSProtectObj prevents it from disappearing
_crate = createVehicle ["USLaunchersBox",[(_coords select 0) - 6.1718,(_coords select 1) + 0.6426,0],[], 0, "CAN_COLLIDE"];
[_crate,"weapons"] ExecVM DZMSBoxSetup;
[_crate] call DZMSProtectObj;

_crate2 = createVehicle ["USLaunchersBox",[(_coords select 0) - 7.1718,(_coords select 1) + 1.6426,0],[], 0, "CAN_COLLIDE"];
[_crate2,"supply"] ExecVM DZMSBoxSetup;
[_crate2] call DZMSProtectObj;

//DZMSAISpawn spawns AI to the mission.
//Usage: [_coords, count, skillLevel, unitArray]
[[(_coords select 0) - 8.4614,(_coords select 1) - 5.0527,0],6,1,"DZMSUnitsMajor"] call DZMSAISpawn;
sleep 5;
[[(_coords select 0) - 8.4614,(_coords select 1) - 5.0527,0],4,1,"DZMSUnitsMajor"] call DZMSAISpawn;
sleep 5;
[[(_coords select 0) + 7.5337,(_coords select 1) + 4.2656,0],4,1,"DZMSUnitsMajor"] call DZMSAISpawn;
sleep 5;
[[(_coords select 0) + 7.5337,(_coords select 1) + 4.2656,0],4,1,"DZMSUnitsMajor"] call DZMSAISpawn;
sleep 5;

//DZMSAddMajMarker is a simple script that adds a marker to the location
[_coords,_missname] ExecVM DZMSAddMajMarker;

[nil,nil,rTitleText,"A Supply Helicopter has been Forced to Land!\nStop the Bandits from Taking Control of it!", "PLAIN",10] call RE;
//Wait until the player is within 30 meters and also meets the kill req
[_coords,"DZMSUnitsMajor"] call DZMSWaitMissionComp;

//Call DZMSSaveVeh to attempt to save the vehicles to the database
//If saving is off, the script will exit.
[_chopper] ExecVM DZMSSaveVeh;
[_truck] ExecVM DZMSSaveVeh;

//Let everyone know the mission is over
[nil,nil,rTitleText,"The Helicopter has been Taken by Survivors!", "PLAIN",6] call RE;
diag_log text format["[DZMS]: Major SM4 Helicopter Landing Mission has Ended."];
deleteMarker "DZMSMajMarker";
deleteMarker "DZMSMajDot";

//Let the timer know the mission is over
DZMSMajDone = true;
 
Hi, I have several seemingly random questions for things that I'm trying to figure out.

Is there a way to set a specific weapon type for the AI? I have a sniper mission with a small unit of snipers but haven't been able to figure out how to provide an array of sniper weapons for them to choose from. They select from the whole array of weapons. An array already exists for sniper rifles in DZMSWeaponCrateList.sqf. I just don't know how to use it within one mission. Likewise for uniforms. I have a few missions where I'd like the AI to only use a specific set of like uniforms.

I also notice that when a mission starts, the AI spawn and fan out but as soon as someone comes in-range, the I seem to pop back to the center coordinates. Anyone know how to stop that from happening?

And lastly, is there a way to have a mission star off with a heli (such as major mission SM4), add a pilot and crew, and then have it take off when a player gets within a specific range and become an attack heli? I've been able to add te pilot and crew but cannot even figure out how to make the heli spin up and take off - let alone wait until players are in the area.

Here's what I have so far for the heli mission. The pilot spawns into the heli, but that's as far as I've been able to get. The block commented out is something I found in a general heli script that I'm attempting to modify to set the attributes of the heli crew.

Code:
/*
    Bandit Supply Heli Crash by lazyink (Full credit for original code to TheSzerdi & TAW_Tonic)
    New Mission Format by Vampire
*/

private ["_missName","_coords","_chopper","_truck","_trash","_trash2","_crate","_crate2","_aiGrp","_pilot","_gunner1","_gunner2"];

//Name of the Mission
_missName = "Helicopter Landing";

//DZMSFindPos loops BIS_fnc_findSafePos until it gets a valid result
_coords = call DZMSFindPos;

//We create the vehicles like normal
_chopper = createVehicle ["UH1H_TK_EP1",_coords,[], 0, "NONE"];

//DZMSSetupVehicle prevents the vehicle from disappearing and sets fuel and such
[_chopper] call DZMSSetupVehicle;
_chopper setDir -36.279881;

//Lets make AI for the chopper and get them in it
_aiGrp = creategroup east;
_pilot = _aiGrp createUnit ["SurvivorW2_DZ",getPos _chopper,[],0,"FORM"];
_gunner1 = _aiGrp createUnit ["SurvivorW2_DZ",getPos _chopper,[],0,"FORM"];
_gunner2 = _aiGrp createUnit ["SurvivorW2_DZ",getPos _chopper,[],0,"FORM"];
_pilot moveindriver _chopper;
_pilot assignAsDriver _chopper;
_gunner1 assignAsGunner _chopper;
[_gunner1] orderGetIn true;
_gunner2 assignAsGunner _chopper;
[_gunner2] orderGetIn true;

/*
_rndCount = 3;

for "_x" from 1 to _rndCount do {
_bodyname = format ["TavianaGuard%1",_x];

if(_x == 1) then {
_soldermodel = _modelarray select 0;
_soldermodel createunit [[(_startpos select 0),(_startpos select 1),0], _AISgroup, "_spawnTaviGroupLeader = this; _TavianaSquad = group this;"];
_spawnTaviGroupLeader enableAI "TARGET";
_spawnTaviGroupLeader enableAI "AUTOTARGET";
_spawnTaviGroupLeader enableAI "MOVE";
_spawnTaviGroupLeader enableAI "ANIM";
_spawnTaviGroupLeader enableAI "FSM";
_spawnTaviGroupLeader allowdamage true;
_spawnTaviGroupLeader setCombatMode "YELLOW";
_spawnTaviGroupLeader setBehaviour "STEALTH";
_spawnTaviGroupLeader setFormation "ECH LEFT";
_spawnTaviGroupLeader setSkill ["aimingAccuracy",1];
_spawnTaviGroupLeader setSkill ["aimingShake",1];
_spawnTaviGroupLeader setSkill ["aimingSpeed",1];
_spawnTaviGroupLeader setSkill ["commanding",1];
_spawnTaviGroupLeader setSkill ["endurance",1];
_spawnTaviGroupLeader setSkill ["spotDistance",1];
_spawnTaviGroupLeader setSkill ["spotTime",1];
_spawnTaviGroupLeader setSkill ["courage",1];
_spawnTaviGroupLeader setSkill ["reloadSpeed",1];
_spawnTaviGroupLeader setSkill ["general",1];

_spawnTaviGroupLeader setdamage 0.01;

_spawnTaviGroupLeader moveInTurret [_chopper, [0]];

_soldier1 assignAsGunner _chopper
[_soldier1] orderGetIn true

}
*/

_truck = createVehicle ["HMMWV_DZ",[(_coords select 0) - 8.7802,(_coords select 1) + 6.874,0],[], 0, "CAN_COLLIDE"];
[_truck] call DZMSSetupVehicle;

//Lets add the scenery
_trash = createVehicle ["Body1",[(_coords select 0) - 3.0185,(_coords select 1) - 0.084,0],[], 0, "CAN_COLLIDE"];
_trash2 = createVehicle ["Body2",[(_coords select 0) + 1.9248,(_coords select 1) + 2.1201,0],[], 0, "CAN_COLLIDE"];
[_trash] call DZMSProtectObj;
[_trash2] call DZMSProtectObj;

//DZMSBoxFill fills the box, DZMSProtectObj prevents it from disappearing
_crate = createVehicle ["USLaunchersBox",[(_coords select 0) - 6.1718,(_coords select 1) + 0.6426,0],[], 0, "CAN_COLLIDE"];
[_crate,"weapons"] ExecVM DZMSBoxSetup;
[_crate] call DZMSProtectObj;

_crate2 = createVehicle ["USLaunchersBox",[(_coords select 0) - 7.1718,(_coords select 1) + 1.6426,0],[], 0, "CAN_COLLIDE"];
[_crate2,"supply"] ExecVM DZMSBoxSetup;
[_crate2] call DZMSProtectObj;

//DZMSAISpawn spawns AI to the mission.
//Usage: [_coords, count, skillLevel, unitArray]
[[(_coords select 0) - 8.4614,(_coords select 1) - 5.0527,0],6,1,"DZMSUnitsMajor"] call DZMSAISpawn;
sleep 5;
[[(_coords select 0) - 8.4614,(_coords select 1) - 5.0527,0],4,1,"DZMSUnitsMajor"] call DZMSAISpawn;
sleep 5;
[[(_coords select 0) + 7.5337,(_coords select 1) + 4.2656,0],4,1,"DZMSUnitsMajor"] call DZMSAISpawn;
sleep 5;
[[(_coords select 0) + 7.5337,(_coords select 1) + 4.2656,0],4,1,"DZMSUnitsMajor"] call DZMSAISpawn;
sleep 5;

//DZMSAddMajMarker is a simple script that adds a marker to the location
[_coords,_missname] ExecVM DZMSAddMajMarker;

[nil,nil,rTitleText,"A Supply Helicopter has been Forced to Land!\nStop the Bandits from Taking Control of it!", "PLAIN",10] call RE;
//Wait until the player is within 30 meters and also meets the kill req
[_coords,"DZMSUnitsMajor"] call DZMSWaitMissionComp;

//Call DZMSSaveVeh to attempt to save the vehicles to the database
//If saving is off, the script will exit.
[_chopper] ExecVM DZMSSaveVeh;
[_truck] ExecVM DZMSSaveVeh;

//Let everyone know the mission is over
[nil,nil,rTitleText,"The Helicopter has been Taken by Survivors!", "PLAIN",6] call RE;
diag_log text format["[DZMS]: Major SM4 Helicopter Landing Mission has Ended."];
deleteMarker "DZMSMajMarker";
deleteMarker "DZMSMajDot";

//Let the timer know the mission is over
DZMSMajDone = true;
thats a lot of questions.
for the ai gear, after,they have been created just use addweapon
https://community.bistudio.com/wiki/addWeapon

for the skins, i am,not sure if you csn change that, the skin is actually part of the unit object. so just create the kind of unit you want in the mission to begin with ... createunit takes the unit type ie skin

if the pilot is in the heli, and you give him a waypoint, he will take off and fly there. so set a trigger that sets the pilots GROUPS next waypoint to the players position and set combatmode to red

have to poo now, will explain more if needed later
 
Back
Top