forked from tgstation/tgstation
-
Notifications
You must be signed in to change notification settings - Fork 49
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
Merge upstream 19.05.2024 #270
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 Converts more of common into typescript, with some tests ## Why It's Good For The Game Typescript,,,,
…gstation#83179) ## About The Pull Request This fix enables most of the clicks that have been disabled in the alt click menu up to this point. However, I did have to cut out the pointing thing it would do for right clicking. The only thing you aren't able to do with the new alt-click menu at this point is dragging items onto each other, pointing, and the shift-click context menu. Maybe we'll leave that for another PR, because I think I'd have to rewrite core components of TGUI for that? ## Why It's Good For The Game Lets you perform almost all of the alternative and right click functions on things you have alt-clicked the tiles for. I believe this outweighs the benefits of pointing at stuff on a tile instead. ## Changelog The alt-click item panel now lets you perform most of the alternative click options. :cl: Bisar qol: Most of the alternate click modes (right click, control clicking, shift clicking, etc) have been enabled in the alt-click item menu. fix: You will no longer point at things you right-click in the alt-click item menu. /:cl:
## About The Pull Request This adds an action figure for Bitrunners, and places one in the Deltastation bitrunning den. ![image](https://github.com/tgstation/tgstation/assets/28870487/03b40d5c-1eeb-493e-8244-1456d120c848) "I'm in..." ## Why It's Good For The Game Every job has an action figure, and bitrunning should not be an exception! Delta has figurines in each job site, and adding one there lets the Bitrunners in on the fun. ## Changelog :cl: Rhials add: Bitrunners now have their own job figurine. Cool! /:cl:
…gstation#83176) ## About The Pull Request Blocks Rat Kings from using "Rat King's Domain" (the spell that spawns dirt/vomit/oil and creates miasma) while ventcrawling. Also blocks Rat Kings from summoning mice while in pipes; as far as I can tell, this is just an oversight, as it previously created a mouse stuck inside of the pipe without the normal chat message. ## Why It's Good For The Game Rat Kings are supposed to build a lair of filth, a rat king visiting every department in the distro pipes while spamming motor oil is boring, lame, lacks any contextual sense that a rat inside a pipe could dirty the floor above it, and doesn't really have any counterplay besides begging atmos to up the temperature (which they realistically probably will never do because it's a rat king not a xeno or a ling). Ling spells are blocked while crawling so there's precedent for it. ## Changelog :cl: PapaMichael fix: Rat Kings can no longer trap mice inside of pipes by creating them while ventcrawling. balance: Rat Kings can no longer create grime and miasma while ventcrawling. /:cl:
…n#83170) ## About The Pull Request Fix the movement of a pack of cigarettes under an spaceman when they interacts with it with the right mouse button. Also adds a new way to quickly insert cigarettes in the mouth, just hitting a pack of cigarettes on yourself. Here how it works: https://github.com/tgstation/tgstation/assets/126676387/9f1442b0-173b-4f2e-a95e-e42fd9269642 ## Why It's Good For The Game It fixes the bug and adds a new quick and convenient way to put a cigarette in your mouth. That's good, isn't it? ## Changelog :cl: qol: Now you can put a cigarette in your mouth just by hitting the pack of cigarettes on yourself. fix: The cigarette pack no longer moves under the spaceman when they interacts with it with the RMB /:cl: --------- Co-authored-by: paganiy <[email protected]>
## About The Pull Request Title ## Why It's Good For The Game typos... BAD????????? ## Changelog :cl: spellcheck: Added a period to the end of the wendigo deathrattle /:cl:
…garettes out of your mouth (tgstation#83101) ## About The Pull Request - Cigarette particles are now particles rather than baked in - Taking a cigarette out of your mouth release a big puff of smoke https://github.com/tgstation/tgstation/assets/51863163/183b39e7-3367-43a1-b750-99e66838d60f ## Why It's Good For The Game Looks better ## Changelog :cl: Melbert add: Cigarette smoke is now more smokey. add: Taking a cigarette out of your mouth will let out a big puff of smoke. /:cl: --------- Co-authored-by: san7890 <[email protected]>
…n#83190) This wasn't working for me because `OSMajor` was set to a string, not a number, so it failed the if check. Making this change made it work
## About The Pull Request Alt click wouldnt draw the sabre bc of dual click actions ## Why It's Good For The Game Fixes tgstation#83159 ## Changelog :cl: fix: Alt click will draw the captain's sabre again /:cl:
…tion#83144) ## About The Pull Request Closes tgstation#82965 (comment) This is how it looks now: https://github.com/tgstation/tgstation/assets/126676387/3934017c-b031-4bb0-8041-231739a6144c ## Why It's Good For The Game It's not ## Changelog :cl: fix: Accelerator laser gun no longer shoots sun size projectiles. /:cl: --------- Co-authored-by: paganiy <[email protected]>
## About The Pull Request Wrote better docs and tests for string helpers in tgui. Something I noticed, which I'm ok with reverting, is that multiline does precisely nothing. And despite being a template string fn, it doesn't accept vars for interpolation. It looks as if it were used to circumvent a babel limitation, which we are no longer using. Removed: - babel plugin (unused) - multiline (no impact) - createGlobPattern (unused) - buildQueryString (unused) <details> <summary>Spot the difference</summary> ![Screenshot 2024-05-06 095420](https://github.com/tgstation/tgstation/assets/42397676/bbf2f58e-81b7-4023-8da4-8d7f19cd3bb1) ![Screenshot 2024-05-06 095443](https://github.com/tgstation/tgstation/assets/42397676/24f303ba-f352-4132-a2a6-873dff0d979b) (There is none) </details> ## Why It's Good For The Game More core tools in TS. Better docs so hopefully these functions are more widely used (and done so properly) Tests so things don't break
## About The Pull Request Once you gain a level in Athletics you will gain the ability to evaluate the relative muscularity (in terms of unarmed combat) of your fellow crewmates by examining them. Various factors influence this; - The damage dealt by your limbs. - Your experience in the fitness skill. - Various quirks, genetic mutations, and brain traumas. In order to make this not an antagonist check, Changelings will now also be able to copy your athletics skill level when they steal your DNA. This is... admittedly a little weird, but this is a consequence of using "skills" to represent a physical attribute I guess. ## Why It's Good For The Game During the social experiment we sometimes call "April Fools Day" it became apparent to me that our playerbase liked to watch a number go up, a quality marked especially in those players who liked to have their characters hang out in the gym. Many of them made their characters repeatedly hang out in the gym and work out even though doing this had no effect at all on the number they were supposedly increasing. I would like to give this joy back to them. <sub><sup>Additionally I have heard that the ability to retain players by stimulating their desire to see numbers increase is good for our annual retention metrics.</sub></sup> Ultimately this is a very silly feature but I think that there often _can be_ a comparative aspect to bodybuilding and letting players be competitive in terms of looking at each other's completely meaningless numbers gives them something to base a story around. Also I mostly only make silly features. ## Changelog :cl: add: People who spend time improving their bodies are able to evaluate the relative physical strength of those they examine as a kind of "power level". add: Changeling transformation copies the target's athletics skill level. /:cl:
Oversight on my part. I stuck c4 on a lizards brain and it didnt kill them. The deletion chain is somewhat awkward for humans. When deleting a human, it deletes the organs but also removes them, which causes all kinds of wacky effects on a deleting mob which is not great. This is more akin to a band aid, but I need to take some time and focus to sort through all the removal procs and make them qdel friendly :cl: fix: Deleting someones brain kills them again /:cl:
these lists only contains text, not anything qdeletable. ``` [18:10:26] Runtime in code/controllers/subsystem/garbage.dm, line 349: bad del proc name: qdel (/proc/qdel) src: null call stack: qdel(null, 0) the tram controller (/obj/machinery/transport/tram_controller): clear repair signals() /datum/transport_controller/li... (/datum/transport_controller/linear/tram): end malf event() /datum/round_event/tram_malfun... (/datum/round_event/tram_malfunction): end() /datum/round_event/tram_malfun... (/datum/round_event/tram_malfunction): process(2) Events (/datum/controller/subsystem/events): fire(0) Events (/datum/controller/subsystem/events): ignite(0) Master (/datum/controller/master): RunQueue() Master (/datum/controller/master): Loop(2) Master (/datum/controller/master): StartProcessing(0) ```
## About The Pull Request Gives health sensors a UI to change their settings ![sensor-off](https://github.com/tgstation/tgstation/assets/139372157/06eb1756-23ff-4d8a-b305-e847430f6982) ![sensor-on](https://github.com/tgstation/tgstation/assets/139372157/466f21d2-8369-4e04-9197-d606063aa715) ![checking-for-death](https://github.com/tgstation/tgstation/assets/139372157/25d7bc84-246b-4997-9684-e899a6700b5b) ## Why It's Good For The Game Makes the assemblies less annoying to use ## Changelog :cl: qol: Gives Health sensor assemblies a UI so its easier to use. /:cl:
…83171) ## About The Pull Request Replaces the two 'arcade cabinet which shouldn't exist' with arcade machine spawners. ## Why It's Good For The Game The arcade cabinet which shouldn't exist shouldn't exist, hence the name. It's the base type for the real arcade machines. The spawner should be used instead. ## Changelog :cl: fix: The random arcade machines in the 'Interdyne Spinward Research Base's now function. /:cl:
…eInvisibility() (tgstation#83253) ``` [2024-05-15 18:24:21.291] RUNTIME: runtime error: cannot read from list - proc name: RemoveInvisibility (/atom/proc/RemoveInvisibility) - source file: code/game/atom/atom_invisibility.dm,66 - usr: null - src: the turret (/obj/machinery/porta_turret/ai) - src.loc: the floor (187,33,3) (/turf/open/floor/circuit) - call stack: - the turret (/obj/machinery/porta_turret/ai): RemoveInvisibility(/obj/machinery/porta_turret_co... (/obj/machinery/porta_turret_cover)) - the turret (/obj/machinery/porta_turret_cover): Destroy(0) - qdel(the turret (/obj/machinery/porta_turret_cover), 0) - the turret (/obj/machinery/porta_turret/ai): atom break("melee") - the turret (/obj/machinery/porta_turret/ai): take damage(20, "brute", "melee", 1, 4, 0) - the turret (/obj/machinery/porta_turret/ai): take damage(40, "brute", "melee", 1, 4, 0) - the turret (/obj/machinery/porta_turret/ai): attack generic(the turret (/mob/living/simple_animal/hostile/mimic/copy/machine), 40, "brute", "melee", 1, 0) - the turret (/obj/machinery/porta_turret/ai): attack animal(the turret (/mob/living/simple_animal/hostile/mimic/copy/machine), null) - the turret (/mob/living/simple_animal/hostile/mimic/copy/machine): AttackingTarget(the turret (/obj/machinery/porta_turret/ai)) - the turret (/mob/living/simple_animal/hostile/mimic/copy/machine): AttackingTarget(the turret (/obj/machinery/porta_turret/ai)) - the turret (/mob/living/simple_animal/hostile/mimic/copy/machine): MeleeAction(1) - the turret (/mob/living/simple_animal/hostile/mimic/copy/machine): MoveToTarget(/list (/list)) - the turret (/mob/living/simple_animal/hostile/mimic/copy/machine): handle automated action() - NPC Pool (/datum/controller/subsystem/npcpool): fire(0) - NPC Pool (/datum/controller/subsystem/npcpool): ignite(0) - Master (/datum/controller/master): RunQueue() - Master (/datum/controller/master): Loop(2) - Master (/datum/controller/master): StartProcessing(0) - ```
…3259) ## About The Pull Request Fixes a bunch of hearts so they no longer turn into errors when you take a bite out of them... for whatever reason. Fixes tgstation#83147 ## Why It's Good For The Game Immersion: ruined ## Changelog :cl: fix: Fixes a bunch of hearts turning into errors when you try to eat them /:cl:
…tgstation#83233) ## About The Pull Request This adds 1 extra pump, better stock parts for the temp units, and 2 canisters of co2 and nitrogen ## Why It's Good For The Game For nukies buying ordnance keycard is semi rare, this adds extra gasses to let them show their atmos knowledge more by allowing them to create better bombs(as thats kinda the point of the whole keycard since its also a timesink to create said bombs) ## Changelog :cl: balance: Nukies ordnance now include more gasses and stock parts /:cl:
## About The Pull Request Renames the ruin to include the required prefix "Lava-Ruin". Removes the now unnecessary suffix. ## Why It's Good For The Game ## Changelog The names have this prefix system for easier string-searching. If they don't have the prefixes, they're harder to find and sort. :cl: fix: adds missing prefix to name of The Lizard's Gas Lava land ruin. /:cl:
…overs (tgstation#83252) Properly fixes tgstation#7617 🆑 ShizCalev fix: Malf AI can now override/overload closed turrets. fix: Fixed a scenario in which a turret would have its covers closed while still firing. /🆑 cleaned up a dumb proc that was added at the machinery level for literally only turret covers, and added support for fixing turrets in the future (through atom_fix(), which is essentially unused at this time.)
## About The Pull Request Made more common tgui bits in typescript with tests. Not much else to see here ## Why It's Good For The Game Typescript conversion + More documentation + type safety You now get full docs and type info as nature intended: ![image](https://github.com/tgstation/tgstation/assets/42397676/17a7aad6-56d3-4e22-89fa-585cda4c5315) --------- Co-authored-by: Style Mistake <[email protected]>
…ries (tgstation#83228) ## About The Pull Request Replaces the Ansem, SC/FISHER, and suppressor in the Sam Fisher gimmick bundle with the Ansem/SC, a variant of the Ansem that: - has an integral suppressor (read: acts like it's always suppressed, because it is) - an underbarrel light disruptor (functionally identical to the SC/FISHER, fired with RMB) (note: firing the disruptor in combat mode causes the main gun to fire as if it were being fired akimbo. which it shouldn't, but I'm not sure how to make it not do that) - is longer, visually, but not storage-wise, and also visibly has an underbarrel light disruptor ![image](https://github.com/tgstation/tgstation/assets/31829017/0842d9b9-9b24-4833-aeae-631c3bf1a5d5) Also added code support for integrally suppressed ballistic guns (with no separate suppressor overlay), handled by the can_unsuppress variable. Also fixes the SC/FISHER disrupting APCs for ten times longer than they probably should have been disrupted. ## Why It's Good For The Game In regards to the Ansem, SC/FISHER, suppressor: The Sam Fisher gimmick bundle having the Ansem and SC/FISHER as separate items always kinda bugged me, since it seemed too clunky for a sneaky-beaky operator-type to have to juggle two guns (one which you had to bump to normal-size, leaving it unable to fit in the belt) to break lights and then shoot dudes in the back of the head. So now it's one gun, like the M-90gl and its grenade launcher. I think the bundle's rare enough that it's fine to give them this much. In regards to the APC thing: Shooting an APC with a gimmick gun and leaving it unpowered for two minutes seemed unintentional. In regards to the code support for integrally suppressed guns: Maybe someone else will want to put in another integrally suppressed gun? It was relevant for this use-case. ## Changelog :cl: qol: The Ansem, suppressor, and SC/FISHER included in the Fisher gimmick bundle now come together as one whole gun, the Ansem/SC. It's integrally suppressed, and fires the disruptor on right-click. fix: The SC/FISHER disrupts APCs for an appropriate amount of time, not ten times the intended disruption length. /:cl: --------- Co-authored-by: Hatterhat <[email protected]> Co-authored-by: Zephyr <[email protected]> Co-authored-by: Ghom <[email protected]>
## About The Pull Request adds more machines to the malf AI overload ability blacklist: shuttle consoles and gateway console closes tgstation#83223 ## Why It's Good For The Game bug fix ## Changelog :cl: fix: fixed malf AI being able to overload shuttle consoles and the gateway control console /:cl: --------- Co-authored-by: Ghom <[email protected]>
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may not be viewable. --> <!-- You can view Contributing.MD for a detailed description of the pull request process. --> ## About The Pull Request Ctrl clicking your jumpsuit will max its suit sensors https://github.com/tgstation/tgstation/assets/96586172/3b7275ee-404a-49d1-b378-63de794d22ee <!-- Describe The Pull Request. Please be sure every change is documented or this can delay review and even discourage maintainers from merging your PR! --> ## Why It's Good For The Game Nice little change that makes maxing your sensors easier <!-- Argue for the merits of your changes and how they benefit the game, especially if they are controversial and/or far reaching. If you can't actually explain WHY what you are doing will improve the game, then it probably isn't good for the game in the first place. --> ## Changelog <!-- If your PR modifies aspects of the game that can be concretely observed by players or admins you should add a changelog. If your change does NOT meet this description, remove this section. Be sure to properly mark your PRs to prevent unnecessary GBP loss. You can read up on GBP and it's effects on PRs in the tgstation guides for contributors. Please note that maintainers freely reserve the right to remove and add tags should they deem it appropriate. You can attempt to finagle the system all you want, but it's best to shoot for clear communication right off the bat. --> :cl: grungussuss qol: suit sensors can now be maxed by ctrl clicking your jumpsuit /:cl: <!-- Both :cl:'s are required for the changelog to work! You can put your name to the right of the first :cl: if you want to overwrite your GitHub username as author ingame. --> <!-- You can use multiple of the same prefix (they're only used for the icon ingame) and delete the unneeded ones. Despite some of the tags, changelogs should generally represent how a player might be affected by the changes rather than a summary of the PR's contents. -->
## About The Pull Request ### Pictures below (You have to click them) <Details> <Summary> The prodigal bar returns to its home on the first floor, re-combining the kitchen and the bar's atrium into one room off of the main hallway. I didn't want to leave the Clown and Mime out, though, so I added a mini stage by the bar's entrance, for stand-up.</Summary> ![image](https://github.com/tgstation/tgstation/assets/51863163/a9500c1f-0e58-40fe-9c65-332ef7877cba) </Details> <Details> <Summary> The lower bar area is not entirely dead, however, Where it once was now lies an expansion of Hydroponics, as well as a gambling lounge and stage for the clown and mime. </Summary> ![image](https://github.com/tgstation/tgstation/assets/51863163/bd8ff0ed-12a2-4537-a9d1-93b59498ece1) </Details> <Details> <Summary> The maintenance in and around the upper service area and dorms have also expanded, adding a connection between serv maint and sec maint. </Summary> ![image](https://github.com/tgstation/tgstation/assets/51863163/78a6b3fb-97cd-4e74-a957-6a163653f985) </Details> Other notes: - Standardizes some decal styles in the main hallway - Adds a single air alarm to the brig (I noticed it was missing one while running mapping verbs) ## Why It's Good For The Game I really, really like the design behind the Icebox bar, the "seedy gambling bar underneath the station" is supreme vibes, but unfortunately it really hampers visitation. Bars should really be front and center on the station to people walking by can see what shenanigans are going on, who is around, if the bartender is serving drinks, etc... which is difficult when it's hidden under the kitchen. This PR aims to bring it back to the front, and kinda bring back the kitchen-bar connection, while not entirely abandoning the vibes of the bar as-is. ## Changelog :cl: Melbert add: Icebox: The bar returns to its home. add: Icebox: Standardizes some decal styles in the main hallway. fix: Icebox: The lower brig's missing air alarm has been found. /:cl:
## About The Pull Request Instead of iterating over an assoc list and doing a list access, which has a complexity of O(nlog(n)), it is better to just store a 2 tuple and access that to get a complexity of O(n) Check code to see what I mean. ## Why It's Good For The Game ![image](https://github.com/tgstation/tgstation/assets/37270891/1e5d68fa-2e19-473c-a870-e1e0277cbacc) This is a very hot proc and it's worth micro-optimizing where we can. The speed increase in doing the following code can be seen here: ![image](https://github.com/tgstation/tgstation/assets/37270891/1b7f00a3-b3c2-4976-b2ab-97eefbbd2459) Higher is better. The code that was benchmarked: ```dm var/list/target = list() /proc/testa() var/list/queued_calls = list() for(var/i in 1 to length(target)) var/data = target[i] queued_calls.Add(data, 1) for(var/i in 1 to (length(queued_calls) / 2)) var/a = queued_calls[i*2-1] var/b = queued_calls[i*2] /proc/testb() var/list/queued_calls = list() for(var/data in target) queued_calls[data] = 1 for(var/data in queued_calls) var/a = data var/b = queued_calls[data] MAIN for(var/i in 1 to 100) target.Add("[i]") BEGIN_BENCH(2) BENCH_PHASE("New code", testa()) BENCH_PHASE("Old code", testb()) END_BENCH ``` ## Changelog --------- Co-authored-by: Watermelon914 <[email protected]> Co-authored-by: LemonInTheDark <[email protected]>
…ion#83266) ## About The Pull Request At some point we added a new parameter to spawners which randomised the number of mobs they could spawn up to a maximum. For some reason the default value here was set to "2", meaning that every mob spawner in the game would be spawning an average of 1.5 mobs per update instead of 1. As the place it was _intended_ for (mining vents) already provides a value in the constructor, I just set the default back to 1. Additionally, this randomised value did not actually obey the "maximum mobs" parameter of the component and could spawn mobs above what was supposed to be the cap of mobs created by the spawner. This PR fixes those things. ## Changelog :cl: fix: Mob spawners (such as lavaland tendrils) won't spawn more mobs than they are supposed to, faster than they should. /:cl:
## About The Pull Request Changes the sprites on the action button for furious steel, and orbiting knives for Blade Heretic in general. ## Why It's Good For The Game ![Blade Heretic Resprite](https://github.com/tgstation/tgstation/assets/102721711/22c4cf37-8bd0-494e-804e-34bea909594f) Kitchen utensils are kind of a lame fit for an eldritch acolyte, now they look like proper throwing knives. ## Changelog :cl: Image: Blade Heretic Knives have been resprited into proper throwing knives. /:cl:
## About The Pull Request Does what it says on the tin, slices out a bunch of unused antag huds. ## Why It's Good For The Game Its getting pretty annoying to work within that file when half the icons arent used, so this just removes them. The file is less cluttered now. ## Changelog Shouldn't be player facing
## About The Pull Request Closes tgstation#83271 i didnt know this item existed in the game but seems it got mapped in by mistake and can teleport u around
This pr causes following conflicts on translate branch:
|
larentoun
approved these changes
May 19, 2024
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
Merge upstream