Include the current addon, terrain integrations, tools, regression tests and recorded development evidence.
304 lines
16 KiB
JSON
304 lines
16 KiB
JSON
{
|
|
"scope": "Read-only current-source reconciliation of all39 dated feature rows; not a fresh native acceptance audit or a claim of full parity. Historical ledger unchanged. No protected GroupLookup/base-author contents read, no tests/native/source edits.",
|
|
"rows": [
|
|
{
|
|
"id": "config",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/00_Core/ERR_ProfileConfig.c"
|
|
},
|
|
{
|
|
"id": "skill",
|
|
"historical_status": "missing",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_EnemyGunnerSkill.c"
|
|
},
|
|
{
|
|
"id": "radio",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_HQLocalHandoff.c"
|
|
},
|
|
{
|
|
"id": "observations",
|
|
"historical_status": "implemented",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_HQObservation.c"
|
|
},
|
|
{
|
|
"id": "ground_tactics",
|
|
"historical_status": "partial",
|
|
"current": "Concrete remaining local search-footprint gap selected below.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_HQ.c"
|
|
},
|
|
{
|
|
"id": "status",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_HQStatusSampler.c"
|
|
},
|
|
{
|
|
"id": "missing_patrol",
|
|
"historical_status": "missing",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_HQWatch.c"
|
|
},
|
|
{
|
|
"id": "body_discovery",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_HQBodyObserver.c"
|
|
},
|
|
{
|
|
"id": "belief_search",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_HQMemory.c"
|
|
},
|
|
{
|
|
"id": "hunter",
|
|
"historical_status": "missing",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_HunterService.c"
|
|
},
|
|
{
|
|
"id": "capture",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_ConvoyService.c"
|
|
},
|
|
{
|
|
"id": "convoys",
|
|
"historical_status": "missing",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_SupplyConvoyService.c"
|
|
},
|
|
{
|
|
"id": "recon",
|
|
"historical_status": "partial",
|
|
"current": "Existing air subsystem source and later evidence present; paused flight/air replacement scope excluded from this bounded selection."
|
|
},
|
|
{
|
|
"id": "air_assault",
|
|
"historical_status": "partial",
|
|
"current": "Existing air subsystem source and later evidence present; paused flight/air replacement scope excluded from this bounded selection."
|
|
},
|
|
{
|
|
"id": "parachutes",
|
|
"historical_status": "partial",
|
|
"current": "Existing air subsystem source and later evidence present; paused flight/air replacement scope excluded from this bounded selection."
|
|
},
|
|
{
|
|
"id": "aircraft_ammo",
|
|
"historical_status": "partial",
|
|
"current": "Existing air subsystem source and later evidence present; paused flight/air replacement scope excluded from this bounded selection."
|
|
},
|
|
{
|
|
"id": "air_recovery",
|
|
"historical_status": "missing",
|
|
"current": "Existing air subsystem source and later evidence present; paused flight/air replacement scope excluded from this bounded selection."
|
|
},
|
|
{
|
|
"id": "flight_safety",
|
|
"historical_status": "partial",
|
|
"current": "Existing air subsystem source and later evidence present; paused flight/air replacement scope excluded from this bounded selection."
|
|
},
|
|
{
|
|
"id": "ammo_accounting",
|
|
"historical_status": "missing",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_HQMountedAmmoSampler.c"
|
|
},
|
|
{
|
|
"id": "resupply",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_InfantryResupply.c"
|
|
},
|
|
{
|
|
"id": "depots",
|
|
"historical_status": "missing",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_GroundDepotLoading.c"
|
|
},
|
|
{
|
|
"id": "mines_issue",
|
|
"historical_status": "missing",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_InfantryMineTransfer.c"
|
|
},
|
|
{
|
|
"id": "mines_task",
|
|
"historical_status": "missing",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_EngineerMinePosts.c"
|
|
},
|
|
{
|
|
"id": "roadblocks",
|
|
"historical_status": "missing",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_HQMountedDispatch.c"
|
|
},
|
|
{
|
|
"id": "mortar_deployment",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarSystem.c"
|
|
},
|
|
{
|
|
"id": "mortar_fire",
|
|
"historical_status": "implemented",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_MortarFiring.c"
|
|
},
|
|
{
|
|
"id": "settlement_safety",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_EngineerMineSite.c"
|
|
},
|
|
{
|
|
"id": "performance",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/00_Core/ERR_ForceSimulation.c"
|
|
},
|
|
{
|
|
"id": "ambient_disable",
|
|
"historical_status": "implemented",
|
|
"current": "Isolation is intentional policy; no original ambient-system port needed."
|
|
},
|
|
{
|
|
"id": "factions",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/00_Core/ERR_FactionSelection.c"
|
|
},
|
|
{
|
|
"id": "prisons",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/00_Core/ERR_GeneratedSites.c"
|
|
},
|
|
{
|
|
"id": "start_choices",
|
|
"historical_status": "missing",
|
|
"current": "Ordinary crash-start selection still absent from current settings/source scan; new independent scenario/admission scope is larger than selected HQ fix and not proposed now."
|
|
},
|
|
{
|
|
"id": "outfit",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_AutomaticEquipment.c"
|
|
},
|
|
{
|
|
"id": "stinger",
|
|
"historical_status": "missing",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_EnemyLoadout.c"
|
|
},
|
|
{
|
|
"id": "optics",
|
|
"historical_status": "missing",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_EnemyOptics.c"
|
|
},
|
|
{
|
|
"id": "compatibility",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/00_Core/ERR_ReaperRHSCompat.c"
|
|
},
|
|
{
|
|
"id": "simulation",
|
|
"historical_status": "missing",
|
|
"current": "Normal-server autonomous escape simulation remains distinct from WORKBENCH smoke; player/input work excluded from this increment."
|
|
},
|
|
{
|
|
"id": "journal",
|
|
"historical_status": "implemented",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/10_AI/ERR_HQJournal.c"
|
|
},
|
|
{
|
|
"id": "catalogs",
|
|
"historical_status": "partial",
|
|
"current": "Current source exists; historical missing/partial wording is not evidence this subsystem remains absent.",
|
|
"source": "addons/core/Scripts/Game/ERR/00_Core/ERR_FactionCatalog.c"
|
|
}
|
|
],
|
|
"selected_gap": {
|
|
"id": "ground_tactics",
|
|
"title": "Delivered searches do not widen their native investigation footprint",
|
|
"evidence": [
|
|
{
|
|
"path": "/home/jakub/devel/escapists/escapists-ai/Scripts/Game/EscapistsAI/EAI_GroupTactics.c",
|
|
"lines": [
|
|
7,
|
|
383,
|
|
385,
|
|
409
|
|
],
|
|
"fact": "Owned tactics supplies 45m fresh or110m stale radius to SearchAndDestroy; freshness threshold15s."
|
|
},
|
|
{
|
|
"path": "/home/jakub/devel/escapistsrereintroduced/addons/core/Scripts/Game/ERR/10_AI/ERR_HQ.c",
|
|
"lines": [
|
|
1090,
|
|
1093,
|
|
1100
|
|
],
|
|
"fact": "Current DeliverOrder spawns vanilla SearchWaypoint and installs it without SetCompletionRadius or any other search extent configuration."
|
|
},
|
|
{
|
|
"path": "/tmp/erri-vanilla-stock/Prefabs/AI/Waypoints/AIWaypoint_SearchAndDestroy.et",
|
|
"lines": [
|
|
7
|
|
],
|
|
"fact": "Installed vanilla prefab CompletionRadius30."
|
|
},
|
|
{
|
|
"path": "/tmp/erri-vanilla-stock/scripts/Game/AI/Behavior/SCR_AISearchAndDestroyActivity.c",
|
|
"lines": [
|
|
130,
|
|
143
|
|
],
|
|
"fact": "Native GenerateInvestigationGrid derives its actionRadius from waypoint.GetCompletionRadius."
|
|
},
|
|
{
|
|
"path": "/home/jakub/devel/escapistsrereintroduced/addons/core/Scripts/Game/ERR/10_AI/ERR_HQPursuit.c",
|
|
"lines": [
|
|
94,
|
|
108,
|
|
125
|
|
],
|
|
"fact": "Current uncertainty changes objective/sector coordinates; it does not configure native grid radius."
|
|
}
|
|
],
|
|
"effect": "A stale delivered report can move the search destination into a different uncertainty sector, but the native search around that destination is still the same30m footprint as every fresh task. This is a source behavior omission, not merely an unqualified physical test.",
|
|
"bounded_proposal": "Add a finite immutable search-radius field/policy to normal memory SEARCH orders (suggest original45/110 age behavior or explicit45..110 uncertainty policy chosen by root); assign during plan using delivered snapshot evidence, validate and set on the new native waypoint before AddWaypointAt. Keep existing delivered identity/revision checks, task expiry, claim limits, patrol restoration and native combat preemption. Do not mutate already-running waypoints or refresh observation time.",
|
|
"boundaries": [
|
|
"Do not apply to road/security Defend waypoints, containment/intercept or missing-patrol requests without separate policy.",
|
|
"Keep existing physical40m/30s negative-search witness; do not widen cleared-ground claims just because native grid is larger. Existing500m coverage cells are explicitly visit exclusions rather than proof every point was visible.",
|
|
"No new force, stock, spawn system, target-position read or road survey.",
|
|
"Setting radius before activity creation is supported by current native API but still needs later native compilation/behavior qualification."
|
|
],
|
|
"focused_test_plan": "Extend actual DeliverOrder harness and pure policy test: fresh/stale finite values, pending immutable radius despite later memory mutation, malformed radius refusal without installing, unchanged fixed deadlines/Defend/missing-patrol behavior, no enlarged negative-search claim. No tests run here."
|
|
},
|
|
"not_recommended_as_missing_feature": [
|
|
"Radio awareness-only broadcast storage is absent but original EAI_HQ Awareness is used only for duplicate broadcast suppression/logging, not movement/perception; this would add radio traffic without demonstrated gameplay benefit.",
|
|
"Most original status, missing patrol, memory, convoy, mine, depot and equipment rows are obsolete as source-gap descriptions: current corresponding implementations exist. Their remaining native/manual/MP gaps are not new source features."
|
|
],
|
|
"source_sha256": {
|
|
"/home/jakub/devel/escapistsrereintroduced/docs/ai-feature-migration.json": "68dfb0b523b650fc82648953d3ed390dc68617d0ed9cc5bce86145b3e7b99eea",
|
|
"/home/jakub/devel/escapistsrereintroduced/addons/core/Scripts/Game/ERR/10_AI/ERR_HQ.c": "d873b5b689e918f8c907918d673304a184ac2e4a4cb6face527b37a67821ee9f",
|
|
"/home/jakub/devel/escapistsrereintroduced/addons/core/Scripts/Game/ERR/10_AI/ERR_HQTask.c": "1147904bae6d72e9de47ce17bdada3dab489de4ed6e781dbf15bdbb30599ff6e",
|
|
"/home/jakub/devel/escapistsrereintroduced/addons/core/Scripts/Game/ERR/10_AI/ERR_HQPursuit.c": "ab6ca0e1a7f36c104e664db06a74c80a528cbfd1de599af42e2194ef0a4f4ca3",
|
|
"/home/jakub/devel/escapistsrereintroduced/addons/core/Scripts/Game/ERR/10_AI/ERR_HQCoverage.c": "8d9668858c47b7e9fee2b12d3ebd4e7cb88146b817cf615c4b0dade26c81b2ec",
|
|
"/home/jakub/devel/escapistsrereintroduced/addons/core/Scripts/Game/ERR/00_Core/ERR_Resources.c": "d0169aac6fd0c38928c47a9002ded0fd8ba558ea3314a600e792d307ac1ca3ee",
|
|
"/home/jakub/devel/escapists/escapists-ai/Scripts/Game/EscapistsAI/EAI_GroupTactics.c": "226eb3981765284afa0cead84411244806a84440003fe4af69f2208028cef23d",
|
|
"/tmp/erri-vanilla-stock/Prefabs/AI/Waypoints/AIWaypoint_SearchAndDestroy.et": "55e46bd62175f3f2b4c5f203bb161b339648f5c1a1b53fcc6b40193c72dcf2a2",
|
|
"/tmp/erri-vanilla-stock/scripts/Game/AI/Behavior/SCR_AISearchAndDestroyActivity.c": "51f4343ee3e8fa90edea9a9a7d73581debfccc961a2e65dc87043289a5bd6fe1"
|
|
}
|
|
}
|