Recovery System
When a detection or a menu hand-off doesn't go as expected, FAFE doesn't just stop. Two layers try to get the run back on track before giving up.
The two recovery layers
Layer 1 handles small hiccups without ever touching the game process. Layer 2 is the heavier fallback for when the game itself is the problem — a frozen loading screen, a crash, or the window closing.
Layer 1 — stage-level retry
Every stage of a route (entering a menu, confirming a screen, handing off to the next step) runs through a bounded retry loop. If a stage fails, FAFE doesn't immediately give up or barrel forward blind — it retries the same route a limited number of times, and between attempts it can re-anchor to a known-safe screen first.
Bounded retries
A failed stage route is retried a small, configurable number of times before FAFE aborts that run. This is deliberately limited — an unrecoverable state shouldn't loop forever silently.
Safety anchors
Two screens are treated as universal safe points: the open world (driving free-roam) and the main menu. Both are reachable from almost anywhere by pressing Escape repeatedly, and every major route knows how to restart itself from either one.
Retry budget resets on recovery
If a retry manages to re-anchor to a safe screen, the failure count resets — so one genuine recovery doesn't eat into the budget for a later, unrelated hiccup. Only consecutive, un-recovered failures count against the limit.
Won't repeat completed work
If the stage's actual work (a purchase, a spin, a race) already finished and only a later hand-off failed, FAFE recognizes that and moves on — it won't buy the same car twice just because the screen after it didn't confirm cleanly.
Layer 2 — game relaunch
If Layer 1 can't recover — most commonly an infinite loading screen after selecting your last-played event, before the race-type menu appears — FAFE treats the game itself as stuck and takes a heavier step.
Close the stuck game
FAFE asks the window to close gracefully, then force-closes it if it hasn't within about 10 seconds.
Wait, then relaunch
After a short delay (8 seconds by default), FAFE relaunches the game through whichever platform it's running on — Steam, Xbox / Game Pass, or a custom launch command.
Auto-navigate back to the main menu
Once the game window reappears, FAFE walks the launch prompts itself (start prompt → continue → home → open world → main menu) so the loop can resume exactly where a manual restart would leave it.
Resume the loop
AFK Races (and Full Auto, which runs Race internally) continues from the main menu as if nothing happened.
Settings
Launch game when needed
On by default. Starts the game for AFK Races or Full Auto if no game window is detected, and handles the relaunch after a stuck loading screen. Turn it off if you'd rather FAFE just stop and let you handle it manually.
Relaunch delay
8 seconds by default — how long FAFE waits after closing a stuck game before launching it again, giving Steam / Xbox time to fully release the old session.