A server without a module's active file (an old repack updated by the Manager) made two modules log a
'missing property' line on every world tick.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- main: set WEBKIT_DISABLE_DMABUF_RENDERER=1 on Linux unless the user did.
WebKitGTK's DMA-BUF renderer ended the process at startup with a Wayland
"Protocol error" (seen with an NVIDIA card on Wayland).
- data_dir: use $XDG_DATA_HOME (absolute only) or ~/.local/share on Linux
instead of the temp folder. Windows keeps %LOCALAPPDATA%.
- open_link: xdg-open on Linux, explorer.exe on Windows as before.
- tailscale_exe: look in the usual Linux locations.
Every Windows branch is the previous code unchanged.
- Named realmlists (e.g. Solo, PTR): a drop-down by the PLAY button switches the game client by writing the chosen text into every
locale's realmlist.wtf (the replaced file is saved first); add / edit / remove with a name and the realmlist text (or just an
address). First use offers 'Solo' (127.0.0.1) and, if the client held another realmlist, 'Previous'.
- Modules page: bundled catalog (modules/catalog.json) of the optional modules built into the server; switch each on or off (its
Enable setting), open its page on GitHub, edit its configuration with the module's own documentation. Nine modules to start with.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Form (summary, what happened, expected, steps) plus the Manager version, Windows version, install kind and server version filled in
automatically, a redacted diagnostics file to attach, and a button that opens GitHub's new-issue page with the standard template
(the full text goes to the clipboard when it is too long for a link). Nothing is sent from the Manager and no token is needed.
open_link accepts only this project's new-issue page for that.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Players page: list of the server's accounts with password change, access level (player/moderator/GM/administrator) and
rename (a rename also sets a new password because the login verifier depends on the name; refused while logged in).
Companion and console accounts are never listed.
- Install screen: size of the server from the signed package list (unpacked, download, peak) and the drive check uses it.
- Install progress shows downloaded / total volume and speed.
- Own show/hide button on password fields (the browser's one disappeared after leaving the field).
- Settings: one sentence on what the companion addon does.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Server settings page gains 'CPU cores for the world' (MapUpdate.Threads), translated in all languages.
- On the first start of an installed server (not imports) the Manager sets it to half the logical processors (2..8) unless
the owner already raised it, and lowers Logger.network / Logger.entities.player from debug to info; once per server.
- tools/sample_stacks.py: sampling profiler for a running worldserver (dbghelp + PDB), used to find what the world thread spends time on.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
PLAY turns into UPDATE CLIENT when a tracked client is outdated; with no client linked
it offers choosing an existing folder or downloading from the community launcher servers
(resumable, hash-verified, free-space checked, progress and stop). Files the player changed
are kept on request or moved aside, never silently replaced. Existing clients can be adopted
from Settings. Fresh downloads get a realmlist for each installed locale.
Fixes zero-length files in the downloader (found by the live probe).
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Verified read-only on the live server: database and console listen on loopback only; login/world are loopback until
the owner enables sharing. Elevation and router changes only happen on explicit action.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Verified in the native UI with a stub client: realmlist pointed and backed up, addon installed without touching
other addons, START & PLAY starts the server, waits for ready, then launches the client.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Verified: fixture received 'botcmd spawnleveled 12' over RA from the UI and the counts moved;
population query also read-only verified against the live server (33 companions online).
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Verified in the native window on the fixture: modified file kept by choice, new file added,
server restarted healthy, version bumped.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Verified: fixture packaged 2.2 GB -> 327 MB, installed in 18 s with rotated DB
credentials via the native UI; hostile archives, bad signatures and interrupted
downloads are rejected/resumed in tests.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>