-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upstream merge 8/10/2024 #61
Merged
VMSolidus
merged 15 commits into
SS14-Classic:master
from
VMSolidus:upstream-merge-8/10/2024
Aug 10, 2024
Merged
Upstream merge 8/10/2024 #61
VMSolidus
merged 15 commits into
SS14-Classic:master
from
VMSolidus:upstream-merge-8/10/2024
Aug 10, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
![SM boom](https://github.com/Simple-Station/Einstein-Engines/assets/16548818/6937c520-0963-437c-a9a6-49afe6c8b787) ![New edge supermatter](https://github.com/Simple-Station/Einstein-Engines/assets/16548818/e8305536-b777-41f8-b9bf-295d402dc1bf) This PR has been produced in collaboration with coders from White Dream, with written permission given by the relevant code owners to port this specific slice of content to Einstein-Engines. Supermatter Engines are a form of nuclear reactor, which produces energy in the form of radioactive particles, while also decaying into Phoron when excited by an external energy source. Power can be obtained from the engine via radiation collectors, which like those of a singularity engine, must be periodically refueled. In addition, the engine must also be actively cooled via aid from Atmospherics, and for undesirable gasses to be extracted from the reactor chamber. If not cooled, the crystal will begin to destabilize and eventually collapse into one of three different situations depending on the source of its instability. 1. A nuclear blast. 2. A gravitational singularity 3. A Tesla ball :cl: VMSolidus, White Dream, Colin-Tel - add: Supermatter Engines have been implemented. --------- Signed-off-by: VMSolidus <[email protected]> Co-authored-by: whateverusername0 <whateveremail> Co-authored-by: username <[email protected]> Co-authored-by: Danger Revolution! <[email protected]> Co-authored-by: Pieter-Jan Briers <[email protected]> Co-authored-by: DEATHB4DEFEAT <[email protected]>
Refactors the oracle system and component, making them more customizable and less trash. - Most of the nyano shitcode was rewritten in accordance with the new standards and in a less hardcoded manner (all features were preserved, with some changes). - Replaced the accumulator field pattern with the "nextX" pattern for things oracle does on certain intervals. - Removed some code duplication and bloat. - Gave oracle a 75% chance to request technology and 25% to request a plant. - When requesting a technology, oracle will only request what's either already researched, or can be researched soon (that is, the prerequisites of the research are complete and the research isn't locked for any reason). - If there's no research server at the moment when oracle demands an item, it will only demand a plant - When dispensing rewards, oracle can now spawn 1, 3, or 5 crystals at once, and research disks worth 5k, 10k, and 20k research points. Each one of those have different probabilities (3 crystals and 5k points still prevail, but occasionally you can get the more expensive rewards). - When dispensing rewards, oracle now throws them at the person who fulfilled the request instead of simply spawning them at their feet. Almost every oracle thing (except for throwing and the amount of liquid dispensed) can now be configured in the yaml prototype of the oracle. Forget it <details><summary><h1>Media</h1></summary><p> https://github.com/user-attachments/assets/9d4be44f-37d5-4072-a6e6-f194764f7ff6 ![image](https://github.com/user-attachments/assets/011761d4-8d73-4d65-ba9c-92b25a28e95f) </p></details> --- :cl: - tweak: Oracle requests are now more likely to be aligned with the current research.
This is a very simple and apparently minor update to the Carrying System, bringing it up to date with more modern code. The biggest difference is that rather than having a private one-off implementation of one of the original Nyano MassContest functions, it uses the new public Reworked MassContests. With this change, pick up durations no longer infinitely scale with arbitrary mass, meaning that a hypothetical 2000kg Lamia doesn't have an arbitrarily infinitesimal pickup duration when trying to pick up a 10kg Harpy. Carrying is also more strictly limited by mass, rather than by carrying duration, meaning that if a target character is more than 25% heavier than your character, it will not be possible to shoulder them. You'll just have to either drag them, or get a roller bed to move overly massive characters. The last thing I did was just cleanup all of the code, so that has nice, Single-IF exit conditions, rather than 30+ line blocks of IF(THING) RETURN; Oh, and entities can now set their own internal base PickupDuration, so that entities can declare however easy or difficult they should be to pick up! https://github.com/user-attachments/assets/9ee0f1dd-ac75-406f-8bbd-9a130594d46d 🆑 - tweak: The Carrying system has been reworked as a means of better supporting having extremely large species and characters. 10kg Harpies should no longer be oppressed by 2000kg Lamia with infinitely short carry attempts.
This is a simple rebase of the Blood Drinker System, and its related features that have been commented out and/or omitted due to its lack of rebase. I am NOT substantially updating any of this code at this time, outside of the barest minimum updates needed to make it run in the first place. The reason I am doing this is that I require the Blood Drinker system functional as a prerequisite for future features, and I will update or refactor it when needed. Arachne are still pending a Full Rework, but that is beyond the scope of this PR. - [x] Make the code functional - [x] Port Arachne - [x] Uncomment Oneirophages - [x] Re-add Oneirophage midround event :cl: - add: Arachne have been reimplemented! - add: Oneirophages are back! --------- Signed-off-by: VMSolidus <[email protected]>
This is a re implementation and complete rewrite of the original Nyanotrasen CPR feature, this time as its own completely standalone system. Unlike the original CPR, this system requires no modification of base game code, and can be toggled on and off via CVars while the server is running. Fixes #473 Fixes SS14-Classic#49 🆑 - add: CPR has been added to the game. People with CPR training can now perform CPR on anyone who is in either crit or dead states. - add: CPR Training has been added to the game as a new positive trait. All medical staff start with this trait for free. --------- Signed-off-by: VMSolidus <[email protected]>
"Mantis" was going to be the original name, but the doubling as detective lead me to needing to add the qualifier "forensic" to make that part clearer. The "Mantis" was already there to imply the psionic part. For "psionic mantis" defenders, I propose an alternative renaming scheme: Mystagogue -> Psionic Mystagogue Mantis -> Psionic Mantis Cyborg -> Robotic Cyborg Chaplain -> Religious Chaplain Players either already know what a mantis is, or they've got little enough playtime that there's still some intrigue left in the setting and it's something they can learn by observation. Weird names are mostly restricted to one dept here and a tinge harder time understanding it is what I'd call "Mystery" rather than something that's undesirable here. The mechanic the mantis interacts with - psionics - is also somewhat hidden and esoteric. ![image](https://github.com/user-attachments/assets/8706c0cd-97a3-4ed6-a0e4-e23012a461a7) ![image](https://github.com/user-attachments/assets/7e6296fb-52ca-4d4e-b40d-2e166520d4b5) <!-- You can add an author after the `:cl:` to change the name that appears in the changelog (ex: `:cl: Death`) Leaving it blank will default to your GitHub display name This includes all available types for the changelog --> :cl: Rane - tweak: Renamed "Psionic Mantis" to "Mantis", as it was originally going to be called.
<!-- This is a semi-strict format, you can add/remove sections as needed but the order/format should be kept the same Remove these comments before submitting --> Reasoning: 1) Hugging your coworkers isn't necessarily always inappropriate, but it's something that should take a bit more intention than it does now. 2) Event subs in this game right now still have no good method of handling multiple subscriptions to the same event. The hugging event is occupying 2 pieces of prime real estate - the empty hand interaction, which is the most common, and the humanoid interaction, which is the most common and most important. And for what? Spamming popups and chat for something that could just be an emote. 3) Because of the above, it's too easy to accidentally hug people while doing something else - the lack of intersectionality makes people just ignore hugging because they assume it means nothing and was not intentional. This does not lead to good roleplay outcomes. 4) I left the petting stuff on animals because that's much more common and appropriate and you're less likely to be trying to do other complex interactions with them. Also, since they're usually NPCs, it doesn't matter if they get desensitized to the interaction as meaningless, or at least it's out of scope. :cl: Rane - remove: Removed the spammable hugging on click. Consider using emotes for this instead.
Done in partnership with @OldDanceJacket This PR adds 9 additional physical traits to the game, 5 positive, and 4 negative. While this PR is intended to go with NyanoCombat 2, Part 1 and 2, I have made this PR function completely standalone. It does not require either of the two other PRs. - **Will To Live**: Increases your Dead threshold by 10 - **Tenacity**: Increases your Crit threshold by 5 - **Vigor**: Increases your maximum Stamina by 10 - **High Adrenaline**: You gain up to 10% more damage with all melee attacks when injured. - **Masochism**: You ignore the first 10% of stamina damage penalties to melee attacks. If NyanoCombat 2 Part 1 isn't merged yet, this makes you deal up to 10% more melee damage when you receive stamina damage. - **Martial Artist**: Your unarmed melee attacks have bonus range, and deal 50% more damage(for every species in the game, this means 7.5 instead of 5 damage). This trait is identical to one that the Boxer job receives for free, thus it cannot be taken by Boxers. - **Will To Die**: Decreases your Dead threshold by 15 - **Glass Jaw**: Decreases your Crit Threshold by 10 - **Lethargy**: Decreases your maximum Stamina by 15 - **Adrenal Dysfunction**: Your melee attacks are penalized by up to 20% when injured. If NyanoCombat 2 Part 1 is merged, this cancels out the natural bonus everyone globally gets to melee when injured. - **Low Pain Tolerance**: Your melee attacks are penalized by up to 15% when receiving stamina damage. If NyanoCombat 2 Part 1 is merged, this stacks with the natural penalties everyone globally gets to melee when taking stamina damage. - [ ] Let ODJ look over these for balance. ![image](https://github.com/user-attachments/assets/242e8b50-8a5e-4079-bf1d-f952ceeade38) :cl: VMSolidus and Skubman - add: 11 new Physical Traits have been added to the game! 6 positive traits, and 5 negative traits. --------- Signed-off-by: Danger Revolution! <[email protected]> Co-authored-by: Angelo Fallaria <[email protected]> Co-authored-by: Danger Revolution! <[email protected]>
<!-- This is a semi-strict format, you can add/remove sections as needed but the order/format should be kept the same Remove these comments before submitting --> <!-- Explain this PR in as much detail as applicable Some example prompts to consider: How might this affect the game? The codebase? What might be some alternatives to this? How/Who does this benefit/hurt [the game/codebase]? --> The old sprite-based rendering approach was very limiting, here I've changed to using an overlay and just constructing the lamia bodies out of triangles. I'm about happy with it although it's lacking the clothing feature we added earlier just waiting on art. Networking and perf should be fine. I don't know how much of the other stuff you want me to clean up. A lot of unrelated code can probably get just deleted. - [ ] New base + clothes sprites that look good - [ ] Support for clothes based texture change (should take 5 mins) https://github.com/user-attachments/assets/c5022e54-cb3d-4f53-b65c-83863b21df29 <!-- You can add an author after the `:cl:` to change the name that appears in the changelog (ex: `:cl: Death`) Leaving it blank will default to your GitHub display name This includes all available types for the changelog --> :cl: Rane - add: Lamiae should now be rendered much better.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Deep Station 14 Pull Request
Just our regularly scheduled upstream merge. :)
About the PR
Fucking goddamn SHITTON of new traits, and NyanoCombat finally fully updated and merged upstream after the initial feedback and adjustments.