-
Notifications
You must be signed in to change notification settings - Fork 23
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
Upstream merge 8/10/2024 #61
Commits on Aug 10, 2024
-
Supermatter Engine (Port From White Dream) (#341)
![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 <evilexecutive@gmail.com> Co-authored-by: whateverusername0 <whateveremail> Co-authored-by: username <113782077+whateverusername0@users.noreply.github.com> Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com> Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for ffbc04c - Browse repository at this point
Copy the full SHA ffbc04cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 627dbf7 - Browse repository at this point
Copy the full SHA 627dbf7View commit details -
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.
Configuration menu - View commit details
-
Copy full SHA for e149a2f - Browse repository at this point
Copy the full SHA e149a2fView commit details -
Configuration menu - View commit details
-
Copy full SHA for ef014cc - Browse repository at this point
Copy the full SHA ef014ccView commit details -
Carrying System Refactor (#580)
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.
Configuration menu - View commit details
-
Copy full SHA for f05bfeb - Browse repository at this point
Copy the full SHA f05bfebView commit details -
Rebase Blood Drinker System, Arachne, Oneirophage (#438)
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 <evilexecutive@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for d6459a7 - Browse repository at this point
Copy the full SHA d6459a7View commit details -
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 <evilexecutive@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for c2d4e2a - Browse repository at this point
Copy the full SHA c2d4e2aView commit details -
"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.
Configuration menu - View commit details
-
Copy full SHA for 1a598fa - Browse repository at this point
Copy the full SHA 1a598faView commit details -
Remove Hugging Interaction Popup From Humanoids (#710)
<!-- 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.
Configuration menu - View commit details
-
Copy full SHA for 2bb5a39 - Browse repository at this point
Copy the full SHA 2bb5a39View commit details -
NyanoCombat 2, Part 3: Physical Traits (#607)
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! <142105406+DangerRevolution@users.noreply.github.com> Co-authored-by: Angelo Fallaria <ba.fallaria@gmail.com> Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 35759e8 - Browse repository at this point
Copy the full SHA 35759e8View commit details -
Make Lamiae Out of Tris Instead of Sprites (#673)
<!-- 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.
Configuration menu - View commit details
-
Copy full SHA for b80402c - Browse repository at this point
Copy the full SHA b80402cView commit details -
Configuration menu - View commit details
-
Copy full SHA for dadf42c - Browse repository at this point
Copy the full SHA dadf42cView commit details -
Configuration menu - View commit details
-
Copy full SHA for f81a973 - Browse repository at this point
Copy the full SHA f81a973View commit details -
Configuration menu - View commit details
-
Copy full SHA for d4144b6 - Browse repository at this point
Copy the full SHA d4144b6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 98cc2e0 - Browse repository at this point
Copy the full SHA 98cc2e0View commit details