Jump to content

Re-Worked 4 types of Side Missions Events / Refresh Markers for DayZEPoch Taviana


Recommended Posts

I've made some changes to AidemAxeman, and waTTe's Event / Refresh marker scripts. I'm fairly new to this scene and wanted to give these guys credit for sharing their hard work. Also keep in mind that I'm not a programmer, so if you have any recommendations, suggestions, and or corrections... Please PLEASE post below.

 

You will need remote_messages on your server in order to get the mission popups http://dayzepoch.com...x-deathmsg-fix/

Download Links

bandit_treasure.sqf and refreshmarker_treasure.sqf

https://acenetwork.io/projects/dayz/bandit_treasure.sqf

https://acenetwork.io/projects/dayz/refreshmarker_treasure.sqf


construction_supplies.sqf and refreshmarker_construction.sqf

https://acenetwork.io/projects/dayz/construction_supplies.sqf

https://acenetwork.io/projects/dayz/refreshmarker_construction.sqf


medical_supplies.sqf and refreshmarker_medical.sqf
https://acenetwork.io/projects/dayz/medical_supplies.sqf

https://acenetwork.io/projects/dayz/refreshmarker_medical.sqf

special_forces.sqf and refreshmarker_special.sqf
https://acenetwork.io/projects/dayz/special_forces.sqf

https://acenetwork.io/projects/dayz/refreshmarker_special.sqf


Installation Instructions

Place all the SQF files above into your \z\addons\dayz_server\modules\ folder.


in order to get these mission started you need to modify the events in your init.sqf

Search for EpochEvents = [
Add these for each mission behind it

["any","any","any","any",10,"bandit_treasure"], ["any","any","any","any",25,"construction_supplies"], ["any","any","any","any",40,"medical_supplies"], ["any","any","any","any",55,"special_forces"],

Last thing you need to do is place the files you just made in your server sided pbo in the existing map `modules`

 

Description

Custom event scripts that will refresh markers so players joining after the event has started will still see them. Caches will also delete 10 minutes after the event has ended (captured). You can change this by modifying "Sleep 600;" at the bottom of the event scripts (not the refreshmarker scripts).

Link to comment
Share on other sites

Will these work on chernarus or just Taviana

Change the PositionArray in bandit_treasure.sqf, construction_supplies.sqf, medical_supplies.sqf, and special_forces.sqf to locations that are relevant to Cherno or any other map.

Taviana Position Array:

_positionarray = [[17380.426,5279.2412,0],[8467.2363,7764.6978,0],[15444.671,8667.6758,0],[8463.8125,5510.5239,0],[16104.994,15535.804,0],[7729.2627,7001.7979,0],[15078.381,15698.128,0],[5759.5493,9423.253,0],[13809.14,19294.951,0],[6098.1333,8610.5947,0],[10285.479,19396.813,0],[4265.5854,7978.0996,0],[8594.7168,19659.965,0],[2260.0608,6925.2681,0],[12143.011,14925.385,0],[12676.353,12593.693,0],[14468.995,10629.646,0],[8412.1973,3045.4038,0],[10173.31,5819.1787,0],[9473.5557,2013.2627,0],[9421.4414,5169.317,0],[9845.7949,3310.0532,0],[10864.61,620.55743,0]];
Link to comment
Share on other sites

you could do all the refreshmarker things in one script ... you wouldnt net seperate ones ...

I did it this way so I could have multiple events running at the same time, I'm more than happy to take critiques if you're offering though!

Link to comment
Share on other sites

Hello!

I need some help.

I get the marker on the map and the massage to players but not the crate with the loot "Construction Supplies".

 

 

This is my "Construction_supplies.sqf"

if (isNil "DZE_Event_Construction") then {DZE_Event_Construction = false;};

if (DZE_Event_Construction) exitWith {};//Only exit if this particular mission is already running - Allows other Epoch Events to run even if this event is still running.
DZE_Event_Construction = true;//This must be changed for other mission types to allow different missions to run alongside each other.
private ["_spawnChance", "_spawnMarker", "_spawnRadius", "_markerRadius", "_markercolor", "_markershape", "_refreshmarker", "_missiontype", "_debug", "_start_time", "_loot", "_loot_box", "_spawnRoll", "_position", "_loot_pos", "_debug_marker","_loot_box", "_event_name","_debug_event_name"];
private["_clutter","_loot_lists"];
_spawnChance =  100; // Percentage chance of event happening
_markerRadius = 350; // Radius the loot can spawn and used for the marker
_debug = false; // If true puts a marker exactly were the loot spawns and always spawns loot (no random chance)
 
if(!_debug)then{//Ignore chance when debugging (Always runs)
// Random chance of event happening
_spawnRoll = random 100;//Probably not necessary to use 100 - Is what I am used to :)
if (_spawnRoll < _spawnChance) exitWith {};
};
 
_loot_lists = [
[
["M9SD"],
["15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","ItemWoodStairs","ItemWoodStairs","ItemWoodStairs","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks","MortarBucket","CinderBlocks"]
],
[
["M9SD"],
["15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","ItemWoodStairs","ItemWoodStairs","ItemWoodStairs","ItemWoodStairs","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack","PartPlankPack","PartPlywoodPack"]
],
[
["M9SD"],
["15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor"]
],
[
["M9SD"],
["15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor","metal_floor_kit","ItemWoodFloor"]
],
[
["M9SD"],
["15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","outhouse_kit","outhouse_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit"]
],
[
["M9SD"],
["15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","outhouse_kit","outhouse_kit","ItemWoodStairs","ItemWoodStairs","ItemWoodStairs","ItemWoodStairs","workbench_kit","ItemComboLock","ItemComboLock","ItemWoodWallLg","ItemWoodWallGarageDoor","ItemWoodWallWindowLg","ItemWoodWallLg","ItemWoodWallLg","ItemWoodWallLg"]
],
[
["M9SD"],
["15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","ItemWoodStairs","ItemWoodStairs","ItemWoodStairs","ItemWoodStairs","workbench_kit","ItemComboLock","ItemComboLock","ItemWoodWallLg","ItemWoodWallGarageDoor","ItemWoodWallWindowLg","ItemWoodWallLg","ItemWoodWallLg","ItemWoodWallLg"]
],
[
["M9SD"],
["15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","PartGeneric","metal_floor_kit","PartGeneric","metal_floor_kit","PartGeneric","metal_floor_kit","PartGeneric","metal_floor_kit","PartGeneric","metal_floor_kit","PartGeneric","metal_floor_kit","PartGeneric","metal_floor_kit","PartGeneric","metal_floor_kit","PartGeneric","metal_floor_kit","PartGeneric","metal_floor_kit","PartGeneric","metal_floor_kit","Itemvault"]
],
[
["M9SD"],
["15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","ItemWoodWallGarageDoor","ItemWoodWallWindowLg","ItemWoodWallLg","ItemWoodWallLg","ItemWoodWallLg","ItemWoodWallGarageDoor","ItemWoodWallWindowLg","ItemWoodWallLg","ItemWoodWallLg","ItemWoodWallLg","ItemWoodWallGarageDoor","ItemWoodWallWindowLg","ItemWoodWallLg","ItemWoodWallLg","ItemWoodWallLg","ItemWoodWallGarageDoor","ItemWoodWallWindowLg"]
],
[
["M9SD"],
["15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","workbench_kit","Itemvault","cinder_wall_kit","ItemComboLock","ItemComboLock","cinder_garage_kit","cinder_garage_kit","cinder_door_kit","cinder_door_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit","cinder_wall_kit"]
],
[
["M9SD"],
["15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","workbench_kit","ItemWoodStairs","ItemWoodStairs","ItemWoodStairs","wood_shack_kit","wood_shack_kit","wood_shack_kit","deer_stand_kit","deer_stand_kit","ItemWoodLadder","ItemWoodLadder","desert_net_kit","desert_net_kit","ItemWoodLadder","ItemWoodLadder","desert_net_kit","forest_net_kit","forest_net_kit","forest_net_kit","desert_net_kit","desert_net_kit","ItemSandbagLarge","ItemSandbagLarge","Itemvault","Itemvault"]
]
];
_loot = _loot_lists call BIS_fnc_selectRandom;
 
// Dont mess with theses unless u know what yours doing
_start_time = time;
_spawnRadius = 5000;
_spawnMarker = 'center';//Good idea !
 
// Random location
_positionarray = [[17380.426,5279.2412,0],[8467.2363,7764.6978,0],[15444.671,8667.6758,0],[8463.8125,5510.5239,0],[16104.994,15535.804,0],[7729.2627,7001.7979,0],[15078.381,15698.128,0],[5759.5493,9423.253,0],[13809.14,19294.951,0],[6098.1333,8610.5947,0],[10285.479,19396.813,0],[4265.5854,7978.0996,0],[8594.7168,19659.965,0],[2260.0608,6925.2681,0],[12143.011,14925.385,0],[12676.353,12593.693,0],[14468.995,10629.646,0],[8412.1973,3045.4038,0],[10173.31,5819.1787,0],[9473.5557,2013.2627,0],[9421.4414,5169.317,0],[9845.7949,3310.0532,0],[10864.61,620.55743,0]];
_position = _positionarray call BIS_fnc_selectRandom;
 
//diag_log(format["Spawning loot event at %1", _position]);
 
 /*
 _markerName =  format ["loot_event_marker_%1", _start_time];//To delete this later you must use the name, not the object..
createMarker [_markerName, _position];
_markerName setMarkerShape "ELLIPSE";
_markerName setMarkerColor "ColorGreen";
_markerName setMarkerAlpha 0.5;
_markerName setMarkerSize [(_markerRadius + 50), (_markerRadius + 50)];
_markerName setMarkerText "Building Supplies";//Text too small to be seen. Useful as setMarkerText forces marker to be global if mission is ever run from a client (HC)
 */
 
_markerRadius = 100;
_markershape = "ELLIPSE";
_markercolor = "ColorGreen";
_missiontype = 0; //0=EPOCH_EVENT_RUNNING 1=SPECIAL_EVENT_RUNNING
_refreshmarker = [_position,_markerRadius,_markershape,_markercolor,_missiontype] execVM "\z\addons\dayz_server\modules\refreshmarker_construction.sqf";
 
_loot_pos = [_position,0,(_markerRadius - 100),10,0,2000,0] call BIS_fnc_findSafePos;
 
if (_debug) then {
_debug_event_name = format ["loot_event_debug_marker_%1", _start_time];
createMarker [_debug_event_name , _loot_pos];
_debug_event_name setMarkerShape "ICON";
_debug_event_name setMarkerType "mil_dot";
_debug_event_name setMarkerColor "ColorBlack";//Allows text / dot to be seen.
_debug_event_name setMarkerAlpha 1;
_debug_event_name setMarkerText "Building Supplies";
};
 
//diag_log(format["Creating ammo box at %1", _loot_pos]);
 
// Create ammo box
_loot_box = createVehicle ["USVehicleBox",_loot_pos,[], 0, "NONE"];
_loot_box setVariable ["permaLoot",true];//Required to remove from Epoch loot cleaning process.
clearMagazineCargoGlobal _loot_box;
clearWeaponCargoGlobal _loot_box;
 
// Cut the grass around the loot position
_clutter = createVehicle ["ClutterCutter_small_2_EP1", _loot_pos, [], 0, "CAN_COLLIDE"];
_clutter setPos _loot_pos;
// cut the grass    end
 
// Add loot
{
_loot_box addWeaponCargoGlobal [_x,1];
} forEach (_loot select 0);
{
_loot_box addMagazineCargoGlobal [_x,1];
} forEach (_loot select 1);
 
// Send center message to users 
 
[nil,nil,"per",rTITLETEXT,"A construction supply truck lost its Cargo. \nCheck your Map for the Location !","PLAIN DOWN"] call RE;
 
diag_log "LOOT:Construction Supply Event Setup, waiting for completion.";
 
private["_eventOn","_nrObjs"];//Additional - Message players when mission complete.
_eventOn = true;
_nrObjs = [];
while {_eventOn}do{
_nrObjs = nearestObjects [_loot_box, ["All"], 7];
if(count _nrObjs >0)then{
{
if(isPlayer _x)then{
[nil,nil,"per",rTITLETEXT,format["The construction supply truck cargo has been found by %1.",name _x],"PLAIN DOWN"] call RE;
_eventOn = false;
//diag_log format["LOOT:Event complete. Found by %1", name _x];
};
}forEach _nrObjs;
};
sleep 12;
};
 
// Clean up
DZE_Event_Construction = false;
deleteMarker _event_marker;
sleep 300;
deleteVehicle _loot_box;
deleteVehicle _clutter;
if (_debug) then {
deleteMarker _debug_event_name;
};

 

 

this is what i get in the log file

 

15:14:36 "RUNNING EVENT: construction_supplies on [2014,5,25,12,10]"

15:14:36 "LOOT:Construction Supply Event Setup, waiting for completion."
Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...
  • 3 weeks later...

What epoch version are you running ?

Reason i ask is that somthing has changed from 1.0.4.2 I believe as I am seeing the same errors in all my construction etc missions , and my crash spawner , we have fixed the crash spawner on someone actually posted a fixed on on here https://github.com/vbawol/DayZ-Epoch/tree/master/SQF/dayz_server/modules

If you look in your rpt file you will see the errors about loot for those missions , I'm going to see if I can sort mine out this weekend using the new information in my now working crash spawner file and if I sort it I will update on here :)

Link to comment
Share on other sites

  • 2 weeks later...
  • 3 weeks later...
  • 4 months later...
  • 2 weeks later...
  • 4 months later...

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
  • Discord

×
×
  • Create New...