Commit Graph
34 Commits
Author SHA1 Message Date
ДмитрийandClaude Sonnet 5.5 d01e401f3c Layout fixes (fluid main card, password field), no emoji in reports, empty modules page; Release 0.3.1
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-01 16:30:12 +05:00
ДмитрийandClaude Sonnet 5.5 81aacdf5bb Realmlist switcher next to PLAY, and a Modules page
- 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>
2026-10-01 16:10:45 +05:00
ДмитрийandClaude Sonnet 5.5 a79c26ed49 Report a problem: a tab that prepares a prefilled GitHub bug report
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>
2026-10-01 15:56:53 +05:00
ДмитрийandClaude Sonnet 5.5 a4c1080575 Tester suggestions: account management, install size and download volume, password show button, addon explanation
- 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>
2026-10-01 15:13:11 +05:00
ДмитрийandClaude Sonnet 5.5 645ffd8999 New servers and updated ones run the world on several threads: MapUpdate.Threads setting, one-time performance defaults, debug loggers lowered
- 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>
2026-10-01 13:14:41 +05:00
ДмитрийandClaude Sonnet 5.5 c8f6d61b98 Release 0.3.0
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-01 07:59:59 +05:00
ДмитрийandClaude Sonnet 5.5 615b3e938d Game client: download and update through the Manager
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>
2026-10-01 07:52:58 +05:00
ДмитрийandClaude Sonnet 5.5 0940e9cf28 v0.2.0: first batch release (companions control, progress, offline bots, tick rate, sharing guides, logo, translations, scroll bars, new base/update pipeline verified end to end)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-01 05:44:34 +05:00
ДмитрийandClaude Sonnet 5.5 313d3e1c08 App logo (icon set, welcome screen, sidebar, page icon); despawn N bots to ease the load
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 23:41:20 +05:00
ДмитрийandClaude Sonnet 5.5 8686990a30 Companions: stop creating, take all offline, delete all (with a recovery point); bot module gets spawncancel and despawnall
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 23:28:58 +05:00
ДмитрийandClaude Sonnet 5.5 dd066f2094 Companions: progress bar while the server creates them (n of N added); offline creation shows a busy bar
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 23:24:27 +05:00
ДмитрийandClaude Sonnet 5.5 79846186ea Bots at start on the Bots page and the main card; adding companions raises the start limit; large batches are created offline with equipment when the server is stopped
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 23:10:22 +05:00
ДмитрийandClaude Sonnet 5.5 f7d29b09ef v0.1.6: companion templates, world speed, sharing guides, links, settings tabs fix; retry of the failed 0.1.5 build
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 23:00:49 +05:00
ДмитрийandClaude Sonnet 5.5 efacd4946e Companions: clear error when no template characters exist; requests made while stopped are created after the next start
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 22:54:21 +05:00
ДмитрийandClaude Sonnet 5.5 b4b1260099 Overview: world speed (ticks per second) from the server's own timing report
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 22:53:16 +05:00
ДмитрийandClaude Sonnet 5.5 b03bc6de28 v0.1.5: CoA.AllowRemoteClients = 1 by default for Manager-installed servers; translations of settings, diagnostics and more
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 22:25:33 +05:00
ДмитрийandClaude Sonnet 5.5 db16d95558 v0.1.4: keep BindIP open for shared servers before every start, restart button after enabling friends mode
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 19:51:07 +05:00
ДмитрийandClaude Sonnet 5.5 4eda03ab63 v0.1.3: interface scales with the window, realmlist line per Friends mode, robust close handler
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 19:42:05 +05:00
ДмитрийandClaude Sonnet 5.5 0e1016e93c v0.1.2: background self-update (install on close), module configs, quiet logging, fixes from the first clean install
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 15:53:05 +05:00
ДмитрийandClaude Sonnet 5.5 a6ae4e78a3 Self-update in the background (install on close), module configs created from .dist, quiet-logging + table fixups in clean-base, backlog notes
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 15:36:07 +05:00
ДмитрийandClaude Sonnet 5.5 ca8b7739e1 Add AGPL-3.0 licence (LICENSE, Cargo/npm metadata, README licence notes)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 14:02:22 +05:00
ДмитрийandClaude Sonnet 5.5 f620f87432 v0.1.1: language picker on welcome screen, friendly errors for unpublished package / unreachable server, backlog notes
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 12:27:21 +05:00
ДмитрийandClaude Sonnet 5.5 c49d69df21 Self-update: Tauri updater + process plugins, Manager update card, release workflow (signed NSIS installer + latest.json)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 11:27:36 +05:00
ДмитрийandClaude Sonnet 5.5 f717794a71 Console: log tabs (world/auth/database/manager) with search and follow, guarded world console commands
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 11:25:17 +05:00
ДмитрийandClaude Sonnet 5.5 ce1861d88b Phase 10a: diagnostics, managed-file verification, redacted diagnostic package export
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 10:58:35 +05:00
ДмитрийandClaude Sonnet 5.5 1609c4f6bf Phase 9: Play with Friends (LAN/direct/private modes, exposure check, firewall rules, UPnP discovery, friend package, realm address reapplied after start)
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>
2026-09-30 10:54:18 +05:00
Дмитрий 28a42d1e35 Default package sources: base and stable releases of coa-server-build 2026-09-30 10:20:57 +05:00
ДмитрийandClaude Sonnet 5.5 d85050ff95 Phase 8: game client integration (read-only detection, backed-up realmlist change, isolated addon install, START & PLAY)
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>
2026-09-30 09:54:29 +05:00
ДмитрийandClaude Sonnet 5.5 9504e9133b Phase 7a: real population (players vs companions), hardware-aware companion sizes, RA bot spawn, Bots page card
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>
2026-09-30 09:35:24 +05:00
ДмитрийandClaude Sonnet 5.5 981ee4d4d9 Phase 6c: update commands and Settings > Server updates UI (preview, conflicts, progress, rollback)
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>
2026-09-30 09:30:49 +05:00
ДмитрийandClaude Sonnet 5.5 e17c757d11 Phase 5: clean install (signed packages, split tar.zst, resumable verified downloads, staging + atomic commit, DB credential rotation), RA account creation, Install and Players UI
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>
2026-09-30 08:26:11 +05:00
ДмитрийandClaude Sonnet 5.5 217eec338a Phase 4: recovery points, zstd DB dumps, restore via staging schema + atomic table swap, Backups UI
Verified on fixture MySQL: backup, restore (previous schema kept), damaged
backup refused; live install untouched.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 07:40:01 +05:00
ДмитрийandClaude Sonnet 5.5 5b5255cca8 Phase 3: config engine (line-preserving parser, schemas, validation, atomic save, snapshots, merge, presets) and Bots/Server settings UI
Verified: 28 real config files round-trip byte-identical; native UI edit changes
exactly one line in template and generated conf; snapshot restore is byte-exact.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 07:33:54 +05:00
ДмитрийandClaude Sonnet 5.5 2e8803a067 Phase 1/2: Tauri shell, React UI (welcome, read-only import, overview with start/stop), e2e driver
Verified in the native window against a disposable fixture: import writes only
<folder>.manager + registry; start surfaces a human 'database update required'
message; stop returns to Offline. Live install untouched throughout.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 07:13:59 +05:00