Skip to content

Economy Towns And Supply

rayswaynl edited this page Jul 7, 2026 · 34 revisions

Economy, Towns And Supply

Town object initialization, capture/SV state, camp capture, marker visibility and town-AI activation are mapped in Towns, camps and capture atlas. Keep this page focused on economy, supply, reward and resource interpretation, then route lifecycle implementation details to the owner pages below.

How To Use This Page

Need Read
Town init, capture, camp and town-AI source flow Towns, camps and capture atlas
Cross-faction balance asymmetry reference Balance asymmetries
Resource-income tick algorithm, AI commander over-cap funds fallback and income-system 4 display mismatch Resource income tick distribution engine, resource income branch matrix
Supply mission cooldowns, JIP, cargo vars and completion trust Supply mission architecture
Supply authority patch shape Supply mission authority cleanup
Side-supply clamp, reason strings, direct temp channels and first patch order Economy authority first cut, Resistance supply scaffold
AI commander upgrades and AI logistics AI commander autonomy audit, Upgrades and research
Client-trusted economy surfaces outside towns/supply Server authority migration map, Construction atlas, Factory/purchase atlas, Gear/loadout/EASA atlas

Current Branch Scope

Current branch truth is owned by the row-specific matrices below and linked owner pages. Older 2026-06-14 baseline checks (8cb43e4e, cf2a6d6a, b8389e74, 0076040f, a96fdda2) remain provenance for unchanged legacy anchors, but do not override newer current-stable refreshes. Targeted git diff --name-only 8a6695b8..HEAD and 6d05cb5a..HEAD checks over the economy/supply constants, resource loop, income display, supply mission, side-supply helper, AI upgrade, kill-bounty and stringtable paths returned no source changes at that checkpoint, so the 8a6695b8 / 6d05cb5a line anchors remain historical provenance where a row has not been refreshed.

Resource-income evidence was refreshed again on 2026-06-24 in the branch matrix below against docs/source HEAD@f29b4a9b7900 (source-unchanged from c8ec223a / 3a32be92 / cd9ba541 for checked updateresources.sqf and Client_GetIncome.sqf paths), current stable/B74.1 origin/master@f8a76de34 / origin/claude/b74.1-aicom@f8a76de34, current B74.2 origin/claude/b74.2-aicom@21b62b04, previous B74.2 d472da6a, current B69 origin/claude/b69@8d465fce, adjacent B74 origin/claude/b74-aicom-spend@b23f557f, Miksuu b8389e748243, origin/perf/quick-wins@0076040f and historical release commit a96fdda2. Checked d472da6a..21b62b04 is empty for income paths and constants; origin/master..origin/claude/b74.2-aicom changes source-Chernarus AICOM/pop-tier constants only among checked income-adjacent files. Supply-mission branch scope is still routed through Supply mission architecture; no supply-mission claim is updated by this resource-income refresh.

Ref Economy/supply status
Docs/source HEAD@f29b4a9b Resource-income old guard/display drift remains in both maintained roots and checked income files are unchanged from c8ec223a; supply missions are truck-only; AI commander upgrade debit is still swapped; side-supply arithmetic/reason validation remains open.
Current stable/B74.1/B74.2 origin/master@f8a76de34 / origin/claude/b74.2-aicom@21b62b04 Resource-income cap/display drift is partially fixed for AI commander over-cap funds. Chernarus also has B74 hybrid-refill cash checks, WFBE_C_ECONOMY_SUPPLY_INCOME_MULT on side-supply growth and B74.1 AICOM taper; maintained Vanilla keeps the non-hybrid/raw-supply fallback. Current B74.2 has no checked updateresources.sqf / Client_GetIncome.sqf delta over current stable or previous B74.2 d472da6a; its stable-to-B74.2 Chernarus constants delta is AICOM/pop-tier tuning, not a payout/display fix. Side-supply/team-paycheck cap intent, display math and maintained-root parity questions remain open.
Current B69 origin/claude/b69@8d465fce and adjacent B74 origin/claude/b74-aicom-spend@b23f557f Checked resource-income files are identical between B69 and B74. They keep the side-supply/team-paycheck gate but add hybrid-refill AI commander cash handling; Chernarus also applies WFBE_C_ECONOMY_SUPPLY_INCOME_MULT to side-supply growth while maintained Vanilla still uses raw _supply. Side-supply authority validation and maintained-root parity questions remain open.
Current Miksuu master@b8389e748243 and origin/perf/quick-wins@0076040f Miksuu/perf resource-income guard/display drift remains old-shaped; supply missions are truck-only and still use the broad command-center scan; AI commander upgrade debit remains swapped. Perf floors side-supply negatives in Chernarus only and changes Chernarus resource-loop wait cadence only.

Exact branch matrices live on owner pages: Economy authority first cut for side supply, Resistance supply scaffold for GUER/resistance owner/read/write scope, Supply mission architecture for truck/heli supply flow, and AI commander autonomy for AI upgrade debit.

Town Supply Model

Town supply value drives automatic income and supply missions. Current docs checkout 8cb43e4e has the same maintained Chernarus constants as 8a6695b8: automatic supply mode at Common/Init/Init_CommonConstants.sqf:161, timed supply delay at :165, the supply-mission multiplier 20 at :167, score coefficient at :180, stale delivery-funds coefficient at :268, and supply-level arrays at :339-340. Stable origin/master shifts those constants to :165,169,171,173-181,285,358-359; release a96fdda2 shifts them to :161,165,167,169-180,281,354-355.

Keep the model split clear:

  • supplyValue / SV is the town-side value used by income and supply cargo.
  • Side supply is the team-level pool changed through ChangeSideSupply and direct temp PV channels.
  • Funds are group/player money values changed through shared helpers and many client-trusted UI paths.

Player Supply Mission Flow

Common route: a SpecOps skill action in Client/Module/Skill/Skill_Apply.sqf exposes the load action, Client/Module/supplyMission/supplyMissionStart.sqf checks cooldown and stamps vehicle vars, the client broadcasts WFBE_Client_PV_SupplyMissionStarted, the server tracks the vehicle/town, command-center proximity completes the mission, and Server/Module/supplyMission/supplyMissionCompleted.sqf trusts vehicle vars before mutating side supply and notifying the client reward path.

Branch split routes through Supply mission architecture: docs/source 15563691, current Miksuu b8389e748243 and perf 0076040f are truck-only, while current stable/B74.1 origin/master@f8a76de34, B74.2 origin/claude/b74.2-aicom@21b62b04, B69 and adjacent B74 add supply-heli/cash-run state in both maintained roots. Old PR #1/release rows are historical branch-review evidence until a live ref returns. The economy implication is unchanged across both shapes: the server completion path still trusts client-stamped vehicle vars, and the client completion message path remains gameplay-relevant for personal cash/score reward presentation.

Routing note: Supply mission architecture owns the cooldown/JIP flow, Deep-review findings DR-18 owns the lastSupplyMissionRun / LastSupplyMissionRun casing defect, and Supply mission authority cleanup owns the patch shape.

Economy And Commander Funds

Funds and supply are separate systems unless the mission parameter switches currency behavior. The separation is conceptual, not proof that each payout path is independently server-gated.

Old-shape refs still have the broadest cap-guard debt: docs/source HEAD@c8ec223a, Miksuu b8389e748243, origin/perf/quick-wins@0076040f and historical release commit a96fdda2 compute town supply income in Server/FSM/updateresources.sqf:29-70, then wrap side-supply growth, team paychecks and AI-commander funds in if (_supply < _supply_max_limit) at :31. Because _supply is the computed town-income value, not the current side-supply balance, this is not simply "current side supply is full". Treat income-loop changes as economy gameplay changes, not only supply UI changes.

Current stable/B74.1 origin/master@f8a76de34 equals origin/claude/b74.1-aicom@f8a76de34, and current B74.2 origin/claude/b74.2-aicom@21b62b04 has no checked updateresources.sqf / Client_GetIncome.sqf delta over it or previous B74.2 d472da6a. The Chernarus root keeps the cap gate at updateresources.sqf:69, side-supply growth at :87, team paychecks at :101, hybrid-refill AI commander cash/stipend checks at :105-114, over-cap fallback at :126-132 and B74.1 AICOM taper at :57-67 / :106,:130. Maintained Vanilla keeps the same cap/fallback shape without the Chernarus hybrid-refill, supply-multiplier or taper: cap gate :58, side supply :76, paychecks :90, under-cap AI commander cash/stipend :94-103 and over-cap fallback :115-121. B74.2's source-Chernarus constants delta over stable adds pop-tier/AICOM team-cap context (Init_CommonConstants.sqf:171-176), but it does not change the income tick or display files. Do not reopen the "AI commander gets no funds at cap" fix on current stable unless new source evidence changes; do keep side-supply/team-paycheck cap intent, display mismatch and Chernarus/Vanilla parity on the economy review path.

Current B69 origin/claude/b69@8d465fce and adjacent B74 origin/claude/b74-aicom-spend@b23f557f are identical for the checked resource-income files. Both keep the cap gate at updateresources.sqf:58, side-supply growth at :76, team paychecks at :90 and AI commander over-cap fallback at :115-121. B69/B74 Chernarus broadens AI commander cash/stipend eligibility with WFBE_C_AI_COMMANDER_HYBRID_REFILL at :94-103 and :115, and applies WFBE_C_ECONOMY_SUPPLY_INCOME_MULT to Chernarus side-supply growth at :76; maintained Vanilla keeps the no-hybrid and raw-supply shape at :94-103 and :76.

Income system 4 has a display/runtime mismatch in every checked branch: old-shape refs multiply income by 1.5 before splitting commander/player shares at updateresources.sqf:42-43, current stable/B74.1/B74.2 Chernarus does the same at :80-81 and maintained Vanilla at :69-70, and B69/B74 do the same at Chernarus :69-70. Client/Functions/Client_GetIncome.sqf:24-28 displays the split without the 1.5 multiplier in every checked ref. Verify intended balance before changing either path; the docs point is that RHUD/menu income can differ from the actual paycheck.

Resource Income Branch Matrix

Scope Source anchors Development meaning
Docs/source HEAD@f29b4a9b Maintained Chernarus and Vanilla keep the old source shape, unchanged from c8ec223a: the whole payout block is guarded at Server/FSM/updateresources.sqf:31, income-system 4 multiplier applies at :42-43, side supply changes at :49, groups are paid at :63, AI commander funds are credited at :67, and Client/Functions/Client_GetIncome.sqf:24-28 omits the display multiplier. Checked diffs from c8ec223a, 3a32be92 and cd9ba541 through HEAD@f29b4a9b are empty for these income paths. Patch-ready economy correctness debt. Treat as balance-sensitive, not a harmless UI refactor.
Current stable/B74.1 origin/master@f8a76de34 and B74.2 origin/claude/b74.2-aicom@21b62b04 Current B74.2 has no checked updateresources.sqf / Client_GetIncome.sqf delta over current stable or previous B74.2 d472da6a. Chernarus gates side supply/team paychecks at updateresources.sqf:69,87,101, applies system-4 1.5 at :80-81, broadens AI commander cash/stipend with WFBE_C_AI_COMMANDER_HYBRID_REFILL at :105-114 and over-cap :126-132, and tapers AICOM income at :57-67,:106,:130. Maintained Vanilla gates side supply/team paychecks at :58,76,90, applies system-4 1.5 at :69-70, and keeps non-hybrid over-cap fallback at :115-121. Client_GetIncome.sqf:24-28 still omits the display multiplier. B74.2 stable-to-branch constants drift is source-Chernarus pop-tier/AICOM cap context, not an income-loop closure. Partial source-present fix plus maintained-root drift. Preserve the AI-commander funds-famine fallback and B74.1 taper deliberately; remaining review is cap intent for side supply/team paychecks, Chernarus/Vanilla parity and actual-payout vs displayed-income alignment.
Current B69 origin/claude/b69@8d465fce and adjacent B74 origin/claude/b74-aicom-spend@b23f557f Checked resource-income files are identical between B69 and B74. Both maintained roots gate side supply/team paychecks at updateresources.sqf:58,76,90 and add AI commander fallback at :115-121; Chernarus also uses WFBE_C_AI_COMMANDER_HYBRID_REFILL in the under-cap and over-cap AI commander cash checks (:94-103, :115) plus WFBE_C_ECONOMY_SUPPLY_INCOME_MULT on side supply at :76, while maintained Vanilla keeps the non-hybrid/raw-supply shape. Client_GetIncome.sqf:24-28 still omits the system-4 display multiplier. Branch-specific partial fix plus behavior drift. Treat as candidate evidence, not a simple stable duplicate; review Chernarus/Vanilla parity and hybrid-refill economy intent before porting or release wording.
Miksuu upstream b8389e748243, origin/perf/quick-wins@0076040f and historical release a96fdda2 Same old maintained-root guard/display shape as docs/source: cap guard at updateresources.sqf:31, system-4 multiplier at :42-43, side supply at :49, group funds at :63, AI commander funds at :67, and client display at Client_GetIncome.sqf:24-28. Perf Chernarus changes resource-loop wait cadence only. Old-shape targets still need the AI-commander over-cap funds decision as well as the side-supply/team-paycheck and display-math review. Current origin exposes no live release/*, resource, income or economy rescue heads on 2026-06-24.

Smallest code-owner review on current stable: decide whether the cap guard should constrain only side-supply growth or also team paychecks, then align actual paychecks and Client_GetIncome/RHUD/menu display for income system 4. On current B74.1/B74.2 Chernarus, preserve or deliberately change the AICOM taper and hybrid-refill/supply-multiplier behavior instead of treating it as maintained Vanilla parity. On old-shape branches, include the AI-commander over-cap funds/stipend fallback in the same review. Smoke a capped-supply side, a normal uncapped side, commander and non-commander teams, and AI commander funds before calling the behavior fixed.

AI commander upgrades are an economy consumer, not an owner-page responsibility here. Current docs checkout 8cb43e4e has no checked source drift from the older AI upgrade anchor: docs/Miksuu/perf still carry the swapped debit; current stable fixes debit order and current-level lookup, while historical release evidence fixed debit only. Use AI commander autonomy audit and Upgrades and research before enabling or expanding autonomous AI commander upgrades.

Kill-bounty detail: player-facing bounty awards are client PVF/local-money paths, but AI-led kill bounty has a separate server branch. RequestOnUnitKilled.sqf:83-100 sends AwardBountyPlayer/AwardBounty to players for player kills and, when WFBE_C_AI_TEAMS_ENABLED > 0, credits the AI killer group directly with ChangeTeamFunds (RequestOnUnitKilled.sqf:97-100). Treat score/bounty changes as both player-economy and AI-team-economy work.

Supply Mission Reward Formula And Stale Copy

The runtime reward path is not the old "4 x actual value" player-help rule.

Scope Runtime reward
Docs checkout 8a6695b8, Miksuu b8389e74, perf 0076040f Loaded cargo is floor((town supplyValue) * WFBE_C_ECONOMY_SUPPLY_MISSION_MULTIPLIER * supplyUpgradeModifier) in supplyMissionStart.sqf:32; the multiplier is 20 at Init_CommonConstants.sqf:167. Completion sends the same _supplyAmount to the player message path, where supplyMissionCompletedMessage.sqf:13-14 grants raw cash and :22 requests score.
Current stable/B74.1 origin/master@f8a76de34; B74.2 origin/claude/b74.2-aicom@21b62b04 Heli/truck loading writes SupplyByHeli at supplyMissionStart.sqf:80; guarded killed-handler setup uses wfbe_supply_killed_eh_set at supplyMissionStarted.sqf:15-17; B74.1 source Chernarus completion reads/clears it at supplyMissionCompleted.sqf:26,:47 and maintained Vanilla at :26,:44. B74.2 source Chernarus line-drifts those completion anchors to :29,:50; maintained Vanilla remains :26,:44. Player cash reward starts as _supplyAmount, then applies WFBE_C_SUPPLY_HELI_REWARD_MULT for heli delivery in supplyMissionCompletedMessage.sqf:17; score does the same at :32. The heli reward constant is source Chernarus Init_CommonConstants.sqf:550 on B74.1 and :563 on B74.2; maintained Vanilla is :352.

The stale copy is in maintained stringtable.xml:188-193: STR_Supplies_2 still tells players they receive "4 x the actual value as cash". The matching WFBE_C_PLAYERS_SUPPLY_TRUCKS_DELIVERY_FUNDS_COEF = 4 remains defined (Init_CommonConstants.sqf:268 in the docs checkout, :285 on stable, :281 on release), but this source pass found no maintained supply-completion consumer. Treat the stringtable text as player-facing docs debt, not runtime authority.

Economy Authority Synthesis

The economy authority class is characterized by source review. Every confirmed spend or value-changing path is client-authoritative or trusts client-originated payload/state:

Path Finding Evidence
Construction/build Client pays and sends RequestStructure / RequestDefense; server performs only light creation checks. DR-6, Construction atlas
Player unit buy Client spawns through Client_BuildUnit and deducts locally; no RequestBuyUnit PVF exists. DR-14, Factory/purchase atlas
Structure sale Economy UI refunds and destroys locally. DR-16
Side supply Direct temp channels mutate keyed wfbe_supply_%1 values; the generic wfbe_supply client init value is a legacy alias/cache. Current docs checkout 8cb43e4e has no checked source drift from the 6d05cb5a side-supply anchors. DR-22, DR-44, Economy authority first cut
Score mutation/rewards RequestChangeScore accepts a payload score, while Common_AwardScorePlayer and kill scoring show safer server-derived award patterns. Economy authority first cut, Public variable channel index
Player/group funds No RequestChangeFunds PVF exists; funds are changed through replicated wfbe_funds group variables and shared helpers. Economy authority first cut
Supply mission cargo/reward Client stamps SupplyFromTown / SupplyAmount and, on current stable, SupplyByHeli onto the vehicle; server completion trusts those vars after proximity checks. Personal cash/score reward presentation is still client-side after the completion broadcast. Supply mission architecture
Upgrades RequestUpgrade passes raw payload into server process; no server-side cost/commander/dependency validation. DR-23
ICBM/special Client can send RequestSpecial ["ICBM", ...]; server spawns NukeDammage from payload without authority checks. DR-27, Networking/PV
Gear/EASA/service Gear, EASA and vehicle service effects/debits are client-side; service rearm/refuel skip even client affordability guards. DR-28, Gear/loadout/EASA atlas
Attack wave price modifier ATTACK_WAVE_INIT is a direct client/common -> server publicVariable; server trusts _supply / _side and can apply a side-wide unit-price modifier from forged payload. DR-41, Networking/PV, Server authority map, Attack-wave authority playbook

This should be treated as one owner decision, not separate patch tracks. Either introduce a server-side funds/effects ledger and validate each spend handler before applying effects, or explicitly accept the legacy client-trusted model and lean on BattlEye script filters for public-server hardening. DR-41 adds an important architecture rule: the forgery class has two surfaces, registered PVF handlers and direct publicVariableServer channels, so a PVF dispatcher fix alone does not harden direct economy/support channels. Small parity fixes, such as adding affordability guards to service rearm/refuel, are useful correctness work but do not close the architectural authority gap.

Side-supply logging caveat: Common_ChangeSideSupply.sqf:8-13 only copies the human-readable _reason when count _this > 3. Use the branch-checked Economy authority matrix: checked docs/source, current stable/B74.1/B74.2, B69/B74, upstream, perf and historical release roots all drop the 3-argument AttackWave.sqf:40 reason while preserving 4-argument supply-completion reasons. Current B74.2 is origin/claude/b74.2-aicom@21b62b04; the checked d472da6a..21b62b04 delta is empty for reason/helper paths. Patch this as diagnostics cleanup alongside side-supply clamp/validation work, not as authority closure.

Supply-Related Partial Work

Do not use this page as the canonical AI logistics status page. AI commander autonomy audit owns the AI supply-truck matrix: current stable and historical release evidence safe-disable the incomplete worker, while Miksuu/perf still carry the raw-spawn trap. Treat autonomous AI logistics as incomplete/deferred until a code-owner revival is source-smoked.

Supply Helicopter Branch Work

Current stable/B74.1 origin/master@f8a76de34, B74.2 origin/claude/b74.2-aicom@21b62b04, current B69 and adjacent B74 carry the supply-heli/cash-run source shape in both maintained roots; docs/source 15563691, current Miksuu b8389e748243 and perf 0076040f remain truck-only. PR #1 is closed/unmerged and no live origin supply/heli feature head was found in the current remote scan, so old PR/release rows are historical branch-review context. Supply mission architecture owns the exact matrix and line anchors. The economy takeaway is that heli support adds class constants, upgrade gates, SupplyByHeli, air bonuses, commander-team cash runs and interdiction-related constants, but it does not change the fundamental client-started/server-completed trust model.

Implementation handoff: Economy authority first cut turns this economy-authority class into the smallest source-backed patch order.

GUER Towns Panel (Commissar Menu)

Source-verified 2026-07-07 against claude/build84-cmdcon36 (c3cc5b1, Build 91 / release 1.2.2 candidate).

The main Warfare-menu button IDC 11008 defaults to the label Economy ($STR_WF_MAIN_EconomyMenu = "Economy"; stringtable.xml:776-779, button config Rsc/Dialogs.hpp:1193-1202) and opens RscMenu_Economy (idd=23000, Rsc/Dialogs.hpp:3621-3624) via MenuAction = 8.

For GUER/resistance players only, Client/GUI/GUI_Menu.sqf:8-11 re-enables the same control and overwrites its on-screen text with the hardcoded literal Towns (not a stringtable key, so it does not localize):

if (sideJoined == resistance) then {
	ctrlEnable [11008, true];
	ctrlSetText [11008, "Towns"]; //--- owner 2026-07-07: renamed from "Town Actions"
};

The MenuAction == 8 handler (GUI_Menu.sqf:230-238) then routes GUER to a different dialog entirely instead of a tab inside the Economy dialog:

if (MenuAction == 8) exitWith {
	MenuAction = -1;
	closeDialog 0;
	if (sideJoined == resistance) then {
		createDialog "WFBE_GDirCommissarMenu";
	} else {
		createDialog "RscMenu_Economy";
	};
};

WFBE_GDirCommissarMenu (idd=31000, Rsc/Dialogs.hpp:4535-4538, onLoad Client/GUI/GUI_Menu_GuerCommissar.sqf) is a full dialog swap, not a sub-tab: WEST/EAST never see it and RscMenu_Economy is unmodified for them. This is a per-side button/dialog swap on the one shared control (11008 / MenuAction 8), not a tab added inside the Economy dialog.

Element IDC Source
Town list, one row per towns[] entry, color-tinted by current owner side 31010 GUI_Menu_GuerCommissar.sqf:43-64
Minimap, click selects the nearest town by raw distance (no side/eligibility filter — can select a WEST- or EAST-held town) 31060 GUI_Menu_GuerCommissar.sqf:41,89-102,282-295
Wallet + selected-town-fund readout (Wallet: $X | Town Fund: $Y), refreshed every loop tick 31070 GUI_Menu_GuerCommissar.sqf:139-151
Quoted prices: convoy buy, instant buy, QRF insert/gunship/combo, counter-attack 31071-31076 GUI_Menu_GuerCommissar.sqf:155-173
Cooldown remaining on the selected town 31079 GUI_Menu_GuerCommissar.sqf:315-328
Status/pending-order text 31078 GUI_Menu_GuerCommissar.sqf:244,302,334-364

The panel does not show a per-town supply-value/income breakdown table. It shows the player's wallet, the selected town's fund, and quoted contract prices for GUER-specific actions (buy convoy, buy instant, QRF insert, QRF gunship, QRF combo, counter-attack, donate — MenuAction 21/22/31/32/33/41/51, GUI_Menu_GuerCommissar.sqf:331-365). Prices are quoted server-side via RequestGDirPanel/"quote" (GUI_Menu_GuerCommissar.sqf:239-246) and returned through GDirPanelResult; donate has no quoted price label because it is a fixed $200 wallet debit (GUI_Menu_GuerCommissar.sqf:230).

Gating: the panel hints and closes unless AICOMV2_LANE_GUER_DIRECTOR > 0 (default 1, Common/Init/Init_CommonConstants.sqf:1932), AICOMV2_GDIR_PANEL > 0 (default 1, requires the lane flag; Common/Init/Init_CommonConstants.sqf:1948), and the local player is on resistance (GUI_Menu_GuerCommissar.sqf:26-37). The button-text override itself checks none of these flags — a resistance player sees Towns on the button even if one of the gate flags is 0, and only discovers the panel is inert after clicking (GUI_Menu.sqf:8-11 vs. GUI_Menu_GuerCommissar.sqf:26-33).

Source: Client/GUI/GUI_Menu.sqf:1-11,230-238; Client/GUI/GUI_Menu_GuerCommissar.sqf:1-64,89-102,139-173,239-371; Rsc/Dialogs.hpp:1193-1202,3621-3624,4535-4538; stringtable.xml:776-779; Common/Init/Init_CommonConstants.sqf:1932,1948.

Continue Reading

Previous: Core systems | Next: Supply mission architecture

Main map: Home | Fast path: Quickstart | Agent file: agent-context.json

Sidebar

Clone this wiki locally