-
Notifications
You must be signed in to change notification settings - Fork 0
Developer History And Upstream Lessons
This page turns upstream development history from Miksuu/a2waspwarfare into practical guidance for future Wasp Warfare developers and AI agents.
Evidence sources used for this pass: upstream master through 8bcc42b1 (2026-06-02), GitHub PRs #1-#12, branch list from the upstream repository, merge/revert commits, commit messages, and file-level deltas. Treat this as developer-intent evidence, not a substitute for current-source inspection before code changes.
| Pattern | Evidence | Developer lesson | Confidence |
|---|---|---|---|
| Supply missions attract exploit fixes, UX follow-ups and JIP regressions. | PR #10 Supply run remote activation glitch fix / merge 97dfff26, commit 65fa3332 "Fix remote supply truck glitch", PR #11 / 8164cc33, PR #12 body: prevents the extra too-far notification during JIP. |
Do supply changes as a server-owned state machine: validate requester, source town, vehicle range, cooldown and reward on the server, then test normal start, remote start, JIP join, reused vehicle and Takistan propagation. | confirmed |
| JIP bugs repeatedly appear after client-facing features. | PR #12, commits b02782f1 "Move main logic of heavy attack mode to server to avoid JIP issues", a9044821 "Refactor logic of JIP during heavy attack feature", 6eb09dc3 "Make JIP players spawn at HQ or factories only". |
Any UI/action/state feature needs a JIP plan before merge: decide whether it is replayed state, pull-response, or event-only; add a late-join smoke path to the validation checklist. | confirmed |
| Debug logging is useful during archaeology but must not become shipped noise. | Attack-wave cluster on 2026-03-13 includes multiple "Add debug logging" commits followed by 32895cae "Remove debug logging"; 891a70ea later says "Remove all the logging"; supply and marker clusters also remove unnecessary logs. |
Use WF_Debug-gated diagnostics and remove temporary broad logs before publish. If logs explain a fragile edge, preserve the lesson in docs instead of leaving unconditional runtime spam. |
confirmed |
| Mission-copy divergence is a standing maintenance cost. | Many upstream commits are explicit Takistan copies: 994150da "Add supply run upgrade to Takistan", ba25ada0 "Add extra score bug fix to Takistan", 101e3452 "Remove unnecessary debug logging from Takistan too", repeated "update taki" commits during May/June 2026. |
Patch source Chernarus first, then propagate generated Vanilla/Takistan deliberately. Review generated diffs; do not assume a feature is fixed everywhere because Chernarus changed. | confirmed |
| Performance work succeeded after instrumentation, not blind simplification. |
88e0749a "Performance audit instrumentation for FPS diagnostics", ff1ea838 "Extend performance audit logs with environment state", 62becdda "performance audit analyzer and session-aware reports", then optimizations like 4aaa814a, 6e5b3c50, 6189f3c5. |
Measure first, then reduce scans/marker churn. Keep audit toggles cheap and optional; preserve counters that show whether an optimization starves gameplay. | confirmed |
| Town defense activation is fragile because performance and gameplay correctness compete. |
4aaa814a reduced town/camp loops and AI activation spikes; a20a5a0f restored reliable activation from capture scans; 84b1b684 restored pre-capture town defense activation; ea0bff2e prevented defenders from activating enemy towns; 913ecdf6 added diagnostics. |
Do not optimize town AI wakeups solely by reducing scans. Preserve capture-driven wake signals, defender-origin tagging, and diagnostics for false negatives/false positives. | confirmed |
| Client marker/UI loops are locality-sensitive and easy to over-optimize. | Marker cluster includes 9a550b7a reverting "Do group leaders need actually global marker vars? Only few know.", 9c72a281 fixing marker tracking after cache optimization, 951e72cb fixing stale squad markers after disconnect, 332874fd fixing town SV visibility leaking to both teams. |
Treat marker variables as client-local unless source proves a shared-state need. Validate disconnect, side visibility, cache invalidation and player-led AI labels after marker performance edits. | confirmed |
| Reverts mark negative knowledge: some plausible improvements were too risky or incomplete. |
97da2aeb and 993e8ed5 reverted configurable accelerated day/night cycle; 9424f0c8 reverted Marty_repair_camp_menu; PR #9 "Add endgame music" was closed unmerged; PR #1/#2 merge-separated-codebase attempts were closed. |
Before reviving reverted/closed work, inspect why it failed in current source and stage it as a small feature branch with smoke evidence. Do not resurrect old branch code wholesale. | confirmed |
| Branch names expose abandoned or risky experiments. | Upstream branches include A3_*, Arma2Warfare_GPT, oldMasterBranch, 0=1_*, remove_wasp_change_wheel_car_simulator, AntistackJustMonitoring, AntiStackV6, many dated dev_*/v* branches. |
Use branches as search leads only. Treat A3/dev/old branches as non-authoritative unless current master or a merged PR confirms behavior. |
likely |
| Shared helper fixes often affect AI, players, HC/delegation and generated missions together. |
782c9b8a fixed town vehicle crews by changing Common_CreateTeam.sqf in both Chernarus and Vanilla; ea0bff2e marked resistance town defenders across common creation, client delegation, server delegation and town-defense operation files. |
When touching shared creation/delegation helpers, audit all call families: server-created town AI, client-delegated AI, static defenses, generated mission copies and player purchase analogues. | confirmed |
- Source evidence: PR #10 body says the exploit allowed a player to keep a supply truck next to a remote command center and activate the mission remotely; merge
97dfff26, commits65fa3332and0542edf8, fileClient/Module/supplyMission/supplyMissionStart.sqf. - Affected subsystem: supply missions, economy, command-center proximity, client action gating.
- What happened: the first fix blocked the remote activation exploit, then detection reliability was improved, then PR #11 added player feedback when the supply truck was too far away.
- Why it matters: local action checks were being used as gameplay authority for an economy reward path.
- Do differently: future supply work should make the server accept/reject mission start from trusted state and keep client checks as UX only.
- Confidence: confirmed.
- Follow-up: current wiki already tracks server-owned loaded/tracking state in Supply mission authority cleanup.
- Source evidence: PR #12 body says the too-far notification fired when a player spawned in-game; commit
b76f9645changed the same supply start file in Chernarus and Vanilla. Heavy attack mode later moved main logic server-side inb02782f1explicitly "to avoid JIP issues". - Affected subsystem: supply missions, attack wave/heavy attack, client init/update loops.
- What happened: features that looked correct for already-connected players needed follow-up patches for join-in-progress.
- Why it matters: OA mission state is a mix of PVEH events, missionNamespace state, local UI loops and server callbacks. New clients do not automatically replay intent.
- Do differently: every new public variable or action-driven feature should document JIP semantics and include a late-join test.
- Confidence: confirmed.
- Follow-up: add explicit JIP smoke rows to feature playbooks when implementation work starts.
- Source evidence:
88e0749a,ff1ea838,62becdda,49aa1e53created/expanded performance audit tooling;4aaa814aand6189f3c5optimized town/camp loops and scan budgeting while adding counters like scanned/skipped towns. - Affected subsystem: server town loop, town AI activation, client markers/RHUD.
- What happened: upstream built measurement tools, then reduced scans, marker churn and activation spikes.
- Why it matters: blindly slowing loops can break capture responsiveness, town defense activation or markers.
- Do differently: keep an audit counter for any loop you throttle, and test quiet-map FPS plus active-town behavior.
- Confidence: confirmed.
- Follow-up: preserve performance audit parameter documentation and analyzer workflow in the runtime/performance pages.
- Source evidence:
a20a5a0frestored activation from capture scans;84b1b684restored pre-capture town defense activation;ea0bff2eignored units/vehicles/groups marked as resistance town defenders so they do not wake enemy towns. - Affected subsystem: town AI, static defenses, capture FSM, delegation.
- What happened: earlier scan-budget changes needed follow-up fixes so attacked towns still woke reliably and defender units did not create false activations.
- Why it matters: the town AI activation path balances CPU cost against visible fairness in PvE/TvT capture fights.
- Do differently: when optimizing town AI, keep separate tests for remote player-led attacks, pre-capture defenders, occupied-town vehicles, and defender bleed into nearby towns.
- Confidence: confirmed.
- Follow-up: add town-defense diagnostics to any future town AI smoke plan.
- Source evidence:
9a550b7areverted an experiment about global group-leader marker vars;9c72a281fixed marker tracking after marker cache optimization;951e72cbfixed stale markers after disconnect;332874fdfixed town SV marker visibility leaking to both teams. - Affected subsystem: client map markers, player/unit labels, town supply-value marker visibility.
- What happened: marker work went through repeated attempts around scope, cache, side visibility and disconnect cleanup.
- Why it matters: marker bugs can leak side information or leave stale UI state without obvious server errors.
- Do differently: marker changes need side-specific visibility checks and reconnect/disconnect cleanup tests, not just FPS or UI appearance tests.
- Confidence: confirmed.
- Follow-up: keep marker loop changes routed through Client UI/HUD/menus and Public variable channel index where networked.
- Source evidence:
97da2aeband993e8ed5reverted configurable accelerated day/night cycle;9424f0c8revertedMarty_repair_camp_menu; PR #9 "Add endgame music" closed unmerged; PR #1/#2 codebase-merge attempts closed unmerged. - Affected subsystem: day/night runtime, repair camp actions, endgame media, repository merge strategy.
- What happened: some apparently useful features were backed out or abandoned.
- Why it matters: reverts often indicate runtime, UX, merge-shape or deployment problems not visible from current files alone.
- Do differently: if reviving reverted work, treat the old branch as a design sketch. Rebuild from current source with a small diff and include the missing validation that the original lacked.
- Confidence: confirmed for reverts/closures; speculative for exact failure cause when no PR comment explains it.
- Follow-up: inspect RPT/server notes or owner memory before reviving repair-camp or accelerated day/night variants.
- Source evidence: upstream branch list contains A3 branches (
A3_v20240123,A3_0=1_new), experimental branches (Arma2Warfare_GPT,AntistackJustMonitoring,AntiStackV6), and many dateddev_*/v*snapshots. - Affected subsystem: repository archaeology, mission-copy divergence, Arma 2 OA compatibility.
- What happened: upstream preserved many experiments and snapshots that are not merged into current protected
master. - Why it matters: an AI agent can easily cite or copy stale branch code that conflicts with OA 1.64 or current mission structure.
- Do differently: prefer current upstream
master, merged PRs, and current rayswaynl source. Use unmerged branches only to generate questions or locate abandoned ideas. - Confidence: likely.
- Follow-up: if a branch becomes implementation-relevant, compare it to current
masterwith file-level diffs and note whether it is A3-only, old folder layout, or current OA-compatible SQF.
- Start every upstream-history claim with evidence: PR number, commit hash, branch name, file path or a short quoted PR/commit phrase.
- Separate
confirmedfromlikely: commit messages and PR bodies prove developer intent; branch names only suggest it. - For supply/economy work, assume client-side action checks are UX until the server recomputes the final effect.
- For JIP-sensitive work, write the late-join behavior before proposing code.
- For town AI/performance work, preserve gameplay wakeup signals and diagnostics while reducing scan cost.
- For marker/UI work, test side leakage, stale markers and disconnect/reconnect behavior.
- For generated missions, document Chernarus and Vanilla/Takistan evidence separately.
- For reverted or closed work, do not copy it forward without a fresh current-source design and smoke plan.
Evidence index: Upstream Miksuu commit intel | Risks: Feature status register | Runtime: Server gameplay runtime atlas | Supply: Supply mission authority cleanup
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 Commissar Panel
- 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