Skip to content

Respawn And Death Lifecycle Atlas

rayswaynl edited this page Jul 7, 2026 · 23 revisions

Respawn And Death Lifecycle Atlas

This page maps current Build84 player death, death-camera and menu recovery, spawn candidates, custom/default gear penalties, skin selector reapply, MASH/mobile/camp/HQ rules and AI respawn.

Source Scope

Lane 218 refresh, 2026-07-03: current source was checked against origin/claude/build84-cmdcon36@a26871e852470b86b68c2f4f58eb44b436d076d6. PR #478 (codex/lane188-respawn-handler-bug-pack@df438648f) is merged into that target, so the mode-1 penalty message, missing custom-gear-cost default and mode-5 base/HQ affordability fix are current Build84 behavior. PR #251 (fable/respawn-ui-v2@ac6debe8) is also merged, so respawn UI v2 is current Build84 behavior. PR #332 remains an open docs-only respawn-flow QA report and is cited only as QA evidence. Paths below are relative to source root Missions/[55-2hc]warfarev2_073v48co.chernarus unless a branch note says otherwise.

MASH remains branch-sensitive: current Build84/B74-shaped maintained roots have no live maintained-root MASH deploy/module path, while older docs/Miksuu/perf-shaped roots still have local officer MASH respawn plus an orphaned marker relay. Use the MASH matrix below before making any team-shared/JIP-safe MASH claim.

Keep-current-kit fix, 2026-07-07: additionally source-verified against origin/claude/build84-cmdcon36 (c3cc5b1, Build 91 / release 1.2.2 candidate) for the GUI_RespawnMenu.sqf gear-toggle keep-current-kit capture fix documented in Respawn Menu Responsibilities, Gear And Penalty Rules and Known Risks And Patch-Ready Items below.

Why This Matters

Respawn touches client UI, action-menu recovery, skill reapply, gear economics, camp ownership, MASH/officer skills, mobile ambulances and redeploy trucks, AI team continuity, kill scoring and HQ fallback. Small changes here can strand a player after death, make gear penalties unfair, show unusable spawn options, lose skin-selector state, or accidentally turn a local respawn helper into a network authority surface.

Engine And Mission Shell

Area Evidence Meaning
Engine respawn mode Rsc/Header.hpp:3-6 sets respawn = 3, respawnDelay = WF_RESPAWNDELAY and respawnDialog = false. The mission suppresses the default engine dialog and owns the death camera plus custom respawn menu.
Player death handler compile Client/Init/Init_Client.sqf:111,127 compiles WFBE_CL_FNC_OnKilled and WFBE_CL_FNC_UI_Respawn_Selector. Death handling and marker animation are client-local functions.
Player killed EH cleanup/rebind Client_OnKilled.sqf:42-65,107-125 removes old Killed/action state, then binds the fresh player object and calls PreRespawnHandler. Death creates a new player unit; old-unit action IDs cannot be trusted after the swap.
Pre-respawn reapply Client_PreRespawnHandler.sqf:5-14,33-40 reapplies skill effects, UI actions, death glue, Fired/HandleDamage handlers, HQ action and statistics. Post-death action and skill smoke belongs here.
AI respawn EH Server/AI/AI_AddMultiplayerRespawnEH.sqf:1 attaches MPRespawn handling for non-player leaders. AI leader respawn is server-side and separate from the player menu.

Player Flow

flowchart TD
    Killed["Player Killed EH"] --> OnKilled["Client_OnKilled.sqf"]
    OnKilled --> Cleanup["Remove old actions, close dialogs, save death position"]
    Cleanup --> WaitAlive["waitUntil alive player"]
    WaitAlive --> TeamLeader["RequestSpecial update-teamleader"]
    TeamLeader --> Rebind["Re-add Killed EH"]
    Rebind --> PreRespawn["PreRespawnHandler"]
    PreRespawn --> Menu["WFBE_RespawnMenu"]
    Menu --> Available["Client_GetRespawnAvailable"]
    Available --> Select["Map click / closest spawn"]
    Select --> OnRespawn["OnRespawnHandler"]
    OnRespawn --> Gear["Move player, apply gear/default penalty"]
    Gear --> Skin["Optional skin-selector reapply"]
Loading

Death Handler Responsibilities

Client_OnKilled.sqf validates killer display text (:15-40), removes Killed/action/WF-menu state from the dead body (:42-65), closes dialogs (:78-81), records WFBE_DeathLocation (:83), waits for the new player object (:89), sends RequestSpecial ["update-teamleader", ...] (:92-94), restores local group leadership (:96-101), displays the death text (:103-104), re-adds the Killed EH (:107-118), calls PreRespawnHandler (:123-125) and starts the death-camera/post-process thread (:128-165+). Current Build84 also guards invalid death locations before the camera loop (:161-165).

Respawn Menu Responsibilities

GUI_RespawnMenu.sqf owns the custom death-screen loop. It reconstructs a safe WFBE_DeathLocation if the killed handler did not set one (:6-17), reads WFBE_C_RESPAWN_UI_V2 (:19-20), focuses the map with v2 zoom or legacy zoom (:22-26), sets the gear-toggle label and legend strip (:28-45), starts/reuses WFBE_RespawnTime with nil/type fallback (:47-62), refreshes spawn candidates once per second (:102-110), optionally preselects the last spawn (:111-115), updates marker color/type labels and distance display (:180-256), then calls OnRespawnHandler on normal exit (:265-305). The selector animation loop is Client_UI_Respawn_Selector.sqf:14-35, sleeping every 0.03 seconds while WFBE_MarkerTracking exists.

The GEAR toggle inside the same loop flips WFBE_RespawnDefaultGear on click (GUI_RespawnMenu.sqf:96-98). When the toggle lands on keep-current and the player has no saved kit yet (isNil {player getVariable "wfbe_custom_gear"}), the handler now captures the player's live weapons, magazines, backpack and primary/secondary/sidearm into wfbe_custom_gear at cost 0 and hints the player to persist it via Team Menu -> Save Gear (GUI_RespawnMenu.sqf:99-115). This is the keep-current-kit fix: previously, toggling to KEEP CURRENT with no purchased/saved kit left wfbe_custom_gear nil, so the Client_OnRespawnHandler.sqf:146 custom-gear guard failed on respawn and the player received default gear even though the button read keep-current.

Respawn UI v2 is current Build84 behavior. WFBE_C_RESPAWN_UI_V2 defaults to 1 in Init_CommonConstants.sqf:1888-1893; WFBE_C_RESPAWN_MAP_ZOOM defaults to 0.03 (:1895-1898); WFBE_C_RESPAWN_CONTESTED_RADIUS defaults to 500 (:1900-1902). The dialog owns the legend control at Rsc/Dialogs.hpp:429-443, and strings live at stringtable.xml:1878-1894. Setting WFBE_C_RESPAWN_UI_V2 = 0 is the documented legacy-screen rollback.

Spawn Sources

Source Current Build84 player availability AI availability Notes
HQ and production factories Client_GetRespawnAvailable.sqf:8-31 starts with side HQ plus Barracks/Light/Heavy/Air factories and removes a dead HQ when another base spawn exists. AI_AdvancedRespawn.sqf:77-104 and AI_SquadRespawn.sqf:65-90 fall back to HQ or closest structure. If the menu hands objNull to the handler, non-GUER uses live HQ or start position fallback in Client_OnRespawnHandler.sqf:24-48.
Mobile ambulances Client_GetRespawnAvailable.sqf:33-46 scans side ambulance classes inside the respawn-range upgrade and requires free cargo. AI_AdvancedRespawn.sqf:44-53; AI_SquadRespawn.sqf:43-51. Final placement also requires alive/unlocked cargo at Client_OnRespawnHandler.sqf:71-76.
Medic redeploy trucks Client_GetRespawnAvailable.sqf:48-82 is Medic-only, requires free cargo, stationary, engine off and not within 500 m of enemy/contested towns. No dedicated AI redeploy-truck path in the audited AI scripts. Uses the same mobile default-gear gate in Client_OnRespawnHandler.sqf:58-60,74-76.
Squad leader Client_GetRespawnAvailable.sqf:84-89 allows leader respawn when enabled, not self, and within WFBE_C_RESPAWN_RANGE_LEADER. AI uses team wfbe_respawn object/string state instead. WFBE_C_RESPAWN_LEADER == 2 forces default gear in Client_OnRespawnHandler.sqf:63-66.
Threeway defender towns Client_GetRespawnAvailable.sqf:91-100; Common_GetRespawnThreeway.sqf:6-10. Not seen in AI respawn scripts except via camps. Defender can use side-controlled towns in threeway; zero-camp helper fallback remains a review item.
Camps Client_GetRespawnAvailable.sqf:102-105; Common_GetRespawnCamps.sqf:11-94. AI_AdvancedRespawn.sqf:37-40; AI_SquadRespawn.sqf:36-39. Modes: classic, nearby camps, defender-only; optional hostile safe-radius rules.
GUER towns and FOBs Client_GetRespawnAvailable.sqf:107-120 offers resistance/neutral towns plus live wfbe_is_guer_fob vehicles. GUER AI respawn is not represented by the player menu. Client_OnRespawnHandler.sqf:79-112 honors selected GUER town/FOB/factory, else falls back to friendly/neutral towns then start marker.
Naval HVT carrier towns Client_GetRespawnAvailable.sqf:122-134 offers carrier town logics held by WEST/EAST. No dedicated AI carrier-respawn path in audited AI respawn scripts. WEST/EAST deck placement is in Client_OnRespawnHandler.sqf:113-123; GUER/naval HVT deck placement is :107-111.
Officer MASH/FARP No current Build84 maintained-root player candidate. See MASH matrix. No current Build84 AI MASH path in audited AI scripts. Old docs/Miksuu/perf-shaped roots had local officer MASH, but current Build84/B74-shaped roots removed the maintained-root deploy/module path.

Service Point and Command Center base respawns are still commented out in Client_GetRespawnAvailable.sqf:24-27; live WEST/EAST base respawn is HQ plus Barracks/Light/Heavy/Air factories. The current target contains many AICOM MHQ relocation features, but MHQ relocation is not a player respawn node by itself; player HQ/base respawn still routes through the side HQ/factory candidate list above.

Threeway defender town respawn inherits the camp-count fallback. Common_GetTotalCamps.sqf:9-12 and Common_GetTotalCampsOnSide.sqf:15-22 both return 1 when a town has zero camps, and Common_GetRespawnThreeway.sqf:6-8 treats equality as all camps owned. Because Client_GetRespawnAvailable.sqf:91-93 appends that result directly, a side-owned zero-camp town can become a respawn source unless an owner confirms that the 1 fallback is intended for this caller.

Branch Intel - Mobile Respawn Map Circles

Draft PR #78 / origin/claude/trello-map-radius-circles@77dd71ba is branch-only local map-marker feedback, not current Build84 behavior. It adds Client_AmbulanceRedeployCircles.sqf:1-69 and launches it from Init_Client.sqf:1227 on that branch. The radius matches the same upgrade range used by Client_GetRespawnAvailable.sqf:33-38,55-59, but the watcher does not duplicate cargo, lock, stationary, engine-off or enemy-town checks. If revived, smoke ring visibility against actual selectable respawn entries.

No revive framework is wired in current Build84. The live architecture is kill event, custom death camera, respawn menu, then Client_OnRespawnHandler.sqf. Do not document MASH as revive; it is either a removed current-branch spawn feature or an old-shape local respawn candidate with dead marker sharing.

Gear And Penalty Rules

Client_OnRespawnHandler.sqf first refreshes clientTeam and requests a funds resend (:11-22), then applies spawn placement and gear. Mobile ambulances/redeploy trucks and leader respawn can force default gear when their parameter is 2 (:54-66). Custom gear is attempted only when wfbe_custom_gear exists, WFBE_RespawnDefaultGear is false and _allowCustom stayed true (:145-152). GUI_RespawnMenu.sqf:99-115 guarantees wfbe_custom_gear exists the first time a player toggles to keep-current, even when no kit was ever purchased through GUI_BuyGearMenu.sqf or saved through GUI_Menu_TeamV2.sqf gear presets: it snapshots the player's live inventory at toggle time so the guard above no longer fails. This also unblocks GUI_Menu_TeamV2.sqf:151-198 gear-preset saving, which previously reported "no gear purchased yet" (:164) for the same never-bought-a-kit player.

Mode Lobby text Current Build84 behavior Evidence
0 Disabled Keep custom gear for free when custom gear is allowed. Client_OnRespawnHandler.sqf:152-190
1 Default Gear Strip custom gear by falling through to default gear, and now show the penalty/default-gear chat line. This is the lane 188d silent-strip fix. Client_OnRespawnHandler.sqf:149-151,194-229; strings at stringtable.xml:1756-1758
2 Gear Price Charge full saved custom gear cost. Client_OnRespawnHandler.sqf:160-165,174-182
3 Gear Price 1/2 Charge half saved custom gear cost. Client_OnRespawnHandler.sqf:160-165,174-182
4 Gear Price 1/4 Charge quarter saved custom gear cost. Client_OnRespawnHandler.sqf:160-165,174-182
5 Gear Price on Mobile Respawn Price is full cost, but _charge is false for side structures or side HQ, so base/HQ respawns do not charge and no longer skip custom gear for insufficient funds. Client_OnRespawnHandler.sqf:167-182

The custom-gear cost path now defaults missing wfbe_custom_gear_cost to 0 (Client_OnRespawnHandler.sqf:155). That is the merged lane 188 fix for old saves or templates without a cost stamp. Default gear falls back through role defaults and then faction default gear, logging when a role default is missing (:194-229). GUER default gear remains partial: Root_GUE_PlayerOverlay.sqf:30-44 defines Engineer, Spotter and Medic defaults; the handler fallback prevents naked respawns when a role-specific GUER kit is missing.

Skin Selector Respawn Flow

The skin selector is enabled by SkinSelector_Enabled.sqf:19-23: WFBE_C_SKINSEL defaults on through missionNamespace getVariable ["WFBE_C_SKINSEL", 1], while legacy WFBE_C_SKIN_SELECTOR can also force it on. Current constants set WFBE_C_SKINSEL = 1 if nil at Init_CommonConstants.sqf:1004, while the old legacy flag still defaults to 0 at :1633.

Entry points are join/class initialization (Skill_Init.sqf:71-75), the WF menu SKIN button (GUI_Menu.sqf:224-231) and User11 keybind (Init_Keybind.sqf:1-14). SkinSelector_Apply.sqf blocks concurrent/double applies (:60-67), snapshots gear before the model swap (:99-100), creates the replacement unit (:105-150), reapplies gear, re-adds keybind/HQ action state (:366-375) and persists the chosen class by UID (:378-382). On normal respawn, Client_OnRespawnHandler.sqf:231-250 waits 0.5 seconds, reads the saved class and calls SkinSelector_Apply.sqf only when the player is alive and on foot.

Skin selector smoke should cover first join, WF menu reopen, User11 reopen, respawn reapply, concurrent apply prevention, funds carry and action-menu recovery. It should not be mixed with MASH marker sharing; those are separate surfaces.

Parameters And Defaults

Rsc/Parameters.hpp:450-485 exposes the main respawn lobby parameters. Runtime fallbacks and feature toggles are in Init_CommonConstants.sqf.

Parameter Mission parameter default Runtime fallback / current constant Notes
WFBE_C_RESPAWN_DELAY 30 menu falls back to 10 if nil/non-scalar at GUI_RespawnMenu.sqf:48-54 Player UI and AI waits read this.
WFBE_C_RESPAWN_LEADER 0 current constant/fallback checked by handler 2 means enabled with default gear.
WFBE_C_RESPAWN_MOBILE 1 current constant/fallback checked by availability and handler 2 means enabled with default gear for ambulances and redeploy trucks.
WFBE_C_RESPAWN_PENALTY 0 values 0..5 at Rsc/Parameters.hpp:474-479 Parameter default disables custom-gear penalty.
WFBE_C_RESPAWN_CAMPS_RANGE 400 Common_GetRespawnCamps.sqf:16,38,65 Camp scan/range behavior.
WFBE_C_RESPAWN_CAMPS_SAFE_RADIUS n/a 50 at Init_CommonConstants.sqf:1449 Hostile-safe filtering radius for camp rules.
WFBE_C_RESPAWN_RANGE_LEADER n/a 50 at Init_CommonConstants.sqf:1450 Leader respawn proximity.
WFBE_C_RESPAWN_RANGES n/a [250, 350, 500] at Init_CommonConstants.sqf:1451 Mobile/redeploy truck range by upgrade.
WFBE_C_RESPAWN_UI_V2 n/a 1 at Init_CommonConstants.sqf:1888-1893 Current Build84 UI v2 master, default on.
WFBE_C_RESPAWN_MAP_ZOOM n/a 0.03 at Init_CommonConstants.sqf:1895-1898 UI v2 initial map zoom; legacy screen uses 0.095.
WFBE_C_RESPAWN_CONTESTED_RADIUS n/a 500 at Init_CommonConstants.sqf:1900-1902 UI v2 amber contested marker threshold.

MASH Split: Removed Current Target, Old-Shape Local Respawn

Canonical current-target statement: current Build84/B74-shaped maintained roots have no maintained-root MASH deploy/module path and no current player MASH candidate in Client_GetRespawnAvailable.sqf. Class/config residues and old comments are not proof of a working current MASH respawn. Treat MASH revival/removal as branch-sensitive work.

Old docs/Miksuu/perf-shaped roots are different: local officer MASH respawn is source-supported there, but team-wide/JIP-safe MASH marker synchronization is orphaned. On those roots, the officer action is added by Client/Module/Skill/Skill_Apply.sqf:42-55, deployment stores local wfbe_mash in Client/Module/Skill/Skill_Officer.sqf:7-29, availability reads it in Client_GetRespawnAvailable.sqf:47-58, and undeploy deletes it in Officer_Undeploy_MASH.sqf:19-21. The marker relay is dead/orphaned: Server/Module/MASH/MASHMarker.sqf:1-13 listens, Client/Module/MASH/receiverMASHmarker.sqf:1-29 exists, the receiver compile is commented in Init_Client.sqf:132, and no maintained deploy sender for WFBE_CL_MASH_MARKER_CREATED was found.

Scope Local MASH respawn Shared marker relay Development meaning
Current Build84/B74-shaped maintained roots Removed from maintained-root deploy/module and current respawn availability. No maintained-root module relay path. Do not document MASH as current player/team spawn without a deliberate revival branch.
Repo docs branch HEAD@f938b0c0b7ea Chernarus and maintained Vanilla, unchanged from 443055cf / 2b5139219faa / db3015f18ea3 for checked MASH paths Source-supported local deploy/read path. Orphaned receiver/listener with no maintained deploy sender. Decide personal/squad/team semantics before changing code.
Miksuu b8389e748243 and origin/perf/quick-wins@0076040f8a5e Same old-shape local path. Same orphaned relay. Upstream/perf do not prove team-shared MASH behavior.
Modded eden / lingor Not maintained proof. Sender-only drift: modded deploy sends WFBE_CL_MASH_MARKER_CREATED, but maintained clients still do not compile the receiver. Use only as archaeology if reviving.

Service Points Are Support Nodes

Service points are not active respawn nodes in current Build84. Client_GetRespawnAvailable.sqf:24-27 still has commented command-center and service-point candidate code, while the live list continues through HQ/factories, mobile ambulance, redeploy truck, leader, threeway towns, camps, GUER FOBs/towns and naval carrier towns. Keep service-point behavior in the service/EASA support lane unless an owner deliberately revives service-point respawn and smokes UI, JIP and default-gear rules.

AI Respawn

There are two audited AI leader paths:

  • AI_AddMultiplayerRespawnEH.sqf:1 adds an MPRespawn handler that calls AIAdvancedRespawn for non-player units on the server.
  • AI_SquadRespawn.sqf:14-111 runs a loop watching non-player team leaders, waits for death/alive transitions, then handles respawn.

Both server AI paths rebind killed scoring EHs, collect camp/mobile candidates unless forced respawn is set, wait WFBE_C_RESPAWN_DELAY, re-equip from side AI loadout variables keyed by gear upgrade, choose stored team respawn object/HQ/closest structure/random camp/mobile fallback and reset non-autonomous movement orders. Team respawn state is group setVariable ["wfbe_respawn", _respawn, true] via Common_SetTeamRespawn.sqf:1-8; groups are initialized with blank respawn in Server/Init/Init_Server.sqf:474-483.

AI loadout tier note: both AI respawn paths historically read _upgrades select 13, matching WFBE_UP_GEAR = 13. Future cleanup should use the named constant, clamp the selected tier to available WFBE_%SIDE_AI_Loadout_0..3 arrays and guard empty arrays before random count.

Kill Scoring And Cleanup

The player Killed EH sends the common kill report path through WFBE_CO_FNC_OnUnitKilled (Client_OnKilled.sqf:107-118; Common_OnUnitKilled.sqf:8-14). The server handler RequestOnUnitKilled.sqf resolves last-hit fallback for suicide/null killer cases, logs the death, schedules trash cleanup, updates side casualties/vehicles lost, awards score/bounty for enemy kills and sends teamkill notices for player-led friendly kills. HQ death has its own redundant client EH/JIP path and idempotency issue documented in Deep-review findings DR-20 and Server runtime; do not mix ordinary unit kill scoring with HQ-killed processing.

Known Risks And Patch-Ready Items

Status Item Evidence Next action
Fixed on current Build84 Lane 188 mode-1 custom-gear strip is no longer silent, missing custom-gear cost defaults to zero, and mode-5 base/HQ respawns no longer skip custom gear merely because funds are low. Client_OnRespawnHandler.sqf:149-155,167-182; PR #478 merged 2026-07-03. Smoke penalty modes 1 and 5 with base, mobile and insufficient-funds cases before release-ready wording.
Fixed on current Build91 Toggling GEAR to KEEP CURRENT with no purchased/saved kit no longer falls back to default gear on respawn. The toggle now captures the player's live inventory into wfbe_custom_gear at cost 0 when none exists yet, satisfying the existing Client_OnRespawnHandler.sqf:146 custom-gear guard. GUI_RespawnMenu.sqf:99-115; Client_OnRespawnHandler.sqf:146,196-201. Smoke: die with no purchased/saved kit, toggle GEAR to KEEP CURRENT, respawn, and confirm the captured loadout (not default gear) is applied; also confirm GUI_Menu_TeamV2.sqf Save Gear now stores a preset from the captured kit.
Owner decision Current Build84 has no maintained-root MASH deploy/availability path; old docs/Miksuu/perf roots had local MASH but no team/JIP marker proof. MASH split. Decide revive/remove semantics. A revival needs server-owned marker records and explicit JIP resend/pull.
Smoke pending Respawn UI v2 is default-on current behavior. GUI_RespawnMenu.sqf:19-45,111-115,180-256; Rsc/Dialogs.hpp:429-443; Init_CommonConstants.sqf:1888-1902. Smoke marker colors, type tags, distance text, last-spawn memory, gear button text/tint, legacy rollback and map-click selection.
Smoke pending Skin selector persists/reapplies skins after respawn. SkinSelector_Apply.sqf:60-67,99-150,366-382; Client_OnRespawnHandler.sqf:231-250. Smoke first join, menu/keybind reopen, respawn reapply, double-click guard, funds carry and action recovery.
Review target Respawn menu loop sleeps 0.01 and selector sleeps 0.03. GUI_RespawnMenu.sqf:262; Client_UI_Respawn_Selector.sqf:19-35. Keep as bounded death-screen-only UI work; if optimizing, preserve marker responsiveness and cleanup.
Cleanup target AI respawn loadout tier uses a literal gear-upgrade index and assumes a non-empty loadout array. AI_AdvancedRespawn.sqf:68; AI_SquadRespawn.sqf:56; Init_CommonConstants.sqf:50. Replace literal 13 with WFBE_UP_GEAR, clamp/bounds-check tier selection and smoke Vanilla plus non-Vanilla AI leader respawn.
Review target Threeway defender respawn can include zero-camp towns because total-camp helpers return 1 for empty camp arrays. Common_GetTotalCamps.sqf:9-12; Common_GetTotalCampsOnSide.sqf:15-22; Common_GetRespawnThreeway.sqf:6-8; Client_GetRespawnAvailable.sqf:91-93. Split safe-denominator helpers from real respawn eligibility, or explicitly exclude zero-camp towns in GetRespawnThreeway; smoke threeway defender towns with 0/partial/all camps.
UI mismatch Mobile ambulance preview checks cargo space, while final placement also requires alive and unlocked state. Client_GetRespawnAvailable.sqf:33-46; Client_OnRespawnHandler.sqf:71-76; GUI_RespawnMenu.sqf:102-110,265-305. Decide whether the menu should filter dead/locked vehicles too, or show the option but fall back cleanly if the vehicle changes during countdown.

Validation Checklist

  • Player dies, old WF menu/action IDs are removed from the corpse, and the menu/actions return on the new unit.
  • Death camera handles valid and invalid WFBE_DeathLocation without RPT spam.
  • Respawn menu opens, countdown runs, map click selects nearest spawn within 500 meters, and markers clean up after spawn.
  • UI v2 shows type tags, safe/contested colors, distance suffixes, legend and last-spawn memory; UI v2 rollback restores legacy text/zoom.
  • Base/factory, camp, mobile, redeploy truck, leader, carrier and GUER spawn options appear only under their parameter/range/ownership rules.
  • Custom/default gear behavior matches WFBE_C_RESPAWN_PENALTY, WFBE_C_RESPAWN_* == 2, player funds and missing custom-gear cost.
  • Skin selector first-join and respawn reapply preserve chosen class, gear, funds, keybind and commander HQ action.
  • MASH is not shown as current Build84 behavior unless a target branch deliberately restores it; old-shape MASH marker sharing stays marked orphaned.
  • AI team leaders respawn after configured delay, re-equip, pick sane camp/mobile/base fallback and reset orders when not autonomous.

GUER Resistance Spawn Flow

The optional GUER Insurgents faction (side resistance) is base-less and spawns differently from WEST/EAST. There is no HQ, no factory wait and no service point; a GUER client skips several WEST/EAST blocking waits and spawns at friendly/neutral towns or GUER FOBs. Full faction context: GUER Insurgents Faction Overview.

Stage Behaviour Source
Init waits skipped Structure/supply waits and HQ/COIN/vote blocks are gated away from resistance; GUER radio is explicitly included when playable. Client/Init/Init_Client.sqf:873-879,908-910,1041-1050,1356-1360
First placement Random resistance/neutral town, else any town, else marker GuerTempRespawnMarker. Client/Init/Init_Client.sqf:1003-1008
Respawn list Resistance/neutral towns plus live FOB delivery trucks; built FOB factories are offered via side structures. Client_GetRespawnAvailable.sqf:107-120; Client_OnRespawnHandler.sqf:85-92
Placement offset Selected town/FOB/factory is honored when valid; naval HVT uses deck Z, otherwise [getPos target, 5, 15] Call GetRandomPosition. Client_OnRespawnHandler.sqf:79-112
Default gear GUER has Engineer, Spotter and Medic role defaults; missing role defaults fall back to faction default if available. Root_GUE_PlayerOverlay.sqf:30-44; Client_OnRespawnHandler.sqf:213-229
IED anti-farm A Fired EH stamps wfbe_ied_recent on BAF IED magazines so the server can reduce IED kill bounty. Client_OnRespawnHandler.sqf:126-142

Continue Reading

Previous: Client UI systems atlas | Next: Gear/loadout and EASA atlas

Related: Feature status | JIP enrollment and client data delivery | Medic redeploy truck | Testing workflow

Sidebar

Clone this wiki locally