Spacerust

From SignalWiki

An attempt at an open-source, cross-platform client for Space Station 13. This isn't a remake of the entire game; it's just a client for the Byond version of the game.

Notes

Render Backend

Using WGPU, because:

  • Cross-platform
  • Multiple device APIs, so it works on systems that don't support Vulkan
  • This is a 2D game, so we don't need to get fancy
  • I don't have any immediate problems with its API

Choosing a GUI

  • Dear ImGUI
    • Easy to set up, but it had mysterious lag issues and probably isn't scalable.
  • Iced

Reverse-Engineering BYOND Server Communication

What We Know

  • DM code doesn't run on the client
    • Therefore, BYOND follows a terminal model
  • Game data, like sprites, is downloaded before fully connecting to the game server.

What We Don't Know

  • Communication format
  • Client authentication
  • Format & contents of data sent by the server to the client