Мяу!
Find a file
Centronias 8ad82dc665
Refactor hunger and thirst systems (#34166)
* ready

* oop forgot the HUD stuff

* woooo examinable generalized tooooo

* oop I forgot to rename the files

* bungled the merge, I guess

* this is called hubris

* Verin's comments

* PR comments

how did I use `ProtoId<> Hunger` in more than a few spots but then just say "thirst can stay a literal :^)"?

also changed a few spots to my beloved
```
functionInvocation(
  one
  param
  per
  line
)
```
```

* Satiation effect condition now with ADDED FUNCTIONALITY?? :o

* tfw you trust the markov chain recommendation because long generic type names are tough q-q

* TFW YOU TRUST THE MARKOV CHAIN BUT IT DOESN'T UNDERSTAND THE DIFFERING SEMANTICS OF MAX AND MIN AHHHHH

* tfw you think to yourself "i need to fix the effects", but then forget to and the code doesn't even compile.

* centralize satiation constants

* other small comments

* The enum is dead.
But at what cost?

* oop

* like 12 more ooperses

* green checks are mine by right; I have performed the rites; I have done my part; you will not deny me this succor

* oops I changed the semantics from `<=` to just `<` and didn't update the tests :)

* serialization has bested me :agony:

also PR comments

* never trust the auto merge :agony:

* literally just this

* force engine back to master because idk why it's different

* fix randomness and update master

* submodule fuckery

* fall before my might

* okay I ran the linter, ARE YOU HAPPY??

* cursed ovis, trouble me no more

* protoman stuff

* inb4 linter bonks me

* break non-critical stuff from the main satiation proto

* ![live crundle reaction](https://preview.redd.it/xh68xqcz518g1.png?width=677&format=png&auto=webp&s=79ba10fe49ec3f8306217732321a7c5429bdfb14)

inb4 this breaks something somewhere lmao

* my two greatest PRs COLLIDE

I wonder why robust says it's changed :hmmclueless

* sanity is at an all-time low

* serialization, I guess

* I don't believe you

* field deltas on class \w*satiation\w*components

* PR comments

* 我做泥團子 😔

* doc + kill one property that's trivially accessible after the threshold caching changes

* fixes

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: AJCM-git <ajcm_mail@disroot.org>
2026-08-08 22:44:24 +00:00
.github Changelog test publishes (#45164) 2026-08-05 22:12:03 +00:00
.run
.vscode feat: re-add 'c# dev-kit' build task for vscode (#44410) 2026-07-14 16:21:39 +00:00
BuildChecker Fix illegible FileNotFoundError occurrences when git isn't in path. (#6) 2026-06-17 22:14:54 -04:00
BuildFiles/Mac/Space Station 14.app/Contents
Content.Benchmarks Added Sushi Station (#45017) 2026-07-30 22:15:59 +00:00
Content.Client Refactor hunger and thirst systems (#34166) 2026-08-08 22:44:24 +00:00
Content.Docfx
Content.IntegrationTests Refactor hunger and thirst systems (#34166) 2026-08-08 22:44:24 +00:00
Content.MapRenderer The IMapManager is dead (#44002) 2026-07-01 20:44:54 -07:00
Content.Packaging Content.Packaging can now emit binlogs for the build (#42659) 2026-01-27 00:39:00 +00:00
Content.PatreonParser v269.0.0 RT update - .NET 10 (#41855) 2025-12-22 01:24:24 +00:00
Content.Replay IoC source gen compatibility (#43863) 2026-05-09 03:29:58 +00:00
Content.Server Refactor hunger and thirst systems (#34166) 2026-08-08 22:44:24 +00:00
Content.Server.Database Refactor voice to separate it from sex (#40593) 2026-06-30 23:46:27 -04:00
Content.Shared Refactor hunger and thirst systems (#34166) 2026-08-08 22:44:24 +00:00
Content.Shared.Database Admin log silicon laws (#44238) 2026-07-18 02:40:21 -04:00
Content.Tests Microoptimize Vector2i.Offset (#103) 2026-06-19 07:38:27 +00:00
Content.Tools v269.0.0 RT update - .NET 10 (#41855) 2025-12-22 01:24:24 +00:00
Content.YAMLLinter Add test result archiving to our test actions + Test fixes (#43175) 2026-03-17 17:17:22 +00:00
MSBuild Add NU1900 to WarningsNotAsErrors (#171) 2026-06-23 11:56:50 +00:00
Pow3r v269.0.0 RT update - .NET 10 (#41855) 2025-12-22 01:24:24 +00:00
Resources Refactor hunger and thirst systems (#34166) 2026-08-08 22:44:24 +00:00
RobustToolbox@15297f18f6 Update submodule to 288.0.1 (#45201) 2026-08-08 19:02:45 +10:00
Tools Fix broken syntax is some scripts (#44959) 2026-07-27 03:19:01 +00:00
.editorconfig v269.0.0 RT update - .NET 10 (#41855) 2025-12-22 01:24:24 +00:00
.envrc Update nix flake for .NET 9 (#34480) 2025-01-17 18:26:04 +01:00
.gitattributes
.gitignore Try to fix changelog bot (#44359) 2026-07-18 02:04:52 +00:00
.gitmodules Revert "Switch RT submodule to new repo (#19)" 2026-06-28 13:15:50 +02:00
.noai Add .noai file (#44323) 2026-06-21 15:54:51 +00:00
CODE_OF_CONDUCT.md update support email (#41166) 2025-10-28 10:27:07 +00:00
CONTRIBUTING.md Mirror contrib guidelines to GitHub (#41896) 2025-12-18 09:36:23 +00:00
Directory.Packages.props fix(Content.Server): Bump database packages for sec update. (#43601) 2026-04-16 01:01:55 +00:00
flake.lock Change nix flake branch (#44718) 2026-07-17 02:19:01 -04:00
flake.nix Change nix flake branch (#44718) 2026-07-17 02:19:01 -04:00
global.json v269.0.0 RT update - .NET 10 (#41855) 2025-12-22 01:24:24 +00:00
LICENSE.TXT Happy 2026 (#42186) 2025-12-31 10:59:47 +00:00
nuget.config
omnisharp.json
README.md Revert "Update README.md with new links. (#2)" 2026-06-28 13:14:00 +02:00
RUN_THIS.py
runclient-Tools.bat Revert "new shell scripts for running client and server" (#44433) 2026-06-30 03:53:22 +00:00
runclient-Tools.sh Revert "new shell scripts for running client and server" (#44433) 2026-06-30 03:53:22 +00:00
runclient.bat Revert "new shell scripts for running client and server" (#44433) 2026-06-30 03:53:22 +00:00
runclient.sh Revert "new shell scripts for running client and server" (#44433) 2026-06-30 03:53:22 +00:00
runserver-Tools.bat Revert "new shell scripts for running client and server" (#44433) 2026-06-30 03:53:22 +00:00
runserver-Tools.sh Revert "new shell scripts for running client and server" (#44433) 2026-06-30 03:53:22 +00:00
runserver.bat Revert "new shell scripts for running client and server" (#44433) 2026-06-30 03:53:22 +00:00
runserver.sh Revert "new shell scripts for running client and server" (#44433) 2026-06-30 03:53:22 +00:00
SECURITY.md Revert "Update README.md with new links. (#2)" 2026-06-28 13:14:00 +02:00
shell.nix Update nix flake (#44417) 2026-07-16 15:30:34 +00:00
SpaceStation14.slnx Add EntitySystemSubscriptionsGenerator project to Content solution. (#44454) 2026-07-02 01:21:42 +00:00
SpaceStation14.slnx.DotSettings Predict StationRecords (#40240) 2026-07-17 03:36:39 +00:00

Space Station 14

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.

Documentation/Wiki

Our docs site has documentation on SS14's content, engine, game design, and more.
Additionally, see these resources for license and attribution information:

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.

AI-generated contributions disclaimer

This project does not accept low-effort or wholesale AI-generated contributions. Examples include, but are not limited to:

  • Any code (including yaml) generated by tools like GitHub Copilot, ChatGPT, or similar.
  • AI-created artwork, sound files, or other assets.
  • Auto-generated documentation, issue reports or pull request descriptions.

Exceptions to this are simple tools like Rider's single-line completion feature.

Building

  1. Clone this repo:
git clone https://github.com/space-wizards/space-station-14.git
  1. Go to the project folder and run RUN_THIS.py to initialize the submodules and load the engine:
cd space-station-14
python RUN_THIS.py
  1. Compile the solution:

Build the server using dotnet build.

More detailed instructions on building the project.

License

All code for the content repository is licensed under the MIT license.

Most assets are licensed under CC-BY-SA 3.0 unless stated otherwise. Assets have their license and copyright specified in the metadata file. For example, see the metadata for a crowbar.

Note

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.