From d3969fba5cc8f224cbef8533805799266cc60d62 Mon Sep 17 00:00:00 2001 From: Joko Date: Mon, 6 Feb 2023 00:09:59 +0100 Subject: [PATCH 1/4] Prevent Sensor Data to be Requested on Remote Units when Debug Draw is enabled --- addons/main/functions/debug/fnc_debugDraw.sqf | 42 +++++++++---------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/addons/main/functions/debug/fnc_debugDraw.sqf b/addons/main/functions/debug/fnc_debugDraw.sqf index 63499225..172c0c74 100644 --- a/addons/main/functions/debug/fnc_debugDraw.sqf +++ b/addons/main/functions/debug/fnc_debugDraw.sqf @@ -141,28 +141,28 @@ private _posCam = positionCameraToWorld [0, 0, 0]; private _targetKnowledge = []; private _name = if (_currentTarget isEqualType objNull && {!isNull _currentTarget}) then { - private _knowledge = _unit targetKnowledge _currentTarget; - private _knowledgePosition = ASLtoAGL(_knowledge select 6); - private _knowledgeAge = _knowledge select 2; - if (_knowledge select 2 == time && local _unit) then { - _unit setVariable [QGVAR(debug_LastSeenPos), _knowledgePosition, GVAR(debug_functions)]; + if (!getRemoteSensorsDisabled || local _unit) then { + private _knowledge = _unit targetKnowledge _currentTarget; + private _knowledgePosition = ASLtoAGL(_knowledge select 6); + private _knowledgeAge = _knowledge select 2; + if (_knowledge select 2 == time && local _unit) then { + _unit setVariable [QGVAR(debug_LastSeenPos), _knowledgePosition, GVAR(debug_functions)]; + }; + private _lastSeen = _unit getVariable [QGVAR(debug_LastSeenPos), _knowledgePosition]; + _targetKnowledge append [ + "Target Knowledge:
", + " Last Seen: ", _lastSeen, " (", _knowledgeAge toFixed 2, ")
", + " Position Error: ", (_knowledge select 5) toFixed 2, "

" + ]; + + drawLine3D [_renderPos, _knowledgePosition, [0, 1, 0, 0.5]]; + drawIcon3D ["a3\ui_f\data\Map\Markers\System\dummy_ca.paa", [1, 1, 1, 1], _knowledgePosition, 1, 1, 0, "Estimated Target Position"]; + + if !(_lastSeen isEqualType "") then { + drawLine3D [_renderPos, _lastSeen, [0, 0, 1, 0.5]]; + drawIcon3D ["a3\ui_f\data\Map\Markers\System\dummy_ca.paa", [1, 1, 1, 1], _lastSeen, 1, 1, 0, "Last Seen Position"]; + }; }; - private _lastSeen = _unit getVariable [QGVAR(debug_LastSeenPos), _knowledgePosition]; - _targetKnowledge append [ - "Target Knowledge:
", - " Last Seen: ", _lastSeen, " (", _knowledgeAge toFixed 2, ")
", - " Position Error: ", (_knowledge select 5) toFixed 2, "

" - ]; - - drawLine3D [_renderPos, _knowledgePosition, [0, 1, 0, 0.5]]; - drawIcon3D ["a3\ui_f\data\Map\Markers\System\dummy_ca.paa", [1, 1, 1, 1], _knowledgePosition, 1, 1, 0, "Estimated Target Position"]; - - if !(_lastSeen isEqualType "") then { - drawLine3D [_renderPos, _lastSeen, [0, 0, 1, 0.5]]; - drawIcon3D ["a3\ui_f\data\Map\Markers\System\dummy_ca.paa", [1, 1, 1, 1], _lastSeen, 1, 1, 0, "Last Seen Position"]; - }; - - drawLine3D [_renderPos, getPosATLVisual _currentTarget, [1, 0, 0, 1]]; [name _currentTarget, "None"] select (isNull _currentTarget); } else { From af95d3ea84e3cd4ec03098cbb8a55519be3c59fd Mon Sep 17 00:00:00 2001 From: Joko Date: Mon, 6 Feb 2023 00:17:13 +0100 Subject: [PATCH 2/4] Add Warning to Debug Draw when RemoteSensors are Disabled --- addons/main/functions/debug/fnc_debugDraw.sqf | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/addons/main/functions/debug/fnc_debugDraw.sqf b/addons/main/functions/debug/fnc_debugDraw.sqf index 172c0c74..1e3e4e6a 100644 --- a/addons/main/functions/debug/fnc_debugDraw.sqf +++ b/addons/main/functions/debug/fnc_debugDraw.sqf @@ -162,6 +162,11 @@ private _posCam = positionCameraToWorld [0, 0, 0]; drawLine3D [_renderPos, _lastSeen, [0, 0, 1, 0.5]]; drawIcon3D ["a3\ui_f\data\Map\Markers\System\dummy_ca.paa", [1, 1, 1, 1], _lastSeen, 1, 1, 0, "Last Seen Position"]; }; + } else { + _targetKnowledge pushBack [ + "RemoteSensors Disabled
", + "and Unit Not Local
" + ]; }; drawLine3D [_renderPos, getPosATLVisual _currentTarget, [1, 0, 0, 1]]; [name _currentTarget, "None"] select (isNull _currentTarget); @@ -217,7 +222,7 @@ private _posCam = positionCameraToWorld [0, 0, 0]; _textData append ["MOVE disabled", "
"]; }; if (_unit getVariable [QEGVAR(danger,forceMove), false]) then { - _textData append ["Forced AI", "
"]; + _textData append ["Forced AI", "
"]; }; if (fleeing _unit) then { _textData append ["Fleeing", "
"]; From 9ba81fa8e1fedd7de7c05e27573b955b7a013d1e Mon Sep 17 00:00:00 2001 From: Joko Date: Mon, 20 Feb 2023 00:54:07 +0100 Subject: [PATCH 3/4] Simplify debugDraw Local Statement --- addons/main/functions/debug/fnc_debugDraw.sqf | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/addons/main/functions/debug/fnc_debugDraw.sqf b/addons/main/functions/debug/fnc_debugDraw.sqf index 1e3e4e6a..480bc75e 100644 --- a/addons/main/functions/debug/fnc_debugDraw.sqf +++ b/addons/main/functions/debug/fnc_debugDraw.sqf @@ -141,11 +141,12 @@ private _posCam = positionCameraToWorld [0, 0, 0]; private _targetKnowledge = []; private _name = if (_currentTarget isEqualType objNull && {!isNull _currentTarget}) then { - if (!getRemoteSensorsDisabled || local _unit) then { + private _unitIsLocal = local _unit; + if (_unitIsLocal || !getRemoteSensorsDisabled) then { private _knowledge = _unit targetKnowledge _currentTarget; private _knowledgePosition = ASLtoAGL(_knowledge select 6); private _knowledgeAge = _knowledge select 2; - if (_knowledge select 2 == time && local _unit) then { + if (_knowledge select 2 == time && _unitIsLocal) then { _unit setVariable [QGVAR(debug_LastSeenPos), _knowledgePosition, GVAR(debug_functions)]; }; private _lastSeen = _unit getVariable [QGVAR(debug_LastSeenPos), _knowledgePosition]; From 067383aa70fe7ec112a12dc1aaf41fc47faee76b Mon Sep 17 00:00:00 2001 From: Joko Date: Mon, 20 Feb 2023 00:56:42 +0100 Subject: [PATCH 4/4] add suggestion from rautamiekka --- addons/main/functions/debug/fnc_debugDraw.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/main/functions/debug/fnc_debugDraw.sqf b/addons/main/functions/debug/fnc_debugDraw.sqf index 480bc75e..0a50e2cd 100644 --- a/addons/main/functions/debug/fnc_debugDraw.sqf +++ b/addons/main/functions/debug/fnc_debugDraw.sqf @@ -146,7 +146,7 @@ private _posCam = positionCameraToWorld [0, 0, 0]; private _knowledge = _unit targetKnowledge _currentTarget; private _knowledgePosition = ASLtoAGL(_knowledge select 6); private _knowledgeAge = _knowledge select 2; - if (_knowledge select 2 == time && _unitIsLocal) then { + if (_knowledgeAge == time && _unitIsLocal) then { _unit setVariable [QGVAR(debug_LastSeenPos), _knowledgePosition, GVAR(debug_functions)]; }; private _lastSeen = _unit getVariable [QGVAR(debug_LastSeenPos), _knowledgePosition];