
QuickRunReload
Host-only hotkey or configurable chat-command reload of the current landing from a pre-landing checkpoint.QuickRunReload
QuickRunReload creates a checkpoint of the active campaign save immediately before every landing. After a full crew wipe, the host can press F8 or submit a configurable chat command to restore that checkpoint, cleanly shut down the failed network session, and automatically host the same save again.
This is a run retry, not a campaign reset. It does not create a Day 1 save.
What is restored
- day, quota and deadline;
- group credits;
- ship upgrades and unlockables;
- ship items and furniture saved before landing;
- the exact active save slot/name;
- per-save
.moddatasidecars that already exist beside the main save.
Usage
- Host a saved game normally.
- Start a landing. The checkpoint is made before
StartOfRound.StartGame()changes the round. - After everybody dies, press F8 or open chat and submit
/restart. Both work while the host is dead/spectating. - The host returns to the main menu briefly and QuickRunReload automatically hosts the restored save.
The hotkey is configurable in BepInEx/config/qup0ix.QuickRunReload.cfg. The safety option RequireAllPlayersDead defaults to true.
The chat settings are:
[Chat]
EnableChatCommand = true
ChatCommand = /restart
HideCommandMessage = true
ChatCommand may be changed to any non-empty exact message, such as /rr, /again, or /resetpls. Matching ignores case and surrounding whitespace, but does not accept arguments or partial matches. Only the host can request a reload. With HideCommandMessage = true, the exact command is consumed locally and is not sent as ordinary chat. With it set to false, a living host uses the normal game chat path; vanilla does not broadcast chat from a dead player.
Because Lethal Company's supported cleanup/reload path destroys the old network host, remote players are disconnected during the retry. They can rejoin the newly created Steam lobby/invite; after joining they receive the restored campaign state from the host. No client installation is required for the checkpoint logic itself, though all players still need the same content/network mods required by the lobby.
Save safety
The backup is stored under BepInEx/config/QuickRunReload/checkpoint. On a hotkey or chat request, the mod restores it before disconnecting and Harmony-suppresses the unconditional GameNetworkManager.SaveGame() inside Disconnect(). It restores the backup once more immediately before GameNetworkManager.StartHost() loads the slot.
If automatic hosting times out, the restored save remains on disk and can be hosted manually. The checkpoint folder is intentionally retained for recovery.
Compatibility
- LobbyControl: no hard dependency. Re-hosting uses the vanilla
GameNetworkManager.StartHost()andMenuManager.StartHosting()path, so normal lobby patches can run again. If LobbyControl autosave is disabled, QuickRunReload temporarily permits exactly the pre-landing checkpoint write and then restores that setting. - Save Before Landing: compatible and redundant; QuickRunReload also calls the game's real
SaveGame()before copying the file. - MoreCompany: no direct game/player-count patches are made. The old lobby is recreated, so clients must rejoin.
- LateCompany: no hard dependency. It can help players rejoin the recreated lobby.
- BetterChat/other chat mods: no hard dependency. QuickRunReload only prefixes the vanilla submit/open handlers, leaves all non-command messages untouched, and consumes only a full configured-command match when hiding is enabled.
LobbyControl currently declares LateCompany itself incompatible; that is an incompatibility between those two mods, not a QuickRunReload patch collision.
QuickRunReload patches StartOfRound.StartGame() (checkpoint), GameNetworkManager.SaveGame() (temporary suppression), and the vanilla HUDManager.EnableChat_performed/SubmitChat_performed handlers for the host command.
Installed-build target used for 1.1.0
- Lethal Company Steam build ID
22825947 - Unity
2022.3.62f2 - BepInEx
5.4.23.5 - HarmonyX
2.9.0 - target framework
netstandard2.1
Build
The project references the game's real assemblies through GameDir and the active profile's BepInEx assemblies through BepInExDir. Override either MSBuild property if the locations differ:
dotnet build -c Release -p:GameDir="C:\Program Files (x86)\Steam\steamapps\common\Lethal Company" -p:BepInExDir="C:\path\to\profile\BepInEx\core"
Do not ship the referenced game, Unity, BepInEx, or Harmony DLLs in the package.