Commit Graph

3 Commits

Author SHA1 Message Date
Steve Biedermann 43051c9f5d feat(world)!: add lossless Tiled export and import
Preserve building state, machine contents and progress in editable Tiled properties. Share property decoding between seeds and imports; replace terrain and objects atomically while keeping characters. Persist terrain in schema version 2 and replicate it to existing and joining clients.

BREAKING CHANGE: network protocol version 5 replicates authoritative terrain; older clients and servers cannot connect.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-21 20:22:13 +02:00
Steve Biedermann 2d6f52e8a4 feat!: start menu, file-based UI, machine windows and server access control
- Start menu with new game (optionally hosted), load/delete saves and join
  server screens; CLI options skip it.
- Menus and HUD are built from rsn layouts in assets/ui with a shared theme,
  bindings, conditional visibility and tooltips.
- Machine windows place slots and backgrounds from the machine's ui
  definition; slots are filled from and emptied into the inventory.
- Chat with / commands, pause menu, clickable inventory, craft and build
  menus.
- Server passwords, admins, whitelist, bans, kicks and admin commands from
  the terminal or chat; changes are written to the config file. The hosting
  player is always admin.
- Clients keep a player id in client.toml; characters belong to it.

BREAKING CHANGE: protocol version 3 adds the player id and password to
Login, and characters are keyed by player id instead of name, so characters
in existing worlds are not restored.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-18 22:29:05 +02:00
Steve Biedermann 09ace2607c feat(server): add file and command line config
Add a dedicated server configuration file (`server.toml`) with clap-based
command line overrides. The server now supports runtime config changes via
terminal commands, and config edits are written back to the TOML file while
preserving comments.

Also let host mode feed the shared network startup through the same server
config resource.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-18 21:41:58 +02:00