WoW/TrinityCore and OpenDAoC population is now read via a direct mysql2 connection to trinitycore-mysql/daoc-mysql over the mmo-net bridge (drop joins that network in homelab-compose), the same shape Drop already uses for RomM's catalog (rommAdapter.ts) and mmo-portal already uses for these exact databases. Each query is copied from that game's own management tooling rather than invented against the schema: WoW's matches FusionCMS's Characters_model.php::getOnlineCount() verbatim; OpenDAoC's matches upstream OpenDAoC-Core's own StatSave.cs/stats.php reading serverstats. EQEmu has no DB-backed online-player source (re-verified live: peq has no who_all_cache, no characters.online-equivalent, no count anywhere) -- corrects an earlier "genuinely unavailable" claim, which was wrong about there being no source at all. The real source is World's in-memory client list, exposed safely through Spire's own authenticated HTTP API (GET /api/v1/eqemuserver/server-stats, backed by a telnet admin console that must stay loopback-only). Added a spire_session_api probe method that logs in as a dedicated service account and reuses the JWT; degrades to "unavailable" honestly until that account is provisioned. Removes the ssh_mysql_query and ssh_docker_logs_regex methods -- the deployed image never had an ssh client, so both always failed. Does not touch presence_inferred (Goldberg relay), which already degrades to "unknown" without ssh, by design; not fixed here per explicit instruction not to add openssh-client to the runtime image or probe the relay's game ports. |
||
|---|---|---|
| .. | ||
| .devcontainer | ||
| .vscode | ||
| assets | ||
| build | ||
| components | ||
| composables | ||
| deploy-template | ||
| dev-tools | ||
| i18n | ||
| layouts | ||
| middleware | ||
| pages | ||
| plugins | ||
| prisma | ||
| public | ||
| rules | ||
| server | ||
| utils | ||
| .dockerignore | ||
| .editorconfig | ||
| .env.example | ||
| .gitignore | ||
| .prettierignore | ||
| .prettierrc.json | ||
| app.vue | ||
| buf.gen.yaml | ||
| CONTRIBUTING.md | ||
| error.vue | ||
| eslint.config.mjs | ||
| LICENSE | ||
| nuxt.config.ts | ||
| package.json | ||
| prisma.config.ts | ||
| README.md | ||
| tailwind.config.js | ||
| tsconfig.json | ||
Server
The hosted, accessible portion of Drop. Exposes a web UI and API for applications to use.