Summary
Raids play out in three phases: travel → loot → return. Crew moves as a group at their average Speed. Looting duration is driven by a weighted stat formula that varies by target. At 50% loot progress, an encounter may trigger (probabilistic, not guaranteed). See Raid Encounters for encounter resolution and the backup mechanic.
Raid Phases
Phase 1: Travel
Crew travels as a pack from HideoutExit to the target building.
TravelTime = NavMeshDistance(HideoutExit, Target) / (CrewAvgSpeed * SpeedScale)
CrewAvgSpeed = sum(each raccoon's Speed) / CrewSize
NavMeshDistance is the actual pathfinding distance on the city map — derived from map geometry, not a per-target constant. SpeedScale is a global tunable that maps stat-space speed into world-space movement.
All raccoons travel together as one group. One set of AI pawns moving in formation.
Phase 2: Looting
Begins the moment crew arrives at the target. Each target defines a fixed TotalWork value representing how much there is to loot.
LootProgress += CompletionSpeed * DeltaTime / TotalWork
CompletionSpeed uses the weighted stat formula below, calculated once at arrival from the full crew’s stats.
At 50% loot progress, the encounter chance is rolled (see Raid Encounters). If an encounter triggers, looting pauses for the backup window, then resumes after resolution. Looting completes at 100%.
Phase 3: Return
Crew travels back as a group at the same CrewAvgSpeed. Loot is delivered to the Loot Sorting Station when the crew arrives home at the hideout.
Completion Speed Formula
CompletionSpeed = (Speed × W_spd) + (Stealth × W_stl) + (Strength × W_str) + (Cunning × W_cun) + (Luck × W_lck)
Uses crew sum per stat. Higher score = faster looting. This formula governs looting duration only — travel speed uses the simpler CrewAvgSpeed calculation.
Per-Target Weights
Each target type defines base weights (sum to 1.0) that reflect the bottleneck of that job:
| Target | Spd | Stl | Str | Cun | Lck | Bottleneck |
|---|---|---|---|---|---|---|
| Average Home | 0.50 | 0.30 | 0.20 | — | — | In and out fast, don’t wake anyone |
| Rich Neighbor | 0.20 | 0.40 | 0.05 | 0.30 | 0.05 | Avoid detection, find hidden valuables |
| Grocery Store | 0.40 | 0.20 | 0.40 | — | — | Bulk hauling at speed, some security |
| Electronics Store | 0.20 | 0.30 | — | 0.40 | 0.10 | Know what’s valuable, commercial security |
| The Dump | 0.30 | — | 0.60 | 0.10 | — | Pure hauling, Cunning spots good junk |
| Back Alley | 0.30 | 0.10 | — | 0.30 | 0.30 | Street smarts + luck of the draw |
| Animal Control HQ | 0.25 | 0.30 | 0.15 | 0.25 | 0.05 | Boss raid — everything matters |
Refresh Variance
When a target comes back online after cooldown, each weight gets jittered within a per-target variance range, then all five weights are renormalized to 1.0. Variance shifts the stat balance, not overall difficulty.
RefreshedWeight[stat] = BaseWeight[stat] + random(-Variance[stat], +Variance[stat])
// normalize all 5 to sum to 1.0
- Tight variance (e.g., The Dump ±0.03): always a hauling job, minor shift.
- Wide variance (e.g., Rich Neighbor ±0.10): could be a stealth op or a cunning puzzle depending on the roll.
- Scouting reveals current weights (or hints at them) — gives pre-raid recon real tactical value beyond encounter info.
Per-target variance values are on each target’s page.
Design Intent
- Crew composition is a real decision. Dump runs want Haulers stacked. Rich Neighbor wants Scouts + Distractors. No single “best crew.”
- Repeat raids stay interesting. Variance means the optimal crew shifts each refresh cycle.
- Rewards flexible rosters. Players who train diverse raccoons adapt better than one-trick crews.
- Scouting pays off. Knowing current weights lets you pick the right crew instead of guessing.
- Night raids are safer. Daytime raids double encounter chance — the Game Clock creates a natural rhythm without hard-gating dispatch.
Links
Open Questions
- Exact mapping from CompletionSpeed score → TotalWork per target (tuning pass needed)
- Does scouting reveal exact weights or just hint at which stats matter most?
- Should variance range be per-stat or a single ± applied uniformly across all weights?
- What
SpeedScalevalue maps stat-space to reasonable real-time travel durations?