[Support] DZMS DayZ Mission System

I want you out tasks more often ??

3 minutes 4 missions
This doesn't make any sense. I don't think anyone understands what you're asking. But whatever you're doing, you're doing it wrong. If you're trying to increase the rate at which missions spawn, read the thread carefully and thoroughly.
 
Hi Vampire, can you tell me if it's possible to have another system like Defent's version of EMS run alongside DZMS?

I have tried but keep getting the following error message:
21:07:39 [EMS]: <ERROR> EMS is Installed Twice or Installed Incorrectly!

I know it's completely based on your code but, I thought that as there are two separate folders called independently it might work....?

I currently have yours and WAI's alongside giving me a very hard system and a medium hard system with related pay outs. What I am trying to do is to add EMS as well and set it very light and easy to help with my fresh spawns and single players new to Epoch.

If you like, you can see my thread with Defent below:
http://epochmod.com/forum/index.php?/topic/10989-ems-031-defents-edit/?p=104152

Any help would be much appreciated.

Thanks
 
Hi all!
I have a trouble..

in DZMSConfig.sqf:
Code:
// Do You Want AI to use NVGs?
//(They are deleted on death)
DZMSUseNVG = true;

in DZMSAISpawn.sqf:
Code:
//Lets give a launcher if enabled
//The last _unit should still be defined from the FOR above
if (DZMSUseRPG) then {
    _unit addWeapon "RPG7V";
    _unit addMagazine "PG7V";
    _unit addMagazine "PG7V";
};

in DZMSAIKilled.sqf:
Code:
if (DZMSUseRPG AND ("RPG7V" in (weapons _unit))) then {
    _unit removeWeapon "RPG7V";
    _unit removeMagazines "PG7V";
};


But often "RPG7V" and "PG7V" is not removed from AI after death and the players get it yourself..

Please help to solve the problem
 
Nice script Vampire, I'm having an issue, hopefully you can help. I have a lot of mods installed on my server, which all work, but when i installed this mod, the missions dont show up on the map, or even state that the missions are starting. I also tried a few other mission mods, but they do the same thing. in my RPT it shows they started. Im running 1.0.5.1, 1.62, 103718. Heres the link to my RPT. Thanks !

http://uppit.com/q5v9vueiv3lj/arma2oaserver.RPT
 
Nice script Vampire, I'm having an issue, hopefully you can help. I have a lot of mods installed on my server, which all work, but when i installed this mod, the missions dont show up on the map, or even state that the missions are starting. I also tried a few other mission mods, but they do the same thing. in my RPT it shows they started. Im running 1.0.5.1, 1.62, 103718. Heres the link to my RPT. Thanks !

http://uppit.com/q5v9vueiv3lj/arma2oaserver.RPT

Uppit seems to be broke atm, can you post it somewhere else?
 
Hello, Im fairly new to this DayZ server thing. Wanted to ask a couple of questions regarding these Supply/Weapon/Treasure missions. Is it possible to create NON AI for these 3 missions? If so what would the sqf look like? Another question if the first question isnt possible is how would i go about creating a custom mission say an Ikea mission with building supplies? Any help would be greatly appreciated! Thanks in advance.
KaNo5003.
 
this is the Ikea mission i put together for my epoch server using dzms, C130 should drop an Ikea pack, save it as SM7.sqf or what ever number you have in major missions folder and add sm7 to your DZMSConfig.sqf
DZMSMajorArray = ["SM1","SM2","SM3","SM4","SM5","SM6","SM7"];


save code below as SM7.sqf


/*
C130J Ikea Supply Drop by Tango/Vampire
Example Code by Halv

*/

private ["_missName","_coords","_pos","_plane","_aiGrp","_pilot","_wp","_wp_pos","_loop","_half","_newPos","_plane2","_chute","_box","_dropDir","_wp2","_fallCount","_boxFin"];

//Name of the Mission
_missName = "Ikea Drop";

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

[nil,nil,rTitleText,"A C130 is dropping an Ikea CAREPACK\nThere is no Ai at This!", "PLAIN",10] call RE;

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

//Lets get the C130J Flying
_plane = createVehicle ["C130J", [0,0,500], [], 0, "FLY"];
[_plane] call DZMSProtectObj;
_plane engineOn true;
_plane flyInHeight 150;
_plane forceSpeed 250;

//Empty the plane
clearMagazineCargoGlobal _plane;
clearWeaponCargoGlobal _plane;

//Lets make AI for the plane and get them in it
_aiGrp = creategroup east;

_pilot = _aiGrp createUnit ["SurvivorW2_DZ",getPos _plane,[],0,"FORM"];
_pilot moveindriver _plane;
_pilot assignAsDriver _plane;

_wp = _aiGrp addWaypoint [[(_coords select 0), (_coords select 1),150], 0];
_wp setWaypointType "MOVE";
_wp setWaypointBehaviour "CARELESS";
_wp_pos = waypointPosition [_aiGrp,1];

_pilot addWeapon 'NVGoggles';
_pilot addWeapon 'ItemCompass';
_pilot addWeapon 'ItemRadio';
_pilot addWeapon 'ItemMap';
_pilot addWeapon 'ItemGPS';
sleep 5;


_loop = true;
_half = false;
while {_loop} do {
if (!Alive _plane OR !Alive _pilot) then {
sleep 5;

// We are going to pretend the plane was shot down nearby
deleteVehicle _plane;
deleteVehicle _pilot;

_newPos = [(_coords select 0) + (random(2000)),(_coords select 1) - (random(2000)),0];

if (surfaceIsWater _newPos) then {
//newPos is water, so lets just drop it on mark
//This is a temporary fix for needed logic
_newPos = _coords;
};

//Create the plane and kill it
_plane2 = createVehicle ["C130J", [(_newPos select 0),(_newPos select 1),200], [], 0, "FLY"];
[_plane2] call DZMSProtectObj;
_plane2 engineOn true;
_plane2 flyInHeight 150;
_plane2 forceSpeed 195;
sleep 2;
_plane2 setDamage 1;

//Update the location
[_coords,"UH1Wreck_DZ"] ExecVM DZMSAddMinMarker;
[nil,nil,rTitleText,"The C130 was shot down by Bandits!\nGo Find the Supplies!", "PLAIN",10] call RE;

_chute = createVehicle ["ParachuteMediumEast", [(_newPos select 0),(_newPos select 1),200], [], 0, "FLY"];
[_chute] call DZMSProtectObj;
_box = createVehicle ["USVehicleBox", [(_newPos select 0),(_newPos select 1),200],[], 0, "CAN_COLLIDE"];
[_box] call DZMSProtectObj;
_box attachTo [_chute, [0, 0, 1]];

_loop = false;
};

if ((Alive _plane) AND (Alive _pilot) AND ((_plane distance _wp_pos) <= 1000) AND (!(_half))) then {
[nil,nil,rTitleText,"The C130 is only 1000m out from the drop point!", "PLAIN",10] call RE;

//Keep on truckin'
_plane forceSpeed 200;
_plane flyInHeight 135;
_plane setspeedmode "LIMITED";
_half = true;
};

if ((Alive _plane) AND (Alive _pilot) AND ((_plane distance _wp_pos) <= 200)) then {
//Drop the package

_dropDir = getDir _plane;
_newPos = [(getPosATL _plane select 0) - 15*sin(_dropDir), (getPosATL _plane select 1) - 15*cos(_dropDir), (getPosATL _plane select 2) - 10];

[nil,nil,rTitleText,"The C130 has reached the location and dropped the cargo!", "PLAIN",10] call RE;

_chute = createVehicle ["ParachuteMediumEast", _newPos, [], 0, "FLY"];
[_chute] call DZMSProtectObj;
_box = createVehicle ["USVehicleBox", _newPos,[], 0, "CAN_COLLIDE"];
[_box] call DZMSProtectObj;
_box attachTo [_chute, [0, 0, 1]];

deleteWaypoint [_aiGrp, 1];
_wp2 = _aiGrp addWaypoint [[0,0,150], 0];
_wp2 setWaypointType "MOVE";
_wp2 setWaypointBehaviour "CARELESS";
_plane forceSpeed 350;
_plane setSpeedmode "FULL";

_loop = false;
};
};

//The box was dropped, lets get it on the ground.
_fallCount = 0;
while {_fallCount < 45} do {
if (((getPos _box) select 2) < 1) then {_fallCount = 46};
sleep 0.1;
_fallCount = _fallCount + 0.1;
};

detach _box;
_box setpos [(getpos _box select 0), (getpos _box select 1), 0];
_boxFin = createVehicle ["USVehicleBox",[(getpos _box select 0),(getpos _box select 1), 0],[],0,"CAN_COLLIDE"];
deletevehicle _box;
deletevehicle _chute;
[[(getpos _boxFin select 0), (getpos _boxFin select 1), 0],"Ikea"] ExecVM DZMSAddMinMarker;
clearWeaponCargoGlobal _boxFin;
clearMagazineCargoGlobal _boxFin;
clearBackpackCargoGlobal _boxFin;
[_boxFin,"supply"] ExecVM DZMSBoxSetup;
[_boxFin] call DZMSProtectObj;

//Wait until the player is within 30 meters and also meets the kill req
[position _boxFin,"DZMSUnitsMinor"] call DZMSWaitMissionComp;

//Let everyone know the mission is over
[nil,nil,rTitleText,"The Ikea Carepack has been Secured by Survivors!", "PLAIN",6] call RE;
diag_log text format["[DZMS]: Minor SM14 C130J Ikea Carepack Drop Mission has Ended."];
deleteMarker "DZMSMinMarker";
deleteMarker "DZMSMinDot";

//Let the timer know the mission is over
DZMSMinDone = true;
 
i also changed the Epoch Supplies in DZMSWeaponCrateList.sqf at bottom

// Epoch Supplies. If you have Epoch, these are the supplies in the Construction Crates
DZMSConTools = ["ItemToolbox","ItemCrowbar","ItemKnife","ItemEtool","ItemHatchet_DZE","ItemMatchbox_DZE","ChainSaw"];

DZMSConSupply = ["metal_floor_kit","cinder_wall_kit","cinder_door_kit","cinder_garage_kit","ItemWoodFloor","ItemWoodFloorHalf","ItemWoodFloorSuarter","ItemWoodStairs","ItemWoodStairsSupport","ItemWoodLadder","ItemWoodWall","ItemWoodWall_Thrid","ItemWoodWallWindow","ItemWoodWallDoor","ItemWoodWallWithDoor","ItemWoodWallWithDoorLocked","ItemWoodWallGarageDoor","ItemWoodWallGarageDoorLocked","ItemWoodWallLg","ItemWoodWallWindowLg","ItemWoodWallWindowLg","ItemWoodWallDoorLg","ItemWoodWallWithDoorLg","ItemWoodWallWithDoorLgLocked","wood_ramp_kit","metal_panel_kit","deer_stand_kit","Wooden_shed_kit","CinderBlocks","MortarBucket","ItemTankTrap","ItemPole","PartGeneric","PartPlywoodPack","PartPlankPack","ItemTentOld","ItemTentDomed","ItemTentDomed2","ItemSandbag","ItemWire","workbench_kit","ItemGenerator"];
 
Thanks for all this useful information Tang0, Is their anyway I can get this to spawn pretty often maybe make 2 separate missions 1 being an Ikea drop the other being a C130 carrying Building supply's? Maybe duplicate your exact mission and just change the name to make it 2 separate missions so it spawns building supply's more often? Thanks again for the help!


KaNo5003.
 
Hey there, I have been playing around with different parts of the code to customise it for my server. One thing I have had problems with though, is the amount of weapons that spawn in the different boxes. What value do I need to change? I thought I deciphered it but apparently not haha
 
How can i add items to the ai loadout as i'd like to put money on them like maybe a breifcase in their inventory or maybe i can add a briefcase or two to the crates ?

Please reply asap

Many thanks

R4id3n84
 
How can i add items to the ai loadout as i'd like to put money on them like maybe a breifcase in their inventory or maybe i can add a briefcase or two to the crates ?
R4id3n84, this part I found easy so I will help you out, seeing as there isn't much help on this thread atm.
Go to the DZMS Folder, then to ExtConfig and open DZMSAIConfig.sqf

Scroll through the file and have a read. It contains the skill arrays for the AI, then the primary weapon arrays that determine what AI carry, given on their skill level. Below this is the part you probably want. The inventory.
Code:
DZMSGear0 = [
["ItemBandage","ItemBandage","ItemPainkiller"],
["ItemKnife","ItemFlashlight"]
];

DZMSGear1 = [
["ItemBandage","ItemBandage","ItemPainkiller"],
["ItemKnife","ItemFlashlight"]
];

The first line are magazine class items (food, drink, mags, medical, money, etc.).
The second line is tools (self explanatory) ...

To spawn a brief on every AI (which is way too much in my opinion), do something like this;

Code:
DZMSGear0 = [
["ItemBandage","ItemBandage","ItemPainkiller","ItemBriefcase100oz"],
["ItemKnife","ItemFlashlight"]
];

Hope this helped!
 
I believe that something like this, added to DZMSFunctions.sqf should resolve problem:

Code:
    while {(count (_pos nearEntities ["Man", 1000])) > 0} do {
       _pos = DZMSStatLocs call BIS_fnc_selectRandom;
     };

I'm using similar function to prevent missions being spawned too close to player camps.

edit:
I'm testing this on my server atm.

Code:
if (DZMSStaticPlc) then {

      while {(count (_pos nearEntities ["Man", 1000])) > 0} do {
       diag_log format ["[DZMS]: Player or AI too close! Computing new pos (%1)",_pos];
       sleep 0.5;
       _pos = DZMSStatLocs call BIS_fnc_selectRandom
      };

  diag_log format ["[DZMS]: Static pos %1 ready!",_pos]
};

edit:

Code:
8:08:53 "[DZMS]: Running Major Mission SM2."
8:08:54 "[DZMS]: Player or AI too close! Computing new pos"
8:08:54 "[DZMS]: Player or AI too close! Computing new pos"
8:08:55 "[DZMS]: static pos [7450.87,8917.9,0] ready!"

It works and resolves 2 problems:
- spawning 2 mission in same place
- spawning mission too close from player position

Hi mbnq,

I just come back from holydays.

Could U please explain where i must insert your code in the DZMSFunctions.sqf

Youre help will be very appreciate
 
Back
Top