LiveSplitHooks

v1.2.4·Updated 2026-08-05

Automatic LiveSplit start/split/reset for Mycopunk. IL reset-before-start, objective splits, per-mission split profiles.

About this mod Author’s original text

LiveSplitHooks

A BepInEx mod for Mycopunk that drives LiveSplit automatically over its named pipe command

server. No ASL script required.

Features

  • Auto start when a mission begins
  • Auto reset + start on each new mission (IL-style; configurable)
  • Auto split on successful mission completion
  • Auto reset on mission fail / abort
  • Optional splits on each main objective
  • Incursion floor-clear splits (default target floor 30; ends the run at max floor)
  • Sub-mission transitions (e.g. Cranius after setup): split, swap profile, start
  • Per-mission split profiles — auto switchsplits by mission name/id
  • Load removal via LiveSplit game time (pausegametime / unpausegametime)
  • Auto-reconnect if LiveSplit is opened after the game
  • Fully configurable triggers

Requirements

  • Mycopunk
  • BepInEx (BepInExPack for Mycopunk)
  • LiveSplit running on the same PC
  • For split profile switching: a recent LiveSplit build that supports the switchsplits pipe command

LiveSplit setup

  • Open LiveSplit and load your splits layout as usual.
  • Keep LiveSplit running while you play. The named pipe server (\\.\pipe\LiveSplit) is available by default — no

extra component is required for pipe control.

  • Optional: Right-click LiveSplit → Control → compare against Game Time if you use load removal.
  • Launch Mycopunk with the mod installed.

When a mission starts you should see the timer reset (if a previous run exists) and start. Completing the mission

splits; failing resets (defaults).

IL vs full-game

  • Individual missions (default): leave ResetBeforeStartOnMissionBegin = true. Each mission is its own LiveSplit

attempt (reset + start on begin, split on complete).

  • Full-game / multi-mission route: set ResetBeforeStartOnMissionBegin = false so the timer keeps running across

missions. Use one split segment per mission with SplitOnMissionComplete = true. Prefer leaving split profiles off

for full-game runs.

Objective splits

Set SplitOnObjectiveComplete = true to split on each main (non-side) objective. Keep SplitOnExtractObjective = false

if SplitOnMissionComplete already ends the run, or you will double-split at extract.

Incursion (floor 30)

Incursion never ends in-game. The speedrun category ends at floor 30.

When the active mission id is listed in FloorChangeSplitMissionIds (default incursion):

  • Timer starts on mission begin as usual
  • Each floor clear (floor number increases) sends split
  • Door code skips that jump multiple floors emit one split per floor crossed (keeps a 30-segment layout aligned)
  • Clearing floor 30 (entering floor 31, or skipping past 30) sends the final split and ends the LiveSplit run (

IncursionEndRunAtMaxFloor, default true)

  • Final time stays on screen; further floors / mission fail later do not reset or split this attempt

Suggested incursion.lss: 30 segments (cleared floor 1 … cleared floor 30). No extract segment.

Cranius (sub-mission)

Cranius loads after a setup mission on Moldy Tundra (often planet_def). With SplitOnSubMissionTransition = true (

default):

  • Setup mission starts → normal start (and optional profile)
  • Cranius mission starts → split (ends setup attempt) → reset → switchsplits to Cranius profile → start

The game’s mission id is literally???; C# type is FlatTundraMission. The mod sets primary key cranius. Put these in your live profiles.txt (not only the example file):

cranius => Mycopunk - cranius.lss??? => Mycopunk - cranius.lss

FlatTundra Mission => Mycopunk - cranius.lss

FlatTundraMission => Mycopunk - cranius.lss

planet_def => Mycopunk - planet_def.lss

Cranius is separate from Amalgamation — only Flat Tundra / cranius aliases apply.

Per-mission split profiles

Use this when different missions need different.lss files (e.g. different objective counts).

  • Put your.lss files in one folder (any path). Filenames can include the game prefix, e.g.

Mycopunk - cleanup_detail.lss.

  • In config (BepInEx/config/sparroh.livesplithooks.cfg):

[SplitProfiles]

Enabled = true

Directory = C:\Pat

Install & use Install: follow the bundled instructions

  1. Unzip the archive from playbuff and read the bundled readme / instructions first.
  2. Most mods rely on the game's mod loader — the usual route is a community mod manager (such as r2modman): pick this game, install, and it handles the loader and dependencies.
  3. For a manual install, put the mod files into the matching Mod / plugins folder inside the game directory.
  4. Launch the game to confirm it loaded; mods with listed dependencies need those installed as well.

Install locations vary a lot between mods — the bundled readme is the most reliable guide.

Dependencies

Install these first, or the mod will not work:

BepInEx-BepInExPack_Mycopunk

File & checksum

Filename
LiveSplitHooks-1.2.4.zip
File size
43.4 KiB