-
Notifications
You must be signed in to change notification settings - Fork 37
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, good lord. #216
Merged
Merged
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
## About The Pull Request As described in issue #87019, the recharge time reduction given by proto-kinetic accelerator cooldown modkits can become permanent, resulting in a PKA with reduced cooldown without any mod capacity cost. This PR ensures the recharge time is calculated based on the cooldown kits actually installed, and recalculated whenever one is added or removed. ## Why It's Good For The Game Fixes #87019. ## Changelog :cl: fix: Fixed PKA cooldown mods becoming permanent /:cl:
## About The Pull Request - Fixes #89046. Even though it set `anomaly_type = null` is still set `drops_core = TRUE` leading to the runtime. - We now remove `drops_core` var all together. If `anomaly_type = null` it means we don't drop a core and that's inferred so we don't need this var to tell us that again ## Changelog :cl: code: removes a redundant var from anomaly effects fix: Fixes runtimes for some anomaly effects /:cl:
## About The Pull Request <img alt="KvBypdgg5S" src="https://github.com/user-attachments/assets/97fc809d-f8ae-48c3-b095-8909ff9f5222" /> <img alt="XIZEXhftqE" src="https://github.com/user-attachments/assets/c769957e-94f9-41ae-9782-c685f3cf0e71" /> <img alt="mqOQUslfxP" src="https://github.com/user-attachments/assets/66397673-d5c7-447e-b994-71643f8e7fe2" /> Made the plant analyzer output the scan data into UI instead of spamming it into the chat. ## Why It's Good For The Game There is too much data to show it properly in a text chat. Botanists' chat is usually spammed with the scanning results, so it is hard to find anything in the message history unless you filter the scan data into a separate tab. The new UI also has some explanation of plant stats useful for noobs. ## Changelog :cl: qol: Added UI for plant analyzer del: Plant analyzer no longer spams scan data into the chat (except, it still works for pod people as before) /:cl: # Conflicts: # code/modules/hydroponics/hydroitemdefines.dm
## About The Pull Request On a quest to remove uselocalstate while converting files to typescript Admin PDA also had a bug where textarea was waiting on blur rather than on input, therefore you couldnt message someone unless you clicked off the text area, bad UX It looks the same ![image](https://github.com/user-attachments/assets/5cb90a6f-e93f-421b-8afe-bc25785f3f4b) ## Why It's Good For The Game Bug fix, typescript, less custom state ## Changelog :cl: admin: Fixed a bug with the Admin PDA incorrectly displaying that the message text wasn't filled out yet. /:cl:
## About The Pull Request - Fixes #89065 ## Changelog :cl: fix: herignis heats up reagents inside mobs again /:cl:
## About The Pull Request It seems like mawed crucible was gaining charges above the allowed maximum, and they were used fully when a potion is made, so it was pointless. This resulted in the crucible spamming the loud eating noise every 30 seconds even when it has 3/3 charges, and if you want it to shut up, you could only break it down. And you couldn't use rusty grasp to do this quickly. ## Why It's Good For The Game Bug fixes are good. ## Changelog :cl: fix: Mawed crucible doesn't try to gain charges when they're at maximum /:cl:
…ic scale (#88797) ## About The Pull Request This PR makes the reward and cooldown for departmental orders scale with crate cost using a logarithmic scaling, instead of comparing the price to preset thresholds for time, or awarding the same amount as the crate's cost. Previously, to calculate the cooldown time, the code was calculated via the following manner: ``` credits = clamp(credits, min, max) time_y = 10 MINUTES * ((credits - min)/(max - min) + 1) ``` Minimum was 320 credits, max was 3000, thus, all crates slid around between 10 minutes to 20 minutes. The reward for delivering the crates was the same as the crate's value. This meant ordering egregiously expensive crates, far beyond 3000 was way too desirable. This PR changes both to use logarithmic scaling. Cooldown time uses `60* log(price)^2.2`, and reward uses `140 * log(price)^1.4`. **Cooldown analysis** At 320 it's 7.54 minutes, at 1400 it's 12.44 minutes, at 3000 (around gun crates) it's 15.5 minutes, at 8000 (hat crate) 20 minutes, at 9000 (expensive atmos cans) it's 20.58 minutes, and at the 20k crate it's 24.76 minutes. **Crate rewards analysis** At 320 it's 475 credits, at 1400 it's 669 credits, at 3000 (around gun crates) its 778, at 8000 (hat crate) it's 925 credits, at 9000 (expensive atmos cans) it's 943 credits, and at the 20k crate it's 1070 credits. Up to 540 credits, you are actually getting a higher reward than what the crate costs, but this is okay, as its a reward for delivering simpler orders. A little surplus for you. For the console UI, I have made items costing 3000 or more display Moderate, and items costing 8000 or more, Long cooldowns. ## Why It's Good For The Game Ordering really expensive crates should be a luxury, not a way to generate money. The money is supposed to be a bonus, in addition to the free crate to sell. Using a logarithmic scale, the credit bonus is reigned in more evenly, making it more predictable for economy tweaking, and avoids players double dipping credits in their free purchase. Decreasing the rewards also give space for other new ways to generate rewards in relation to departmental orders, such as stamping the manifest with the correct head's stamp being worth more money and such. <details> <summary>Old PR Text, which was using a price cap instead</summary> ## About The Pull Request Departmental orders are a neat feature, but some of the available packs had problems economywise. The cooldown of range from 10 to 20 minutes, with 10 minutes being the base for anything costing less than 320 credits, and 20 minutes at 3000 credits. I have no problem with the lower cap, but the upper cap has issues, as recently, a 20k crate was added to cargo, which means it is possible to dump quite a large amount of funds into cargo every 20 minutes. Departmental orders probably need a bigger overhaul, and this solution is imperfect, but I have talked with @ArcaneMusic about this as an interim stop gap measure. This PR also autodocs a proc, and moves some values to global defines, for ease of balancing. This PR affects the following crates, with the uncapped crate values in brackets. Armoury - Combat Shotguns (3500 credits) - Energy Guns (3600 credits) - NT BR-38 Crate (20,000 credits) Engineering - BSA parts (6000 credits) - DNA Vault Parts (4800 credits) Engine Construction - HFR Crate (4800) - Supermatter Shard Crate (4000) Materials - BZ Crate (9000 credits) - Nitrous Oxide (9000 credits) - Water Vapor Crate (3010 credits) Toys - Collectible Hats Crate (8000 credits) ## Why It's Good For The Game Instantly awarding 20k to cargo every 20 minute, in addition to 27k from the other consoles (if both engineering and science orders BZ, service orders collectible hats, and medical orders something around 1000), is a bit too much. The money gained should be along a much more predictable and expected value. With this chance, the most they can get is 13k every 20 minutes across all departments. </details> ## Changelog :cl: balance: Rewards from departmental orders use a logarithmic scale, resulting in less rewards for high tier crates. The cooldown time is also logarithmic now, which has slightly decreased cooldown values on cheaper crates. /:cl:
… minor rework (#88591) # About The Pull Request ## Nearsighted Sources Nearsighted now associates/tracks severity applied by each source. Previously, nearsighted only used a single variable which had to be shared by every source, which caused problems for things like scarred eyes which needed independent behaviour. This implementation allows sources with different severity levels to coexist without needing workarounds There are now two different severity types for nearsightedness: * Correctable: Can be mitigated with vision correction (like glasses) * Absolute: Cannot be mitigated from any source, used for scarred eyes Which can allow nearsighted sources to not be affected by vision correction. Also, since there is no more technical conflict between the two quirks, I've made it so that nearsighted and scarred eye can be selected together (as a QOL change) There is also a new unit test for this new behaviour (nearsighted_effect) that checks application and removal ## status_effect/grouped minor rework Grouped status effects now have `source_added()` and `source_removed()` procs, which are called whenever a source is added or removed from the effect I did this because the previous implementation was somewhat unwieldy. Inherited status effects would recieve the _currently existing_ effect through merge_with_existing, and require them to modify the existing effect's properties, which is odd and not intuitive to work with (the proc's `src` was not the existing effect) It not being called for every source also made users repeat code in `on_creation()` and `merge_with_existing()` for every source added. This new interface should prevent repetition and be generally more intuitive to work with. # Changelog :cl: refactor: Nearsighted has been reworked to track severity applied from each source, as well as allow "non-correctable" nearsightedness (for things like scarred eyes). qol: The above being possible now means that you can select the Nearsighted and Scarred eye quirks together fix: Any bug that would occur from becoming nearsighted with a scarred eye should be fixed now code: status_effect/grouped merging code has been improved (i hope) /:cl:
## About The Pull Request The AI's definition is big and unorganized, which makes figuring out what does what really annoying, so I took the time to document and organize the file Some vars have been renamed to better communicate what they actually do when reading code Unused vars have been deleted: * var/chnotify * var/waypoint * var/interfaceButton ### Misc changes: The check to see if malf modules could be used was written incorrectly, and therefore all malf modules could be used without cooldown. The check has been fixed, so actions which used to have no cooldown should now AI bot summoning was supposed to have a cooldown, but it was broken and not implemented for basic bots. This has been removed instead of fixed, since I found it was an unnecessary limitation for something so simple. ## Changelog :cl: fix: Malf modules correctly use action cooldown (affects camera repair and detonate RCDs) code: Minor (extremely minor) AI code maintenance /:cl:
…ragons also speak Draconic. (#89034) ## About The Pull Request ![image](https://github.com/user-attachments/assets/df57849b-c465-465a-9f8b-fc6550183794) - Space Carps and Space Dragons no longer speak Common. - Space Carps and Space Dragons now speak Carptongue, a language native to Space Carps. - Space Dragons also speak Draconic. - Space Dragons can still understand common, they just can't speak it. - Space Craps cannot understand common, unless they're a special carp (Cayenne, Lia, Magicarps, those spawned from plushies) - Ash Drakes and Ice Whelps also no longer speak Common, and instead speak Draconic. They can still understand common. - Carp Infusion now lets you speak and understand Carptongue. - Fish Infusion now lets you speak and understand Carptongue. - Fire Sharks now speak Carptongue instead of Common. They can still understand common (to receive directions). ## Why It's Good For The Game #89032 made me think "hey why CAN carps speak Common?" So I thought "What if the Space Dragon spoke Draconic instead since it's a big lizard" But naturally the Space Dragon still needs to communicate verbally to its carps and, well, carps aren't really lizards so they shouldn't get Draconic right? So I thought "Why not add a Fish language" Now, various aquatic space creatures have a language that they can speak between one another in privacy, while the Space Dragon can still communicate to the crew for gimmicks via the curator (or draconic if they want to speak to lizards) ## Changelog :cl: Melbert add: Adds Carptongue language, spoken by Space Carps. del: Space Carps no longer speak or understand Common. Special carps like Cayenne and Lia can still understand common. add: Space Dragons can speak Draconic and Carptongue. del: Space Dragons no longer speak Common. They can still understand it. add: Ash Drakes and Ice Whelps now speak Draconic. del: Ash Drakes and Ice Whelps no longer speak Common. They can still understand it. add: Fire Sharks now speak Carptongue. del: Fire Sharks no longer speak Common. They can still understand it. add: Fish and Carp Infusion now grant Carptongue, letting you speak to (and understand) Space Carps. add: Sleeping Carp grants you Carptongue, but as most human tongues can't speak it, you'll only be able to understand Space Carps unless you steal a fish tongue. /:cl:
…ter vars (#89077) Co-authored-by: MrMelbert <[email protected]>
Co-authored-by: gleypi <gleypi>
…e ammo per mag) (#4813) * Initial Commit * this is why we test stuff before making a PR * Updates Magazine sprite with Trelus work Co-Authored-By: Trelus <[email protected]> --------- Co-authored-by: Trelus <[email protected]>
Update snouts.dmi
…mo case throwing (#4806) spin the blockenheimer Co-authored-by: Hatterhat <[email protected]>
* Adds a new pistol, the Zashch 10mm Adds the 'Zashch' 10mm pistol to the game, a slow firing pistol with a time to crit on a human of 4 seconds, but boasts 18 rounds in a magazine, giving it the highest damage-per-reload of any handgun crew acquirable in the game. It is sold by NRI surplus for the same price as the Bobr revolver. It is chambered for 10mm to give life to a dead calibre and to give a crew-gun that fires the bullet, to give the calibre a chance to have a life outside of being solely an evil syndicate calibre that is for some reason, orderable from cargo. Magazines, in-hand sprites, and mob sprites are all tested and functioning correctly, as if the flashlight function. * Update modular_nova/modules/modular_weapons/code/company_and_or_faction_based/szot_dynamica/pistol.dm Co-authored-by: Bloop <[email protected]> * Update modular_nova/modules/modular_weapons/code/company_and_or_faction_based/szot_dynamica/pistol.dm Co-authored-by: Bloop <[email protected]> * Update modular_nova/modules/modular_weapons/code/company_and_or_faction_based/szot_dynamica/magazines.dm Co-authored-by: Bloop <[email protected]> * Update modular_nova/modules/modular_weapons/code/company_and_or_faction_based/szot_dynamica/pistol.dm Co-authored-by: Bloop <[email protected]> * Update modular_nova/modules/modular_weapons/code/company_and_or_faction_based/szot_dynamica/pistol.dm Co-authored-by: Bloop <[email protected]> --------- Co-authored-by: Bloop <[email protected]>
lets persocoms use NT IRN
…e Hyeseong. (#4825) Initial Commit
* Fixes sound prefs not being respected * Fix volume prefs * Update radio.dm * Update sounds.dm * Update sounds.dm
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
About The Pull Request
Does an upstream merge.
Why it's Good for the Game
This update is a biggen.
Proof of Testing
Compiled, didn't shit itself.