There were TWO bugs here FIRST, APCs *did* update their visual state on initialization, but at that point the relevant power state hasn't been initialized yet, so it always returns a bogus result. There aren't guaranteed to be subsequent power updates that actually trigger the APC to update so this can get it stuck. Fixed by just deferring the on-init update to be after the first update tick, which is itself ordered to be after power update. SECOND: Once I fixed that, I ran into the issue that APCs created at *server startup* also fail to update, because the throttling system (to prevent frequent APC updates) thinks the LastChargeStateTime was at server startup. Fixed by making that variable nullable so it defaults to null. Also removed the useless datafields on the "last update" fields. These are all just used to cache and throttle updates, something that should not be persisted to a map file.
Space Station 14 is a remake of SS13 that runs on Robust Toolbox, our homegrown engine written in C#.
This is the primary repo for Space Station 14. To prevent people forking RobustToolbox, a "content" pack is loaded by the client and server. This content pack contains everything needed to play the game on one specific server.
If you want to host or create content for SS14, this is the repo you need. It contains both RobustToolbox and the content pack for development of new content packs.
Links
Website | Discord | Forum | Steam | Standalone Download
Documentation/Wiki
Our docs site has documentation on SS14s content, engine, game design and more. We also have lots of resources for new contributors to the project.
Contributing
We are happy to accept contributions from anybody. Get in Discord if you want to help. We've got a list of issues that need to be done and anybody can pick them up. Don't be afraid to ask for help either!
Just make sure your changes and pull requests are in accordance with the contribution guidelines.
We are not currently accepting translations of the game on our main repository. If you would like to translate the game into another language consider creating a fork or contributing to a fork.
Building
- Clone this repo.
- Run
RUN_THIS.pyto init submodules and download the engine. - Compile the solution.
More detailed instructions on building the project.
License
All code for the content repository is licensed under MIT.
Most assets are licensed under CC-BY-SA 3.0 unless stated otherwise. Assets have their license and the copyright in the metadata file. Example.
Note that some assets are licensed under the non-commercial CC-BY-NC-SA 3.0 or similar non-commercial licenses and will need to be removed if you wish to use this project commercially.