Jump to content

[RELEASE] Event Marker after reconnecting


Guest

Recommended Posts

What this script basically does:

 

It deletes the old and creates a new marker every 15 seconds until the event is finished. That way players who were not on the server when the event started, or reconnected, will have the marker on their map too!

 

What you have to do:

 

Create a file called refreshmarker.sqf and place it in you dayz_server.pbo/modules/ folder (same folder like your events)

refreshmarker.sqf looks like this:

// Create Marker - Refresh Marker Script by *hs-s.com | waTTe - www.banditparty.de

_coords = _this select 0;
_radius = _this select 1;
_shape = _this select 2;
_color = _this select 3;
_type = _this select 4;

if(_type == 0) then { // 0 Normal Event
while{EPOCH_EVENT_RUNNING} do {
_event_marker = createMarker [ format ["loot_event_marker_%1", time], _coords];
_event_marker setMarkerShape _shape;
_event_marker setMarkerColor _color;
_event_marker setMarkerAlpha 0.5;
_event_marker setMarkerSize [(_radius + 50), (_radius + 50)];
sleep 15;
deleteMarker _event_marker;
};
};

if(_type == 1) then { // 1 Special Event
while{SPECIAL_EVENT_RUNNING} do {
_event_marker = createMarker [ format ["loot_event_marker_%1", time], _coords];
_event_marker setMarkerShape _shape;
_event_marker setMarkerColor _color;
_event_marker setMarkerAlpha 0.5;
_event_marker setMarkerSize [(_radius + 50), (_radius + 50)];
sleep 15;
deleteMarker _event_marker;
};
};

Edit your Events like this:

 

1.) Remove the actual Create Marker Section and Replace it with:

// Configurate Marker - Refresh Marker Script by *hs-s.com | waTTe - www.banditparty.de
 _markerRadius = 100;
 _markershape = "RECTANGLE";
 _markercolor = "ColorBlack";
 _missiontype = 0; //0=EPOCH_EVENT_RUNNING 1=SPECIAL_EVENT_RUNNING
 _refreshmarker = [_location,_markerRadius,_markershape,_markercolor,_missiontype] execVM "\z\addons\dayz_server\modules\refreshmarker.sqf";

As you see you can change Marker settings like, color, shape and size. The missionType thing is only here to show how you use this script if you are running several events at the same time. If you just have one type of event use _missiontype = 0;

 

2.) The Refresh Marker Script checks if EPOCH_EVENT_RUNNING = true; so make sure that you set this variable when your Event starts.

 

3.) Edit your end of the Epoch Event:

// End RefreshMarker Script by *hs-s.com | waTTe - www.banditparty.de
EPOCH_EVENT_RUNNING = false;
sleep 30; //Wait to let the RefreshMarkerScript finish its loop
deleteMarker _event_marker;

I thinks thats usefull to some of you guys! Enjoy!

 

best regards

waTTe

Link to comment
Share on other sites

i do not really know what you have done, u just copied the refreshmarkers.sqf in the file but there is no mission where you access it.

My script was thought as an addition to this : http://dayzepoch.com/forum/index.php?/topic/1027-spawn-ammo-box-with-loot-sample/

 

As you see in this Event Example there is this event script:

ammoboxevent.sqf:

private ["_spawnChance", "_spawnMarker", "_spawnRadius", "_markerRadius", "_item", "_debug", "_start_time", "_loot", "_loot_lists", "_loot_amount", "_loot_box", "_wait_time", "_spawnRoll", "_position", "_event_marker", "_loot_pos", "_debug_marker","_loot_box", "_hint"];

_spawnChance =  0.25; // Percentage chance of event happening
_markerRadius = 500; // Radius the loot can spawn and used for the marker
_debug = true; // Puts a marker exactly were the loot spawns

_loot_box = "BAF_BasicAmmunitionBox";

_loot = [
	["M4A1","M4A3_CCO_EP1"], 
	["PartFueltank", "PartGlass"]
];

/*
// Random loot lists
_loot_lists = [
	[
		["M16A2","M16A2GL"], 
		["ItemTent", "ItemJerrycan"]
	],
	[
		["M4A1","M4A3_CCO_EP1"], 
		["PartFueltank", "PartGlass"]
	],
	[
		["M4A1_Aim","AKS_74_kobra","AKS_74_U","AK_47_M","M24","M1014","DMR","M4A1","M4A3_CCO_EP1"], 
		["PartVRotor","PartWoodPile","ItemPainkiller", "ItemMorphine", "ItemBandage", "ItemBloodbag"]
	]
];
_loot = _loot_lists call BIS_fnc_selectRandom;
*/

_loot_amount = 20;
_wait_time = 600;

// Dont mess with theses unless u know what yours doing
_start_time = time;
_spawnRadius = 5000;
_spawnMarker = 'center';

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

// Check for another event running
if (EPOCH_EVENT_RUNNING) exitWith {
	diag_log("Event already running");
};
EPOCH_EVENT_RUNNING = true;

// Random chance of event happening
_spawnRoll = random 1;
if (_spawnRoll > _spawnChance and !_debug) exitWith {};

// Random location
_position = [getMarkerPos _spawnMarker,0,_spawnRadius,10,0,2000,0] call BIS_fnc_findSafePos;

diag_log(format["Spawning loot event at %1", _position]);

_event_marker = createMarker [ format ["loot_event_marker_%1", _start_time], _position];
_event_marker setMarkerShape "ELLIPSE";
_event_marker setMarkerColor "ColorBlue";
_event_marker setMarkerAlpha 0.5;
_event_marker setMarkerSize [(_markerRadius + 50), (_markerRadius + 50)];

_loot_pos = [_position,0,(_markerRadius - 100),10,0,2000,0] call BIS_fnc_findSafePos;

if (_debug) then {
	_debug_marker = createMarker [ format ["loot_event_debug_marker_%1", _start_time], _loot_pos];
	_debug_marker setMarkerShape "ICON";
	_debug_marker setMarkerType "mil_dot";
	_debug_marker setMarkerColor "ColorBlue";
	_debug_marker setMarkerAlpha 1;
};

diag_log(format["Creating ammo box at %1", _loot_pos]);

// Create ammo box
_loot_box = createVehicle [_loot_box,_loot_pos,[], 0, "NONE"];
clearMagazineCargoGlobal _loot_box;
clearWeaponCargoGlobal _loot_box;

// Add loot
for "_x" from 1 to _loot_amount do {
	private ["_type", "_items"];
	_type = round(random 1);
	_items = _loot select _type;
	_item = _items call BIS_fnc_selectRandom;
	if (_type == 0) then {
		_loot_box addWeaponCargoGlobal [_item,1];
	} else {
		_loot_box addMagazineCargoGlobal [_item,1];
	};
};
/*
Add 1 of everything in the list
{
	_loot_box addWeaponCargoGlobal [_x,1];
} forEach (_loot select 0);
{
	_loot_box addMagazineCargoGlobal [_x,1];
} forEach (_loot select 1);
*/

// Send message to users (http://dayzepoch.com/forum/index.php?/topic/1026-server-side-hintglobalchat-fix-deathmsg-fix/)
_hint = parseText format["<t align='center' color='#52bf90' shadow='2' size='1.75'>Loot Spawn</t><br/><t align='center' color='#ffffff'>Loot has spawned, look on the map!.</t>"];
customRemoteMessage = ['hint', _hint];
publicVariable "customRemoteMessage";

diag_log(format["Loot event setup, waiting for %1 seconds", _wait_time]);

// Wait
sleep _wait_time;

// Clean up
EPOCH_EVENT_RUNNING = false;
deleteVehicle _loot_box;
deleteMarker _event_marker;
if (_debug) then {
	deleteMarker _debug_marker;
};

if you remove this section:

_event_marker = createMarker [ format ["loot_event_marker_%1", _start_time], _position];
_event_marker setMarkerShape "ELLIPSE";
_event_marker setMarkerColor "ColorBlue";
_event_marker setMarkerAlpha 0.5;
_event_marker setMarkerSize [(_markerRadius + 50), (_markerRadius + 50)];

and replace it with this section:

// Configurate Marker - Refresh Marker Script by *hs-s.com | waTTe - www.banditparty.de
 _markerRadius = 100;
 _markershape = "RECTANGLE";
 _markercolor = "ColorBlack";
 _missiontype = 0; //0=EPOCH_EVENT_RUNNING 1=SPECIAL_EVENT_RUNNING
 _refreshmarker = [_location,_markerRadius,_markershape,_markercolor,_missiontype] execVM "\z\addons\dayz_server\modules\refreshmarker.sqf";

the Marker for this Event will be visibile for everyone regardless of when he connected.

 

This was never ment to be used with the mission system allthough i am sure it would work too...

 

If you want to use it with the Mission System you would have to modify the addmarkers.sqf/addmarkers75.sqf and your remmarkes.sqf/remmarkers75.sqf which is located in your mission file.

 

for example like this:

addmarkers.sqf:

// Start Refresh Marker Script by *hs-s.com | waTTe - www.banditparty.de
EPOCH_EVENT_RUNNING = true;
sleep 1;
while(EPOCH_EVENT_RUNNING) do {
_MainMarker = createMarker ["MainMarker", Ccoords];
_MainMarker setMarkerColor "ColorRed";	//Set the color of the marker
_MainMarker setMarkerShape "ELLIPSE";	//Set the shape of the marker
_MainMarker setMarkerBrush "Solid";	//Set the style of the marker
_MainMarker setMarkerAlpha 0.75;	//Set the transparency of the marker
_MainMarker setMarkerSize [250,250];	//Set the size of the marker
sleep 15;
deleteMarker "MainMarker";
};

and your remmarkers.sqf like this:

// End RefreshMarker Script by *hs-s.com | waTTe - www.banditparty.de
EPOCH_EVENT_RUNNING = false;

but i cannot guarantee that this will work, i dont have the mission system running on my server and i have not tried it out this way, you would have to try...

 

PS: Dont forget to edit your addmarkers75.sqf and remmarkers75.sqf too!

Link to comment
Share on other sites

if you remove this section:

_event_marker = createMarker [ format ["loot_event_marker_%1", _start_time], _position];
_event_marker setMarkerShape "ELLIPSE";
_event_marker setMarkerColor "ColorBlue";
_event_marker setMarkerAlpha 0.5;
_event_marker setMarkerSize [(_markerRadius + 50), (_markerRadius + 50)];

and replace it with this section:

// Configurate Marker - Refresh Marker Script by *hs-s.com | waTTe - www.banditparty.de
 _markerRadius = 100;
 _markershape = "RECTANGLE";
 _markercolor = "ColorBlack";
 _missiontype = 0; //0=EPOCH_EVENT_RUNNING 1=SPECIAL_EVENT_RUNNING
 _refreshmarker = [_location,_markerRadius,_markershape,_markercolor,_missiontype] execVM "\z\addons\dayz_server\modules\refreshmarker.sqf";

In what file i must change it?

Link to comment
Share on other sites

just read the thread above yours again. this script is made for the loot event ammobox which you can find here: http://dayzepoch.com/forum/index.php?/topic/1027-spawn-ammo-box-with-loot-sample/

 

you would have to create a ammoboxevent.sqf, edit it to use my script and copy it into your modules folder of dayz_Server.pbo. After that you can load theses ammobox events using the event spawner included in dayz epoch (EpochEvents= .... in your missionfile/init.sqf)

Link to comment
Share on other sites

just read the thread above yours again. this script is made for the loot event ammobox which you can find here: http://dayzepoch.com/forum/index.php?/topic/1027-spawn-ammo-box-with-loot-sample/

 

you would have to create a ammoboxevent.sqf, edit it to use my script and copy it into your modules folder of dayz_Server.pbo. After that you can load theses ammobox events using the event spawner included in dayz epoch (EpochEvents= .... in your missionfile/init.sqf)

I'm got it, for me ur 1st link was broken and it redirect me to this post :D

Link to comment
Share on other sites

Hi Watte

 

Very nice idea, but I can´t get it working on my server. When I have these part with your edits in my event-script:

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

// Check for another event running
if (EPOCH_EVENT_RUNNING) exitWith {
	diag_log("Event already running");
};
EPOCH_EVENT_RUNNING = true;

The log shows me: "Event already running"

 

When I comment out the last Line:

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

// Check for another event running
if (EPOCH_EVENT_RUNNING) exitWith {
	diag_log("Event already running");
};
//EPOCH_EVENT_RUNNING = true;

Then the Event will run, but I don´t have a marker with your version.

 

Here is my Event script which is currently modified to have it running and have a visible marker for all logged in players. I don´t use macas deathmsg fix cause I have the messages working with the code I use. Your modified part is commented out atm. I have the refreshmarker.sqf in the same directory as all the other events. The Box spawns in with four AI Soldiers. All these is working fine, except that the marker disappears in my version when a player reconnects or join in during the event is running.

private ["_spawnChance", "_spawnMarker", "_spawnRadius", "_markerRadius", "_item", "_debug", "_start_time", "_loot", "_loot_lists", "_loot_amount", "_loot_box", "_wait_time", "_spawnRoll", "_position", "_event_marker", "_loot_pos", "_debug_marker","_loot_box", "_hint"];

_spawnChance =  0.25; // Percentage chance of event happening
_markerRadius = 500; // Radius the loot can spawn and used for the marker
_debug = false; // Puts a marker exactly were the loot spawns

_loot_box = "BAF_BasicAmmunitionBox";

//Random Loot List
_loot_lists = [
[
["ItemToolbox","ItemToolbox","ItemToolbox","ItemCrowbar","ItemCrowbar","ItemCrowbar"], 
["MortarBucket","MortarBucket","MortarBucket","MortarBucket","MortarBucket","MortarBucket","MortarBucket","MortarBucket","ItemPole","ItemPole","ItemPole","ItemPole","ItemPole","ItemPole"]
],
[
["ItemToolbox","ItemToolbox","ItemToolbox","ItemCrowbar","ItemCrowbar","ItemCrowbar"], 
["CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","CinderBlocks","ItemPole","ItemPole","ItemPole","ItemPole","ItemPole","ItemPole"]
],
[
["ItemToolbox","ItemToolbox","ItemToolbox","ItemCrowbar","ItemCrowbar","ItemCrowbar","ItemSledge"], 
["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","metal_floor_kit","metal_floor_kit","metal_floor_kit","metal_floor_kit","metal_floor_kit","metal_floor_kit","metal_floor_kit","metal_floor_kit"]
]
];
_loot = _loot_lists call BIS_fnc_selectRandom;

_loot_amount = 75;
_wait_time = 1500; 

// Dont mess with theses unless u know what yours doing
_start_time = time;
_spawnRadius = 5000;
_spawnMarker = 'center';

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

// Check for another event running
if (EPOCH_EVENT_RUNNING) exitWith {
	diag_log("Event already running");
};
//EPOCH_EVENT_RUNNING = true; //Disabled as workaround

// Random chance of event happening
_spawnRoll = random 1;
if (_spawnRoll > _spawnChance and !_debug) exitWith {};

// Random location
_position = [getMarkerPos _spawnMarker,0,_spawnRadius,10,0,2000,0] call BIS_fnc_findSafePos;

diag_log(format["Spawning loot event at %1", _position]);

//Event marker from maca134
_event_marker = createMarker [ format ["loot_event_marker_%1", _start_time], _position];
_event_marker setMarkerShape "ELLIPSE";
_event_marker setMarkerColor "ColorBlue";
_event_marker setMarkerAlpha 0.5;
_event_marker setMarkerSize [(_markerRadius + 50), (_markerRadius + 50)];

//Event marker after reconnecting from waTTe
//_markerRadius = 100;
//_markershape = "ELLIPSE";
//_markercolor = "ColorBlue";
//_missiontype = 0; //0=EPOCH_EVENT_RUNNING 1=SPECIAL_EVENT_RUNNING
//_refreshmarker = [_location,_markerRadius,_markershape,_markercolor,_missiontype] execVM "\z\addons\dayz_server\modules\refreshmarker.sqf";

_loot_pos = [_position,0,(_markerRadius - 100),10,0,2000,0] call BIS_fnc_findSafePos;

if (_debug) then {
	_debug_marker = createMarker [ format ["loot_event_debug_marker_%1", _start_time], _loot_pos];
	_debug_marker setMarkerShape "ICON";
	_debug_marker setMarkerType "mil_dot";
	_debug_marker setMarkerColor "ColorBlue";
	_debug_marker setMarkerAlpha 1;
};

diag_log(format["Creating building supply box at %1", _loot_pos]);

// Create ammo box
_loot_box = createVehicle [_loot_box,_loot_pos,[], 0, "NONE"];
clearMagazineCargoGlobal _loot_box;
clearWeaponCargoGlobal _loot_box;

// Create Defensive Squad
_spawnPos = getPosATL _loot_box; //Using getPosATL because it's 2x faster than getPos
_spawnPos set [2,0]; //Forces z coordinate (height) to zero
military = [4,grpNull,_spawnPos,objNull,3] call DZAI_setup_AI; //These bastards are very deadly

// Cut the grass around the loot position
_clutter = createVehicle ["ClutterCutter_small_2_EP1", _loot_pos, [], 0, "CAN_COLLIDE"];
_clutter setPos _loot_pos;

// Add loot
{
_loot_box addWeaponCargoGlobal [_x,1];
} forEach (_loot select 0);
{
_loot_box addMagazineCargoGlobal [_x,1];
} forEach (_loot select 1);

// Send message to users - no need for deathmsg fix :)
[nil,nil,rTitleText,"A cache has been secured by elite soldiers, you have 20 minutes to grab the loot. Check your map.", "PLAIN",10] call RE;
[nil,nil,rGlobalRadio,"A cache has been secured by elite soldiers, you have 20 minutes to grab the loot. Check your map."] call RE;
[nil,nil,rHINT,"A cache has been secured by elite soldiers, you have 20 minutes to grab the loot. Check your map."] call RE;

diag_log(format["Loot event setup, waiting for %1 seconds", _wait_time]);

// Wait
sleep _wait_time;

// Clean up
EPOCH_EVENT_RUNNING = false;
deleteVehicle _loot_box;
//sleep 30; //Wait to let the RefreshMarkerScript finish its loop
deleteMarker _event_marker;
if (_debug) then {
	deleteMarker _debug_marker;
};

//Remove Squads - Normally not needed, DZAI will delete the group itself when no players are nearby.
{deleteVehicle _x} foreach units military;
deleteGroup military;

// Send message to users - no need for deathmsg fix :)
[nil,nil,rTitleText,"The cache is gone and everything that was around is gone with it. You missed your chance.", "PLAIN",10] call RE;
[nil,nil,rGlobalRadio,"The cache is gone and everything that was around is gone with it. You missed your chance."] call RE;
[nil,nil,rHINT,"The cache is gone and everything that was around is gone with it. You missed your chance."] call RE;

Could you or anyone please help me to solve the problem. I really like your version and wan´t to have it working for my players.

 

Thanks in advance

Polli

Link to comment
Share on other sites

hm thats strange, the script is working perfectly for me, the only difference is that i load the epoch_event_running = true; some lines below ....

 

it looks like that in my file:

if (isNil "EPOCH_EVENT_RUNNING") then {
EPOCH_EVENT_RUNNING = false;
};
 
// Check for another event running
if (EPOCH_EVENT_RUNNING) exitWith {
diag_log("Event already running");
};
 
// Random chance of event happening
_spawnRoll = random 1;
if (_spawnRoll > _spawnChance and !_debug) exitWith {};
 
EPOCH_EVENT_RUNNING = true;
 
// Random location
_position = [getMarkerPos _spawnMarker,0,_spawnRadius,10,0,2000,0] call BIS_fnc_findSafePos;
 
diag_log(format["EVENT: Spawning Supply Transport at %1", _position]);
 
 //Refresh Marker Script by *hs-s.com | waTTe, www.banditparty.de
 _markershape = "ELLIPSE";
 _markercolor = "ColorRed";
 _missiontype = 0;
 _refreshmarker = [_position,_markerRadius,_markershape,_markercolor,_missiontype] execVM "\z\addons\dayz_server\modules\refreshmarker.sqf";
 
_loot_pos = [_position,0,(_markerRadius - 100),10,0,2000,0] call BIS_fnc_findSafePos;
 
if (_debug) then {
_debug_marker = createMarker [ format ["loot_event_debug_marker_%1", _start_time], _loot_pos];
_debug_marker setMarkerShape "ICON";
_debug_marker setMarkerType "mil_dot";
_debug_marker setMarkerColor "ColorBlue";
_debug_marker setMarkerAlpha 1;
};

Of course this will only work if there is only 1 event at the time running! If you have multiple events running at the same time you have to define "special_events" like i did for example!

 

Noticed that you have already done that so forget it-(And dont forget to set EPOCH_EVENT_RUNNING = false; at the End of your Event ( in the cleanup area) otherwise it will only work once, and fail at the next event!)-Noticed that you have already done that so forget it

Link to comment
Share on other sites

Ok. Here is the result. The script runs when I change the line. But the marker won´t be shown on the map. There is an error in my log files:

12:50:02 "RUNNING EVENT: build_event on [2013,12,8,9,50]"
12:50:02 "Spawning loot event at [5590.95,8231.96]"
12:50:02 "Creating building supply box at [5590.95,8231.96]"
12:50:02 Error in expression <OCH_EVENT_RUNNING} do {
_event_marker = createMarker [ format ["loot_event_marke>
12:50:02   Error position: <createMarker [ format ["loot_event_marke>
12:50:02   Error 0 elements provided, 3 expected
12:50:02 File z\addons\dayz_server\modules\refreshmarker.sqf, line 11
12:50:02 "Loot event setup, waiting for 1500 seconds"

The error repeats as long as the event runs.

 

The refreshmarker.sqf

// Create Marker - Refresh Marker Script by *hs-s.com | waTTe - www.banditparty.de

_coords = _this select 0;
_radius = _this select 1;
_shape = _this select 2;
_color = _this select 3;
_type = _this select 4;

if(_type == 0) then { // 0 Normal Event
while{EPOCH_EVENT_RUNNING} do {
_event_marker = createMarker [ format ["loot_event_marker_%1", time], _coords];
_event_marker setMarkerShape _shape;
_event_marker setMarkerColor _color;
_event_marker setMarkerAlpha 0.5;
_event_marker setMarkerSize [(_radius + 50), (_radius + 50)];
sleep 15;
deleteMarker _event_marker;
};
};

if(_type == 1) then { // 1 Special Event
while{SPECIAL_EVENT_RUNNING} do {
_event_marker = createMarker [ format ["loot_event_marker_%1", time], _coords];
_event_marker setMarkerShape _shape;
_event_marker setMarkerColor _color;
_event_marker setMarkerAlpha 0.5;
_event_marker setMarkerSize [(_radius + 50), (_radius + 50)];
sleep 15;
deleteMarker _event_marker;
};
};

I can´t find any typos from my side. Just copy & paste from your posting. I´m not very familiar with arma scripting. Can you see an error? As I understand that the function don´t get any variables from the event script.

 

Thanks

Polli

Link to comment
Share on other sites

the refresh marker script shouldnt be the problem, it works fine on my server. Show me how you execute the script in your events.

The error messages states that he had expected three values transfered to the script and got zero.

i suppose you made the mistake there.

 

and also check that _position is a valid value in your event ( if you get the location with a command like _coords = .... you would have to use _coords instead of _position

 

it looks like that at my event:

_position = [getMarkerPos _spawnMarker,0,_spawnRadius,10,0,2000,0] call BIS_fnc_findSafePos;

 

make sure that you execute it like that in your event:

 //Marker
 _markershape = "ELLIPSE";
 _markerRadius = 300; // Radius the loot can spawn and used for the marker
 _markercolor = "ColorRed";
 _missiontype = 0;
 _refreshmarker = [_position,_markerRadius,_markershape,_markercolor,_missiontype] execVM "\z\addons\dayz_server\modules\refreshmarker.sqf"; //_position has to be defined, if you have another value set youll have to change it
Link to comment
Share on other sites

The below is the Random Location:

// Random location
_position = [getMarkerPos _spawnMarker,0,_spawnRadius,10,0,2000,0] call BIS_fnc_findSafePos;

I'll provide some PasteBin action of what we're using. I'm currently having to revert them for the day, however, back to the basic/working version. So, you'll see that yours are currently commented out in the meantime.

 

Our 'Supplyitems.sqf' file: http://pastebin.com/6V0hPPr8

Our 'refreshmarker.sqf' file: http://pastebin.com/k8Wgphk9

 

I also want to note that each event is called its own, IE: EPOCH_EVENT_RUNNING_S is our 'Supplyitems.sqf' event. Each event has its own letter tag at the end to define it; so that eventually they can run on top of each other when we get to that point, haha.

 

 

Below is our init.sqf:

EpochEvents = [["any","any","any","any",30,"crash_spawner"],
["any","any","any","any",0,"crash_spawner"],
["any","any","any","any",10,"Military"],
["any","any","any","any",25,"Treasure"],
["any","any","any","any",40,"Supplyitems"],
["any","any","any","any",55,"Construction"],
["any","any","any","any",35,"Lootevent"],
["any","any","any","any",15,"supply_drop"]];
Link to comment
Share on other sites

Hi waTTe, if add this to my addmarkets.sqf

 

// Start Refresh Marker Script by *hs-s.com | waTTe - www.banditparty.de
 EPOCH_EVENT_RUNNING = true;
 sleep 1;
 while(EPOCH_EVENT_RUNNING) do {
 _MainMarker = createMarker ["MainMarker", Ccoords];
 _MainMarker setMarkerColor "ColorRed"; //Set the color of the marker
 _MainMarker setMarkerShape "ELLIPSE"; //Set the shape of the marker
 _MainMarker setMarkerBrush "Solid"; //Set the style of the marker
 _MainMarker setMarkerAlpha 0.75; //Set the transparency of the marker
 _MainMarker setMarkerSize [250,250]; //Set the size of the marker
 sleep 15;
 deleteMarker "MainMarker";
 };

 

Do still have to add/replace old this:

 

// Configurate Marker - Refresh Marker Script by *hs-s.com | waTTe - www.banditparty.de

_markerRadius = 100;

_markershape = "RECTANGLE";

_markercolor = "ColorBlack";

_missiontype = 0; //0=EPOCH_EVENT_RUNNING 1=SPECIAL_EVENT_RUNNING _refreshmarker = [_location,_markerRadius,_markershape,_markercolor,_missiontype] execVM "\z\addons\dayz_server\modules\refreshmarker.sqf";

 

to the loot_sample.sqf?

Link to comment
Share on other sites

try it like this:

addmarkers.sqf

while{MissionGo == 1} do { //refresh marker script by *hs-s.com | waTTe - www.banditparty.de
	_MainMarker = createMarker ["MainMarker", Ccoords];
	_MainMarker setMarkerColor "ColorRed";	//Set the color of the marker
	_MainMarker setMarkerShape "ELLIPSE";	//Set the shape of the marker
	_MainMarker setMarkerBrush "Solid";	//Set the style of the marker
	_MainMarker setMarkerAlpha 0.75;	//Set the transparency of the marker
	_MainMarker setMarkerSize [250,250];	//Set the size of the marker
sleep 15;
	deleteMarker _MainMarker;
};

and addmarkers75.sqf:

while{MissionGoMinor == 1} do { //refresh marker script by *hs-s.com | waTTe - www.banditparty.de
    _MainMarker75 = createMarker["MainMarker75", MCoords];
    _MainMarker75 setMarkerColor "ColorRed";    // Set color of marker
    _MainMarker75 setMarkerShape "ELLIPSE";        // Set shape of marker
    _MainMarker75 setMarkerBrush "Solid";        // Set style of marker
    _MainMarker75 setMarkerAlpha 0.75;        // Set transparency of marker
    _MainMarker75 setMarkerSize [150,150];        // Set size of marker
sleep 15;
    deleteMarker _MainMarker75;
};

Link to comment
Share on other sites

wait there is missing something give me a second.

 

EDIT: I edited the post above this one. it should work now!

 

EDIT2: I have tested it now! it works!

 

PS: Im using EMS Epoch Mission System!

Link to comment
Share on other sites

Jeah well you are calling the refreshmarker script with the value _location even though that value doesnt exist. Replace _location with _position and it should work fine

 

Made that change but we're not getting the area markers on the map. Checked the logs and there's no errors... event kicks off and all that.

// Random location
_position = [getMarkerPos _spawnMarker,0,_spawnRadius,10,0,2000,0] call BIS_fnc_findSafePos;

diag_log(format["Spawning loot event at %1", _position]);

//_event_marker = createMarker [ format ["loot_event_marker_%1", _start_time], _position];
//_event_marker setMarkerShape "ELLIPSE";
//_event_marker setMarkerColor "ColorGreen";
//_event_marker setMarkerAlpha 0.5;
//_event_marker setMarkerSize [(_markerRadius + 50), (_markerRadius + 50)];

// Configurate Marker - Refresh Marker Script by *hs-s.com | waTTe - www.banditparty.de
_markerRadius = 3000;
_markershape = "ELLIPSE";
_markercolor = "ColorGreen";
_missiontype = 2; //0=EPOCH_EVENT_RUNNING_L
_refreshmarker = [_position,_markerRadius,_markershape,_markercolor,_missiontype] execVM "\z\addons\dayz_server\modules\refreshmarker.sqf";
 
_loot_pos = [_position,0,(_markerRadius - 100),10,0,2000,0] call BIS_fnc_findSafePos;

At first we had the _markerRadius = 100; but we thought maybe that was soooo small that no one could see it easy enough when they pulled up the map.

if(_type == 2) then { // 2 Loot Event
while{SPECIAL_EVENT_RUNNING_L} do {
_event_marker = createMarker [ format ["loot_event_marker_%1", time], _coords];
_event_marker setMarkerShape _shape;
_event_marker setMarkerColor _color;
_event_marker setMarkerAlpha 0.5;
_event_marker setMarkerSize [(_radius + 50), (_radius + 50)];
sleep 15;
deleteMarker _event_marker;
};
};

Thoughts?

Link to comment
Share on other sites

well in the first script you have set EPOCH_EVENT_RUNNING_L and in the second one SPECIAL_EVENT_RUNNING_L

 

so which value did u define in your event? Epoch_event or Special_event?

Link to comment
Share on other sites

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...