Skip to content

Upstream BE2073 AICOM Fork Delta Classification

rayswaynl edited this page Jul 3, 2026 · 1 revision

Upstream BE2073 AICOM Fork-Delta Classification

Source-backed classification of the Build84/cmdcon36 Server/AI/Commander tree against the upstream Benny BE 2.073 parent. Use this page when deciding whether an AI commander change can be cherry-picked from upstream or must be treated as WASP-owned design.

Evidence Snapshot

Item Evidence
Upstream parent ref refs/remotes/upstream/v24042025@407c2d2d8411cf1f0824adc15639e9d3f5ea33c1 (Merge branch 'LoadoutManagerFix7zPath' into dev_24042025, 2025-04-25).
Older upstream comparison ref refs/remotes/upstream/v31072024@436abf83805de42484db9d041c19b4228f91b285.
WASP target base origin/claude/build84-cmdcon36@5fca3239069a5eff6335f06fecb26bb72e8c9ceb.
Strict diff command git diff --name-status refs/remotes/upstream/v24042025 origin/claude/build84-cmdcon36 -- "Missions/[55-2hc]warfarev2_073v48co.chernarus/Server/AI/Commander/".
Strict path result Upstream has zero files under Server/AI/Commander; Build84 has 18 added files and 8157 insertions(+).
Maintained mirrors Takistan and Zargabad show the same 18 added Server/AI/Commander files.
Adjacent legacy carry-over Outside the strict directory, Build84 adds Common_RunCommanderTeam.sqf and modifies Server_AI_Com_Upgrade.sqf plus Server_ChangeAICommanderFunds.sqf: 3 files changed, 2462 insertions(+), 32 deletions(-).

Headline Finding

By strict path diff, there is no upstream-original source file inside Build84's Server/AI/Commander directory. The entire directory is a WASP-added modular commander system.

The AI commander concept is inherited from upstream: upstream already has the AI commander enable flag, null-commander convention, AI wallet, upgrade order arrays and AI upgrade worker. Build84 changes the architecture: it replaces the old hook/FSM-shaped surface with a modular supervisor, strategy loop, team founder, HC-local team driver and feature workers.

Future upstream mining should therefore avoid path-level cherry-picks for Server/AI/Commander. Mine upstream semantics and gameplay intent, then port them into the WASP AICOM modules with current feature gates, telemetry and HC ownership rules.

Upstream Original Surface

Surface Upstream evidence Build84 interpretation
AI commander flag WFBE_C_AI_COMMANDER_ENABLED = 1 in upstream common constants. Inherited concept; Build84's modular commander is gated and started by server init logic.
Null commander convention Upstream vote/reassignment code treats wfbe_commander = objNull as AI control and a team object as human control. Inherited control model; Build84 AI_Commander.sqf runs full mode when no human owns command and assist mode when a human does.
AI wallet Upstream has Server_ChangeAICommanderFunds.sqf, Server_GetAICommanderFunds.sqf and income deposits. Inherited resource concept; Build84 keeps accessors and routes AICOM spend decisions through modular workers.
Upgrade order arrays Upstream Core_Upgrades exposes WFBE_C_UPGRADES_%1_AI_ORDER; Server_AI_Com_Upgrade.sqf consumes it. Inherited research priority surface; Build84 keeps the worker while surrounding commander behavior is WASP-owned.
Commander startup hooks Upstream vote/reassignment comments mention processing the AI Commander FSM when no human commander is present. Inherited activation intent only; the strict Server/AI/Commander implementation does not exist upstream.
Target directory git ls-tree -r --name-only refs/remotes/upstream/v24042025 -- ".../Server/AI/Commander/" returns zero files. All 18 files in the Build84 directory classify as WASP-added files.

File Classification

File Added lines Strict class Behavior lineage Role
AI_Commander.sqf 1086 WASP replacement core Inherited AI commander concept, WASP supervisor architecture. Per-side supervisor; full mode without human commander, assist/hybrid behavior with one.
AI_Commander_Allocate.sqf 437 WASP additive v2 layer WASP AICOM v2 attack authority. Optional single offensive authority that concentrates teams through WFBE_C_AICOM2_ALLOCATE_ENABLE.
AI_Commander_AssignTowns.sqf 766 WASP replacement core WASP team-tasking implementation over inherited town-control goals. Sends idle AI teams toward nearest uncaptured or target towns.
AI_Commander_AssignTypes.sqf 281 WASP replacement core WASP modular team-template assignment. Assigns team templates to unassigned AI teams.
AI_Commander_Base.sqf 1006 WASP replacement core Inherited commander/base responsibility, WASP base-doctrine implementation. Deploys HQ and builds base structures by doctrine.
AI_Commander_BaseSell.sqf 97 WASP additive feature WASP gated cleanup/economy feature. Sells or recycles eligible structures when enabled.
AI_Commander_Beacon.sqf 152 WASP additive feature WASP forward-spawn support. Manages forward ambulance spawn beacon behavior.
AI_Commander_DisbandLowTier.sqf 79 WASP additive feature WASP force-quality maintenance. Retires rear idle foot infantry once mobile force exists.
AI_Commander_Execute.sqf 138 WASP replacement core WASP order materialization. Converts stored AICOM orders into actual waypoints.
AI_Commander_FundsSink.sqf 78 WASP additive feature WASP wealth-cap/funds-sink behavior. Spends excess commander wealth when the feature gate allows it.
AI_Commander_HCTopUp.DRAFT.sqf 280 Draft/inert additive WASP draft only. Documents HC top-up direction; not wired into live behavior.
AI_Commander_MHQReloc.sqf 554 WASP additive feature WASP mobile-HQ relocation logic. Relocates MHQ by strategic pressure and safety checks.
AI_Commander_Paratroops.sqf 118 WASP additive feature WASP tactical reinforcement feature using existing support path. Calls AI paratroop reinforcement through the player support function when gated.
AI_Commander_PlayerArty.sqf 85 WASP additive feature WASP command-console resolver. Resolves player artillery requests into commander-side artillery action.
AI_Commander_Produce.sqf 479 WASP replacement core Inherited AI production need, WASP production worker. Reinforces under-strength AI teams.
AI_Commander_Snapshot.sqf 187 WASP additive v2 layer WASP world-model layer. Builds the AICOM v2 snapshot consumed by strategy/allocation.
AI_Commander_Strategy.sqf 1098 WASP strategy layer WASP strategic planner over inherited commander goals. Selects strategic targets, spearheads and high-level posture.
AI_Commander_Teams.sqf 1236 WASP replacement core Inherited AI commander team ownership, WASP founder/HC delegation. Founds combat teams up to target and delegates execution to HC/server-local drivers.

Startup And Runtime Anchors

Build84 compiles the AICOM tree from Server/Init/Init_Server.sqf around the commander compile block, then starts one supervisor per side and watchdog-restarts it later. Common_RunCommanderTeam.sqf is outside the strict directory but is part of the runtime: it is the HC/server-local driver that reads wfbe_aicom_order, creates or owns team groups and turns the commander brain's orders into unit movement.

This split matters for future patches. Strategy changes usually belong in AI_Commander.sqf, AI_Commander_Strategy.sqf, AI_Commander_Snapshot.sqf or AI_Commander_Allocate.sqf; team execution changes usually belong in AI_Commander_Teams.sqf plus Common_RunCommanderTeam.sqf, not in upstream-imported files.

Mining Guidance

  • Treat Server/AI/Commander as WASP-owned implementation, not upstream-owned source.
  • Mine upstream for AI wallet, research, vote/reassignment and null-commander semantics; do not expect matching commander module paths.
  • Port any upstream AI commander lesson into the current WASP module that owns that behavior, with the current feature gate and telemetry style.
  • Check whether a worker is live-wired before claiming behavior. AI_Commander_HCTopUp.DRAFT.sqf is a draft file and should not be described as live runtime.
  • For source edits, start in Chernarus, run LoadoutManager propagation and verify Takistan/Zargabad mirror parity instead of hand-editing generated mission copies.
  • For documentation-only archaeology, cite the exact upstream ref and Build84 base; upstream branch names alone are not authority.

Validation

  • Strict Chernarus path diff returned 18 added Server/AI/Commander files and 8157 insertions(+).
  • Upstream parent refs/remotes/upstream/v24042025 has zero files under the strict target directory.
  • Maintained Takistan and Zargabad mirrors show the same 18 added commander files.
  • Adjacent carry-over scan found Common_RunCommanderTeam.sqf added and AI commander wallet/upgrade helpers modified outside the target directory.
  • Scope stayed wiki-only: no mission source edits, no source branch, no draft PR, no LoadoutManager run, no package artifact, no deploy and no live server action.

Continue Reading

Sidebar

Clone this wiki locally