There is no option in the settings or the mission to disable the "Minefield" map marker. This is really annoying when playing missions. In my community, we utilize Zues to help in training and missions. When I place down a mine, I don't want people to know the mines are there unless they have a mine detector. Our combat engineers mark the minefields themselves anyway, but I as a mission maker don't want them to know the mines are there. Please at least have an option in the Zues module or in the game settings to disable the marker. Thanks
Description
Details
- Legacy ID
- 3654266895
- Severity
- None
- Resolution
- Open
- Reproducibility
- Always
- Operating System
- Windows 7
- Category
- Zeus - General
Event Timeline
Need an option to disable mine markers in SP too. A command would be helpful too. 'This disableMarker true'.
this is not a 'disableMarker' command that is missing.
The missing command is 'getMineMarker'; this would allow us to get FULL control on the marker.
e.g
_mrk = getMineMarker mymine;
_mrk setMarkerAlpha 1;
MoreOver the command 'allMarkers' doesn't return mines markers.
Would be good if zeus checked the difficulty settings and only created a minefield marker when the setting "MineTag" is 1.
My guess is one of the Devs has bad RL family experience with land mines and would just rather they weren't in the game, and so put a while TRUE loop in the MP framework to reveal all mines and thus prevent mine-related deaths ... A subtle nudge to scenario designers to follow the Geneva Conventions? :)
https://community.bistudio.com/wiki/BIS_fnc_drawMinefields
//--- Script already running - terminate and send command to refresh the loop
^ No allowance to terminate the loop. The function just updates the positions for the persistent A3 Geneva Loop.
Some documentation that may support it is intentional to prevent scenario designers from disabling the drawMinefield loop (note the last line):
Placing explosives
Explosives and mines placed by Zeus have a special behavior:
All selected explosives can be detonated by pressing [End].
Explosives are instantly revealed to everyone who's on the same side as Zeus.
Approximate minefield areas are visualized on the map for everyone.
Anti-Personnel (AP) mines are banned by international laws of war. Use them with caution!
https://community.bistudio.com/wiki/Arma_3_Field_Manual_-_Zeus
Moricky please! This Geneva Loop is idealism, not simulation.
Good suggestion, currently the group I play with rely on a curator extension addon I made to allow us to easily enable/disable this feature (as well as a few others like the eagle, the wind noise and the notifications that pop up when someone becomes zeus). Having it as part of the curator by default would be convenient.
["sneakyMines", "onEachFrame", {
BIS_fnc_drawMinefields_active = false;
BIS_fnc_drawMinefields_refresh = false;
}] call BIS_fnc_addStackedEventHandler;
Add this to your mission and it should prevent the loop from firing each frame.
This should help some of you guys out until this is fixed properly!
This snippet of code will have no impact on performance whatsoever.
The reason I am using onEachFrame is to ensure that the loop is suppressed before it can fire as the draw mines while loop will be running on its own co-routine.
onEachFrame isn't slow, its what goes in it that makes it perform slowly because of the rate of execution - and setting two booleans wont take anytime whatsoever.
This is just a temporary fix until bohemia fix the issue and provide an alternative!
Re the minefield drawing.
There is no evidence in the code that any attempt was made to limit it by side/faction.
Example from the BIS_fnc_drawMinefields:
_missionMines = allmissionobjects "TimeBombCore";
if (count _missionMines == 0) then {_missionMines = allmissionobjects "MineBase";};
_dis = 0;
{_dis = _dis + ((position _x) distance [0,0,0]);} foreach _missionMines;
^ All mission objects 'timeBombCore', not (detectedMines SIDE).
Also, createMarker global is used, so regardless of what faction you are on, you will see where all the minefield markers are.
Regardless of intentions, the code indicates that the function author thought all mines should be revealed to everybody.
---------------------------------
{ _cluster = _x; _clusterCount = count _cluster; //--- Find cluster center _avgX = 0; _avgY = 0; { _pos = position _x; _avgX = _avgX + (_pos select 0); _avgY = _avgY + (_pos select 1); } foreach _x; _pos = [ (_avgX / _clusterCount) - (_avgX % 5) + (_avgY % 1), (_avgY / _clusterCount) - (_avgY % 5) + (_avgX % 10) ]; _avgDis = 0; _maxDis = 0; _maxMine = objnull; { _dis = _x distance _pos; _avgDis = _avgDis + _dis; if (_dis > _maxDis) then { _maxDis = _dis; _maxMine = _x; }; } foreach _x; _maxDis = _maxDis + 10; _avgDis = (_avgDis / _clusterCount) + 10; //--- Create marker _marker = createmarker ["bis_fnc_drawMinefields_" + str (["bis_fnc_drawMinefields_counter",1] call bis_fnc_counter),_pos]; _marker setmarkerdir ([_pos,position _maxMine] call bis_fnc_dirto); _marker setmarkersize [_maxDis,_maxDis + (_maxDis - _avgDis)]; _marker setmarkercolor "colorred"; _marker setmarkershape "ellipse"; _marker setmarkerbrush _markerShape; bis_fnc_drawMinefields_markers set [count bis_fnc_drawMinefields_markers,_marker]; _marker = createmarker ["bis_fnc_drawMinefields_icon" + str (["bis_fnc_drawMinefields_counter",1] call bis_fnc_counter),_pos]; _marker setmarkertype _markerIcon; _marker setmarkersize [1,1]; _marker setmarkercolor "colorred"; bis_fnc_drawMinefields_markers set [count bis_fnc_drawMinefields_markers,_marker]; } foreach _mineClusters; } foreach _allMines;
Changed in 2.06 to
if (missionNamespace getVariable ['BIS_fnc_moduleMine_drawMinefields',false]) then { //--- Mark minefields in the map [] spawn bis_fnc_drawMinefields; };
Default turned off, but can be enabled if mission makers want to.