-
Notifications
You must be signed in to change notification settings - Fork 557
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
Med Vendor Rebalance #6103
Med Vendor Rebalance #6103
Conversation
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
At last, my stingy idiot self will be free to spend my loadout points on medical supplies rather than buying basic first aid kits and abandoning my team to duplicate stuff. Is it possible to make the medical items in the med vendor count each individual one instead? So a med vendor that would have 10 stacks of trauma kits would now show 100 trauma kits, and if you wanted to refill a stack consisting of 1 trauma kit, it would take 9 from the 100 trauma kits. Or will this be too resource intensive or difficult to do without breaking a bunch of other features? About the splints, will there still be the option to create infinite contaminated stacks? It might never be used due to being inefficient, but it could feel immersion-breaking. If the stacks can't be turned into individuals in the vendors, I think it's okay to remove stack refills since this pr already adds periodic restocking of medlinked vendors. |
This comment was marked as off-topic.
This comment was marked as off-topic.
Its not that it would be resource intensive or something, but vendors don't actually hold those items in their inventory. They just have some amount of the base item. However I will be trying the exploit fix another way where splitting will become possible again, but no vendor can refill stacks.
So the contaminated aspect would only come in play if you try to refill a "contaminated" stack of splints at a vendor. It wouldn't prevent use in any other way. It was purely as a measure to shore up the issue of still being able to split the stack by putting splints on a person and then removing the splints to split the stack. When the splints got removed in this way - that new stack is deemed "contaminated" to disallow refilling that stack until it ever got merged into a full stack again. But this will be removed as splitting stacks will return but refilling removed. |
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
# Conflicts: # code/game/machinery/vending/vendor_types/medical.dm
Conflicts have been resolved. A maintainer will review the pull request shortly. |
bro forgot to remove it from TMs |
# About the pull request This PR fixes injectors & crystals that were fully emptied from being refilled in any medical vendor. I'm not sure if initial volume for injectors changed, or what situation exactly this check was trying to handle, but as far as I can tell it can be removed to patch this exploit without issue. Of note, emergency injectors did not used to be refilled prior to #6103, nor was it my intention to allow them to. The chem_refill list for each vendor is what whitelists items that can be refilled. However I am aware that this bug has existed a significant amount of time so I will be evaluating if it should return in some way. # Explain why it's good for the game Reagents are intended to be withdrawn from vendors, and only from vendors that refill those reagents. # Testing Photographs and Procedure <details> <summary>Screenshots & Videos</summary> https://youtu.be/QpDpRhtcQuM </details> # Changelog :cl: Drathek fix: Fixed autoinjectors not reducing vendor reagents on refill if they were fully emptied. fix: Fixed crystals (and any other reagent container not whitelisted) from being refilled in vendors balance: This means emergency injectors do not refill again. balance: Added tricord hypospray chem refill support to Wey-Med Plus /:cl:
About the pull request
This PR is a follow up to #5677 and does many things:
Disables splitting of medical items.In the case of splints, to avoid splitting them via applying and removing them, recovered splints are considered contaminated. However, you can get them to not be deemed contaminated if you form a full stack with them.This PR also fixes some miscellaneous things:
Of note: The restock cart sprites are temporary.
Explain why it's good for the game
The ultimate goal of this PR is to remove the infinite quantity of medical items groundside so there is more pressure on requisitions to keep groundside supplied. See https://github.com/orgs/cmss13-devs/projects/6/views/1?pane=issue&itemId=23005516 for a broader picture of the changes that this PR is helping push towards. I will finalize a design document once the remaining aspects for requisitions are decided.
It also is a little goofy that a colony that got decimated by a xenomorph infestation would have fully stocked medical supplies.
Testing Photographs and Procedure
Screenshots & Videos
Original implementation: https://youtu.be/6ES88Zre6Gg
Revised implementation: https://youtu.be/7Iyy3eKx3Ng
Bulk restocking using inventories:
bulk.restocking.mp4
Restock carts (temporary sprites for now):
UI polishing:
Changelog
🆑 Drathek
balance: Increased the starting stock of most medical vendors but shifts some reagent bottles from weymeds to weychems
balance: Med linked medical vendors will now automatically restock items (requires 20 minutes from round start) and reagents (no time requirement) periodically if operable
balance: Groundside medical vendors will now have random stock and reagents missing if its not WO
balance: Partial medical item stacks can no longer be refilled at vendors (autoinjectors and bottles can still be refilled pulling from internal reagent tanks)
balance: Doubles the starting energy for chemical dispensers
balance: Discounts all requisitions medical supplies
ui: Added reagent amount display to vendors that have internal reagent tanks and tweaked the icon positioning of items slightly
ui: Tweaked table widths in vendors
ui: Fixes USCM theme vendors not showing different backgrounds for odd rows
qol: Restocking a medvendor manually can now be done with just a click rather than only via mouse drop
qol: Restocking a vendor can now be performed in bulk from a storage inventory - click drag the inventory to the vendor and you will restock all the items you can
add: Vendors can accept partial stacks when restocking - when an item has a partial quantity for a stack it is denoted with an asterisk
add: Added two restock carts for bulk restocking medical vendors, one for items and the other for reagents (purchasable from requisitions - disassemble with a wrench - temporary sprites for now)
fix: Fixed some currently unused squad prep vendors
fix: Removing nano splints on a person no longer creates a 0 amount normal splint
spellcheck: Tweaked some restock messages and vendor descriptions
/:cl: