

I started this mainly as a challenge to myself and because I have ideas to improve the integration of Sauerbraten servers with other services and interfaces. While you can use auth keys generated with Sauerbraten's /genauthkey command, genauth provides better output ( auth.cfg line for the player, JSON object for this server's users.json file). In cmd/genauth, there is a command to generate auth keys for users. Protocol definitions (like network message codes) can be found in pkg/protocol. pkg/game/ has game mode logic like teams, timing, flags, and so on. Detailed packet handling can be found in /pkg/server/ along with other server logic like managing the current game. configuration file parsing, initialization of all components, and preliminary handling of incoming packets. cmd/waiter/ contains the actual command to start a server, i.e. in case a player re-connectsĪll functionality is organized into packages. capture and regen capture (capture base events).The server requires config.json, bans.json and users.json to be placed in the working directory. Clone the repository, cd waiter, then make all.
#Sauerbraten cube 2 cheats install#
Make sure you have Go installed as well as the ENet development headers (on Fedora: sudo dnf install enet-devel, on macOS: brew install enet). claiming privileges using /setmaster 1 (relinquishing them with /setmaster 0 and sharing master using /setmaster 1 already works).coop edit mode (including /sendmap and /getmap).Some things are specifically not planned and will likely never be implemented:

