LobbyKit
Host and lobby quality-of-life tools for Sledding Game: bigger lobbies, saved lobby/search settings, player timers, MOTD, and teleport commands.
| Last updated | 9 hours ago |
| Total downloads | 141 |
| Total rating | 1 |
| Categories | Mods Tools |
| Dependency string | Spyci-LobbyKit-1.1.3 |
| Dependants | 0 other packages depend on this package |
This mod requires the following mods to function
LavaGang-MelonLoader
The World's First Universal Mod Loader for Unity Games compatible with both Il2Cpp and Mono
Preferred version: 0.7.3README
LobbyKit
Host and lobby quality-of-life tools for Sledding Game.
Host Requirement
LobbyKit is primarily a host/server-side mod. Most functionality (especially chat commands) is driven by the lobby host having LobbyKit installed. Clients generally do not need to install LobbyKit to join and use host-provided features.
Features
- Host lobbies with up to 64 players.
- Add a custom lobby name and saved create-lobby defaults.
- Save public/private, password, peaceful mode, and text-chat-only lobby preferences.
- Improve lobby search with saved filters, inclusive max-player filtering, region preference, modded/locked lobby toggles, and current-player sorting.
- Show live session timers beside player names in the player list.
- Send join and leave messages with configurable size.
- Send an optional message of the day to players who join your hosted lobby.
- Grant trusted players Mod/Admin/Owner permissions that survive reconnects, with per-command level requirements.
- Moderate your lobby with kick, ban, and unban commands.
- Block common cheats: throwing spam, player-size manipulation, and flying sleds (each toggleable).
- Optionally auto-restart your hosted lobby.
- Use chat commands for settings, moderation, permissions, and teleport workflows.
Chat Commands
Commands require a minimum permission level. The host is always Owner, and you can grant other players levels with !op. Default levels are shown below; each command's required level can be changed in UserData/LobbyKit-permissions.json.
| Command | Min level | Description |
|---|---|---|
!! |
Everyone | Repeat your last command. |
!help [command|page] |
Everyone | List commands (paged), or show details for one command. |
!motd [message] |
Everyone | Show the message of the day. Admins can pass text to set it. |
!tp [name] |
Everyone | Teleport to a player by name. |
!tpme [name] |
Everyone | Ask a player to teleport to you. |
!tpa |
Everyone | Accept a pending teleport request. |
!size [0.2-3.0] |
Everyone | Set your player size (!size 1 resets to normal). |
!level [name] |
Everyone | Show your level, or another player's. |
!tpf [name|@group] |
Mod | Force a player to teleport to you. Groups: @all, @mods, @admins, @owners. |
!kick [name] [reason] |
Mod | Kick a player. |
!ban [name|puid] [reason] |
Admin | Ban a player (use !unban to reverse). |
!unban [name|puid] |
Admin | Remove a ban by name or PUID. |
!settings [?|key] [value] |
Owner | List settings with !settings ?, or change one, e.g. !settings bc on. |
!op [level] [name] |
Owner | Set a player's level (everyone/mod/admin/owner). Requires !confirm. |
Changing or disabling commands per level
The required level for every command lives under commandLevels in UserData/LobbyKit-permissions.json. Levels are Everyone = 0, Mod = 1, Admin = 2, Owner = 3. Edit the file while the server is stopped (there is no hot-reload), then restart.
-
Lower the bar so more players can use a command, e.g. let anyone tp:
"commandLevels": { "!tp": 0 } -
Raise the bar to restrict a command, e.g. make teleporting Mod-only:
"commandLevels": { "!tp": 1 } -
Disable a command entirely by setting a level above Owner (e.g.
4):"commandLevels": { "!size": 4 }
Every command is listed in the file on first run, so you can see and adjust each one. The host (the server itself) is always Owner and can use every enabled command.
Installation
Gale / r2modman
Install with Gale or r2modman. MelonLoader is declared as a dependency.
Manual
- Install MelonLoader for Sledding Game.
- Launch the game once so MelonLoader generates its folders and IL2CPP assemblies.
- Copy
LobbyKit.dllinto the game'sMods/folder. - Start the game through MelonLoader.
For hosted-lobby features, install LobbyKit on the host machine; clients typically do not need a local install.
Configuration
Most options are available through !settings while hosting — open the in-game menu locally, or list and change settings from chat with !settings ? and !settings <key> [value]. The mod stores preferences through MelonLoader under the LobbyKit category.
Player permissions and bans are stored in UserData/LobbyKit-permissions.json, keyed on EOS PUID. Edit it while the server is stopped (no hot-reload), or manage levels and bans live with !op, !ban, and !unban.
CI/CD (Thunderstore)
This repository includes GitHub Actions workflows for Thunderstore packaging and publishing:
.github/workflows/github-release.yml- Manual workflow dispatch.
- Creates a GitHub Release from a version in
CHANGELOG.md(extracts that version's notes).
.github/workflows/thunderstore-build.yml- Runs on push/PR/manual dispatch.
- Builds
LobbyKitand uploads a Thunderstore zip artifact.
.github/workflows/thunderstore-publish.yml- Runs when a GitHub Release is published (or manually via workflow dispatch).
- Builds and publishes with
tcli publish. - All workflows accept
dryrunon manual dispatch;dryrun=trueechoes commands and skips execution-sensitive steps.
Required repository secret:
THUNDERSTORE_TOKEN: Thunderstore service account token (used asTCLI_AUTH_TOKEN).SGREFROOT_TOKEN: GitHub token with read access toricky-davis/SGRefRoot(used to fetchIl2CppAssembliesandnet6refs).RELEASE_WORKFLOW_TOKEN: PAT used bygithub-release.ymlto create GitHub Releases sorelease-triggered workflows run.
Local Pre-Commit Hook
This repo includes a pre-commit hook that enforces version consistency across:
LobbyKit/Directory.Build.props(<Version>)thunderstore.toml(versionNumber)CHANGELOG.md(latest## [x.y.z]heading)
Enable repo hooks once per clone:
git config core.hooksPath .githooks