ShipStarterKit
On first load of a save, pile configurable store equipment on the ship floor (belt bags, flashlights, jetpacks, and more).ShipStarterKit
Lethal Company BepInEx mod that pre-supplies the ship with configurable store equipment on the first load of each save file. Items appear in separate piles per type on the ship floor.
Thunderstore namespace: MrGlim
Author: Ben Hough (MrGlim)
GUID: com.benhough.lethal.ShipStarterKit
Requirements
Behavior
- Host-only spawn — the host instantiates networked
GrabbableObjects (same pattern as vanillaLoadShipGrabbableItems/ dropship delivery) so clients see the piles. - First load per save only — an ES3 flag
ShipStarterKit_Suppliedis written onGameNetworkManager.currentSaveFileName(e.g.LCSaveFile1). Reloading that save or returning from moons does not re-spawn. Starting a new game on the slot clears the flag viaResetSavedGameValues. - Config per store item — defaults of 10 for belt bags, pro flashlights, jetpacks, lockpickers, spray paint, weed killer, and shovels. All other buyable store equipment is listed at 0 (raise in config as desired).
- HostModGate (
MrGlim.ShipStarterKit) — advantage QoL; features follow host enable state.
Config (BepInEx/config/com.benhough.lethal.ShipStarterKit.cfg)
| Section | Key | Default | Notes |
|---|---|---|---|
| General | Enabled | true | Master toggle |
| General | VerboseLogging | false | Match / pile logs |
| General | SpawnOncePerSave | true | Keep true unless testing |
| ItemCounts | BeltBag, ProFlashlight, Jetpack, Lockpicker, SprayPaint, WeedKiller, Shovel | 10 each | Flexible name match |
| ItemCounts | (other buyables) | 0 | Auto-bound after Terminal loads |
First-load gate (detail)
- Hook:
StartOfRound.StartPostfix on server (after vanillaLoadShipGrabbableItems). StartOfRoundpersists across moon trips, so this does not fire every landing.- Persistence: ES3 on the current save file name; file fallback under
BepInEx/config/ShipStarterKit/if ES3 reflection fails.
Spawn API
Instantiate(item.spawnPrefab, pos, identity, elevatorTransform)
→ GrabbableObject setup (fallTime=0, isInShipRoom, scrapPersistedThroughRounds)
→ NetworkObject.Spawn(false)
License
MIT — Ben Hough, 2026
