Capture current mission, AI, map and administration development
Include the current addon, terrain integrations, tools, regression tests and recorded development evidence.
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
{
|
||||
"complete": true,
|
||||
"attribution": "Prior04:30:22.686 error remains unassigned; source mechanisms identified, no observed zero input bound to caller.",
|
||||
"installed_sdk_binding": [
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data.pak",
|
||||
"path": "AI/BehaviorTrees/Chimera/Soldier/CombatMoveRequest_Move.bt",
|
||||
"sha256": "23af0dbdf6b5aec5f13117777bd2211a41d2684a975b16141a809cd2f0f04a69",
|
||||
"scratch": "/tmp/erri-zero-radius-review-0504/native/AI/BehaviorTrees/Chimera/Soldier/CombatMoveRequest_Move.bt"
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data.pak",
|
||||
"path": "AI/BehaviorTrees/Chimera/Soldier/LookAtRandomized.bt",
|
||||
"sha256": "8626168e0d8ff2d268ed7591bf2a7a184bbf7aee390e2ce98ddb642463556abd",
|
||||
"scratch": "/tmp/erri-zero-radius-review-0504/native/AI/BehaviorTrees/Chimera/Soldier/LookAtRandomized.bt"
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/Movement/SCR_AICalculateNextCombatMovePos.c",
|
||||
"sha256": "636fbef514e676d8bf45be87646bfb1ef38ddbf0e30c5fea0377bc696d5c5476",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/Movement/SCR_AICombatMoveRequest.c",
|
||||
"sha256": "5b515efdf00ec350bc6ca84fd1a206a2575a56b423481b81b99097b8fe585121",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/Movement/SCR_AICombatMoveUtils.c",
|
||||
"sha256": "9a03c635de86675e3cc4b834496a9351c37c9bafe497c63c51c1c78999afb700",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/ScriptedNodes/Utils/SCR_AIGetRandomLookPosition.c",
|
||||
"sha256": "cd2e0a6871ba32541b28aae2f17b5d1139e2c29b0ea25ccadd022838a1c490f5",
|
||||
"local_same": true
|
||||
}
|
||||
],
|
||||
"combat": {
|
||||
"path": "scripts/Game/AI/Movement/SCR_AICalculateNextCombatMovePos.c:38\u201355",
|
||||
"formula": "maxRadius=0.1*m_fMoveDuration_s*GetEstimatedMoveSpeed(request)",
|
||||
"zero_condition": "CUSTOM_POS bypasses randomizer. Estimated speed is always5.5(character) or10(other/default), so zero duration reaches zero radius. No positive-radius validation in RandomizeDestinationPos.",
|
||||
"producer_evidence": "Ordinary attack/avoid/grenade/incoming-vehicle/threat/moving-commander producers inspected assign positive durations. Attack.PushRequestLeaveUselessCover leaves default duration0, but sets TryFindCover and FailIfNoCover=true: installed CombatMoveRequest_Move.bt returns FAIL on missing cover rather than fallback randomizer. This default alone does not establish a live failing path."
|
||||
},
|
||||
"look": {
|
||||
"path": "scripts/Game/AI/ScriptedNodes/Utils/SCR_AIGetRandomLookPosition.c:23\u201325",
|
||||
"formula": "maxRadius=Distance(controlledEntity.GetOrigin(),InPos)*m_fTangent",
|
||||
"zero_condition": "Coincident origin/InPos or tangent0; no positive-radius validation.",
|
||||
"installed_tree": "AI/BehaviorTrees/Chimera/Soldier/LookAtRandomized.bt explicitly sets tangent0.7; reached by Attack_Default.bt and ObserveThreatSystemBehavior.bt. The observation tree receives CurrentPos from SCR_AILookAtThreatSystemLogic, which copies threat-filter sector position; no equality guard. Actual coincident runtime inputs are unobserved."
|
||||
},
|
||||
"successor": "Search of all successor addon files found no SCR_AICombatMove request/field setter, combat/look node override, tangent setter or direct GenerateRandomPointInRadius invocation. Existing individual moves/group waypoints are not evidence of a zero combat/look input.",
|
||||
"scope": "Read-only source/installedPAK inspection. Selected installed scripts exactly match localSDK hashes. No successor/original writes, tests, native or compiler; no global patch recommended.",
|
||||
"source_hashes": {
|
||||
"/tmp/erri-vanilla-stock/scripts/Game/AI/Movement/SCR_AICalculateNextCombatMovePos.c": "636fbef514e676d8bf45be87646bfb1ef38ddbf0e30c5fea0377bc696d5c5476",
|
||||
"/tmp/erri-vanilla-stock/scripts/Game/AI/Movement/SCR_AICombatMoveUtils.c": "9a03c635de86675e3cc4b834496a9351c37c9bafe497c63c51c1c78999afb700",
|
||||
"/tmp/erri-vanilla-stock/scripts/Game/AI/Movement/SCR_AICombatMoveRequest.c": "5b515efdf00ec350bc6ca84fd1a206a2575a56b423481b81b99097b8fe585121",
|
||||
"/tmp/erri-vanilla-stock/scripts/Game/AI/Movement/SCR_AICombatMoveLogic_Attack.c": "9bb2b90a3e80765913eb701f685ef3a02bfb17c4553ce9af018dc78e6d3dd518",
|
||||
"/tmp/erri-vanilla-stock/scripts/Game/AI/Movement/SCR_AICombatMoveLogic_MovingCommander.c": "ecafa289c5c48591e244d52275e42144aaccf5a5cc91c53eddd9a79af83a0292",
|
||||
"/tmp/erri-vanilla-stock/scripts/Game/AI/ScriptedNodes/Utils/SCR_AIGetRandomLookPosition.c": "cd2e0a6871ba32541b28aae2f17b5d1139e2c29b0ea25ccadd022838a1c490f5",
|
||||
"/tmp/erri-vanilla-stock/scripts/Game/AI/Behavior/SCR_AILookAtThreatSystemLogic.c": "4ae9a9a218d8d65fe014f2b417097338efd2de12517c3fe2d145e15e69f934ec"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
[
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/ScriptedNodes/Utils/SCR_AIGetRandomPointWithExclude.c",
|
||||
"sha256": "978eda9adc1721978ab9d952cd24f458ae213661216d9b541c3439d5322c65d0",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/Camera/Shake/SCR_RecoilCameraShakeParams.c",
|
||||
"sha256": "81c78fd6de3e3d1f4031b589918b002fd0d4ef1673a6287ad7249b2c236aef8c",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/generated/AI/Node.c",
|
||||
"sha256": "d5d3eea4e72d8a8978257009f8b3408628c26c0dd7c406a1fe86fafdaaedc789",
|
||||
"local_same": true
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,38 @@
|
||||
[
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data.pak",
|
||||
"path": "AI/BehaviorTrees/Chimera/Soldier/CombatMoveRequest_Move.bt",
|
||||
"sha256": "23af0dbdf6b5aec5f13117777bd2211a41d2684a975b16141a809cd2f0f04a69",
|
||||
"scratch": "/tmp/erri-zero-radius-review-0504/native/AI/BehaviorTrees/Chimera/Soldier/CombatMoveRequest_Move.bt"
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data.pak",
|
||||
"path": "AI/BehaviorTrees/Chimera/Soldier/LookAtRandomized.bt",
|
||||
"sha256": "8626168e0d8ff2d268ed7591bf2a7a184bbf7aee390e2ce98ddb642463556abd",
|
||||
"scratch": "/tmp/erri-zero-radius-review-0504/native/AI/BehaviorTrees/Chimera/Soldier/LookAtRandomized.bt"
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/Movement/SCR_AICalculateNextCombatMovePos.c",
|
||||
"sha256": "636fbef514e676d8bf45be87646bfb1ef38ddbf0e30c5fea0377bc696d5c5476",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/Movement/SCR_AICombatMoveRequest.c",
|
||||
"sha256": "5b515efdf00ec350bc6ca84fd1a206a2575a56b423481b81b99097b8fe585121",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/Movement/SCR_AICombatMoveUtils.c",
|
||||
"sha256": "9a03c635de86675e3cc4b834496a9351c37c9bafe497c63c51c1c78999afb700",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/ScriptedNodes/Utils/SCR_AIGetRandomLookPosition.c",
|
||||
"sha256": "cd2e0a6871ba32541b28aae2f17b5d1139e2c29b0ea25ccadd022838a1c490f5",
|
||||
"local_same": true
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,14 @@
|
||||
[
|
||||
{
|
||||
"path": "AI/BehaviorTrees/Chimera/Soldier/Attack_Default.bt",
|
||||
"sha256": "bbb313835ae90673f694abf5a1fc447eed99b06804c35f16f2d3d57c627d3bce"
|
||||
},
|
||||
{
|
||||
"path": "AI/BehaviorTrees/Chimera/Soldier/LookAtRandomized.bt",
|
||||
"sha256": "8626168e0d8ff2d268ed7591bf2a7a184bbf7aee390e2ce98ddb642463556abd"
|
||||
},
|
||||
{
|
||||
"path": "AI/BehaviorTrees/Chimera/Soldier/ObserveThreatSystemBehavior.bt",
|
||||
"sha256": "62a326bf5f2d609e95183269582fe058321e6097bc9ea4f88fcd59cd7a37fd55"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"source": "/tmp/erri-random-radius-source-0504/addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeRandomRadiusTrace.c",
|
||||
"sha256": "e250ccffe96829d6867c67e563529df34435cb57e111f7645ee1ed9911e195bd",
|
||||
"approved": true,
|
||||
"scope": "Read-only source/API pass, no native/compilers. Actual-method test owned independent testauthor.",
|
||||
"findings": [
|
||||
"Override arguments/access match exact installed combat/look SDK.",
|
||||
"Each wrapper calls superclass once and returns its exact result; no random sampling, movement/waypoint or return/output replacement.",
|
||||
"Extra random-look reads only behind cached explicit CLI opt-in and shared16-sample cap.",
|
||||
"Point wrapper logs actual superclass-updated fields only afterSUCCESS; absence oftrace cannot exclude failure-aborted calls or other randomizer callers.",
|
||||
"WORKBENCH-only declaration; production runtime unchanged when absent."
|
||||
],
|
||||
"blockers": []
|
||||
}
|
||||
@@ -0,0 +1,89 @@
|
||||
{
|
||||
"complete": true,
|
||||
"approved_source_api_review": true,
|
||||
"source": "/tmp/erri-random-radius-source-0504/addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeRandomRadiusTrace.c",
|
||||
"sha256": "7e946406067092e30b6b75cc6ef0c56db7f866249e02bd13648156933ee578d9",
|
||||
"wrappers": 5,
|
||||
"installed_sdk_bindings": [
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data.pak",
|
||||
"path": "AI/BehaviorTrees/Chimera/Soldier/CombatMoveRequest_Move.bt",
|
||||
"sha256": "23af0dbdf6b5aec5f13117777bd2211a41d2684a975b16141a809cd2f0f04a69",
|
||||
"scratch": "/tmp/erri-zero-radius-review-0504/native/AI/BehaviorTrees/Chimera/Soldier/CombatMoveRequest_Move.bt"
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data.pak",
|
||||
"path": "AI/BehaviorTrees/Chimera/Soldier/LookAtRandomized.bt",
|
||||
"sha256": "8626168e0d8ff2d268ed7591bf2a7a184bbf7aee390e2ce98ddb642463556abd",
|
||||
"scratch": "/tmp/erri-zero-radius-review-0504/native/AI/BehaviorTrees/Chimera/Soldier/LookAtRandomized.bt"
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/Movement/SCR_AICalculateNextCombatMovePos.c",
|
||||
"sha256": "636fbef514e676d8bf45be87646bfb1ef38ddbf0e30c5fea0377bc696d5c5476",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/Movement/SCR_AICombatMoveRequest.c",
|
||||
"sha256": "5b515efdf00ec350bc6ca84fd1a206a2575a56b423481b81b99097b8fe585121",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/Movement/SCR_AICombatMoveUtils.c",
|
||||
"sha256": "9a03c635de86675e3cc4b834496a9351c37c9bafe497c63c51c1c78999afb700",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/ScriptedNodes/Utils/SCR_AIGetRandomLookPosition.c",
|
||||
"sha256": "cd2e0a6871ba32541b28aae2f17b5d1139e2c29b0ea25ccadd022838a1c490f5",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/AI/ScriptedNodes/Utils/SCR_AIGetRandomPointWithExclude.c",
|
||||
"sha256": "978eda9adc1721978ab9d952cd24f458ae213661216d9b541c3439d5322c65d0",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/Camera/Shake/SCR_RecoilCameraShakeParams.c",
|
||||
"sha256": "81c78fd6de3e3d1f4031b589918b002fd0d4ef1673a6287ad7249b2c236aef8c",
|
||||
"local_same": true
|
||||
},
|
||||
{
|
||||
"pak": "/home/jakub/.local/share/Steam/steamapps/common/Arma Reforger/addons/data/data007.pak",
|
||||
"path": "scripts/Game/generated/AI/Node.c",
|
||||
"sha256": "d5d3eea4e72d8a8978257009f8b3408628c26c0dd7c406a1fe86fafdaaedc789",
|
||||
"local_same": true
|
||||
}
|
||||
],
|
||||
"checks": [
|
||||
"All five override signatures, argument names, protected access and default arguments match SDK; optional Node helper uses public GetCallstackStr(out string).",
|
||||
"Point calls superclass once first and returns exact ENodeResult; log only afterSUCCESS and actualupdated radius fields are bothzero.",
|
||||
"Look reads owner/entity/InPos only when enabled and below cap; native superclass remains once with original owner/dt. Extra observation reads do not set ports or consume RNG.",
|
||||
"Combat calls protected superclass once with original distance/centerPos; does not replace destination or random draw.",
|
||||
"WithExclude reproduces direct branch predicate (equal origins OR excludeRadius<1e-8) and logs only bothradii0 there. Iterative branch logs only radius0 and iterationCount>0; zero iterations produces no diagnostic random-call claim. Exact original out randomPos and allsix arguments pass through once, returnbool unchanged.",
|
||||
"Recoil observes min/max lengths only behind gate; superclass once preserves native random-sign draw and sphere draw, original uniform/default and vector return.",
|
||||
"One shared16-sample cap; counter increments and Node stack/Debug stack retrieval occur only within accepted Log. CLI flag read cached once; disabled wrappers perform no added node/actor/port/vector observations.",
|
||||
"WORKBENCH only; no spawn/force/order/AI-policy/runtime corrective behavior."
|
||||
],
|
||||
"limits": [
|
||||
"Native compilation and runtime attribution still pending; no compiler/native actions by reviewer.",
|
||||
"Point postSUCCESS logging cannot establish absence of a failing/aborting native call.",
|
||||
"Several native/script callsites remain unwrapped; no completeness claim.",
|
||||
"Formatted zero could also be a small rounded nonzero value; wrappers intentionally match exactzero inputs requested for this diagnostic."
|
||||
],
|
||||
"uncovered_calls": [
|
||||
"SCR_AIEnemyMarkingSystem: dynamic base+distance inaccuracy",
|
||||
"SCR_ArtilleryWaypointGroupCommand: curve-derived offset radii",
|
||||
"SCR_ResourcePlayerControllerInventoryComponent.FindSuitablePosition: maxHorizontalOffset",
|
||||
"SCR_AirstrikePrototype: configured airstrike radius",
|
||||
"SCR_Math2D wrapper itself and native engine callers",
|
||||
"SCR_AIFindFirePositionBehavior uses positive constants13/20 and0/4; CleanSweep/LastStand use0/2",
|
||||
"SCR_EffectModulePositionData_Radius has max<=min correction before call"
|
||||
],
|
||||
"blockers": []
|
||||
}
|
||||
Reference in New Issue
Block a user