Expand description
Wire DTOs for the Online Tournament rooms API.
The physical module is [crate::game_storage]’s online::rooms; this
re-export provides the supreme_fs::rooms path, so consumers
(launcher, hook proxy) can share the types while supreme_fs stays
independent of supreme_tournament (and vice versa).
Structs§
- RoomDto
- Full room state as returned by
room_create,room_getandroom_join. - Room
Identity - A logged-in account’s identity, attached additively to room actions
(
user_id+auth_keybody fields;None= guest). The server verifies the pair and stamps the account on the room/record; guests keep working unchanged and may not use a registered nickname. - Room
Record Dto - One room record: the best replay
.datof a single player in a room.hashis the CAS sha256 of the uploaded.dat. - Room
Summary Dto - Lightweight room entry as returned by
room_list(every room whoseends_atis in the future, including not-yet-started rooms, which the launcher shows as unselectable until they go live). - Room
Upload Result - Result of
room_upload_record.accepted: falsemeans the server kept the player’s existing (better or equal) personal best, a successful response, not an error.
Functions§
- high_
times_ entries_ from_ records - Render the high-times entries for a room’s records LOCALLY (local
fallback for servers predating
room_high_times): every valid record (positivetime_ticks, non-emptyhash), per-player best only, ascending by(time_ticks, player, hash), the same ordering as [supreme_tournament::rank_records] and the server-side renderer, so a fallback file can never disagree with a server-rendered one about rank order. - room_
remove_ payload - The
room_removeJSON body (pure, so the wire shape is unit-testable):{id, player}plus the account identity fields when the caller is logged in.