-
Notifications
You must be signed in to change notification settings - Fork 0
Array And Collection Utility Reference
Source-verified 2026-06-21 against then-current master cf2a6d6a4; current origin/master is 0139a346, so recheck cited paths before current-head claims. Paths relative to Missions/[55-2hc]warfarev2_073v48co.chernarus/ unless noted. Arma 2 OA 1.64.
This page documents the foundational collection helpers that underpin nearly every system in WASP. All functions listed here are registered in Common/Init/Init_Common.sqf (lines 94–145) via Compile preprocessFileLineNumbers. They are available on every machine type (server, headless client, client) immediately after Init_Common.sqf executes. Two additional client-only helpers (WFBE_CL_FNC_FindVariableInNestedArray and ReplaceArray) are covered at the end.
File: Common/Functions/Common_ArrayPush.sqf
Registered: Common/Init/Init_Common.sqf:95
[_array, _value] Call WFBE_CO_FNC_ArrayPush| # | Name | Type | Notes |
|---|---|---|---|
| 0 | _array |
Array | Mutated in-place via set; must be passed by reference (not a copy). |
| 1 | _value |
Any | Value appended at index count _array. |
The modified array (same reference as _array). (Common_ArrayPush.sqf:14)
Appends _value to the end of _array using _array set [count(_array), _value]. (Common_ArrayPush.sqf:13) Because set operates on the original array object rather than a copy, the caller's variable reflects the change immediately without reassignment — unlike the + operator which allocates a new array. This is the most-called function in the codebase; representative call sites include Server/FSM/server_patrols.sqf:33, Server/FSM/server_town_ai.sqf:141–142, and Server/Functions/Server_AI_SetTownAttackPath.sqf:58.
File: Common/Functions/Common_ArrayRemoveIndex.sqf
Registered: Common/Init/Init_Common.sqf:96
[_array, _index] Call WFBE_CO_FNC_ArrayRemoveIndex| # | Name | Type | Notes |
|---|---|---|---|
| 0 | _array |
Array | Deep-copied internally; the original is not mutated. |
| 1 | _index |
Number | Zero-based index of the element to remove. |
A new array with the element at _index removed. (Common_ArrayRemoveIndex.sqf:17)
The function deep-copies the input (+(_this select 0)) so the caller's array is unchanged. (Common_ArrayRemoveIndex.sqf:9) It then uses a sentinel strategy: the element at _index is overwritten with the string "wfbe_nil", and that sentinel is removed from the array using the subtraction operator _array - ["wfbe_nil"]. (Common_ArrayRemoveIndex.sqf:13–14) If count _array is zero, the copy is returned unchanged. (Common_ArrayRemoveIndex.sqf:12)
Because the sentinel is the plain string "wfbe_nil", any array that legitimately contains the string "wfbe_nil" as a value will have all occurrences of that string removed, not just the element at _index. This is a known design constraint: arrays of classnames, side strings, or arbitrary data must never use "wfbe_nil" as a value. The string does not appear as a legitimate classname or config value anywhere in the mission.
The function is also not a drop-in replacement for the deleteAt command introduced in later Arma versions (not available in OA 1.64). Callers that mix the sentinel strategy with ArrayPush-based arrays that hold arbitrary strings must verify the constraint holds.
Call site: Server/FSM/server_patrols.sqf:45 — removes index 0 from the visited-towns list when the patrol cycles.
File: Common/Functions/Common_ArrayShift.sqf
Registered: Common/Init/Init_Common.sqf:97
[_array, _removeIndices] Call WFBE_CO_FNC_ArrayShift| # | Name | Type | Notes |
|---|---|---|---|
| 0 | _array |
Array | Deep-copied internally; the original is not mutated. |
| 1 | _removeIndices |
Array of Numbers | Zero-based indices to skip in the output. |
A new array containing every element of _array whose index is not in _removeIndices. (Common_ArrayShift.sqf:22)
Iterates _array with a for loop from index 0 to count(_array) - 1. (Common_ArrayShift.sqf:15) Elements whose index is not found in _removeIndices are written sequentially into a fresh array _shifted using a monotonically increasing write cursor _i. (Common_ArrayShift.sqf:16–19) Membership is tested with the in operator against _removeIndices, which is an O(n) scan per element — this is acceptable for the small arrays it operates on.
This is the low-level primitive used by WFBE_CO_FNC_ArrayShuffle and by Server/Functions/Server_SpawnTownDefense.sqf:26 to exclude already-chosen defense kinds from a selection pool.
File: Common/Functions/Common_ArrayShuffle.sqf
Registered: Common/Init/Init_Common.sqf:98
_array Call WFBE_CO_FNC_ArrayShuffle| # | Name | Type | Notes |
|---|---|---|---|
_this |
Array | Deep-copied internally; the original is not mutated. |
A new array containing the same elements in randomized order. (Common_ArrayShuffle.sqf:20)
Implements a selection-without-replacement shuffle. (Common_ArrayShuffle.sqf:9–18) On each iteration _i, a random index is chosen from the current pool via floor(random(count _array)), the element at that index is appended to _shuffled, and the chosen index is removed from the pool using [_array, [_ran]] Call WFBE_CO_FNC_ArrayShift. Because ArrayShift returns a new array, _array (the pool) shrinks by one each pass and _ran is always valid for the current pool size.
This is not a pure Fisher-Yates in-place swap; it is a selection shuffle that has the same uniform distribution property but allocates a new pool array on each iteration.
Used at Server/Functions/Server_GetTownGroups.sqf:171–172 and Server/Functions/Server_GetTownGroupsDefender.sqf:107–108 to randomize infantry and vehicle spawn lists when populating a town.
File: Common/Functions/Common_GetLiveUnits.sqf
Registered: Common/Init/Init_Common.sqf:124
_units Call WFBE_CO_FNC_GetLiveUnits| # | Name | Type | Notes |
|---|---|---|---|
_this |
Array of Objects | Typically the result of units _group. |
A new array containing only elements for which alive _x is true. (Common_GetLiveUnits.sqf:7)
Iterates _units with forEach, appending each alive unit to _liveUnits via array concatenation (_liveUnits = _liveUnits + [_x]). (Common_GetLiveUnits.sqf:7) The input array is not mutated. Dead, null, or deleted units are silently excluded.
This is one of the most widely called helpers. Representative sites:
| Call site | Context |
|---|---|
Common/Functions/Common_ChangeUnitGroup.sqf:7 |
Guard before joining a unit to a new group. |
Client/Functions/Client_FNC_Groups.sqf:106,169 |
Filter group members before squad-join UI logic. |
Client/Functions/Client_HandleMapSingleClick.sqf:24,107 |
Build the target list for map-click orders. |
Server/FSM/server_patrols.sqf:28 |
Check whether a patrol team has any survivors. |
Server/FSM/server_town_patrol.sqf:18,25 |
Determine whether a town patrol group is still active. |
File: Common/Functions/Common_GetUnitsPerSide.sqf
Registered: Common/Init/Init_Common.sqf:140
[_units, _sides] Call WFBE_CO_FNC_GetUnitsPerSide| # | Name | Type | Notes |
|---|---|---|---|
| 0 | _units |
Array of Objects | Units to partition. |
| 1 | _sides |
Array of Side | Ordered list of sides to bucket into (e.g. [west, east]). |
An array of arrays, one sub-array per side in _sides, each containing the units from _units whose side matches. (Common_GetUnitsPerSide.sqf:21)
Initializes _return as an array of count _sides empty arrays, each appended via WFBE_CO_FNC_ArrayPush. (Common_GetUnitsPerSide.sqf:14) Then iterates _units with forEach; for each unit, _sides find (side _x) locates the matching bucket index, and the unit is pushed into that bucket. (Common_GetUnitsPerSide.sqf:17–18) Units whose side is not in _sides are silently dropped (find returns -1; the -1 != -1 guard is absent, so a select -1 would occur — see note below).
Note: the guard if (_find != -1) is present on line 18 of Common_GetUnitsPerSide.sqf, so units with an unrecognized side are correctly skipped.
The function is registered but has no call sites in the current master outside of Init_Common.sqf. It exists as an infrastructure helper for future systems.
File: Common/Functions/Common_GetUnitConfigGear.sqf
Registered: Common/Init/Init_Common.sqf:139
_kind Call WFBE_CO_FNC_GetUnitConfigGear| # | Name | Type | Notes |
|---|---|---|---|
_this |
String |
CfgVehicles class name (e.g. "US_Soldier_EP1"). |
[_weapons, _magazines, _backpack, _get_backpack_content] where: (Common_GetUnitConfigGear.sqf:46)
| Index | Type | Content |
|---|---|---|
| 0 | Array of String | Weapons from CfgVehicles >> _kind >> weapons, minus "Throw" and "Put". |
| 1 | Array of String | Magazines from CfgVehicles >> _kind >> magazines. |
| 2 | String | Backpack classname from CfgVehicles >> _kind >> backpack, or "" if none. |
| 3 | [[[weapons],[counts]],[[magazines],[counts]]] |
Backpack TransportWeapons and TransportMagazines content tables; each resolved against missionNamespace variable filters. |
Reads the unit's loadout directly from configFile >> 'CfgVehicles' >> _kind. (Common_GetUnitConfigGear.sqf:11) Weapons are filtered: "Throw" and "Put" are subtracted from the raw array. (Common_GetUnitConfigGear.sqf:12) The backpack is resolved; if present and if its TransportWeapons / TransportMagazines sub-classes exist, each entry's classname is looked up in missionNamespace to confirm it is a known, config-active item before it is included in the result. (Common_GetUnitConfigGear.sqf:23–43) Items not present in missionNamespace are silently excluded — this is the mechanism by which DLC-gated gear is filtered out.
Call sites: Client/Functions/Client_BuildUnit.sqf:227 and Client/GUI/GUI_BuyGearMenu.sqf:159 — both use the result to populate the gear purchase and loadout editor UI.
File: Common/Functions/Common_GetUnitVehicle.sqf
Registered: Common/Init/Init_Common.sqf:65 (legacy prefix-free form)
_unit Call GetUnitVehicle| # | Name | Type | Notes |
|---|---|---|---|
_this |
Object | Any unit or vehicle. |
vehicle _unit if the unit is inside a vehicle (i.e. _unit != vehicle _unit), otherwise _unit itself. (Common_GetUnitVehicle.sqf:4)
This function predates the WFBE_CO_FNC_* naming convention and is registered as the bare name GetUnitVehicle, not WFBE_CO_FNC_GetUnitVehicle. (Common/Init/Init_Common.sqf:65) All call sites use the bare name. Do not wrap it in a WFBE_CO_FNC_ prefix.
Call sites are exclusively in Client/GUI/GUI_Menu_UnitCamera.sqf (lines 32, 66, 78, 92, 117, 131) — the unit camera menu uses this to track the vehicle a player or selected unit occupies.
File: Common/Functions/Common_ChangeUnitGroup.sqf
Registered: Common/Init/Init_Common.sqf:100
[_unit, _group, _side] Call WFBE_CO_FNC_ChangeUnitGroup| # | Name | Type | Notes |
|---|---|---|---|
| 0 | _unit |
Object | The unit to move to _group. |
| 1 | _group |
Group | Destination group. |
| 2 | _side |
String | Side string used to look up the temp-unit classname (e.g. the value of WFBE_Client_SideJoined). The variable WFBE_{_side}SOLDIER must exist in missionNamespace. |
None.
If the current live member count of _unit's group is less than 2 (i.e. _unit is the sole survivor), a temporary filler unit of the faction's base soldier class is spawned at [0,0,0] before the join. (Common_ChangeUnitGroup.sqf:9) The base class is resolved via missionNamespace getVariable Format ["WFBE_%1SOLDIER", _side]. This prevents the engine from deleting the originating group when the last member leaves — group deletion would break any outstanding waypoints or references held elsewhere. The temp unit is deleted immediately after the join completes. (Common_ChangeUnitGroup.sqf:11)
The _side parameter must be the text representation that matches the suffix used in the faction root config files (Common/Config/Core_Root/Root_*.sqf:8). For example, when the client's WFBE_Client_SideJoined is the sideJoined value, the lookup WFBE_{sideJoined}SOLDIER must resolve to a valid CfgVehicles classname.
_entitie is declared in Private on line 1 but is only assigned inside the if (count _units < 2) branch on line 9. On line 11, if !(isNull _entitie) is evaluated even when the branch was skipped — at that point _entitie holds a nil/undefined value (A2 OA Private does not initialize variables). The isNull check on a nil value does not throw an error; it returns false, so deleteVehicle is not called and the function proceeds correctly. The code is safe in practice but the pattern is fragile: any re-ordering of lines 9–11 that assigns _entitie in the else-branch would trigger a double-delete. (Common_ChangeUnitGroup.sqf:1,9,11)
Call sites: Client/Functions/Client_FNC_Groups.sqf:27,116,203 (player squad joins) and Server/Functions/Server_HandleSpecial.sqf:30 (server-side group reassignment for special roles).
File: Common/Functions/Common_RevealArea.sqf
Registered: Common/Init/Init_Common.sqf:145
[_unit, _range, _pos] spawn WFBE_CO_FNC_RevealArea| # | Name | Type | Notes |
|---|---|---|---|
| 0 | _unit |
Object or Group | The knower — the entity that gains the revealed knowledge. Accepts a group (the engine broadcasts to all members). |
| 1 | _range |
Number | Radius in metres around _pos to scan for entities. |
| 2 | _pos |
Array |
[x,y,z] centre position. |
None. Always called via spawn (fire-and-forget). (Common_CreateTownUnits.sqf:55, Common_CreateUnitForStaticDefence.sqf:122)
Iterates _pos nearEntities _range. (Common_RevealArea.sqf:19) For each entity in range, builds a reveal list starting with the entity itself; if the entity is inside a vehicle (_x != vehicle _x), the vehicle's crew is appended. (Common_RevealArea.sqf:17) Then _unit reveal _x is called for each item in the list. (Common_RevealArea.sqf:18)
Reveal ranges observed in production call sites:
| Call site | _range |
Context |
|---|---|---|
Common/Functions/Common_CreateTownUnits.sqf:55 |
400 m | AI group spawned into a town |
Common/Functions/Common_CreateUnitForStaticDefence.sqf:122 |
175 m | Static defense unit placed at a position |
Server/Functions/Server_HandleDefense.sqf:44 |
1000 m | Defense unit triggered during server-side defense handling |
Server/Functions/Server_OperateTownDefensesUnits.sqf:62 |
175 m | Defense unit operated at a town |
File: Common/Functions/Common_AreWaypointsComplete.sqf
Registered: Common/Init/Init_Common.sqf:94
_group Call WFBE_CO_FNC_AreWaypointsComplete| # | Name | Type | Notes |
|---|---|---|---|
_this |
Group | The group to check. |
Bool — true if the group has no pending waypoints. (Common_AreWaypointsComplete.sqf:7)
Single expression: count (waypoints _this) == currentWaypoint _this. (Common_AreWaypointsComplete.sqf:7) In Arma 2 OA, currentWaypoint returns the index of the waypoint the group is currently moving toward (0-based), and count (waypoints _group) is the total number of assigned waypoints. Equality means the group's current waypoint index has reached the count, i.e. all waypoints have been completed.
The function is registered but has no call sites in master outside Init_Common.sqf. It is available as an infrastructure helper for patrol and AI loop logic.
These two functions are registered on clients only and use distinct naming patterns.
File: Client/Functions/Client_FindVariableInNestedArray.sqf
Registered: Client/Init/Init_Client.sqf:139
[_array, _value] call WFBE_CL_FNC_FindVariableInNestedArray| # | Name | Type | Notes |
|---|---|---|---|
| 0 | _array |
Array of Arrays | Outer array; each element is itself an array. |
| 1 | _value |
Any | Value to search for inside the inner arrays. |
The index of the first inner array that contains _value, or -1 if not found. (Client_FindVariableInNestedArray.sqf:11)
Uses forEach with exitWith on the outer array: for each inner array _x, tests _value in _x and exits with _forEachIndex on the first match. (Client_FindVariableInNestedArray.sqf:7–9) If no match is found, _index is nil; the trailing nil-guard returns -1. (Client_FindVariableInNestedArray.sqf:11)
Note: the source in Common/Functions/Common_FindVariableInNestedArray.sqf is a duplicate of this file but is never registered in Init_Common.sqf (note: lowercase private is valid in Arma 2 OA — SQF keywords are case-insensitive; only the inline-assignment form private _var = value is A3-only). The authoritative version is the client registration in Init_Client.sqf:139. Do not reference the Common copy — it is unreachable at runtime.
Call site: Client/GUI/GUI_Menu_BuyUnits.sqf:491 — finds which artillery classname sub-array a selected unit class belongs to.
File: Client/Functions/Client_ReplaceArray.sqf
Registered: Client/Init/Init_Client.sqf:67 (bare name, legacy form)
[_array, _indexExcluded] Call ReplaceArrayReturns a new array equal to _array with the element at _indexExcluded omitted, using a for loop write-through pattern. (Client_ReplaceArray.sqf:6–10)
This function is compiled and registered but has no call sites in the codebase. It is functionally equivalent to WFBE_CO_FNC_ArrayShift called with a single-element index list. It should be considered dead code; new code should use WFBE_CO_FNC_ArrayShift instead.
| Function | Registered name | File | Init line |
|---|---|---|---|
WFBE_CO_FNC_AreWaypointsComplete |
Common | Common/Init/Init_Common.sqf:94 |
— |
WFBE_CO_FNC_ArrayPush |
Common | Common/Init/Init_Common.sqf:95 |
— |
WFBE_CO_FNC_ArrayRemoveIndex |
Common | Common/Init/Init_Common.sqf:96 |
— |
WFBE_CO_FNC_ArrayShift |
Common | Common/Init/Init_Common.sqf:97 |
— |
WFBE_CO_FNC_ArrayShuffle |
Common | Common/Init/Init_Common.sqf:98 |
— |
WFBE_CO_FNC_ChangeUnitGroup |
Common | Common/Init/Init_Common.sqf:100 |
— |
WFBE_CO_FNC_GetLiveUnits |
Common | Common/Init/Init_Common.sqf:124 |
— |
WFBE_CO_FNC_GetUnitConfigGear |
Common | Common/Init/Init_Common.sqf:139 |
— |
WFBE_CO_FNC_GetUnitsPerSide |
Common | Common/Init/Init_Common.sqf:140 |
— |
WFBE_CO_FNC_RevealArea |
Common | Common/Init/Init_Common.sqf:145 |
— |
GetUnitVehicle |
Common (legacy) | Common/Init/Init_Common.sqf:65 |
— |
WFBE_CL_FNC_FindVariableInNestedArray |
Client only | Client/Init/Init_Client.sqf:139 |
— |
ReplaceArray |
Client only (dead) | Client/Init/Init_Client.sqf:67 |
— |
- Function-And-Module-Index — master index of all WFBE functions with file paths and registration lines
-
Spawn-Primitive-Function-Reference —
CreateUnit,CreateVehicle,CreateTeam;ChangeUnitGroupis called fromCreateUnit's internal group guard -
Variable-And-Naming-Conventions — naming rules for
WFBE_CO_FNC_*,WFBE_CL_FNC_*, and the legacy bare-name pattern -
Waypoint-Helper-Function-Reference —
WaypointPatrol,WaypointPatrolTown,WaypointSimple;AreWaypointsCompleteis the companion query - SQF-Code-Atlas — broad codebase map; cross-references these helpers in patrol FSMs and town AI loops
Home | Agent Guide | Current live state | Release 1.2.2 (B91) | Quickstart | Progress | Lifecycle wait-chain | Join/disconnect | Parameters/build | Assets/config | SQF atlas | PV index | Modules | Support/specials | Commander/HQ | Commander vote/reassign | Construction/CoIn | Construction cleanup | WDDM compositions | Factory/purchase | Upgrades/research | Towns/camps/capture | Victory/endgame | Markers/cleanup | Server runtime | AI runtime/HC | AI commander audit | HC delegation | Town AI safety | Commander reassignment | Resistance supply | Player UI workflow | UI atlas | Respawn/death | Gear template filter | Vehicle cargo loop | Service guards | UI IDD repair | UI design inspiration | WASP overlay | Feature status | Source propagation | release readiness | Tooling readiness | Integration trust | AntiStack DB | Owner decisions | Shelved registry | Abandoned feature revival | Hardening roadmap | PVF dispatch | Server authority | ICBM authority | Attack-wave authority | Telemetry families | AICOM V2 cutover | Consumer port map | Testing workflow | Server ops | Web tools | Ecosystem repos | Arma 2 OA refs | A2 traps | OA compatibility audit | Coverage ledger | Navigation inventory | Pruning ledger | Knowledge roadmap | Agent context | Collab protocol | Worklog | Audit archive 2026-07 | Briefing reference | Utes invasion concept
- Shelved AICOM concepts - revivable someday ideas (owner-shelved 2026-07-03)
Docs rule: source-backed claims only; Arma 2 OA scripting docs only; gameplay edits start in Missions/[55-2hc]warfarev2_073v48co.chernarus.
- Getting started
- Status and coordination
- Agent context
- Agent collaboration protocol
- Agent worklog
- Agent worklog archive
- Progress dashboard
- PR cleanup and integration lab
- Shelved PR #169: gear price double-count
- Shelved PR #194: Chernarus no-trees
- Coordination board
- Codebase coverage ledger
- Bottleneck removal queue
- Current source status
- Wiki mirror reconciliation
- Navigation inventory
- Registers
- Agent orchestration
- Architecture
- Architecture overview
- Mission entrypoints and lifecycle
- Lifecycle wait chain
- Player join/disconnect and AntiStack lifecycle
- Mission parameters/localization/build inputs
- Stringtable localization key-family catalog
- Source inventory
- Content structure and maps
- Assets/config/localization/parameters
- Mission start parameters index
- Code and networking
- Gameplay systems
- Core systems index
- Gameplay systems atlas
- Commander/HQ lifecycle atlas
- Economy, towns and supply
- Economy system reference
- Balance asymmetries
- Anti-stack skill-balance mechanic
- Empty-side supply income stagnation
- Towns, camps and capture atlas
- Victory and endgame atlas
- Victory conditions reference
- Territorial victory reference
- Marker cleanup and restoration
- Marker loop engine and registries
- Map marker families content catalog
- Marker subsystem function reference
- Client marker FSM updater map
- Support specials and tactical modules
- SCUD TEL tactical munitions
- Naval HVT objectives (carriers/SCUD)
- SCUD saturation strike mechanic
- Takistan airfield FPV drone design
- Construction and CoIn systems
- Structure damage reduction & friendly-fire
- Construction logic list cleanup
- Flak tower & WDDM anchor compositions
- Resistance supply scaffold
- GUER Insurgents faction overview
- GUER Insurgents branch audit
- GUER insurgent player economy
- GUER air-defense loop (Ka-137/Mi-24)
- Upgrades and research atlas
- Supply mission architecture
- Supply mission authority cleanup
- Current supply helicopters PR1
- Respawn and death-loop lifecycle
- Vehicle theft economy pitch
- GUER tunnel network pitch
- Content, reference and catalogs
- Faction unit/vehicle roster catalog
- Auxiliary/SF/civilian unit catalog
- Gear store loadout route catalog
- Upgrade research (cross-faction)
- Gear store price and upgrade catalog
- Gear store catalog (complete, per faction)
- Defense structures catalog
- Artillery reference per faction
- AI squad team templates catalog
- Town AI lifecycle reference
- Town AI group composition catalog
- Class-skill system reference
- Player skill abilities reference
- Default gear template content catalog
- Chernarus map content reference
- Takistan map content reference
- Takistan features
- Takistan parity reference
- Takistan oilfields objective reference
- IRS IR-smoke countermeasure
- Arty module special munitions
- Zeta cargo sling-load reference
- Spawn primitive function reference
- Kill and score pipeline
- Waypoint helper function reference
- Position and proximity function reference
- Side/team state function reference
- Player AI watchdog and recovery
- AICOM stuck-recovery v2
- LoadoutManager data-model contributor guide
- Discord status bot setup and reference
- GLOBALGAMESTATS extension reference
- New player quickstart (player guide)
- Optional client mods (player guide)
- Earning funds and score (player guide)
- Vehicle service and logistics (player guide)
- Commander's handbook (player guide)
- Tactical support menu
- Paradrop player experience
- Supply missions (player guide)
- In-game briefing & Diary field manual
- Playable maps catalog
- Faction root variables reference
- Faction base structures catalog
- Counter-battery radar system
- Bank, Reserve and Artillery Radar structures
- Map ruleset model and object config
- Countermeasures module reference
- Vehicle countermeasure (flares/spoofing)
- UAV terminal and spotter system
- Artillery firing function reference
- Service Point pricing model
- Medic redeployment truck (forward spawn)
- Side-patrol runtime and convoy mechanics
- Day/night cycle and weather system
- Config lookup helper reference
- CIPHER sort utilities reference
- Modded maps status and content
- BattlEye filter setup and OA taxonomy
- Player squad/group join protocol
- AutoFlip vehicle recovery
- Engine stealth fuel toggle
- Valhalla vehicle climbing-assist
- Missile and ordnance Fired-EH reference
- Vehicle equip and rearm reference
- Array and collection utilities
- Server composition spawner reference
- Upgrade queue server loop
- Map boundaries and off-map enforcement
- Namespace/profile/diagnostic utilities
- Group bool getVariable A2-OA trap
- Vehicle weapon balance init
- View distance auto-throttle
- Camp & respawn-camp getters
- Performance audit writer
- Site clearance (bulldozer)
- Factory queue cancel & refund
- AI commander tunable constants
- Experimental feature-flag constants
- Flag system quick reference
- Mission tunable constants catalog
- Gear parsing & cargo capacity
- Structure dressing function
- Paradrop delivery functions
- ICBM nuke client VFX & radiation
- Server HandleSpecial router
- LocalizeMessage chat router
- Gear buy-menu render & price functions
- Server broadcast & telemetry loops
- Per-unit client init pipeline
- Vehicle marking & texture pipeline
- Defense category & budget
- Legacy AI order primitives
- Commander-team driver
- AICOM command verbs
- AICOM behavior fix taxonomy
- AI commander wildcard deck reference
- AICOM aircraft and airfield system
- Static-defense manning
- End-of-game stats screen
- AI commander execution loop
- Deployable bipod / weapon resting
- Town-economy getters
- Server-init deadspawn & airfield probe
- GUER VBIED detonate action
- Resource income-tick engine
- AI commander treasury accessors
- PVF send-helper contracts
- AICOM logging & AICOMSTAT telemetry
- AICOMSTAT v2 event census
- WASPSCALE v2 telemetry
- WASPSCALE v2-ext coverage audit
- Telemetry families reference
- Group lifecycle & entity reaping
- Batch AI spawner orchestrator
- Client funds/income HUD readout
- Server group GC & cap warning
- Town runtime tuning constants
- Client input/hotkey handler
- WASP base-repair system
- WASP DropRPG launcher/ordnance
- CoIn construction-interface client engine
- Town-capture garrison & airfield rebuild
- Map-control & minimap templates
- Client FPS & state telemetry
- Client service-proximity getters
- Airfield-exclusive roster & unit hints
- Unit-camera spectator system
- Town-garrison patrol/defense worker
- RequestTeamUpdate squad-discipline
- Arma2Warfare GPT assistant
- LoadoutManager build configs & defines
- GLOBALGAMESTATS extension logging
- Discord bot instrumented logging
- Eden/Everon & Taviana map content
- Cruise missile strike asset
- AI / HC
- AI headless and performance
- AI mods and pathfinding reference
- Headless client scaling and topology
- AI runtime/HC loop map
- Headless client init and stat loop
- HC delegation target selection
- Player AI caps and role balance
- Old WarfareBE FPS comparison
- AI commander autonomy audit
- Upstream BE 2073 AICOM delta
- Parent 2.073 divergence audit
- AI commander capture & fun plan
- AI commander B69 improvement roadmap
- AI commander B69 implementation sketches
- AICOM V2 cutover status
- Headless delegation and failover
- Commander reassignment call shape
- GUER Director living-resistance pitch
- Quality and operations
- Foundation perf findings & Tier-3 dead-ends
- Dead/stale code register
- Commander vote/reassignment
- Attack-wave authority
- Server runtime and operations
- Server ops runbook
- JIP enrollment & client data delivery (b74.2 lessons)
- Server gameplay runtime atlas
- PerformanceAuditAnalyzer
- Performance opportunity sweep
- Documentation plan
- Knowledge platform roadmap
- Wiki quality audit
- Wiki pruning and relevance ledger
- Audit findings queue (2026-06-03)
- Deep review findings
- Client UI / server-loop perf findings
- Performance gain simulation
- Self-host testing field notes
- Cleanup and work lanes
- Hardening and authority
- UI / player workflows
- Client UI, HUD and menus
- UI HUD and dialogs
- Player UI workflow map
- Client UI systems atlas
- UI IDD collision repair
- UI control class library reference
- UI theme palette and style macros
- UI design inspiration 2026-07
- Available-actions client gate FSM
- Gear/loadout/EASA atlas
- Gear template profile filter
- Vehicle cargo equip loop bounds
- Factory and purchase systems atlas
- Service menu affordability guards
- WASP overlay
- Class-skill system reference
- Skin selector and class swap
- Earplugs audio toggle
- Mission audio catalog
- HQ radio knowledge-base catalog
- QoL trio player hints
- Player vehicle/travel actions
- Tooling / release / integrations
- Tools and build workflow
- Warfare web tools
- Ecosystem & companion repos
- Zargabad tooling parity
- July 2026 release readiness
- Operator monitor and CPU affinity tools
- Tooling release readiness audit
- Source fix propagation queue
- Agent release readiness ledger
- Release source intake map
- Testing/debugging/release workflow
- Current RPT release gate
- RPT telemetry consumer port map
- External integrations
- Integration trust boundary audit
- AntiStack database extension audit
- Community & Dev
- Community & Dev
- Miksuu upstream wiki import / archive index
- Upstream changelog feature leads
- Developer history and upstream lessons
- Upstream Miksuu commit intel
- Upstream mining ledger
- Archive script mining v2
- Upstream BE 2073 AICOM delta
- Parent 2.073 divergence audit
- PR8 and Drone upstream lesson match
- Development lessons learned
- External research reports
- Audit archive 2026-07
- Briefing reference
- Utes invasion concept
- Miksuu archive: Home
- Miksuu archive: Welcome
- Miksuu archive: Big announcements
- Miksuu archive: Changelog
- Miksuu archive: Development process
- Miksuu archive: Discord bot
- Miksuu archive: Gameplay videos
- Miksuu archive: LoadoutManager
- Miksuu archive: Chernarus script architecture
- Base-game visual catalogs
- Compatibility and references
- HC upstream history and lessons
- Player stats branch audit
- BuyMenu EASA QoL branch audit
- Perf quick wins branch audit
- Commander positions branch audit
- Zargabad branch audit
- Quad AI Commander concept
- Arma 2 OA external reference guide
- Base-game config & image reference
- Arma 2 OA compatibility audit
- Arma 2 OA agent traps reference
- Arma 2 OA command versions
- Wiki source consistency
- External Arma 2 OA reference index