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,30 @@
|
||||
{
|
||||
"verdict": "No attributable recoil-camera cause from current evidence; ordinary installed camera path does not call the spherical random API.",
|
||||
"log": "/home/jakub/devel/escapistsrereintroduced/docs/evidence/native-2026-10-03-mine-flanks-normal/console.log.txt",
|
||||
"log_sha256": "fbda67071b3eca24033b7195b33072b4b27f806259893ec2f5969691800d51a8",
|
||||
"error_time": "04:30:22.686",
|
||||
"evidence": [
|
||||
"SCR_RecoilCameraShakeProgress.Update lines157/169 calls GetRandomYawPitchRollImpulse()/GetRandomTranslation() without arguments. Both default onSphere=false and use RandomVector/RandomFloat, not GenerateRandomPointInRadius.",
|
||||
"The single camera spherical call is SCR_RecoilCameraShakeParams.RandomVectorSphere(vector min, vector max, bool uniform=true), line160\u2013167, forwarding min.Length() and max.Length(). Both zero vectors would create the reported interval.",
|
||||
"Attribute defaults translation min(0.0005,0.0005,0),max(0.006,0.006,0), impulse min(0.005,0.005,1),max(0.012,0.012,1.5) give valid nonzero unequal lengths. Extracted SVD override likewise nonzero unequal ranges.",
|
||||
"No successor addon source/prefab/config override of recoil camera parameters or calls to these APIs found. External addon script/prefab closure was not fully re-extracted or proven absent.",
|
||||
"Log has WORLD UpdateEntities/Frame context but no script/node/weapon stack; it cannot distinguish recoil from native AI/node/other callers."
|
||||
],
|
||||
"supported_diagnostic": {
|
||||
"scope": "Opt-in WORKBENCH-only ordinary script override; not implemented or engine-compiled in this review.",
|
||||
"class": "SCR_RecoilCameraShakeParams",
|
||||
"method": "protected override vector RandomVectorSphere(vector min, vector max, bool uniform = true)",
|
||||
"behavior": "Call super.RandomVectorSphere(min,max,uniform) exactly once and retain its result. After return, if both input vector lengths are zero and diagnostic scope enabled, emit capped16 global witness with type/this/input vectors and Debug.DumpStack(); return unchanged result. Do not clamp, skip native call, change RNG or invent owner accessors.",
|
||||
"callstack_support": "Debug.DumpStack() is called by installed vanilla SCR_ScriptedWidgetComponent and SCR_WLibProgressBar. For BT methods only, Node.GetCallstackStr(out string val) and GetParentTreeName(out string val) are explicit native signatures; NodeError demonstrates usage but should not be invoked because it changes failure semantics.",
|
||||
"limitations": "A silent recoil hook excludes only observed runs; it cannot identify a different caller. Params has no actor/weapon ownership accessor in this script. Native compatibility of a new override still needs parent-controlled engine compilation."
|
||||
},
|
||||
"source_sha256": {
|
||||
"/tmp/erri-vanilla-stock/scripts/Game/Camera/Shake/SCR_RecoilCameraShakeParams.c": "81c78fd6de3e3d1f4031b589918b002fd0d4ef1673a6287ad7249b2c236aef8c",
|
||||
"/tmp/erri-vanilla-stock/scripts/Game/Camera/Shake/SCR_RecoilCameraShakeProgress.c": "442f6c36f8c83e6206f438ed8b1950a3ea2fb0d15dab248f15ab3f2e45f88e91",
|
||||
"/tmp/erri-vanilla-stock/scripts/Game/UI/Components/WidgetLibrary/SCR_ScriptedWidgetComponent.c": "e40552f9bf619e008a3796920c6e7ecbc8db68a5f914ab1988780a7ba90ea417",
|
||||
"/tmp/erri-vanilla-stock/scripts/Game/generated/AI/Node.c": "d5d3eea4e72d8a8978257009f8b3408628c26c0dd7c406a1fe86fafdaaedc789",
|
||||
"/tmp/erri-vanilla-stock/scripts/Game/AI/Utils/NodeError.c": "75a2aade91d8216d7038279d0ac384a7ecd494bb29a2de36f62214368feed22c",
|
||||
"/tmp/erri-vanilla-stock/Prefabs/Weapons/Rifles/SVD/Rifle_SVD_base.et": "6e70d726155044eb1a68d5d6f7a65d0b9b12d43499fbf0e6e73612c65b769711"
|
||||
},
|
||||
"operations": "Read-only source/log inspection. No implementation, compiler/native/process/UI actions."
|
||||
}
|
||||
Reference in New Issue
Block a user