Balatro-Multiplayer / Balatro-Multiplayer/BalatroMultiplayer
[Beta v3 PvP] "Continue in Singleplayer" starts a brand-new run instead of resuming
- Dominant language
- Lua
- Stars
- 335
- Forks
- 106
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 1
Description
**Status: root cause confirmed**
**Affects:** MultiplayerPvP Closed Beta v3 (mqtt branch)
## Symptom
Tester report: "continuing in single player just starts a new run." Choosing "Continue in Singleplayer" from the end-of-match screen starts a fresh ante-1 run (starting deck/money) instead of continuing the match's run state.
## Root cause
`G.FUNCS:continue_in_singleplayer` (`ui/game/functions.lua:244-276`) round-trips the run through disk: it calls `save_run()` and then reads `save.jkr` back on an `immediate` event in effectively the same frame. Vanilla `save_run()` only synchronously builds `G.ARGS.save_run`; the file write is dispatched to the async SAVE_MANAGER thread on a later `Game:update` tick, so the read races the write.
Because `G.F_NO_SAVING` is true for the entire MP match (`overrides/game.lua:237-241`), no prior `save.jkr` for the run exists to fall back on — the read reliably returns nil, `G:start_run({savetext = nil})` starts a fresh run, and `G:delete_run()` has already discarded the in-memory state, so there is no recovery path. The failure is effectively deterministic, not intermittent.
Contributor guide
Assessment
This issue has not been assessed yet.