Skip to content

Preserve player-authored TOML for runtime setting saves - #280

Draft
Guffawaffle wants to merge 24 commits into
netniV:devfrom
Guffawaffle:feature/preserving-toml-editor
Draft

Guffawaffle wants to merge 24 commits into
netniV:devfrom
Guffawaffle:feature/preserving-toml-editor

Conversation

@Guffawaffle

@Guffawaffle Guffawaffle commented Sep 12, 2026

Copy link
Copy Markdown
Contributor

Adds runtime setting saves that preserve the player's TOML formatting, comments and unrelated values. Instant-warp mode is the first consumer.

A background worker coalesces changes by setting, supports slider debounce, and tracks save failures independently per key. External changes to the selected value are reported as conflicts instead of overwritten. Normal quit drains pending saves; forced exit uses a bounded best effort.

Supports booleans, strings, signed integers and finite doubles. Runtime persistence supports Windows x64 and macOS clients with compatible Unity quit signatures; unsupported bindings retain session-only changes.

Depends on #279 and #251.

macOS uses the same asynchronous writer and shutdown drain, with validated quit hooks. Fixtures cover disk reload, immediate shutdown of a debounced save, conflicts, and adapter lifecycle.

Validation: Windows release build passed. Mac ARM players confirmed settings, galaxy controls, and persistence on the combined integration build; Intel Mac runtime testing remains unconfirmed. Platform CI for this PR is tracked separately.

@Guffawaffle Guffawaffle changed the title Preserve user TOML when saving instant-warp mode changes Preserve player-authored TOML for runtime setting saves Sep 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant