Files
EscapistsReintroduced/docs/ai-feature-migration.json
jakub 6a667d8deb Capture current mission, AI, map and administration development
Include the current addon, terrain integrations, tools, regression tests and recorded development evidence.
2026-10-13 22:52:53 +02:00

2577 lines
115 KiB
JSON

{
"schema_version": 1,
"audited_on": "2026-09-20",
"successor_commit_at_audit": "e7b4141f6975027624941a8e2b0fcb9d1683a54d",
"source_root": "/home/jakub/devel/escapists/escapists-ai",
"scope": "all predecessor AI scripts, tests, prefabs, README/config; GroupLookup excluded from contents audit",
"user_authorization": "Owned AI code/design reuse and RHS/WCS/BMP dependencies authorized. No original Escapists/ScrtCore/ScrtSharedContent/Enhanced inclusion.",
"counts": {
"features": 39,
"statuses": {
"partial": 21,
"missing": 14,
"implemented": 4
},
"scripts": 54,
"excluded_scripts": 1,
"tests": 45,
"prefabs": 12,
"resource_references": 68
},
"features": [
{
"id": "config",
"title": "Configuration and admin controls",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_AIConfig.c",
"Scripts/Game/EscapistsAI/EAI_ConvoySettings.c",
"Scripts/Game/EscapistsAI/EAI_HQSettings.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/00_Core/ERR_Settings.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQAdminProvider.c"
],
"behavior": [
"Unified config/defaults/backups/migration",
"bounded validation",
"runtime HQ settings",
"next-round frozen convoy/start/simulation choices"
],
"remaining": "Only reportIntervalSeconds/supportSquadLimit/responseRadiusMetres of nine original AI keys migrate; add remaining keys with explicit current/next-round semantics.",
"evidence": "latest packaged startup + native admin fixture",
"asset_scope": "vanilla"
},
{
"id": "skill",
"title": "Native combat skill floor",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_AIResponseSystem.c"
],
"replacement_files": [],
"behavior": [
"Expert minimum80",
"preserve higher skill",
"designated gunners100",
"reapply after native resets"
],
"remaining": "Add configurable native skill policy on owned physical groups; do not modify perception or populate dormant units.",
"evidence": "code only",
"asset_scope": "vanilla"
},
{
"id": "radio",
"title": "Physical radio network and call delivery",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_HQ.c",
"Scripts/Game/EscapistsAI/EAI_HQNetwork.c",
"Scripts/Game/EscapistsAI/EAI_NativeRadioCall.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQ.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQNetwork.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQReport.c"
],
"behavior": [
"Real basic/manpack inventory",
"500m short links/up to3 hops",
"2s per leg",
"interrupted sender/receiver rules",
"100m local observation handoff",
"3s originating call",
"one-time basic/manpack fitting",
"aircraft uplink",
"broadcast-only awareness"
],
"remaining": "Short-hop delivery is implemented; audit/port local handoff, originating-call hold, broad one-time radio fitting, aircraft uplink and shared awareness. Replace original support-tree hook with own delivery API.",
"evidence": "native real-sighting HQ response + network regression",
"asset_scope": "vanilla"
},
{
"id": "observations",
"title": "Observed descriptions and fair reporting",
"status": "implemented",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_HQObservation.c",
"Scripts/Game/EscapistsAI/EAI_HQ.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQObservation.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQReport.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQ.c"
],
"behavior": [
"Current native LOS",
"observed count/travel/drawn weapons",
"timestamped immutable snapshots",
"velocity from sightings",
"per-squad fair multi-contact reporting"
],
"remaining": "Code implemented for current physical groups; real multiplayer and difficult exposure/vehicle cases still require validation.",
"evidence": "native HQ response; 186-assertion owned AI/Intel integration",
"asset_scope": "vanilla"
},
{
"id": "ground_tactics",
"title": "Infantry hunting and differentiated roles",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_GroupTactics.c",
"Scripts/Game/EscapistsAI/EAI_HQ.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQ.c"
],
"behavior": [
"Approach/flank-left/flank-right/intercept roles",
"growing45\u2013110m search",
"120s freshness expiry",
"native combat preemption",
"restore original patrol",
"fair nearest squad allocation"
],
"remaining": "Successor delivers search waypoints and restores native route; distinct roles, contact coverage/priority allocation and growing search areas are incomplete. Route new tasking through force ledger.",
"evidence": "native original-squad movement + patrol/HQ fixture",
"asset_scope": "vanilla"
},
{
"id": "status",
"title": "Routine status and ammunition reports",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_HQStatus.c",
"Scripts/Game/EscapistsAI/EAI_HQ.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQ.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_MortarLogistics.c"
],
"behavior": [
"Three-minute roster/position/status check-ins",
"early low-ammo reports",
"snapshot casualties",
"in-flight evidence preservation",
"disconnected/overdue diagnostics"
],
"remaining": "Only mortar supply status is integrated; general living/fit/missing roster and weapon/mine status remain missing.",
"evidence": "native mortar courier reports only",
"asset_scope": "vanilla"
},
{
"id": "missing_patrol",
"title": "Missing patrol investigation",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_HQWatch.c",
"Scripts/Game/EscapistsAI/EAI_HQ.c"
],
"replacement_files": [],
"behavior": [
"Two missed180s check-ins;30s reply deadline",
"detached last-known-position roster",
"one physical investigation with arrival inspection/reply",
"never presume death"
],
"remaining": "Add status-derived investigation beliefs and dispatch existing ledger forces; no live missing-unit coordinates.",
"evidence": "code only",
"asset_scope": "vanilla"
},
{
"id": "body_discovery",
"title": "Visible bodies and confirmed losses",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_HQBodySearch.c",
"Scripts/Game/EscapistsAI/EAI_HQWatch.c",
"Scripts/Game/EscapistsAI/EAI_HQ.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQBodyObserver.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_BodyRecovery.c",
"addons/core/Scripts/Game/ERR/20_Intel/ERR_IntelEvidence.c"
],
"behavior": [
"Death callback registers local evidence;60m view limit/12m close range;15s per-unit scans;12-trace shared budget;16 local discoveries",
"radio-only deduplicated confirmations"
],
"remaining": "Dedicated multiplayer, inaccessible bodies, interrupted recovery teams and hostile-faction permutations remain runtime acceptance cases. Missing documents indicate potentially compromised sites, not an enemy sighting.",
"evidence": "Native retained corpse, delivered body report, separately spawned recovery team, physical inspection and missing-document radio uplink passed on 22 September. See docs/hq-air-support.md.",
"asset_scope": "vanilla"
},
{
"id": "belief_search",
"title": "Persistent remembered searches and predictive HQ",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_HQBodySearch.c",
"Scripts/Game/EscapistsAI/EAI_HQ.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQReport.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQ.c"
],
"behavior": [
"Ten-minute ground trail",
"snapshot ahead guesses300\u20131200m",
"road-aware vehicle hypotheses",
"casualty-location fallback",
"two-loss wave threshold/three-minute spacing/three living search groups"
],
"remaining": "Current HQ contacts expire at120s and have short velocity projection; no persistent confidence/uncertainty map, searched-ground memory, route alternatives or search-outcome feedback. New T8/T9 must preserve hypotheses separately from targetable sightings.",
"evidence": "projection policy only; persistent belief not implemented",
"asset_scope": "vanilla"
},
{
"id": "hunter",
"title": "Retaskable paired hunter UAZs",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_AIResponseSystem.c"
],
"replacement_files": [],
"behavior": [
"Two PKM UAZs",
"opposite1000m road approaches",
"full spec-ops crews+medic;300s dispatch cooldown;30s failed-placement retry",
"reuse existing pair"
],
"remaining": "Use shared finite forces and HQ-selected availability; no independent spawn clocks or free replacement losses.",
"evidence": "code only",
"asset_scope": "vanilla"
},
{
"id": "capture",
"title": "Captured-force ownership and stop reasons",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_ResponseSafety.c",
"Scripts/Game/EscapistsAI/EAI_SupplyConvoys.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQ.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftService.c"
],
"behavior": [
"Check nested turret seats/player crew membership",
"immediate permanent release after capture",
"retain living vehicles/crews/wrecks",
"first stop reason",
"restore detail/locks"
],
"remaining": "Current individual HQ/support eligibility has player guards, but hunter/convoy permanent capture latch and coordinated stop lifecycle require those capabilities.",
"evidence": "code guards; no migrated convoy runtime",
"asset_scope": "vanilla"
},
{
"id": "convoys",
"title": "Six-vehicle armed supply convoy patrols",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_SupplyConvoys.c"
],
"replacement_files": [],
"behavior": [
"0\u201320 startup convoys/default3",
"one spawn slot per5s",
"ammo Ural+3PKM UAZs+troop Ural+BMP",
"finite recoverable weapons/ammo",
"road-base destinations/35kmh/45\u201390s rests;400m contact regroup",
"two dismounted flank teams",
"ammo/troop truck retreat;60s quiet reboard/120s deadline;10min travel timeout",
"no replacement/refill",
"partial spawn retention"
],
"remaining": "Migrate exact authorized BMP/Ural/UAZ composition through finite HQ force records and shared active-agent budget; no independent spawn clock.",
"evidence": "missing",
"asset_scope": "BMP-1 mod; faction catalogs may transitively use RHS"
},
{
"id": "recon",
"title": "Operational airport reconnaissance helicopter",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_AirRecon.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftService.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftFlight.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftRouteFlight.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_ReconAirports.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_AirReconSystem.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_ReconFlightComponent.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_ReconCrewLocks.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_NativeAirReconProbe.c"
],
"behavior": [
"Incremental airport discovery",
"clear pads;15min initial/loss delay",
"one active armed Mi8",
"real sightings into HQ;300m orbit/150m minimum horizontal standoff",
"runway return/landing retry",
"player takeover release"
],
"remaining": "Dedicated multiplayer acceptance and player boarding/takeover; faction-specific aircraft catalogs and full endurance/service/rearm cycle. Air assault remains separate.",
"evidence": "Native airfield launch, real player sighting/shadow orbit, physical crew radio delivery to HQ, flight, same-aircraft landing, full loss delay and retained wreck replacement passed in erri-recon-native4. Forced player boarding remained unverified. Final ownership/deletion results and exact limits: docs/search-helicopter.md.",
"asset_scope": "Current vanilla armed Mi8 wrapped with successor flight component and four original native pilot/gunner occupants; no obsolete custom left-gun resource."
},
{
"id": "air_assault",
"title": "HQ-selected air reinforcement cycle",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_AirAssault.c",
"Scripts/Game/EscapistsAI/EAI_AirSupportPolicy.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_AirAssaultSystem.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_AirSupportPolicy.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_AirAssaultLoad.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_AirfieldSupport.c"
],
"behavior": [
"Up to8 carried troops/two teams",
"wait60s for mortar response",
"eligible observed infantry<=3m/s;1-in3 optional decision/120s separation",
"frozen450m tangent drop",
"abort stale/moved/conflicting reports;2min cover",
"return/reload/reboard"
],
"remaining": "Dedicated multiplayer and adversarial remote ownership/packet-loss acceptance remain; current implementation uses four finite attempted loads and HQ memory/ground-strength decisions.",
"evidence": "Production memory/strength policy and cover-target/deadline regressions pass. Controlled native eight-person drop, same-airframe return, service and second eight-person departure passed. See docs/hq-air-support.md for scope.",
"asset_scope": "External Parachute Framework 65930CB4CD0237B2 is required; vanilla Mi-8 and original physical troops."
},
{
"id": "parachutes",
"title": "Physical staggered AI parachute drop",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_AssaultParachute.c",
"Scripts/Game/EscapistsAI/EAI_AirAssault.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_AssaultParachute.c",
"addons/core/Prefabs/ERR/AssaultParachute.et"
],
"behavior": [
"Moving25m/s flyby at90\u2013180m AGL;>=2s/50m stagger",
"native compartment exits;5m/s descent/2m/s flare",
"no duplicate soldiers",
"released canopies finish after carrier loss"
],
"remaining": "Dedicated-client replication, canopy destruction and late native transfer acceptance remain.",
"evidence": "Eight original actors boarded physical canopies and landed in the 22 September native airborne fixture.",
"asset_scope": "Parachute Framework65930CB4CD0237B2"
},
{
"id": "aircraft_ammo",
"title": "Aircraft weapon ammunition and airfield reload",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_AircraftAmmo.c",
"Scripts/Game/EscapistsAI/EAI_AirRecon.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftAmmo.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_AirfieldSupport.c"
],
"behavior": [
"Native mounted-magazine/rocket-barrel accounting",
"return at<=25% usable ammunition",
"landed15s service",
"verified physical passenger boarding/retries",
"fixed finite payload per departure"
],
"remaining": "Airport service has finite gun-round, rocket-attempt and fuel budgets associated with physical depot entities. Spent rocket-pod runtime and dedicated multiplayer acceptance remain.",
"evidence": "Native same-airframe service consumed mounted-gun rounds and fuel before a second departure. Finite rocket-pod service compiles; spent-pod refill is not separately qualified. See docs/hq-air-support.md.",
"asset_scope": "vanilla"
},
{
"id": "air_recovery",
"title": "Ground helicopter recovery operation",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_HelicopterRecovery.c"
],
"replacement_files": [],
"behavior": [
"Repair Ural+2escorts+engineer+replacement pilot",
"settled road-accessible crash;5min planning/20min service deadline;60s uninterrupted repair",
"pilot physically boards",
"return convoy",
"captured aircraft permanently excluded",
"recovery holds loss timer"
],
"remaining": "Shared recovery task and finite resources; rebuilding destroyed airframe must consume an existing spare record, not mint replacement capability.",
"evidence": "missing",
"asset_scope": "vanilla repair Ural/UAZ/engineer candidates"
},
{
"id": "flight_safety",
"title": "Flight availability and physical landing guards",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_HelicopterAvailability.c",
"Scripts/Game/EscapistsAI/EAI_Landing.c",
"Scripts/Game/EscapistsAI/EAI_LogisticsVehicle.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_HelicopterAvailability.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftService.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_AircraftFlightEnvelope.c"
],
"behavior": [
"20s startup grace;60s prolonged grounding",
"separate damage/pilot/takeover states",
"stable landing",
"obstacle/friendly pad holds",
"temporary active crew detail and lock release"
],
"remaining": "Availability/short-range landing code exists; prove useful terrain routes and integrate availability into shared planner, not timed replacement.",
"evidence": "native vertical/20m mechanisms; broader airborne operation unqualified",
"asset_scope": "vanilla"
},
{
"id": "ammo_accounting",
"title": "General weapon/mine supply accounting",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_AmmoSupply.c",
"Scripts/Game/EscapistsAI/EAI_Mines.c"
],
"replacement_files": [],
"behavior": [
"Count loaded and spare rounds by compatible weapon",
"full-magazine equivalents",
"rifle/MG<=2/pistol-launcher<=1 threshold",
"desired6/4/2 magazines",
"mounted<=25%",
"mine deficits",
"empty-magazine recycling"
],
"remaining": "General infantry/vehicle manifests missing; extend finite mortar-only model without manufacturing compatible cargo at destination.",
"evidence": "code only",
"asset_scope": "vanilla"
},
{
"id": "resupply",
"title": "Truck/helicopter last-mile ammunition delivery",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_Resupply.c",
"Scripts/Game/EscapistsAI/EAI_LogisticsVehicle.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_MortarLogistics.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_MortarCourierTransfer.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_MortarSupplyTransfer.c"
],
"behavior": [
"One request per group",
"refresh destination from delivered status",
"one truck+one transportMi8",
"rotate4queue entries/30s",
"prefer air beyond2.5km/no road/stalled truck;15s unloading/60m living recipient range;3min expiry/retry;15min destroyed-carrier replacement",
"surviving carrier reuse"
],
"remaining": "Existing physical foot courier serves one mortar from finite stock; general request queue, truck/air carriers, recipient manifests, return/recycling and shared-loss replacement not implemented.",
"evidence": "native finite courier transfer; not vehicle logistics",
"asset_scope": "vanilla"
},
{
"id": "depots",
"title": "Physical depot stock-porters-carrier loading",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_DepotLoading.c"
],
"replacement_files": [],
"behavior": [
"Actual warehouse cargo;2porters walk stock->porter->carrier",
"verify ownership callbacks",
"full mags/disarmed mines only;24-item trip;15min loading deadline;18m cleared departure area",
"stolen stock/dead staff failures"
],
"remaining": "Create authored finite depot resources and pooled ground staff; preserve staged physical ownership and bounded timeouts.",
"evidence": "missing",
"asset_scope": "new own depot composition using vanilla box"
},
{
"id": "mines_issue",
"title": "One-time mine issue and resupply",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_Mines.c"
],
"replacement_files": [],
"behavior": [
"Eligible military inventory holds up to2PMN4",
"bounded startup issue",
"spent mine deficits via radio",
"captured/player/nonenemy exclusion"
],
"remaining": "Tie engineer loadouts and replenishment to finite ledger stock; do not regenerate dropped mines.",
"evidence": "missing",
"asset_scope": "vanilla PMN4 candidate; confirm installed availability"
},
{
"id": "mines_task",
"title": "Engineer mine placement lifecycle",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_MineTask.c"
],
"replacement_files": [],
"behavior": [
"Road-flank waypoints;10s physical placement",
"withdraw20m",
"no friendly within20m",
"native pressure arming;4mines/site/32mission tasks;180s timeout",
"interruption/pickup/death never arms"
],
"remaining": "HQ task reservations and clear player warning cues; stock-owned native items only; trace/proximity work budgeted.",
"evidence": "code only",
"asset_scope": "vanilla"
},
{
"id": "roadblocks",
"title": "Reactive staffed roadblocks",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_HQRoadblocks.c"
],
"replacement_files": [],
"behavior": [
"Fresh moving ground snapshot",
"ahead-of-track road candidate",
"orient against25m road probe",
"actual airport crew boarding/transit/dismount",
"optional armor after6confirmed casualties",
"engineer flanks",
"captured-force exclusion"
],
"remaining": "Use belief hypotheses/road topology and finite ledger force deployment; preserve searched/escape corridors and player placement exclusions.",
"evidence": "missing",
"asset_scope": "authorized WCS BMP-1; vanilla alternative remains a deliberate option"
},
{
"id": "mortar_deployment",
"title": "Physical dispersed mortar sites",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_MortarSystem.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_MortarReadiness.c"
],
"behavior": [
"Four quadrant sites;3crew+RTO;27physicalHE each",
"incremental16placement candidates/5s",
"terrain/road/spacing safety;2min quadrant fallback",
"no loss respawn"
],
"remaining": "Successor has one authored battery/4crew/27shell readiness. Four-site deployment and force-ledger reservation are missing.",
"evidence": "native one-battery readiness and transfer",
"asset_scope": "vanilla"
},
{
"id": "mortar_fire",
"title": "Ballistic prediction, safe salvos and accounting",
"status": "implemented",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_MortarPrediction.c",
"Scripts/Game/EscapistsAI/EAI_MortarEngagement.c",
"Scripts/Game/EscapistsAI/EAI_MortarFiring.c",
"Scripts/Game/EscapistsAI/EAI_MortarSalvo.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_MortarPrediction.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_MortarSystem.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_MortarSalvo.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_MortarFiring.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_MortarReportLedger.c"
],
"behavior": [
"HQ-delivered<=60s snapshots",
"native aim/charge/flight solve",
"road-bounded velocity projection<=90s/1800m;8shot salvo/40m spread",
"actual projectile accounting",
"refreshed reports",
"final-transfer revalidation;120s deadline",
"stale/no-ammo/capture cancellation"
],
"remaining": "Current one-battery behavior implemented; broad moving-target impact accuracy, multiplayer, more batteries and aircraft corridor reservation integration remain unqualified.",
"evidence": "native8actualprojectiles55assertions; stale expiry48assertions",
"asset_scope": "vanilla"
},
{
"id": "settlement_safety",
"title": "Settlement/friendly protection and deconfliction",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_SettlementSafety.c",
"Scripts/Game/EscapistsAI/EAI_MortarEngagement.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_SettlementSafety.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_MortarPrediction.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_MortarSystem.c"
],
"behavior": [
"200m settlement exclusion;100m predicted friendly-path buffer",
"per-shell repeated checks",
"cached identical positions",
"aircraft/drop600m reservation through flight impact+10s"
],
"remaining": "Ground/mortar safety exists; roadblock/mine/air corridor consumers and full shared planner reservations remain missing.",
"evidence": "native firing safety gates; not full combined-arms qualification",
"asset_scope": "vanilla"
},
{
"id": "performance",
"title": "Work budgets, temporary detail and metrics",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_Performance.c",
"Scripts/Game/EscapistsAI/EAI_LogisticsVehicle.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQNetwork.c",
"tools/compare_performance.py"
],
"behavior": [
"Bounded radio spatial graph",
"staggered30s ammo scans",
"system timing",
"cargo-only sleeping beyond1.5km",
"drivers/gunners active",
"reboard/combat wakes",
"preserve normal detail after stop"
],
"remaining": "Replace old NearPlayer/ConvoyLOD ownership with T2 presence budget. Shared force simulation/agent cap/metrics and equivalent-workload FPS evidence do not yet exist.",
"evidence": "policy/runtime component bounds; no FPS improvement",
"asset_scope": "vanilla"
},
{
"id": "ambient_disable",
"title": "Single owner of strategic responses",
"status": "implemented",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_DisableAmbientEvents.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQ.c",
"addons/core/Scripts/Game/ERR/00_Core/ERR_ScenarioComponent.c"
],
"behavior": [
"Suppress original random ambient events",
"no virtual mortar/rocket barrages",
"HQ coordinates strategic response while native tactical combat continues"
],
"remaining": "Original systems are absent by dependency isolation, so no original override needs porting. Maintain this invariant as capabilities grow.",
"evidence": "independent packed Core/Chat startup",
"asset_scope": "vanilla"
},
{
"id": "factions",
"title": "Consistent military faction ownership",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_FactionRelations.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/00_Core/ERR_FactionCatalog.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQ.c"
],
"behavior": [
"Normalize US/UK->NATO and USSR->USSR_NI aliases after every-member checks",
"exclude players/slaves/mixed unrelated/civilian/selectedside conflicts",
"late member support"
],
"remaining": "RHS dependency is authorized; add fresh explicit RHS role/faction catalogs, replacing all original composite catalog APIs.",
"evidence": "vanilla runtime only",
"asset_scope": "RHS/composite-original catalog dependencies not migrated"
},
{
"id": "prisons",
"title": "Improvised prison starts and physical supplies",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_ImprovisedPrisons.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/00_Core/ERR_PrisonEscapeService.c",
"addons/core/Scripts/Game/ERR/00_Core/ERR_SiteService.c",
"addons/core/Configs/ERR/EveronSites.conf"
],
"behavior": [
"Random clear10x10m concrete camp;<=0.6m terrain variation;3\u20135guards/16spawnpositions",
"native metaldoor;5pistols/8sparemagazines finite backpack;>=1500mairfield/12mroad clearance;12000boundedcandidate search/fallback"
],
"remaining": "Current successor prison/lock/supplies are implemented at authored coordinates. Random island generation, airfield exclusion and alternate geometry have not migrated. This source does NOT implement recapture.",
"evidence": "native base loop; ordinary full human route still pending",
"asset_scope": "vanilla"
},
{
"id": "start_choices",
"title": "Configurable prison/crash start selection",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_StartSelection.c"
],
"replacement_files": [],
"behavior": [
"Modes0scenario/1generated/2existingprison/3crash/4randomexisting",
"preserve all other mission settings",
"safe fallback when requested native starts unavailable"
],
"remaining": "Author new independent prison/crash scenarios and own selection; never reuse original crash compositions or setup snapshots.",
"evidence": "code only",
"asset_scope": "vanilla"
},
{
"id": "outfit",
"title": "Persistent initial outfit choice",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_StartingOutfit.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/00_Core/ERR_SpawnLogic.c",
"addons/core/Scripts/Game/ERR/00_Core/ERR_AdminPlayerTools.c",
"addons/core/Prefabs/ERR/Prisoner.et"
],
"behavior": [
"One-time delayed equipped helmet/jacket after spawn",
"latejoin/respawn",
"preserve other equipment",
"no ongoing re-equip"
],
"remaining": "Successor has own prisonerkit and optional vanilla PASGT/BDU cheat grants; original patched automatic outfit not migrated. Owned Patch content separate audit/authorization scope.",
"evidence": "native prisoner kit + admin utilities",
"asset_scope": "owned Escapists-Patch custom skull outfit; vanilla PASGT/BDU available"
},
{
"id": "stinger",
"title": "Rare anti-air launcher loadout",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_StingerEquipment.c"
],
"replacement_files": [],
"behavior": [
"One startup roll per eligible enemy;1inN/default15/0disabled",
"loadedFIM92 preserves existing weapons",
"native acceptance/ownership verification",
"bounded retry",
"no refill after drop/fire"
],
"remaining": "WCS Armaments is now authorized: preserve exact FIM92 resource and bounded physical assignment policy; do not import Enhanced/original dependencies.",
"evidence": "missing",
"asset_scope": "WCS Armaments FIM92 resource3DF204EEE0534EF2"
},
{
"id": "optics",
"title": "Verified magnified optics on compatible AI weapons",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_SniperOptics.c"
],
"replacement_files": [],
"behavior": [
"All eligible AI rifles/snipers/MGs",
"retain magnified optics",
"select compatible mount+optic",
"native blocked-pair retries;2/5/8/11s attempts/14s final check",
"callback acknowledgement",
"no repeat unknown accepted operation",
"preserve player loot"
],
"remaining": "Good bounded next subsystem: service on newly registered physical soldiers with own native attachment verification; use verified vanilla scopes only; no global original attachment override.",
"evidence": "missing",
"asset_scope": "some original optics/asset overrides need vanilla provenance verification"
},
{
"id": "compatibility",
"title": "Original dependency runtime fixes",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_DependencyGuards.c",
"Scripts/Game/EscapistsAI/EAI_RuntimeGuards.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/00_Core/ERR_SpawnLogic.c",
"addons/core/Scripts/Game/ERR/00_Core/ERR_InitialGuardRules.c"
],
"behavior": [
"Null-controller delayed spawn guards",
"stale defend-waypoint guard",
"tooltip lifetime guard",
"original civilian random bounds/head collider bounds",
"arsenal replication startup guard",
"invalid supportstation setup",
"enhanced default-magazine probe cleanup"
],
"remaining": "Original-base/Enhanced overrides are unnecessary or must be newly expressed if successor-specific faults reproduce. Do not bulk-copy protected override bodies. Audit surviving vanilla-only defects separately.",
"evidence": "successor spawn/admission and teardown fixtures",
"asset_scope": "original Escapists/Enhanced hooks intentionally absent"
},
{
"id": "simulation",
"title": "Autonomous escape test mode and spectators",
"status": "missing",
"original_files": [
"Scripts/Game/EscapistsAI/Simulation/EAI_Simulation.c",
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationBot.c",
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationIntel.c",
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationLifecycle.c",
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationMedical.c",
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationPrison.c",
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationSpectators.c"
],
"replacement_files": [],
"behavior": [
"6AIprisoners physically scavenge5pistols",
"holdlock20s/retry picker",
"loot corpses/intel",
"native medical treatment",
"identifiedradio/tune/defend",
"allsurvivor boarding/physical scriptedflight",
"human spectator-only lifecycle",
"savedmode+3srestart",
"zero duplication/replacements"
],
"remaining": "Successor WORKBENCH smoke is a different development fixture and not this normal-server autonomous mode. Full native player-lifecycle/medical/intel interfaces can be reused; this is NOT distant-unit virtualization.",
"evidence": "no migrated normal-server simulation",
"asset_scope": "original spectator/editor and base mission APIs must be replaced"
},
{
"id": "journal",
"title": "HQ journal and private live diagnostics",
"status": "implemented",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_HQJournal.c",
"Scripts/Game/EscapistsAI/EAI_HQ.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQJournal.c",
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQAdminProvider.c",
"addons/core/Scripts/Game/ERR/00_Core/ERR_AdminSession.c",
"addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenu.c"
],
"behavior": [
"Session/message/sequence correlation;300recentlines/4096pending;5MiB rotation;30s file retry",
"gap notices",
"chat8entries/2s",
"menu40entries/1s",
"pause/latest/scroll state"
],
"remaining": "Infrastructure implemented. New systems still need meaningful status/events; long-running multiplayer/file-failure behavior not fully qualified.",
"evidence": "native menu/journal fixture + packaged startup",
"asset_scope": "vanilla"
},
{
"id": "catalogs",
"title": "Independent unit composition catalogs",
"status": "partial",
"original_files": [
"Scripts/Game/EscapistsAI/EAI_GroupLookup.c"
],
"replacement_files": [
"addons/core/Scripts/Game/ERR/00_Core/ERR_FactionCatalog.c"
],
"behavior": [
"Catalog-backed physical group composition"
],
"remaining": "EAI_GroupLookup is excluded without reading its content as a model. Build richer vanilla role/crew catalogs independently; never translate copied lookup code.",
"evidence": "vanilla startup only",
"asset_scope": "excluded protected-derived source"
}
],
"script_inventory": [
{
"path": "Scripts/Game/EscapistsAI/EAI_AIConfig.c",
"features": [
"config"
],
"sha256": "8c320d3163d443b43e50547734702484c8ad51f2cffe88cf6dfd33aaf339ec01",
"lines": 232
},
{
"path": "Scripts/Game/EscapistsAI/EAI_AIResponseSystem.c",
"features": [
"skill",
"hunter"
],
"sha256": "b3e1263e986837744a70fbaedaa6e57afae7f2981a21211d3a2066e2c63ac84d",
"lines": 660
},
{
"path": "Scripts/Game/EscapistsAI/EAI_AirAssault.c",
"features": [
"air_assault",
"parachutes"
],
"sha256": "a9c0c2bf59fb4f9b351913708cee54a302a9e447d30c2766faa91c7573af1b6d",
"lines": 423
},
{
"path": "Scripts/Game/EscapistsAI/EAI_AirRecon.c",
"features": [
"recon",
"aircraft_ammo"
],
"sha256": "7e72c9eac0fce21865f09a923cbfd638c25939c8492b3e1e5dfdda1f1394f51e",
"lines": 1335
},
{
"path": "Scripts/Game/EscapistsAI/EAI_AirSupportPolicy.c",
"features": [
"air_assault"
],
"sha256": "51605d83624073a30f672881d46c652bd03a7e040ccc4d812c9e8d0c456be87f",
"lines": 40
},
{
"path": "Scripts/Game/EscapistsAI/EAI_AircraftAmmo.c",
"features": [
"aircraft_ammo"
],
"sha256": "52bed2b0008762f221bed4f139cfe0a34e69e0ee455ef3dc47276d3dc3373c45",
"lines": 97
},
{
"path": "Scripts/Game/EscapistsAI/EAI_AmmoSupply.c",
"features": [
"ammo_accounting"
],
"sha256": "97587483227699b78e78f1223f46ebf286d458ffcf06b79f458807b6e95f969e",
"lines": 372
},
{
"path": "Scripts/Game/EscapistsAI/EAI_AssaultParachute.c",
"features": [
"parachutes"
],
"sha256": "b2d2be240d184c436a5b2fd1a03d446763a1c27b6b5c825a988b05feaec7a346",
"lines": 320
},
{
"path": "Scripts/Game/EscapistsAI/EAI_ConvoySettings.c",
"features": [
"config"
],
"sha256": "6ceb44226c2608ef09bb246af1238679030c04a6dab5351e97e3dfe955b446c7",
"lines": 19
},
{
"path": "Scripts/Game/EscapistsAI/EAI_DependencyGuards.c",
"features": [
"compatibility"
],
"sha256": "094744d77c5c99f7a46e6b3a0aba071f34b4b34cb467eea30264d5f63151a7d9",
"lines": 157
},
{
"path": "Scripts/Game/EscapistsAI/EAI_DepotLoading.c",
"features": [
"depots"
],
"sha256": "5b608f36621c9d744bdc55829b1000af70ba9d8853b8a90828d774557a204375",
"lines": 305
},
{
"path": "Scripts/Game/EscapistsAI/EAI_DisableAmbientEvents.c",
"features": [
"ambient_disable"
],
"sha256": "8e9d6b5abb4aaa3e83654abf5aeda429093b3bd6cb03f7f9b3953dc028d4023f",
"lines": 85
},
{
"path": "Scripts/Game/EscapistsAI/EAI_FactionRelations.c",
"features": [
"factions"
],
"sha256": "1595926655f3597cbe3c648cd52a0372bc24346eefd99802a3dafe853f935651",
"lines": 105
},
{
"path": "Scripts/Game/EscapistsAI/EAI_GroupLookup.c",
"features": [
"catalogs"
],
"audit": "excluded; contents not read or used as implementation model"
},
{
"path": "Scripts/Game/EscapistsAI/EAI_GroupTactics.c",
"features": [
"ground_tactics"
],
"sha256": "226eb3981765284afa0cead84411244806a84440003fe4af69f2208028cef23d",
"lines": 418
},
{
"path": "Scripts/Game/EscapistsAI/EAI_HQ.c",
"features": [
"radio",
"observations",
"ground_tactics",
"status",
"missing_patrol",
"body_discovery",
"belief_search",
"journal"
],
"sha256": "4898ac471fb16433fc5d98244a8cec89c5e8e006af2c94bbcd89113a2b7107c8",
"lines": 1552
},
{
"path": "Scripts/Game/EscapistsAI/EAI_HQBodySearch.c",
"features": [
"body_discovery",
"belief_search"
],
"sha256": "c46e318d4331bedefbefad19f735dc45752ed21d0a2c232880673c1cbe2c686c",
"lines": 264
},
{
"path": "Scripts/Game/EscapistsAI/EAI_HQJournal.c",
"features": [
"journal"
],
"sha256": "0d714bc60940898dac560ee0902997ca82e324395dc2696c6424909a0a587c81",
"lines": 101
},
{
"path": "Scripts/Game/EscapistsAI/EAI_HQNetwork.c",
"features": [
"radio"
],
"sha256": "1a7e279b050514bad86f18fdd233b7eb5728e99bab3daae3aedb31ceb571c271",
"lines": 241
},
{
"path": "Scripts/Game/EscapistsAI/EAI_HQObservation.c",
"features": [
"observations"
],
"sha256": "735611603dbfa80218a42c6722dda09a3de8c7369aa5689cb8cb711851ede6dd",
"lines": 199
},
{
"path": "Scripts/Game/EscapistsAI/EAI_HQRoadblocks.c",
"features": [
"roadblocks"
],
"sha256": "128776f0b448162ee36cfc71b2a38d2cd06d6d6e4679253f215896aa3fcabb98",
"lines": 419
},
{
"path": "Scripts/Game/EscapistsAI/EAI_HQSettings.c",
"features": [
"config"
],
"sha256": "82f2a9b7f2a60d499ce4155c3584ccf42121ebf16b944392bc5a7fe1bef25df7",
"lines": 32
},
{
"path": "Scripts/Game/EscapistsAI/EAI_HQStatus.c",
"features": [
"status"
],
"sha256": "7127dcf23be7bcbb9415d8ef6c8f1da5bec551fbf16fc1054487dcd7a877d885",
"lines": 325
},
{
"path": "Scripts/Game/EscapistsAI/EAI_HQWatch.c",
"features": [
"missing_patrol",
"body_discovery"
],
"sha256": "7807aa97c4625a82841b6992416a9d0c8836f987767a99264934c1f79320f64a",
"lines": 63
},
{
"path": "Scripts/Game/EscapistsAI/EAI_HelicopterAvailability.c",
"features": [
"flight_safety"
],
"sha256": "bb565c5c5f7d4e671a295ae7e951f9ebdde626ffdecc4ae7d92e0e776e1730e0",
"lines": 31
},
{
"path": "Scripts/Game/EscapistsAI/EAI_HelicopterRecovery.c",
"features": [
"air_recovery"
],
"sha256": "3ab340e7790ca0536b97a809daf00a155cc972b557297a03532fe622ac0db87c",
"lines": 439
},
{
"path": "Scripts/Game/EscapistsAI/EAI_ImprovisedPrisons.c",
"features": [
"prisons"
],
"sha256": "e1b7dd3b7b45bc803e61e2031030d873101947def8b6a41fe450555e90d000b9",
"lines": 493
},
{
"path": "Scripts/Game/EscapistsAI/EAI_Landing.c",
"features": [
"flight_safety"
],
"sha256": "7d335cd93e9141b779c90fd0e4962af290e2b6c0ec4c6e9501ded3e2fd165f09",
"lines": 15
},
{
"path": "Scripts/Game/EscapistsAI/EAI_LogisticsVehicle.c",
"features": [
"flight_safety",
"resupply",
"performance"
],
"sha256": "8e109e6f010f1af1a4d8ec9ad01d0f683dad014c76c9a763b091bba8a320de9b",
"lines": 337
},
{
"path": "Scripts/Game/EscapistsAI/EAI_MineTask.c",
"features": [
"mines_task"
],
"sha256": "d5a06b646b0d789832badacb75e7a10a5097c4a4ac32dffd72aca3390b5d9e60",
"lines": 146
},
{
"path": "Scripts/Game/EscapistsAI/EAI_Mines.c",
"features": [
"ammo_accounting",
"mines_issue"
],
"sha256": "108cbe8175e339db88f2c0f36ef3c22d29805cf7794b63cb4edc171e29f92ef3",
"lines": 64
},
{
"path": "Scripts/Game/EscapistsAI/EAI_MortarEngagement.c",
"features": [
"mortar_fire",
"settlement_safety"
],
"sha256": "853bea893bd39d90621a7e391e98931d7518ec07b61da921204dfd9e50c82f27",
"lines": 88
},
{
"path": "Scripts/Game/EscapistsAI/EAI_MortarFiring.c",
"features": [
"mortar_fire"
],
"sha256": "aadd057a1f3f4326bd41500be7a12051a16de9d5925fca2452a46cdfbf0d6d12",
"lines": 221
},
{
"path": "Scripts/Game/EscapistsAI/EAI_MortarPrediction.c",
"features": [
"mortar_fire"
],
"sha256": "b58d9ea6e211fc479a1674c380be4979ebacf46d14facae74257aa0937b6cd49",
"lines": 131
},
{
"path": "Scripts/Game/EscapistsAI/EAI_MortarSalvo.c",
"features": [
"mortar_fire"
],
"sha256": "f0235c4516eebd03e5721d259dabcb516a4e457e9909a1b8bb08553a0f7bc652",
"lines": 16
},
{
"path": "Scripts/Game/EscapistsAI/EAI_MortarSystem.c",
"features": [
"mortar_deployment"
],
"sha256": "b355227b2b221147d35e1dacbc07cf650838229b9a6d22cd30cc1e304112b33f",
"lines": 931
},
{
"path": "Scripts/Game/EscapistsAI/EAI_NativeRadioCall.c",
"features": [
"radio"
],
"sha256": "ed9ad2a8137395e25363f94e81d4854e159136a53a67e2be4b89fdcb08d712d6",
"lines": 32
},
{
"path": "Scripts/Game/EscapistsAI/EAI_Performance.c",
"features": [
"performance"
],
"sha256": "f9ea5747e4ca16d88dfe56d796268d7d3cf01efe037e37ba7798835f2b17813d",
"lines": 76
},
{
"path": "Scripts/Game/EscapistsAI/EAI_ResponseSafety.c",
"features": [
"capture"
],
"sha256": "b3dcbe8f3dd840791e91e9ec202cd392ebc4895714816cdcedcdc591baa62b05",
"lines": 49
},
{
"path": "Scripts/Game/EscapistsAI/EAI_Resupply.c",
"features": [
"resupply"
],
"sha256": "dfa28d0741c5515c85a6e62bc6d1a104f5474ddc22a6e58931be1583133f3586",
"lines": 624
},
{
"path": "Scripts/Game/EscapistsAI/EAI_RuntimeGuards.c",
"features": [
"compatibility"
],
"sha256": "d843e7807501eb94f31a4c7628e8357e2404c2e598c5c3c697b091b1ab266edb",
"lines": 85
},
{
"path": "Scripts/Game/EscapistsAI/EAI_SettlementSafety.c",
"features": [
"settlement_safety"
],
"sha256": "6961ad593d20f86c30b557542b4f67fd44d9579037776b07cd95616927eda83d",
"lines": 76
},
{
"path": "Scripts/Game/EscapistsAI/EAI_SniperOptics.c",
"features": [
"optics"
],
"sha256": "96a302da44fdb9207c12cc1c9c93aad38eb510cb0cf9befd800f60a2945b08e8",
"lines": 191
},
{
"path": "Scripts/Game/EscapistsAI/EAI_StartSelection.c",
"features": [
"start_choices"
],
"sha256": "5dae5de5efe59cf2b40a289becafb6ef1aed00271cc561769cdb1f570174ee7b",
"lines": 85
},
{
"path": "Scripts/Game/EscapistsAI/EAI_StartingOutfit.c",
"features": [
"outfit"
],
"sha256": "54308138b73e23b5dcc47b5111d55f843a6d7bb7f39fe8466571e54a73246db6",
"lines": 132
},
{
"path": "Scripts/Game/EscapistsAI/EAI_StingerEquipment.c",
"features": [
"stinger"
],
"sha256": "b8ce09f2d3ed61e58beadc1f158daed6eceb17b08243f7979b46d8c27e917695",
"lines": 87
},
{
"path": "Scripts/Game/EscapistsAI/EAI_SupplyConvoys.c",
"features": [
"capture",
"convoys"
],
"sha256": "a896fdacfd9c0f2db52e588642623545a3a5d6e8041fb72000a68e720fc2b7a5",
"lines": 1463
},
{
"path": "Scripts/Game/EscapistsAI/Simulation/EAI_Simulation.c",
"features": [
"simulation"
],
"sha256": "4688fd4eccb490ae416707400ae889aae6bf3794402d5e68da0d03efddf01ab1",
"lines": 669
},
{
"path": "Scripts/Game/EscapistsAI/Simulation/EAI_SimulationBot.c",
"features": [
"simulation"
],
"sha256": "9d9e809a6f39623bda49749304bbffb89c19b9e83e4f30f1ac2a9780d4526397",
"lines": 66
},
{
"path": "Scripts/Game/EscapistsAI/Simulation/EAI_SimulationIntel.c",
"features": [
"simulation"
],
"sha256": "d53fcb1933bc563aa0d72bc4093bfec68da69241abe6639f5e030422457d1cf1",
"lines": 29
},
{
"path": "Scripts/Game/EscapistsAI/Simulation/EAI_SimulationLifecycle.c",
"features": [
"simulation"
],
"sha256": "c375a4ad7c7af621f89c16150f42262ff6501fb92e2a96ab85f28f879cb0ac39",
"lines": 161
},
{
"path": "Scripts/Game/EscapistsAI/Simulation/EAI_SimulationMedical.c",
"features": [
"simulation"
],
"sha256": "a9da70fdecd20d8fd9e23f45fcb2b070916b76f0ee0418f72f18805f2d2149f0",
"lines": 128
},
{
"path": "Scripts/Game/EscapistsAI/Simulation/EAI_SimulationPrison.c",
"features": [
"simulation"
],
"sha256": "f9098c2f312e202130b3789eb2b67ca38ed3c44a859be24543816a028a552644",
"lines": 88
},
{
"path": "Scripts/Game/EscapistsAI/Simulation/EAI_SimulationSpectators.c",
"features": [
"simulation"
],
"sha256": "0e3b911914cf06e31c836323cba170782ef994338d75cd8202b5ab7c4e9285f4",
"lines": 278
}
],
"test_inventory": [
{
"path": "tests/ai_chat_config_regression.py",
"sha256": "b4b0dc6a74a4a5beda787fb676a378316bfb9c9589bd6365ded0ae3da44d91df",
"source_references": [],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/ai_config_regression.py",
"sha256": "7dec0063274ec84a861f11b4df15b75c68dc88fa132f1ce9762063ef05bdd504",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_AIConfig.c",
"Scripts/Game/EscapistsAI/EAI_ImprovisedPrisons.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/air_assault_regression.py",
"sha256": "f27ea28bf4c6e52ecaf9ce45fa3bfab1bce7b6e07cd8eac377f465a7d4d6bad2",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_AirAssault.c",
"Scripts/Game/EscapistsAI/EAI_AirRecon.c",
"Scripts/Game/EscapistsAI/EAI_AircraftAmmo.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/air_support_regression.py",
"sha256": "b0c0cbf9d2918b03b37297575cbd678a633296939cf6c64095769fac4ddb7074",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_AirSupportPolicy.c",
"Scripts/Game/EscapistsAI/EAI_MortarFiring.c",
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/airport_reload_regression.py",
"sha256": "9ef8ab9ab33d02899636859ae3c65919726b92c0c7a9604af704bac2c1a78b85",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_AirRecon.c",
"Scripts/Game/EscapistsAI/EAI_Landing.c",
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/convoy_stop_regression.py",
"sha256": "245dd69dcd300a49fe743875280321165d1da15c0cdbe23188631eec3e418c54",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_SupplyConvoys.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/depot_loading_regression.py",
"sha256": "2e80b3ce86b0607a5b62cdd49d7e898c17c23fd5e67597a5e8789bc71076ba41",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_DepotLoading.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/faction_alignment_regression.py",
"sha256": "37666426aae9f303f255861f89cf4cacefb38a6994fc2dd6fced11f53e1b7c7f",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_FactionRelations.c",
"Scripts/Game/EscapistsAI/EAI_HQ.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/helicopter_availability_regression.py",
"sha256": "b8f92feaf7f8057082a9c7c20cc889da3b614d74d19e206491ccecceec7e92e0",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_AirRecon.c",
"Scripts/Game/EscapistsAI/EAI_HelicopterAvailability.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/helicopter_recovery_regression.py",
"sha256": "38e693a1c9f204dbab1a4ab800fa219d6aa3b7c378957434ab312a2f84832d25",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_AirRecon.c",
"Scripts/Game/EscapistsAI/EAI_HelicopterRecovery.c",
"Scripts/Game/EscapistsAI/EAI_LogisticsVehicle.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/hq_body_search_regression.py",
"sha256": "975abef7f7ef378b150e2c46266574a786588a2fa0ff6ee43e708d58227222c8",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_HQ.c",
"Scripts/Game/EscapistsAI/EAI_HQBodySearch.c",
"Scripts/Game/EscapistsAI/EAI_HQStatus.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/hq_journal_regression.py",
"sha256": "426a04d4117c2e9c3d4ce5aef112cb628cb0cd6511b727d05e554b6a29ae1c8e",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_HQJournal.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/hq_menu_checks.py",
"sha256": "6f14906d08ddd67e909eae5ef37ca8395476fc84920fed77ca276012a58dd88b",
"source_references": [],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/hq_network_regression.py",
"sha256": "a09b5cbf3453e6af31d1d888b5489586efbddbdb89b6e2b2d6eed52ce67e1098",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_HQ.c",
"Scripts/Game/EscapistsAI/EAI_HQNetwork.c",
"Scripts/Game/EscapistsAI/EAI_HQStatus.c",
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/hq_observation_regression.py",
"sha256": "76b715d46f44d560896c502d01ed89ce16b6366596b607cef111db886cb6dcf6",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_HQObservation.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/hq_regression.py",
"sha256": "4b9a0b66851f27700584e548c82cda8de7f9fda72868566e4bac227500951172",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_HQ.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/hq_settings_regression.py",
"sha256": "1e68b985cf7d0446894eeecfa16335d4581e78c386a2ed81454e62512f6c76d6",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_AirRecon.c",
"Scripts/Game/EscapistsAI/EAI_ConvoySettings.c",
"Scripts/Game/EscapistsAI/EAI_HQSettings.c",
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationLifecycle.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/hq_watch_regression.py",
"sha256": "87e9bb484e2a37bfda9a4827d1fa4cd50b0c38bde07659df171c7e9c800a2150",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_HQ.c",
"Scripts/Game/EscapistsAI/EAI_HQWatch.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/mine_task_regression.py",
"sha256": "5eca78bfa4fdc11f6f9107e83b06676f6f20cc4fb75b940768a25ffaaa6f812b",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_MineTask.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/mortar_deployment_regression.py",
"sha256": "8fdb4994d05a56409f46f074c2f41298143628d19c5644093e21eaf423eee31d",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/mortar_engagement_regression.py",
"sha256": "a39ecc1132b51e13d80f4136a1d219fb5fc08d193b9e6c0be48dd9378e1e762a",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_MortarEngagement.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/mortar_footprint_regression.py",
"sha256": "56ec6d478c036d1c7b1f65fde9170f73af77c8ed8175dc443cb079344c7a2c92",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_ImprovisedPrisons.c",
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/mortar_logging_regression.py",
"sha256": "49d2c83c6f18ae8ffed152c5cc8480079a85731ec94fbd1f014362ec7d93f174",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_MortarFiring.c",
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/mortar_operator_regression.py",
"sha256": "80f2a2d5e1bc8c38345b76f5e83cb3bc527fac7ad41111b3dee9327e60bbcaf5",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_HQStatus.c",
"Scripts/Game/EscapistsAI/EAI_MortarFiring.c",
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/mortar_regression.py",
"sha256": "f4ed7027857056e158291d7a0c64072d435494c3d1dc71df4e6eee0c4a7e5c16",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_HQStatus.c",
"Scripts/Game/EscapistsAI/EAI_ImprovisedPrisons.c",
"Scripts/Game/EscapistsAI/EAI_MortarFiring.c",
"Scripts/Game/EscapistsAI/EAI_MortarPrediction.c",
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/mortar_salvo_regression.py",
"sha256": "bba2d57c4f5ccb76819ce90a63bc157e29fd033a3430318689c84c5e4c5f6f29",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_MortarFiring.c",
"Scripts/Game/EscapistsAI/EAI_MortarSalvo.c",
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/mortar_settlement_regression.py",
"sha256": "6672605e495c1e7a3abd1dc1311f5449397d09152d17fd41a2d1cb78ff395492",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_HQRoadblocks.c",
"Scripts/Game/EscapistsAI/EAI_MortarFiring.c",
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c",
"Scripts/Game/EscapistsAI/EAI_SettlementSafety.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/prison_airfield_regression.py",
"sha256": "30f48b626ddccfbd0a8ca6295f00000cc89554c9491ecbb177032a48a746d15f",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_AirRecon.c",
"Scripts/Game/EscapistsAI/EAI_ImprovisedPrisons.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/response_capture_regression.py",
"sha256": "b6d309fe82dc538d6c6bb48e943f72fb9fb012b4e140acd36f9095ab12cb1878",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_AIResponseSystem.c",
"Scripts/Game/EscapistsAI/EAI_AirRecon.c",
"Scripts/Game/EscapistsAI/EAI_AssaultParachute.c",
"Scripts/Game/EscapistsAI/EAI_ResponseSafety.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/resupply_regression.py",
"sha256": "72828f53e6f77db41558cbece31da6ace6eeefc0674648dd16eaec659b46daab",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_AmmoSupply.c",
"Scripts/Game/EscapistsAI/EAI_HQStatus.c",
"Scripts/Game/EscapistsAI/EAI_Resupply.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/roadblock_deployment_regression.py",
"sha256": "b696ec1c5fabdade9b8c4deb831d33db118f30b63e66229d8fd885d62b49c9bd",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_HQRoadblocks.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/roadblock_regression.py",
"sha256": "e0725fe89b07e8b5371102800088d7be38158bf5248b155250595efb20cd8598",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_HQ.c",
"Scripts/Game/EscapistsAI/EAI_HQRoadblocks.c",
"Scripts/Game/EscapistsAI/EAI_MineTask.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/runtime_resources_regression.py",
"sha256": "d8c0c602c60e5fea1ef35364be6163547b77d670b0d24ec5fcd76a97e1769c8d",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_ImprovisedPrisons.c",
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c",
"Scripts/Game/EscapistsAI/EAI_Performance.c",
"Scripts/Game/EscapistsAI/EAI_RuntimeGuards.c",
"Scripts/Game/EscapistsAI/EAI_SupplyConvoys.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/scope_detection_regression.py",
"sha256": "6865b52d1cbfe44d1b1b7a40555f202298056ecd2f3a93a09b6d36f6d28b3765",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_SniperOptics.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/scope_prefabs_regression.py",
"sha256": "8959c7d1d494d1808e660411ce4c2afb538e17af3220a57fa1f14fdf2f03f506",
"source_references": [],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/session_fixes_regression.py",
"sha256": "b78419295f7b080de7068823a33ef81bef7ecfa49d739c77c9f56f99df098999",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_AirRecon.c",
"Scripts/Game/EscapistsAI/EAI_AssaultParachute.c",
"Scripts/Game/EscapistsAI/EAI_DependencyGuards.c",
"Scripts/Game/EscapistsAI/EAI_Landing.c",
"Scripts/Game/EscapistsAI/EAI_LogisticsVehicle.c",
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/simulation_chat_regression.py",
"sha256": "28f906f687a98eb1800a9f28ba7f7a550a0e40e6d4746eb134cca0094c5fd94c",
"source_references": [
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationLifecycle.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/simulation_intel_bridge_regression.py",
"sha256": "f8ec1c424ff90838b7d34616a98ed1cd80e082c68de81c6743940a5a37785bf3",
"source_references": [
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationIntel.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/simulation_prison_regression.py",
"sha256": "a901b2eb4b462d4794157e67b0818b88b2176f0beb2dfb38fd71685f86909080",
"source_references": [
"Scripts/Game/EscapistsAI/Simulation/EAI_Simulation.c",
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationBot.c",
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationPrison.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/simulation_regression.py",
"sha256": "0e01653cfcae35530f68cd1bf5d5636e71b05e1dd396ba2194cda649c5a39237",
"source_references": [
"Scripts/Game/EscapistsAI/Simulation/EAI_Simulation.c",
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationBot.c",
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationIntel.c",
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationMedical.c",
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationSpectators.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/simulation_spectator_regression.py",
"sha256": "0fd3b920f691880be1d8c197bbec399d90361ef28586ba67ad4d5c7c93b7f2b5",
"source_references": [
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationSpectators.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/sniper_optics_regression.py",
"sha256": "5dedc2bb50455877f23209756251120a6eae83543fd5ccb5dabe0afc6739d47f",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_AIResponseSystem.c",
"Scripts/Game/EscapistsAI/EAI_SniperOptics.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/sniper_weapon_lookup_regression.py",
"sha256": "fa077b2b6abb45a11216979b49c871e832a3a1573d8d823198e439475455b528",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_SniperOptics.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/spawn_selection_regression.py",
"sha256": "c9001edc39258e1f4419ae62f53ee4b0fa6535718810600d2afc14f73bc5ceae",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_ImprovisedPrisons.c",
"Scripts/Game/EscapistsAI/EAI_StartSelection.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
},
{
"path": "tests/stinger_equipment_regression.py",
"sha256": "eaa3b92e1c9339c17beb589a7fa61a2cbdec06fce65c7e91bba456cdf27f9a47",
"source_references": [
"Scripts/Game/EscapistsAI/EAI_AIResponseSystem.c",
"Scripts/Game/EscapistsAI/EAI_StingerEquipment.c"
],
"execution": "not run in this audit; predecessor evidence does not qualify successor"
}
],
"prefab_inventory": [
{
"path": "Prefabs/Logistics/EAI_DepotStock.et",
"sha256": "87f76285abe1d14206fd2eff904cb6e0d4375083d46a007244c1b13a5821af74",
"review": "re-author successor wrapper/identity; inspect inherited provenance before copying any content"
},
{
"path": "Prefabs/StartAreas/EAI_ImprovisedPrison.et",
"sha256": "0204b836cda9729ae219747cb994d438cfddf41fa625377b5c89c49d50b27686",
"review": "re-author successor wrapper/identity; inspect inherited provenance before copying any content"
},
{
"path": "Prefabs/StartAreas/EAI_PrisonBackpack.et",
"sha256": "21ec7e0ea4b7b0493d899e0fec525fbc7d302a2473aedafbd4efcab3599022a1",
"review": "re-author successor wrapper/identity; inspect inherited provenance before copying any content"
},
{
"path": "Prefabs/StartAreas/EAI_PrisonGate.et",
"sha256": "b958e2250e047c95bce5176b9c291dd3ad430d7734891e65a2d9bbdf0f924dc2",
"review": "re-author successor wrapper/identity; inspect inherited provenance before copying any content"
},
{
"path": "Prefabs/StartAreas/EAI_PrisonWall.et",
"sha256": "d3009ecd7c3b977ae34a523c1926c13c9e9cc9ff8e531f83e861467a26ff3e98",
"review": "re-author successor wrapper/identity; inspect inherited provenance before copying any content"
},
{
"path": "Prefabs/Vehicles/Helicopters/EAI_AmmoMi8.et",
"sha256": "77a0bba1123c8313619db85358bb575fc9bd5cd4be9b6cb545c2ec82cd54dc16",
"review": "re-author successor wrapper/identity; inspect inherited provenance before copying any content"
},
{
"path": "Prefabs/Vehicles/Helicopters/EAI_ReconMi8.et",
"sha256": "a37e137b48c8ca08891eb173e46181ee9fe840dd505ee42450cb901ba19431be",
"review": "re-author successor wrapper/identity; inspect inherited provenance before copying any content"
},
{
"path": "Prefabs/Vehicles/Parachutes/EAI_AssaultParachute.et",
"sha256": "e7bded543194e9de132c0b9972948141da1fcfa56c7b663cc333c9caa2e73e85",
"review": "re-author successor wrapper/identity; inspect inherited provenance before copying any content"
},
{
"path": "Prefabs/Weapons/Attachments/Optics/1p78/Optic_1P78.et",
"sha256": "95bda46853d6b8653060e4ea9fcc91bbe4efd7aa69fa039c8c42ad0a5b60873d",
"review": "re-author successor wrapper/identity; inspect inherited provenance before copying any content"
},
{
"path": "Prefabs/Weapons/Attachments/Optics/Optic_PSO1/Optic_PSO1M2.et",
"sha256": "cdc52ec5931731474cec99acc391446bce6b1b230ddf7e91ea2348f84dc58acf",
"review": "re-author successor wrapper/identity; inspect inherited provenance before copying any content"
},
{
"path": "Prefabs/Weapons/Attachments/Optics/Optic_SPP/Optic_SPP.et",
"sha256": "06e593c1677954e0f7a05b0b040ccca8f7a987961f8bfbe90e0582a07b151953",
"review": "re-author successor wrapper/identity; inspect inherited provenance before copying any content"
},
{
"path": "Prefabs/Weapons/Core/WeaponSight_Base.et",
"sha256": "0183016add1789e87f07783211168680de5caa9ecbf803d61b52e3d762013593",
"review": "re-author successor wrapper/identity; inspect inherited provenance before copying any content"
}
],
"resource_references": [
{
"guid": "0A04F02D30BA8459",
"path": "Assets/Props/Debris/Metal/FragmentMechanical_dbr_03.xob",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Logistics/EAI_DepotStock.et"
]
},
{
"guid": "D9678156553F87C7",
"path": "Assets/Props/Debris/Metal/FragmentMetal_dbr_02.xob",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Logistics/EAI_DepotStock.et"
]
},
{
"guid": "AE6DE9DEA19D68B7",
"path": "Assets/Props/Debris/Metal/FragmentMetal_dbr_03.xob",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Logistics/EAI_DepotStock.et"
]
},
{
"guid": "EB85A5589049E9D1",
"path": "Assets/Props/Military/AmmoBox/EquipmentBoxWooden_01/Data/EquipmentBoxWooden_Ammunition_01_USSR.emat",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Logistics/EAI_DepotStock.et"
]
},
{
"guid": "17332645A86C9BA6",
"path": "Assets/Props/Military/AmmoBox/EquipmentBoxWooden_01/Data/EquipmentBoxWooden_decal_USSR.emat",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Logistics/EAI_DepotStock.et"
]
},
{
"guid": "9E1DFF036BCE913E",
"path": "Assets/Props/Military/AmmoBox/EquipmentBoxWooden_01/EquipmentBoxWooden_Ammunition_01.xob",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Logistics/EAI_DepotStock.et"
]
},
{
"guid": "E3BC73BFBC7AA497",
"path": "Assets/Structures/BuildingsParts/Doors/DoorFrame_door_metal_A_RIGHT_EXT_B.xob",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/StartAreas/EAI_PrisonGate.et"
]
},
{
"guid": "0B96D139FEBCA006",
"path": "Assets/Structures/Walls/Concrete/ConcreteWall_01_3m.xob",
"classification": "already catalogued successor vanilla resource",
"referenced_by": [
"Prefabs/StartAreas/EAI_PrisonWall.et"
]
},
{
"guid": "690632C506AD0847",
"path": "Assets/Weapons/Attachments/Optics/1p78/1p78.xob",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Weapons/Attachments/Optics/1p78/Optic_1P78.et"
]
},
{
"guid": "BAF768C371AF1703",
"path": "Assets/Weapons/Attachments/Optics/1p78/Data/1p78_mark_UI.edds",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Weapons/Attachments/Optics/1p78/Optic_1P78.et"
]
},
{
"guid": "9B591D738BAB9492",
"path": "Assets/Weapons/Attachments/Optics/1p78/Data/1p78_mark_ilum_UI.edds",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Weapons/Attachments/Optics/1p78/Optic_1P78.et"
]
},
{
"guid": "BBB83ADC8D3AF563",
"path": "Assets/Weapons/Attachments/Optics/1p78/Data/Optic_1P78_HDR.emat",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Weapons/Attachments/Optics/1p78/Optic_1P78.et"
]
},
{
"guid": "84004153F8EC99DD",
"path": "Assets/Weapons/Attachments/Optics/pso_1m2_1/Optic_PSO1M2-1_HDR.emat",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Weapons/Attachments/Optics/Optic_PSO1/Optic_PSO1M2.et"
]
},
{
"guid": "31F2591E21793003",
"path": "Assets/Weapons/Attachments/Optics/pso_1m2_1/data/Optic_PSO1M2-1.emat",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Weapons/Attachments/Optics/Optic_PSO1/Optic_PSO1M2.et"
]
},
{
"guid": "D05272A9B4875D73",
"path": "Assets/Weapons/Attachments/Optics/pso_1m2_1/data/PSO1M2-1.edds",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Weapons/Attachments/Optics/Optic_PSO1/Optic_PSO1M2.et"
]
},
{
"guid": "C436A8D33CE1AA4E",
"path": "Particles/Props/Dest_Prop_Wood_Small.ptc",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Logistics/EAI_DepotStock.et"
]
},
{
"guid": "F28B2B542F6C684A",
"path": "Prefabs/CharacterSpawnPoint.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/StartAreas/EAI_ImprovisedPrison.et"
]
},
{
"guid": "86E565387A634103",
"path": "Prefabs/Characters/Campaign/Final/OPFOR/USSR_Army/Regular/Campaign_USSR_Player_MortarCrew.et",
"classification": "already catalogued successor vanilla resource",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
]
},
{
"guid": "EBFB363AC7A5FCE6",
"path": "Prefabs/Characters/Factions/OPFOR/USSR_Army/Character_USSR_Engineer.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_HelicopterRecovery.c"
]
},
{
"guid": "612F43A4D5AE765F",
"path": "Prefabs/Characters/Factions/OPFOR/USSR_Army/Character_USSR_RTO.et",
"classification": "already catalogued successor vanilla resource",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
]
},
{
"guid": "D9F79EC900BD0001",
"path": "Prefabs/Characters/HeadGear/ESCP_Helmet_PASGT_Patched.et",
"classification": "owned Patch wrapper; separate asset/provenance review, no automatic Patch dependency",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_StartingOutfit.c"
]
},
{
"guid": "D9F79EC900BD0002",
"path": "Prefabs/Characters/Uniforms/ESCP_Jacket_M65_TigerStripe_Patched.et",
"classification": "owned Patch wrapper; separate asset/provenance review, no automatic Patch dependency",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_StartingOutfit.c"
]
},
{
"guid": "9ADD554959C09197",
"path": "Prefabs/DeployedParachutes/Core/DeployedParachuteMK4.et",
"classification": "Parachute Framework; outside currently authorized RHS/WCS/BMP dependency closure",
"referenced_by": [
"Prefabs/Vehicles/Parachutes/EAI_AssaultParachute.et"
]
},
{
"guid": "41A9C55B61F375F0",
"path": "Prefabs/Items/Equipment/Backpacks/Backpack_Kolobok.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/StartAreas/EAI_PrisonBackpack.et"
]
},
{
"guid": "54C68E438DD34265",
"path": "Prefabs/Items/Equipment/Radios/Radio_R107M.et",
"classification": "already catalogued successor vanilla resource",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_HQ.c"
]
},
{
"guid": "E1A5D4B878AA8980",
"path": "Prefabs/Items/Equipment/Radios/Radio_R148.et",
"classification": "already catalogued successor vanilla resource",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_HQStatus.c",
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
]
},
{
"guid": "6D56FED1E55A8F84",
"path": "Prefabs/Items/Misc/IntelligenceFolder_E_01/IntelligenceFolder_E_01.et",
"classification": "already catalogued successor vanilla resource",
"referenced_by": [
"Scripts/Game/EscapistsAI/Simulation/EAI_SimulationIntel.c"
]
},
{
"guid": "D83CA092B7100100",
"path": "Prefabs/Logistics/EAI_DepotStock.et",
"classification": "old owned addon wrapper; successor identity and base-hook replacement required",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_DepotLoading.c"
]
},
{
"guid": "7E385CE1ADBF0659",
"path": "Prefabs/MP/Spawning/SpawnPoint_Prison.et",
"classification": "original-base resource; replace independently",
"referenced_by": [
"Prefabs/StartAreas/EAI_ImprovisedPrison.et"
]
},
{
"guid": "A631EB470D19C201",
"path": "Prefabs/StartAreas/EAI_ImprovisedPrison.et",
"classification": "old owned addon wrapper; successor identity and base-hook replacement required",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_ImprovisedPrisons.c"
]
},
{
"guid": "A631EB470D19C203",
"path": "Prefabs/StartAreas/EAI_PrisonBackpack.et",
"classification": "old owned addon wrapper; successor identity and base-hook replacement required",
"referenced_by": [
"Prefabs/StartAreas/EAI_ImprovisedPrison.et"
]
},
{
"guid": "A631EB470D19C202",
"path": "Prefabs/StartAreas/EAI_PrisonGate.et",
"classification": "old owned addon wrapper; successor identity and base-hook replacement required",
"referenced_by": [
"Prefabs/StartAreas/EAI_ImprovisedPrison.et"
]
},
{
"guid": "A631EB470D19C204",
"path": "Prefabs/StartAreas/EAI_PrisonWall.et",
"classification": "old owned addon wrapper; successor identity and base-hook replacement required",
"referenced_by": [
"Prefabs/StartAreas/EAI_ImprovisedPrison.et"
]
},
{
"guid": "87CADB5ADC989993",
"path": "Prefabs/Structures/BuildingParts/Doors/DoorSet_Base.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/StartAreas/EAI_PrisonGate.et"
]
},
{
"guid": "67F17696FF278AE0",
"path": "Prefabs/Structures/BuildingParts/Doors/Door_Metal_A_RIGHT_EXT_COV_B.et",
"classification": "already catalogued successor vanilla resource",
"referenced_by": [
"Prefabs/StartAreas/EAI_PrisonGate.et"
]
},
{
"guid": "EFA7233213E77C2F",
"path": "Prefabs/Systems/SpawnPoints/SpawnPosition_Prison.et",
"classification": "original-base resource; replace independently",
"referenced_by": [
"Prefabs/StartAreas/EAI_ImprovisedPrison.et"
]
},
{
"guid": "AB4B037AF4617292",
"path": "Prefabs/Vehicles/Helicopters/EAI_AmmoMi8.et",
"classification": "old owned addon wrapper; successor identity and base-hook replacement required",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_Resupply.c"
]
},
{
"guid": "8A9D735C042F61B2",
"path": "Prefabs/Vehicles/Helicopters/EAI_ReconMi8.et",
"classification": "old owned addon wrapper; successor identity and base-hook replacement required",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_AirRecon.c"
]
},
{
"guid": "7BD282AF716ED639",
"path": "Prefabs/Vehicles/Helicopters/Mi8MT/Mi8MT_armed.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Vehicles/Helicopters/EAI_ReconMi8.et"
]
},
{
"guid": "DF5CCB7C0FF049F4",
"path": "Prefabs/Vehicles/Helicopters/Mi8MT/Mi8MT_unarmed_transport.et",
"classification": "already catalogued successor vanilla resource",
"referenced_by": [
"Prefabs/Vehicles/Helicopters/EAI_AmmoMi8.et"
]
},
{
"guid": "073115E564DF6BEF",
"path": "Prefabs/Vehicles/Helicopters/Mi8MT/VehParts/WeapSystems/Mi8MT_PKMT_mount_left.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Vehicles/Helicopters/EAI_ReconMi8.et"
]
},
{
"guid": "AB264721601AED00",
"path": "Prefabs/Vehicles/Parachutes/EAI_AssaultParachute.et",
"classification": "old owned addon wrapper; successor identity and base-hook replacement required",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_AirAssault.c"
]
},
{
"guid": "1DC01AAACFFA8B63",
"path": "Prefabs/Vehicles/Tracked/BMP1/BMP1_Base.et",
"classification": "authorized WCS BMP-1; verify owning installed database",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_SupplyConvoys.c"
]
},
{
"guid": "0B4DEA8078B78A9B",
"path": "Prefabs/Vehicles/Wheeled/UAZ469/UAZ469_PKM.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_AIResponseSystem.c",
"Scripts/Game/EscapistsAI/EAI_HQRoadblocks.c",
"Scripts/Game/EscapistsAI/EAI_SupplyConvoys.c"
]
},
{
"guid": "3336BE330C4F355B",
"path": "Prefabs/Vehicles/Wheeled/Ural4320/Ural4320_ammo.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_SupplyConvoys.c"
]
},
{
"guid": "A5647958579A4149",
"path": "Prefabs/Vehicles/Wheeled/Ural4320/Ural4320_repair.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_HelicopterRecovery.c"
]
},
{
"guid": "16C1F16C9B053801",
"path": "Prefabs/Vehicles/Wheeled/Ural4320/Ural4320_transport.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_SupplyConvoys.c"
]
},
{
"guid": "98EC9C526AFBA282",
"path": "Prefabs/Weapons/Ammo/Ammo_Shell_82mm_HE_O832DU.et",
"classification": "already catalogued successor vanilla resource",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
]
},
{
"guid": "061785BDE2DB997E",
"path": "Prefabs/Weapons/Attachments/Core/Optic_Scope_Base.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Weapons/Attachments/Optics/1p78/Optic_1P78.et"
]
},
{
"guid": "695AAA77F84EB238",
"path": "Prefabs/Weapons/Attachments/Optics/1p21/Optic_1P21.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_SniperOptics.c"
]
},
{
"guid": "8D4BAA235F7EDBEA",
"path": "Prefabs/Weapons/Attachments/Optics/1p78/Optic_1P78.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_SniperOptics.c"
]
},
{
"guid": "BD496EE1B40DC510",
"path": "Prefabs/Weapons/Attachments/Optics/Optic_4x20/Optic_4x20.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_SniperOptics.c"
]
},
{
"guid": "D2018EDB1BBF4C88",
"path": "Prefabs/Weapons/Attachments/Optics/Optic_ARTII/Optic_ARTII.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_SniperOptics.c"
]
},
{
"guid": "C850A33226B8F9C1",
"path": "Prefabs/Weapons/Attachments/Optics/Optic_PSO1/Optic_PSO1.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_SniperOptics.c"
]
},
{
"guid": "A1D5833FF10C6503",
"path": "Prefabs/Weapons/Attachments/Optics/Optic_PSO1/Optic_PSO1M2.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_SniperOptics.c"
]
},
{
"guid": "97B99B20B6545D34",
"path": "Prefabs/Weapons/Attachments/Optics/Optic_PSO1/Optic_PSO1M2_base.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Weapons/Attachments/Optics/Optic_PSO1/Optic_PSO1M2.et"
]
},
{
"guid": "883783EF2E0658D6",
"path": "Prefabs/Weapons/Attachments/Optics/Optic_SPP/Optic_SPP_base.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Weapons/Attachments/Optics/Optic_SPP/Optic_SPP.et"
]
},
{
"guid": "333A794F0B55C019",
"path": "Prefabs/Weapons/Attachments/Optics/m8541/Optic_M8541.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_SniperOptics.c"
]
},
{
"guid": "2E0E3D7D1DD0FF8F",
"path": "Prefabs/Weapons/Core/Attachment_Base.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Weapons/Core/WeaponSight_Base.et"
]
},
{
"guid": "B05A816C0BF50802",
"path": "Prefabs/Weapons/Explosives/Mine_PMN4/Mine_PMN4.et",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_Mines.c"
]
},
{
"guid": "C0F7DD85A86B2900",
"path": "Prefabs/Weapons/Handguns/PM/Handgun_PM.et",
"classification": "already catalogued successor vanilla resource",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_ImprovisedPrisons.c"
]
},
{
"guid": "3DF204EEE0534EF2",
"path": "Prefabs/Weapons/Launchers/FIM92_Stinger/Launcher_FIM92_Stinger.et",
"classification": "authorized WCS Armaments FIM92; verify owning installed database",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_StingerEquipment.c"
]
},
{
"guid": "8B853CDD11BA916E",
"path": "Prefabs/Weapons/Magazines/Magazine_9x18_PM_8rnd_Ball.et",
"classification": "already catalogued successor vanilla resource",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_ImprovisedPrisons.c"
]
},
{
"guid": "D1FFE458E8AC4BDB",
"path": "Prefabs/Weapons/Mortars/2B14/Mortar_2B14.et",
"classification": "already catalogued successor vanilla resource",
"referenced_by": [
"Scripts/Game/EscapistsAI/EAI_MortarSystem.c"
]
},
{
"guid": "440E1F3747714D45",
"path": "Sounds/Lockpicking/Lockpicking_Sounds.acp",
"classification": "original-base resource; replace independently",
"referenced_by": [
"Prefabs/StartAreas/EAI_PrisonGate.et"
]
},
{
"guid": "A73D28179B395F19",
"path": "Sounds/Props/Military/AmmoBoxes/AmmoBox_Big_Wooden/Props_AmmoBox_Big_Wooden.acp",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Logistics/EAI_DepotStock.et"
]
},
{
"guid": "92CB09CB84872CB4",
"path": "Sounds/Weapons/_SharedData/PickUp/Weapons_PickUp_Attachments_LongGeneric.acp",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Weapons/Attachments/Optics/1p78/Optic_1P78.et"
]
},
{
"guid": "8EB808BFA227C080",
"path": "UI/Textures/Icons/InventoryHints/InventoryHint_SuppliesStored.edds",
"classification": "not independently verified by this audit; verify installed owning resource database before migration",
"referenced_by": [
"Prefabs/Logistics/EAI_DepotStock.et"
]
}
],
"authorized_installed_dependencies": [
{
"guid": "595F2BF2F44836FB",
"title": "RHS: Status Quo",
"dependencies": [
"58D0FB3206B6F859",
"1337C0DE5DABBEEF",
"BADC0DEDABBEDA5E"
],
"installed_version": "0.16.5208",
"local_path": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874880/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforger/addons/RHS-StatusQuo_595F2BF2F44836FB"
},
{
"guid": "1337C0DE5DABBEEF",
"title": "RHS: Status Quo - Content Pack 01",
"dependencies": [
"58D0FB3206B6F859"
],
"installed_version": "0.16.5208",
"local_path": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874880/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforger/addons/RHS-ContentPack01_1337C0DE5DABBEEF"
},
{
"guid": "BADC0DEDABBEDA5E",
"title": "RHS: Status Quo - Content Pack 02",
"dependencies": [
"58D0FB3206B6F859"
],
"installed_version": "0.16.5208",
"local_path": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874880/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforger/addons/RHS-ContentPack02_BADC0DEDABBEDA5E"
},
{
"guid": "5E389BB9F58B79A6",
"title": "WCS_SpaceCore",
"dependencies": [
"58D0FB3206B6F859",
"629B2BA37EFFD577"
],
"installed_version": "8.2.1",
"local_path": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874880/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforger/addons/SpaceCore_5E389BB9F58B79A6"
},
{
"guid": "629B2BA37EFFD577",
"title": "WCS_Armaments",
"dependencies": [
"58D0FB3206B6F859"
],
"installed_version": "8.2.1",
"local_path": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874880/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforger/addons/WCS_Armaments_629B2BA37EFFD577"
},
{
"guid": "5E524E4FEECCA92B",
"title": "WCS_BMP-1",
"dependencies": [
"58D0FB3206B6F859",
"5E389BB9F58B79A6",
"629B2BA37EFFD577"
],
"installed_version": "8.2.0",
"local_path": "/home/jakub/.local/share/Steam/steamapps/compatdata/1874880/pfx/drive_c/users/steamuser/Documents/My Games/ArmaReforger/addons/BMP-1IFV_5E524E4FEECCA92B"
}
],
"post_audit_updates": [
{
"id": "convoys",
"updated_on": "2026-09-21",
"status": "partial",
"implementation": "Original default-three, configurable0\u201320 finite six-vehicle convoys. Each has25 bodies/eight ledger groups: eleven mounted crew and two seven-person infantry teams. Bounded separated road startup, friendly-base circuits,45\u201390s rests,250m arrival/10min travel deadline. Native perception and delivered HQ contacts drive dismount/flank/escort cover/truck withdrawal and60s quiet reboarding with120s timeout. Random faction arsenal weapons and compatible finite ammunition, no replacements/refills. Saved count/random choice applies next round. Shared ledger and associated group bookkeeping expanded to256 formations.",
"evidence": "native-2026-09-20-025035-convoy-driving: 181 assertions, all six original vehicles at least20m and lead over100m, duplicate dispatch rejected; zero script/runtime failures. Four external localization errors keep strict qualification failed. Current-source native-2026-09-20-041150-convoy-cover-driving repeats181 assertions after the cover integration; radio command transitions have executable-method tests, not native combat proof. native-2026-09-20-081658-automatic-convoy:93 assertions/one round, automatic six vehicles/19 original seated crew, duplicate dispatch rejected, zero script/runtime failures; four external localization errors remain. Current full supply-convoy implementation: local 2026-09-21 16:50:45 smoke completed,36 common assertions, no script/runtime failures;18 vehicles/75 original soldiers,174 physical cargo inserts,all18 drove20m,both seven-person teams dismounted/reboarded and original truck drove next base leg after native pause. Source fingerprint380aec8a078825b165593fc4445b603f80b5d1ec51360c018d34973d65302b62 unchanged; cleanup confirmed. Controlled contact/travel-deadline inputs explicitly labelled. Nine pre-existing dependency errors prevent strict engine qualification. Details in docs/supply-convoys.md.",
"remaining": "Dedicated multiplayer, maximum-fleet performance and full-island route reliability qualification. Separate infantry ammunition rendezvous still uses the first convoy. Historical 2026-09-20 evidence predates the new circuit and infantry controller; see current validation in docs/supply-convoys.md.",
"detail": "docs/supply-convoys.md"
},
{
"id": "body_discovery",
"updated_on": "2026-09-20",
"status": "partial",
"implementation": "Body and cumulative status death-slot evidence share immutable original formation identity. Delivered union deduplicates overlap, retains disjoint casualties, and can close a fully confirmed wiped formation without inventing a caller. Scalar attribution survives target deletion; known transfers permanently release old slots.",
"evidence": "native-2026-09-20-030533-body-radio-casualties: 45 assertions, actual corpse LOS and radio delivery, no loss before delivery, subsequent real status overlap counts once; zero script/runtime failures. Four external localization errors keep strict qualification failed. Deleted-target transit, full wipe and transfer-before-death cases are actual-method regressions.",
"remaining": "Ordinary patrol discovery, native deletion during radio transit, native complete wiped formations, remote ownership and multiplayer qualification.",
"detail": "docs/ai-migration-progress.md"
},
{
"id": "ammo_accounting",
"updated_on": "2026-09-20",
"status": "partial",
"implementation": "Read-only immutable-roster compatible small-arms magazine and chamber snapshots delivered through status radio; separate launcher uncertainty, conservative inherited-well handling, fresh known-empty veto for new infantry tasks without active-order cancellation. No refill or mounted/cargo inference. Early own-roster scans every30 seconds can request low-stock radio status with a60-second urgent-call cooldown; only delivery updates HQ.",
"evidence": "native-2026-09-20-040857-hq-ammunition completes49 assertions: five original surviving members,1120 magazine rounds,33 magazines,5 chambered; actual delivery to independent immutable Watch snapshot. Four external localization errors remain. Later inherited-well refinement passes executable regressions and compiles in the181-assertion convoy recheck.",
"remaining": "Native empty/depletion, low-stock reporting and modded derived-well cases; full resupply/cargo and vehicle weapons; multiplayer and FPS qualification.",
"detail": "docs/hq-ammunition.md"
},
{
"id": "optics",
"updated_on": "2026-09-20",
"status": "partial",
"implementation": "Scoped startup optics fitting on the first eligible physical weapon roster of original military enemy actors. Verified vanilla/RHS candidates use native free-slot compatibility; existing magnified optics are preserved. Finite five-check processing, accepted-operation quarantine, no later weapon replacement or replenishment; shares existing equipment cadence independently of Stinger completion.",
"evidence": "Actual-method inspection, ownership, slot, callback and lifecycle regressions pass. native-2026-09-20-050906-convoy-seat-diagnostic compiled and executed the service: 59 terminal records, six physical optic confirmations, 53 unconfirmed deadlines. These logs cannot establish a new attachment insertion.",
"remaining": "Native before/after proof of a new compatible insertion, ordinary captured-weapon use and multiplayer replication; complete full AI migration remains separate.",
"detail": "docs/ai-equipment-migration.md"
},
{
"id": "radio",
"updated_on": "2026-09-20",
"status": "partial",
"implementation": "Three-second originating call on physical uplinks, live consciousness/ownership checks before cached inventory use, one-time bounded group radio fitting using stable HQ IDs and exact original equipment-actor tombstones. Existing authored radios are preserved; mortar allocation remains owned by readiness. No repeat grant after observed equipment loss or accepted pending insertion. Visual reports also use a bounded100m local handoff from an attributable original source member to an available friendly physical radio carrier when their own route is unavailable. Original source/time/position/lineage are preserved; local ownership/range is rechecked through the3-second origin, overlapping callers and replay are refused, and borrowed-call deferral resets negative-search dwell.",
"evidence": "native-2026-09-20-062203-radio-call-memory: 59 assertions, one completed round, zero script/runtime failures. Removing the real originating caller radio interrupts before any hop/Accept; subsequent delivered reports update memory and reject old negative revisions. All six observed groups already had radios; no new native insertion was demonstrated. Four installed external localization errors remain. Actual-method coordinator/route/node regressions pass. native-2026-09-20-101306-local-handoff:81 assertions/one completed round, zero script/runtime failures, unchanged source/external inputs and confirmed cleanup. Arranged original-source snapshot delivered through production local+radio chain; actual caller-radio loss blocks second snapshot. First setup race is retained as failed. Four external localization errors remain.",
"remaining": "Native proof of new compatible radio insertion; natural-perception local handoff, body/status/search fallback, voiced/acoustic calls, aircraft uplink/shared awareness and multiplayer loss/capture qualification.",
"detail": "docs/hq-originating-call.md"
},
{
"id": "resupply",
"updated_on": "2026-09-20",
"status": "partial",
"implementation": "HQ-owned nearby infantry rendezvous with the original finite convoy ammo truck (automatic startup or canonical manual dispatch), planned from fresh delivered shortage and position reports. Separate truck stop and infantry radio downlinks; new delivered stopped position required. Up to48 captured physical magazine identities, max6 moves per trip/one per soldier, exact native callback and destination ownership proof, no stock regeneration. Original roster release is permanent. A native unobstructed ray to an authored root-owned truck storage-action context is required before submission. Unsubmitted physical preflight refusals now release only their tentative item reservation and wait within the same trip; any attempted native submission remains spent. Move/hold completion radii are0.5m to avoid accepting a5m approach for a4m transfer boundary.",
"evidence": "Actual-method stock/planning, radio/report consumption, immutable ownership, physical access, native-operation and async fixture cleanup tests pass. native-2026-09-20-091854-infantry-transfer completes43 assertions/one round, zero script/runtime failures: one exact original magazine transfers from the original automatic ammo truck to an original patrol actor, with unchanged ammunition and force ledger. The fixture deliberately positions the recipient and waits for native pose update. Source/external fingerprints and hidden/muted cleanup confirmed. Four installed external localization errors retain failed strict qualification; earlier refused diagnostics remain archived. Actual coordinator+full leaf regressions reproduce/fix transient approach/space/access abort, another member may proceed, inline success counts once, rejected/uncertain submissions never retry, and exact trip expiry still releases authorization. Current combined handoff native run compiles this correction but does not prove walking resupply.",
"remaining": "Successful autonomous HQ-directed rendezvous; native obstructed negative case; demand-triggered supply dispatch, broad catalogs, launcher/vehicle ammunition, air/depot logistics, multiplayer and performance evidence.",
"detail": "docs/infantry-resupply.md"
},
{
"id": "skill",
"updated_on": "2026-09-20",
"status": "partial",
"implementation": "Existing scoped military enemy Expert80 minimum now adds Cylon100 for exact original physical convoy turret occupants. Canonical receipt/ledger, original actor/seat, native turret occupancy and capture guards required. Preserves underlying higher skill; dismount returns to ordinary floor; existing3-second cadence and native reset integration, no global original hook.",
"evidence": "Actual-method identity, capture, reset, dismount/reboard and restoration tests pass. native-2026-09-20-081658-automatic-convoy: all19 original seated crew>=80; five original native turret occupants>=100;93 total assertions/one round, zero script/runtime failures. Four external localization errors retain strict qualification failure.",
"remaining": "Native reset/dismount/reboard/capture transitions and multiplayer qualification; other future gunner capabilities need explicit ownership integration.",
"detail": "docs/ai-equipment-migration.md"
},
{
"id": "roadblocks",
"updated_on": "2026-09-20",
"status": "partial",
"implementation": "Temporary infantry road interception from fresh delivered movement history. Bounded native road projection, occupied-objective spacing, dry/clear terrain and elevated-road guard; existing physical-force reservations and radio downlink only. Exact belief revision/precision age rechecked at delivery; vanilla Defend waypoint, absolute60-second lifetime, normal patrol restoration, no negative search report from idle road hold. No forces, vehicles, mines or barricades created.",
"evidence": "Actual helper and task delivery/lifecycle regressions plus full repository checks pass. Native113607 compiles integration, completes101 assertions/one round without script/runtime failures, and proves actual Everon road selection/segment membership/clearance and stale46-second refusal from explicitly arranged private-memory reports. Four external localization errors remain. Original cleanup-failed verdict is preserved; later independent observation confirms idle prefix and unchanged source. See raw archive and separate review; no ordinary interception/MP/cleanup qualification.",
"remaining": "Ordinary infantry arrival and interception effectiveness, prop/vehicle/mine roadblocks, multiplayer and equivalent-workload performance qualification.",
"detail": "docs/road-interception.md"
},
{
"id": "mines_task",
"updated_on": "2026-10-01",
"status": "partial",
"implementation": "Existing delivered infantry road interception can assign one original soldier and exact carried PMN4. Native individual approach, continuous ten-second preparation, one callback-tracked removal, withdrawal and native pressure arming guards. No new mines/forces. Two concurrent jobs,32 retained perround, one site query perHQ tick, one attempt peroriginal squad; exact-item quarantine survives cancellation and transfer.",
"evidence": "Actual controller, original identity/custody, callback, deadline, friendly clearance, road geometry and HQ lifecycle methods run in regression harnesses. Native normal-route source compilation is separate from physical mine execution. See current status and detailed evidence.",
"remaining": "Native placement/arming and multiplayer qualification, mine resupply, multiple mines per squad, full vehicle/barricade roadblocks and mine-specific player intelligence.",
"detail": "docs/road-interception.md"
},
{
"id": "mines_task",
"updated_on": "2026-10-01",
"status": "partial",
"implementation": "Exact original generic engineer documents can carry frozen 500 m mine warnings sealed only after native activation; recovery supplements site discovery without live position refresh or new items. 32 records/128 bindings cap and persistent recovered map warnings.",
"evidence": "262 regressions include actual service/controller/discovery and marker lifecycle methods. Native normal route compiles and completes 63 assertions but does not execute this interaction.",
"remaining": "Physical mine placement/arming, ordinary document-to-warning rendering and remote/JIP transport; mine resupply, multiple mines per squad and full vehicle/barricade roadblocks.",
"detail": "docs/road-interception.md#recovered-mine-warnings"
},
{
"id": "ammo_accounting",
"updated_on": "2026-10-01",
"status": "partial",
"implementation": "Independent carried PMN4 completeness/member/count snapshot from original owned roster, bounded exact-item custody and inactive native trigger checks; routine radio delivery and detached Watch storage; private status journal count versus unknown. No mine-only urgent call, resupply or placement change.",
"evidence": "264 regression programs pass, including actual mine sampler, detached snapshot, stale/interrupted radio and no-urgency methods. Normal native route63 assertions,zero script failures;13 installed-resource errors retained.",
"remaining": "Native carried-mine radio proof, mine replenishment/multiple placements, physical placement/arming and multiplayer.",
"detail": "docs/hq-ammunition.md#carried-mine-reports-1-october-2026"
},
{
"id": "ammo_accounting",
"updated_on": "2026-10-01",
"status": "partial",
"implementation": "Optional once-only finite PMN4 batch of up to two mines in each original convoy ammo truck, after primary callbacks; separate callback barrier and exact original item identity snapshot, with no refill or effect on magazine admission.",
"evidence": "265 regression programs pass, independent original-item exclusion mutation fails, native normal route63 assertions/one round/zero script failures;13 installed-resource errors retained.",
"remaining": "Mine delivery/shared reservations and repeated placement; native physical insertion/transfer and real multiplayer qualification.",
"detail": "docs/supply-convoys.md#optional-finite-mine-cargo-1-october-2026"
},
{
"id": "resupply",
"updated_on": "2026-10-01",
"status": "partial",
"implementation": "Finite one-to-two PMN4 top-up for original existing carriers, using fresh complete delivered mine status, settled startup grants, original convoy stock, existing radio rendezvous and shared spent/replay/cooldown ledgers. Exact pending delivery retains truck/recipient claims across Stop to exclude cross-truck races.",
"evidence": "268 regression programs pass with independent compiled mutation controls; native normal route63 assertions/one round/zero script failures;13 installed-resource errors retained.",
"remaining": "Native mine insertion/approach/transfer, depleted-zero entitlement/manifests, repeated placement and true multiplayer.",
"detail": "docs/infantry-resupply.md#finite-mine-top-ups-1-october-2026"
},
{
"id": "ammo_accounting",
"updated_on": "2026-10-01",
"status": "partial",
"implementation": "Separate bounded128 structural/128 excluded cargo mounted traversal with hard256 unique queue, preserving cargo exclusion and unknown/cycle refusal; native original finite PMN4 stock observation.",
"evidence": "271 regression programs pass; independent red-before/green-after and three budget mutations. Corrected native202 assertions/one fixture round/zero script failures; two exact original PMN4s and64 primary callbacks unchanged through actual mounted radio delivery;13 installed-resource errors retained.",
"remaining": "Native mine walking/transfer/arming, full-fleet reliability, real multiplayer and release qualification. Existing package predates correction.",
"detail": "docs/supply-convoys.md#loaded-truck-traversal-correction-and-mine-stock-evidence-1-october-2026"
},
{
"id": "resupply",
"updated_on": "2026-10-02",
"status": "partial",
"implementation": "One exact original convoy PMN4 can replace proven zero stock only for an attributable original engineer selected by the startup mine lottery, with initial callbacks settled. Fresh complete delivered zero status requires retained designation before dispatch; physical inventory distinguishes zero from unknown, pins original actor and zero/one mode through retries, and revalidates current HQ entitlement. Existing finite stock, shared spent/replay/cooldown ledgers and uncertain-operation quarantine remain unchanged. EngineerMineAttempted is never reset; no repeated mine laying or new stock is authorized.",
"evidence": "Six focused actual-method programs independently pass, with compiled old-planning assertion failure. All272 registered programs pass across a resumed canonical-/tmp run after verified quota recovery; initial infrastructure failure preserved. Current frozen-source normal route63 assertions/one round/zero script failures;13 installed-resource errors retained, cleanup confirmed. Compilation/base-loop integration only; physical zero-stock transfer remains unqualified.",
"remaining": "Physical walking mine transfer for this increment, per-actor full need manifests, repeated placement and true multiplayer qualification.",
"detail": "docs/infantry-resupply.md#designated-engineer-zero-stock-replacement-2-october-2026"
},
{
"id": "resupply",
"updated_on": "2026-10-02",
"status": "partial",
"implementation": "Bounded opportunistic camp-to-original-truck loading through one existing mobile responder, delivered radio hold/new stopped report/porter order, two isolated native callback+custody proofs, retained exact original identities and finite shared allowance. Admission requires prior committed magazine expenditure beyond imports. No generated stock, actors or native retries.",
"evidence": "277 programs passed initial integration, four relevant programs rerun after behavior-preserving native compile fixes. Failed compile retained; corrected frozen normal route63 assertions/one round/zero script failures/13 retained resource errors. Cleanup and unchanged inputs confirmed.",
"remaining": "Native autonomous depot walking/access/two-leg delivery, multiplayer, full logistics parity and release qualification.",
"detail": "docs/ground-depot-loading.md"
}
]
}