Commit Graph
12 Commits
Author SHA1 Message Date
wildesPepegaandClaude Opus 5.5 a64ccdf288 Add a Pterodactyl egg for the Linux dedicated server
contrib/pterodactyl/egg-reskate-server.json installs the server from the
release's launcher.json (server_linux tarball, checked by SHA-256), keeps the
panel's port, query_port and steam_token in ReSkateServer.json, starts on
"is up on" and stops with quit. Image ghcr.io/parkervcp/yolks:debian (Debian
13: glibc 2.41, OpenSSL 3, curl and tar for the self-update).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FN9ZCrWqg6MVuLbn65aVzX
2026-10-07 06:49:39 +00:00
AyeZeeBB 101e1af6e4 Official, staff and friends in the server browser; server tokens; Linux self-update
Server browser
- Official servers (the backend's "official_servers") sort first and are
  drawn in ReSkate blue
- Servers Steam friends are skating in sort next, drawn in green with the
  friends' names; searching a friend's name finds their server
- A player in a session they joined can join another server straight from
  the list; hosts still end their session first, and a Steam friend's join
  offer never replaces a session
- Joining a dedicated server from the list records it as the player's
  public session, so friends see it and the row shows HERE
- Blocked servers (the backend's "blocked_servers") are hidden and cannot
  be joined, by code either
- When the backend sets "server_tokens_required", dedicated servers that
  signed in without a login token are hidden, except on the player's own
  network
- A search that gets no internet list from Steam keeps the last list for
  two minutes, and waits six seconds before treating it as empty
Roles
- New Staff tag from the backend's "staff" list: green name, badge and
  item animation, ranked after Dev
- Staff can pick a rainbow for their items on the Special page; it is sent
  as a solid colour older builds can show, so the protocol is unchanged
Dedicated server
- steam_token: sign in with a Steam game server login token and keep the
  same Steam ID every start; empty signs in anonymously as before
- A listed server without a token says so at startup, and when the token
  rule starts or stops hiding it
- Linux servers update themselves from the release's "server_linux"
  tarball, with the machine's curl and tar, pinned by SHA-256, and carry
  on in the same process
Launcher
- Only create the MiniDumpWriteDump API-set shim under Wine/Proton
2026-10-07 00:19:56 -05:00
zeex64 0c3ca2bb68 Merge pull request #49 from VexFlint/fix/systemd-unit-duplicate-log
Send the systemd unit's stdout to the journal, not a second copy of the log
2026-10-05 16:58:30 -05:00
AyeZeeBB c930b512e6 Backend lists for tags, cosmetics and bans
- Read Dev / Creator / Homie Steam IDs from api.reskate.dev instead of the hardcoded list
- Creator (red) and Homie (gold) tags and hoodie/board colours; Admin tag is now pink
- Global bans: lobby hosts and dedicated servers turn banned players away
  ("global_bans": false in ReSkateServer.json opts a server out)
- SPECIAL menu page for listed players to hide their own tag and items
- Fix hoodie and board keeping the animated colour after the animation turns off
- Multiplayer protocol 39 -> 40
2026-10-04 22:33:57 -05:00
VexandClaude Opus 5.5 65e0e8d86c Send the systemd unit's stdout to the journal, not a second copy of the log
The server appends every line to ReSkateServer.log next to itself (main.cpp
write_log). The unit also appended stdout to that same file, so each line
was written twice, once per stream, and the copies could interleave out of
order. The journal keeps the console copy instead.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 21:25:52 -03:00
juan e00fbe95dd CI: bundle Steam libs in Linux asset
Fetch libsteam_api.so (SDK redist mirror, export-verified) and
steamclient+tier0/vstdlib (SteamCMD app 1007) and stage them into
ReSkateServer-Linux-<version>, mirroring the Windows zip's DLLs.
2026-10-03 19:23:31 -03:00
juan fcac674511 Fix Linux Ctrl+C hang, README guide, versioned Linux asset
- console reader: poll()+read() instead of iostream getline; joinable
  thread joined before Steam shutdown/exit (iostream lock deadlock
  needed Ctrl+D before)
- README: Linux dedicated-server setup guide
- CI: version input, tag builds, ReSkateServer-Linux-<version> asset
  with setup script staged at top level
2026-10-03 17:51:14 -03:00
juan 22ed651a88 Add setup-linux-server-libs.sh for Steam .so files
- fetches libsteam_api.so (SDK mirror) + steamclient/tier0/vstdlib
  via SteamCMD app 1007, links ~/.steam/sdk64, verifies exports
- fixes pipefail+grep -q SIGPIPE trap in the nm check
- README: document script as the primary path
2026-10-03 17:39:11 -03:00
juan ef294c05d8 Linux: sockets v013/v012 fallback + Steam lib docs
- SDK 1.65 provides GameServerNetworkingSockets v013, Skate DLL v012;
  try v013 then v012 (superset, same methods used)
- verified live: sign-in, Steam ID, join code, clean shutdown
- README: steamclient sdk64 symlink, version fallback note
2026-10-03 17:30:35 -03:00
juan a5f6176144 Docs: where Linux Steam .so files come from 2026-10-03 17:24:41 -03:00
juan 1d7bd5048e CI: build all targets for ctest + clarify Linux layers
- workflow built only dingosdk_server so ctest binaries missing (Not Run)
- build all targets before ctest
- layers: read works on Linux, export needs Windows game + Oodle;
  document player-cache copy path
2026-10-03 17:17:49 -03:00
Juan 5c846cd8ba Linux server docs: preset, README-linux, systemd unit 2026-10-03 16:57:40 -03:00