My original plan was to just implement materials into crafting so that items would inherit the materials of their components, allowing for some interesting stuff if the material flags of the item allow it. However to my dismay crafting is a pile of old tech debt, starting from the old `del_reqs` and `CheckParts` which still contain lines about old janky bandaids that are no longer in use nor reachable, up to the `customizable_reagent_holder` component which has some harddel issues when your custom food is sliced, and items used in food recipes not being deleted and instead stored inside the result with no purpose as well as other inconsistencies like stack recipes that transfer materials having counterparts in the UI that don't do that. EDIT: Several things have come up while working on this, so I apologise that it ended up changing over 100+ files. I managed to atomize some of the changes, but it's a bit tedious. EDIT: TLDR because I was told this section is too vague and there's too much going on. This PR: - Improves the dated crafting code (not the UI). - replaced `atom/CheckParts` and `crafting_recipe/on_craft_completion` with `atom/on_craft_completion`. - Reqs used in food recipes are now deleted by default and not stored inside the result (they did nothing). - Renames the customizable_reagent_holder comp and improves it (No harddels/ref issues). - Adds a unit test that tries to craft all recipes to see what's wrong (it skips some of the much more specific reqs for now). - In the unit test is also the code to make sure materials of the crafted item and a non-crafted item of the same type are roughly the same, so far only applied to food. - Some mild material/food refactoring around the fact that food item code has been changed to support materials. Improving the backbone of the crafting system. Also materials and food code. 🆑 refactor: Refactored crafting backend. Report possible pesky bugs. balance: the MEAT backpack (from the MEAT cargo pack) may be a smidge different because of code standardization. /🆑
Bubberstation (TG Downstream)
| Website | Link |
|---|---|
| Git / GitHub cheatsheet | https://www.notion.so/Git-GitHub-61bc81766b2e4c7d9a346db3078ce833 |
| Guide to Modularization | ./modular_skyrat/readme.md |
| Website | https://wiki.bubberstation.org/index.php?title=Main_Page |
| Code | https://github.com/Bubberstation/Bubberstation |
| Wiki | https://tgstation13.org/wiki/Main_Page |
| Codedocs | https://skyrat-ss13.github.io/Skyrat-tg/ |
| Bubberstation Discord | https://discord.gg/x4CVEHy6u7 |
| Coderbus Discord | https://discord.gg/Vh8TJp9 |
This is Bubberstation's fork of TG. Originally forked from Skyrat.
Please note that this repository contains sexually explicit content and is not suitable for those under the age of 18.
Space Station 13 is a paranoia-laden round-based roleplaying game set against the backdrop of a nonsensical, metal death trap masquerading as a space station, with charming spritework designed to represent the sci-fi setting and its dangerous undertones. Have fun, and survive!
Contribution Rules and Guidelines
1. Do Not Be A Dick
- The Bubberstation main repository is maintained by and contributed to by volunteers and hobbiests. You are not entitled to our time and energy. We reserve the right to permanently remove anyone who does not show both our contributor's and maintainer's common decency.
- Bubberstation does not operate a strict "goodboy" points system or have defined goals, and anyone is welcome to contribute to this project. That being said, the maintainers of this project are free to curate comments as seen fit to uphold a respectful environment.
2. The Licensing is Non-negotiable
- You are free to take, redistribute, modify, and readapt any code or commit found on this repository.
- All code files are under GNU AGPL V3
- All asset files (images and sound) are CC-BY-SA 3.0 unless otherwise stated
- The license information, including the MIT license and its exceptions, can be found at the bottom of this readme.
- What does this mean to our contributors? The GNU AGPL V3 licensing on this codebase is non-negotiable and irrevocable the moment you open a PR. We are incapable of privatizing this codebase and you are incapable of restricting your code contributions even if you close the PR. Do not open a contribution if you do not feel comfortable with your code being permanent across the entirety of the community. All contributions are preserved in commit history
- What does this mean to our spriters and sound designers? CC-BY-SA 3.0 is the only license that this project will accept
- It is prohibited to use the attribution requirement to suggest that you endorse or support a particular use of your assets.
- You are entitled to credit yourself with comments and you are entitled to waive the attribution requirement choosing not to be identified as the creator if you wish.
- If you do not like how your assets were modified or used, it is required that the other person remove the attribution information upon request.
- Modifications or adaptions must disclose the source, the author, and any changes you've made.
- Goonstation code is incompatible with this codebase and will not be accepted.
Credit: Goonstation contribution guidelines
Modularization and codedocs note
As of our recent split from Skyrat, a lot of codedocs/modularization guides need to be rewritten. Until it is done expect some wait time with larger refactors. You are also free to edit any Skyrat files
Important note - TEST YOUR PULL REQUESTS
You are responsible for the testing of your content. You should not mark a pull request ready for review until you have actually tested it. If you require a separate client for testing, you can use a guest account by logging out of BYOND and connecting to your test server.
DOWNLOADING
Maps and Away Missions Maps and Away Missions
Compilation
Find BUILD.bat here in the root folder of tgstation, and double click it to initiate the build. It consists of multiple steps and might take around 1-5 minutes to compile.
The long way. Find bin/build.cmd in this folder, and double click it to initiate the build. It consists of multiple steps and might take around 1-5 minutes to compile. If it closes, it means it has finished its job. You can then setup the server normally by opening tgstation.dmb in DreamDaemon.
Building tgstation in DreamMaker directly is deprecated and might produce errors, such as 'tgui.bundle.js': cannot find file.
How to compile in VSCode and other build options.
Getting started
For getting started (dev env, compilation) see the HackMD document here.
For overall design documentation see HackMD.
LICENSE
All code after commit 333c566b88108de218d882840e61928a9b759d8f on 2014/31/12 at 4:38 PM PST is licensed under GNU AGPL v3.
All code before commit 333c566b88108de218d882840e61928a9b759d8f on 2014/31/12 at 4:38 PM PST is licensed under GNU GPL v3. (Including tools unless their readme specifies otherwise.)
See LICENSE and GPLv3.txt for more details.
The TGS DMAPI is licensed as a subproject under the MIT license. The TGS DMAPI is licensed as a subproject under the MIT license.
See the footer of code/__DEFINES/tgs.dm and code/modules/tgs/LICENSE for the MIT license.
All assets including icons and sound are under a Creative Commons 3.0 BY-SA license unless otherwise indicated.
