mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-02-08 15:28:40 +00:00
52ccdf20cd5d2cec76a1f2ec446b523b50e5a45f
346 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
f811d41ad9 |
New ERT: Code Violet EMT Response Team (#85650)
## About The Pull Request This adds a new ERT type, the Code Violet EMT Response Team. This summons a batch of unarmed EMTs, led by a Chief EMT. The doctors get some above average equipment for healing/reviving a deluge of casualties, with the commander getting even better equipment and the means to defend the rest of their doctors and enforce their authority on the station (a pulse pistol and telebaton). This also autodocs the undoced vars on the ERT datum, for easier reading. You'll see why the mobtype has not been documented in a future PR. It's entirely unused right now (since it is always overridden) but this is addressed in #85651. ## Why It's Good For The Game I've seen plenty of situations where, despite the crew having vanquished all of their foes, the number of bodies is too high to get everything back into working order. This also goes for situations where all of the medical staff are dead, and the corpse-revival engine is unable to kickstart itself. It's not a situation where sending in an ERT full of armed goons can help. Sometimes a more delicate, caring hand is required to get the station rolling again. Also, autodocs are useful. ## Changelog 🆑 Rhials add: Code-Violet Medical Support ERT teams have been rolled out for deployment to Space Station 13 and related Nanotrasen Installations. /🆑 |
||
|
|
91baa94ac5 |
event based incapicated and able_to_run (#86031)
## About The Pull Request this is a revival of #82635 . i got permission from potato to reopen this, he did almost all the work. i only just solved the conflicts and fixed all the bugs that were preventing the original from being merged (but it should be TMed first) ## Why It's Good For The Game slightly improves the performance of basic mob AI ## Changelog 🆑 LemonInTheDark refactor: able_to_run and incapacitated have been refactored to be event based /🆑 --------- Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> Co-authored-by: ZephyrTFA <matthew@tfaluc.com> |
||
|
|
8436d3e0de |
Adds a Quiver to the Syndie rebar + various rebar and bolt improvements. (#86116)
## About The Pull Request Adds a quiver to the traitor "Syndicate Rebar" kit, can be used to store rods and reload the Rebar more efficiently.  Fixes Rebar bows having more ammo than intended. Rebar bows will now draw their string with left click instead of just the use button. Quivers are now a neck storage item. Hydrogen bolts have lost their ability to embed and pierce an infinite number of targets in exchange for a small damage buff , increased accuracy on bodyparts and the ability to pierce walls. ## Why It's Good For The Game This PR is the fruit of a discussion spanned over the course of several months between me and KingKumaArt (the creator of the rebar bows.), He's now busy abroad, so I'm pushing these changes in his stead. **Changes to the syndie rebar and quivers** The syndicate rebar bow is a fun albeit slightly underwhelming weapon, at least compared to its direct competitor, the revolver. The numbers prove this, as according to the charts it's very rarely bought on LRP and doesn't even show on the MRP charts. https://superset.moth.fans/superset/dashboard/4/?native_filters_key=cBYTbRt2At8pt1VkwV8O7NEZZZeDiIQ5fZgSMfjoICB0yow1BWJXDG5SyV9MJKTf I think most of the issues with the weapon can be attributed to the horrible jank that surrounds it. Reloading and storing ammunition for this weapon is a management nightmare, as the rods cannot be stacked and have to be manually loaded by hand, making it horrendous to use in combat. While that's fine for the makeshift crew version, Traitor weapons should be more realiable in a combat scenario. **So i'm squashing both problems by introducing a traitor version of the quiver.** It comes packed with the box you get the crossbow from, can be worn on the neck, stacks up to 20 rods, and features an action button that allows you to slowly chamber your rods into the rebar. Video demonstration: https://www.youtube.com/watch?v=nG9efFOyauw The crew version has also been moved to a neck storage item, but has half the capacity and lacks the ability to quick reload. I've also made the firing process slightly less annoying by having left click draw and undraw the string; as it stands, you have to alternate left click and use on hand after each shot, which is just jarring. Created 2 new variables to replace the ALWAYS_HIT_TRAIT, so we don't have to slap a new trait every time we want to dictate how accurate a gun or projectile should be at range. Lastly, I fixed an issue that allowed the bow to fit 1 extra bolt than its intended capacity. if you were to chamber your last rod, it does end up nerfing the burst of the syndie variant, as it drops down from 4 to 3, but the smoother reload should make up for it. **Hydrogen bolts** As it stands, all the atmosian bolt variants occupy different niches and they are more or less balanced. Except for the hydrogen bolts. With zauker bolts doing 60 toxin damage, guaranteed embed, and Syndie bolts doing 55 brute + the high delimb chance, Hydrogen bolts just don't have any real purpose to exist with their lower damage and lack of the ability to delimb. Metallic hydrogen in general doesn't have any good applications, the armor is weaker than your run of the mill sec vest, the axe is a downgrade over the roundstarting one....; I could go on, point being that something that requires in depth atmos knowledge and 30-40 minutes of hard work shouldn't be outclassed by what's readily available at the start of the shift. So what if we made the hydrogen bolts go through walls? Long range weaponry is a niche that remains mostly unfilled in the traitor arsenal. The syndicate rebar technically does have a scope, but requiring direct line of sight makes it unreliable and far too risky to use, since you could be jumped at any times while you are zoomed in. So i've made the hydrogen bolts a weaker version of the nukie penetrator rounds, with slightly lower damage, no infinite pierce and inability to damage the AI core. I've also improved their long range accuracy, as these bolts are meant to be accurate at longer ranges, (they drop off massively past the 15 tiles) Now yes, the bolts will be accessible to the crew as well, so why am I discussing this as if it were a traitor change? Well for starters, the actual applications of a crew atmos tech using these are fairly limited. Regular rebar bows can only fire 1 shot at a time, don't have a scope, and you won't get much mileage out of the wall piercing component unless you get thermals or x-rays, which are very much a stretch to acquire as an atmos tech. In the hands of a traitor, however, I can see it as a potential use for a long-range sniping tool, if you are willing to commit half of your round to make the bolts that is. ## Changelog 🆑 add: A Syndicate Rebar Quiver has been added to the uplink qol: Left clicking with a rebar crossbow will now draw/undraw the string. balance: Rebar quivers are now a neck slot item. balance: Hydrogen bolts damage has been upped to 55 brute and can now pierce through walls, they no longer have infinite piercing and can no longer embed however. code: removed the TRAIT_ALWAYS_HIT_ZONE, replaced with 2 new variables. fix: fixes rebar crossbows having a higher capacity than intended if a bolt had already been chambered. /🆑 --------- Co-authored-by: Xander3359 <66163761+Xander3359@users.noreply.github.com> |
||
|
|
9a9b428b61 |
Wallening Revert [MDB Ignore][IDB Ignore] (#86161)
This PR is reverting the wallening by reverting everything up to
|
||
|
|
c77c50ae3d |
Athletic Fishing Gloves and Fishing Module to fish without a fishing rod (#85415)
## About The Pull Request This PR adds a pair of fishing gloves that let you fish and work out at once, and also a MODsuit module that lets you use MOD gloves to do the same thing (without the workout, an external fishing rod has to be inserted first). In both cases, you can equip or unequip bait, hook and line by using the fishing rod interface which you can open by right-clicking the gloves. To get both of them, you've to perform the first fish scanning experiment. I had to refactor the profound fisher component a bit to do this. ## Why It's Good For The Game Interweaving a few different features with fishing. Fishing and Athletics are both skills, so I thought it'd be nice if it were a way to take advantage of both, and level them up accordingly. Also fishing gloves with maxxed out athletics can make fishing a lot noticeably easier at higher difficulty. ## Changelog 🆑 add: Added Athletic Fishing Gloves and Fishing Glove Module to the advanced fishing tech node. Both can be used to fish without having to hold a fishing rod. The athletic fishing gloves will also train your athletics skill. /🆑 |
||
|
|
095f7e3b70 |
Death of mutant bodyparts AND external organs (#85137)
## About The Pull Request Removes mutant bodyparts and external organs from the game completely Digitgrade behaviour was mutant bodypart for no reason Cat ears now work with the bodyparts overlay system, same as all the other external organs (since all their behaviour is now just on /organ It doesn't remove all the /external types, but moves all behaviour to /organ. I'll follow up with a PR wiping all the /external organ types, but it's just conflict heaven so not this PR I've also streamlined a lot of duplicate/weird species regeneration code Melbert did the same PR as well but due to a lack of time (?) I have absorbed his PR to double nuke mutant bodyparts ## Why It's Good For The Game Frees us from the chain of unmodular code, and kills my greatest nemesis (after the shuttle meteor murder bug) ## Changelog 🆑 Time-Green and MrMelbert Refactor: External organ behaviour has been moved to /organ, ears now use the same system as the other organs Refactor: Mutant bodyparts are dead! This likely does not mean much to the average person but it's very dear to me code: Improves digitgrade handling in preference code /🆑 I have absorbed #85126, using Melberts code to improve and add some missing changes. Mainly improving the functioning of preferences and digitgrade legs. I didn't take over the hairstyle improvements. --------- Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> |
||
|
|
1880003270 |
Reworks silicon/ai access checking & fixes some ui_act's (#84964)
## About The Pull Request Currently to check for Silicon access, we do: ``if is silicon or is admin ghost or has unlimited silicon privileges or has machine remote in hand`` What has unlimited silicon privileges? Bots, Drones, and admin ghosts. To check for AI access, it just checks for AI instead of silicon, and doesnt check for unlimited silicon privileges. This was kinda silly, so I thought I should make this a little easier to understand. Now all silicon/ai traits come from ``AI_ACCESS_TRAIT`` or ``SILICON_ACCESS_TRAIT``. I made a single exception to keep Admin ghost, since now instead of being a var on the client, we moved it to using the same trait but giving it to the client instead, but since we have to keep parity with previous functionality (admins can spawn in and not have this on, it only works while as a ghost), I kept previous checks as well. No more type checks, removes a silly var on the mob level and another on the client. Now while I was doing this, I found a lot of tgui's ``ui_act`` still uses ``usr`` and the wrong args, so I fixed those wherever I saw them, and used a mass replace for the args. Other changes: - machinery's ``ui_act`` from https://github.com/tgstation/tgstation/pull/81250 had ``isAI`` replaced with ``HAS_AI_ACCESS``, this has been reverted. Machine wands and admin ghosts no longer get kicked off things not on cameras. This was my fault, I overlooked this when adding Human AI. - Human AI's wand gives AI control as long as it's in your hand, you can swap to your offhand. I hope this doesn't end up going horribly, otherwise I'll revert this part. It should let human AIs not have their UI closed on them when swapping to eat food or use their door wand or whatnot. - Bots previously had special checks to scan reagents and be unobservant, I replaced this with giving them the trait. I also fixed an instance of unobservant not being used, so now statues don't affect the basic creature, whatever that is. ## Why It's Good For The Game This is an easier to understand way of handling silicon access and makes these mobs more consistent between eachother. Other than what I've mentioned above, this should have no impact on gameplay itself. ## Changelog 🆑 fix: Statues don't count as eyes to creatures. fix: Human AIs and Admin ghosts no longer get kicked off of machines that aren't on cameranets. /🆑 |
||
|
|
fec946e9c0 |
/Icon/ Folder cleansing crusade part, I think 4; post-wallening clean-up. (#85823)
Hello everybuddy, your number three rated coder-failure here to clean up some mess. This PR accomplishes some of the more major structural clean up changes I wanted to do with /obj/ folder, but decided to wait on until wallening gets merged, and so, time has come. Several things to still be done, although I know these cleaning PR's are quite a load, so will wait for this one to get done with first. ## Why It's Good For The Game Saner spriters, better sprites, less annoyance. Also deleted a whole load of redundancy this time around, a lot of sprites which existed simultaniously in two places now got exit their quantum superposition. |
||
|
|
98cb5162d4 |
Gives Janitor ERT no slips (#85607)
## About The Pull Request Gives janitor ERT no slips instead of a clamp ## Why It's Good For The Game Quite silly for the top of the top janitors from NT losing in a slip battle with the regular station janny. I'm pretty sure no slip modules weren't a thing when the ERT modsuits were made ## 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. --> 🆑 qol: Nanotrasen has fitted the Janitorial Emergency Response Team with equipment better suited for the job. /🆑 |
||
|
|
9bd2310d38 |
[NO GBP] (Not so) hotfix for ninja cloaking (#85673)
## About The Pull Request Closes #85639 dumb me forgetting to test a specific module weeks ago and it getting past review ## Changelog 🆑 fix: Ninjas can cloak again /🆑 |
||
|
|
97c1af4853 |
Buff to MODsuit deployment time (#85705)
## About The Pull Request Before it took 12 seconds to fully deploy (2 seconds per part) so it's just an awkward standing around moment while you wait for your MOD to activate in front of the airlock. - Increased speed of MODsuit deploy time by 2 times - Increased speed of infiltrator MODsuit deploy time by 4 times ## Why It's Good For The Game One of the reasons why so many players are deterred from MODsuits is how long the deployment or undeployment takes. This change should increase the desire for players to use MODsuits and will raise their value, giving more incentive to produce more, which roboticists barely ever do. The infiltrator MODsuit is supposed to be a sneaky sleek and quick (infiltrating) device, allowing you to quickly disguise your identity and then quickly become inconspicuous. This change allows it to execute that purpose better. ## Changelog 🆑 grungussuss balance: MODsuits now deploy 2 times faster balance: The infiltrator MODsuit now deploys 4 times faster /🆑 |
||
|
|
4b4e9dff1d |
Wallening [IDB IGNORE] [MDB IGNORE] (#85491)
## What's going on here Kept you waitin huh! This pr resprites most all walls, windows and other "wall adjacent" things to a 3/4th perspective, technical term is "tall" walls (we are very smart). If you're trying to understand the technical details here, much of the "rendering tech" is built off the idea of split-vis. Basically, split a sprite up and render it on adjacent turfs, to prevent seeing "through" walls/doors, and to support seeing "edges" without actually seeing the atom itself. Most of the rest of it is pipelining done to accommodate how icons are cut. ## Path To Merge Almost* all sprites and code is done at this point. There are some things missing both on and off the bounty list, but that will be the case forever unless we force upstream (you guys) to stop adding new shit that doesn't fit the style. I plan on accepting and integrating prs to the current working repo <https://github.com/wall-nerds/wallening> up until a merge, to make contribution simpler and allow things like bounties to close out more easily This pr is quite bulky, even stripping away map changes it's maybe 7000 LOC (We have a few maps that were modified with UpdatePaths, I am also tentatively pring our test map, for future use.) This may inhibit proper review, although that is part of why I am willing to make it despite my perfectionism. Apologies in advance. Due to the perspective shift, a lot of mapping work is going to need to be done at some point. This comes in varying levels of priority. Many wallmounts are offset by hand, some are stuck in the wall/basically cannot be placed on the east/west/north edges of walls (posters), some just don't look great good in their current position. Tests are currently a minor bit yorked, I thought it was more important to get this up then to clean them fully. ## What does it look like?       ## Credits <details> <summary>Historical Mumbojumbo</summary> I am gonna do my best to document how this project came to be. I am operating off third party info and half remembered details, so if I'm wrong please yell at me. This project started sometime in late 2020, as a product of Rohesie trying to integrate and make easier work from Mojave Sun (A recently defunct fallout server) with /tg/. Mojave Sun (Apparently this was LITERALLY JUST infrared baron, that man is insane) was working with tall walls, IE walls that are 48px tall instead of the normal 32. This was I THINK done based off a technical prototype from aao7 proving A it was possible and B it didn't look like dogwater. This alongside oranges begging the art team for 3/4th walls (he meant TGMC style) lead to Rohesie bringing on contributors from general /tg/, including actionninja who would eventually take over as technical lead and Kryson, who would define /tg/'s version of the artstyle. Much of the formative aspects of this project are their work. The project was coming along pretty well for a few months, but ran into serious technical issues with `SIDE_MAP`, a byond map_format that allows for simpler 3/4th rendering. Due to BULLSHIT I will not detail here, the map format caused issues both at random with flickering and heavily with multiz. Concurrent with this, action stepped down after hacking out the rendering tech and starting work on an icon cutter that would allow for simpler icon generation, leaving ninjanomnom to manage the project. Some time passed, and the project stalled out due to the technical issues. Eventually I built a test case for the issues we had with `SIDE_MAP` and convinced lummox jr (byond's developer) to explain how the fuckin thing actually worked. This understanding made the project theoretically possible, but did not resolve the problems with multi-z. Resolving those required a full rework of how rendering like, worked. I (alongside tattle) took over project development from ninjanomnom at this time, and started work on Plane Cube (#69115), which when finished would finally make the project technically feasible. The time between then and now has been slow, progressive work. Many many artists and technical folks have dumped their time into this (as you can see from the credits). I will get into this more below but I would like to explicitly thank (in no particular order) tattle, draco, arcanemusic, actionninja, imaginos, viro and kylerace for keeping the project alive in this time period. I would have curled up into a ball and died if I had to do this all myself, your help has been indispensable. </details> <details> <summary>Detailed Credits</summary> Deep apologies if I have forgotten someone (I am sure I have, if someone is you please contact me). I've done my best to collate from the git log/my memory. Thanks to (In no particular order): Raccoff: Being funny to bully, creating threshold decals for airlocks aa07: (I think) inspiring the project ActionNinja: Laying the technical rock we build off, supporting me despite byond trying to kill him, building the icon cutter that makes this possible ArcaneMusic: Artistic and technical work spanning from the project's start to literally today, being a constant of motivation and positivity. I can't list all the stuff he's done Armhulen: Key rendering work (he's the reason thindows render right), an upbeat personality and a kick in the ass. Love you arm Azlan: Damn cool sprites, consistently Ben10Omintrix: You know ben showed up just to make basic mobs work, he's just fuckin like that man BigBimmer: A large amount of bounty work, alongside just like, throwing shit around. An absolute joy to work with Capsandi: Plaques, blastdoors, artistic work early on CapybaraExtravagante: Rendering work on wall frames Draco: SO MUCH STUFF. Much of the spritework done over the past two years is his, constantly engaged and will take on anything. I would have given up if not for you Floyd: Early rendering work, so early I don't even know the details. Enjoy freedom brother Imaginos16: A guiding hand through the middle years, handled much of the sprite review and contribution for a good bit there Iamgoofball: A dedication to detail and aesthetic goals, spends a lot of effort dissecting feedback with a focus on making things as good as they can be at the jump Infrared: Part of the impetus for the project, made all the xenomorph stuff in the MS style Jacquerel: A bunch of little upkeep/technical things, has done so much sprite gruntwork (WHY ARE THERE SO MANY PAINTING TYPES) Justice12354: Solved a bunch of error sprites (and worked out how to actually make prs to the project) Thanks bro! Kryson: Built the artstyle of the project, carrying on for years even when it was technically dying, only stopping to casually beat cancer. So much of our style and art is Kryson KylerAce: Handled annoying technical stuff for me, built window frame logic and fully got rid of grilles. LemonInTheDark: Rendering dirtywork, project management and just so much fucking time in dreammaker editing sprites Meyhazah: Table buttons, brass windows and alll the old style doors Mothblocks: Has provided constant support, gave me a deadline and motivation, erased worries about "it not being done", gave just SO much money to fill in the critical holes in sprites. Thanks moth MTandi: Contributed art despite his own blackjack and hookers club opening right down the road, I'm sorry I rolled over some of your sprites man I wish we had finished earlier Ninjanomnomnom: Consulted on gags issues, kept things alive through some truly shit times oranges: This is his fault Rohesie: Organized the effort, did much of the initial like, proof of concept stuff. I hope you're doin well whatever you're up to. san7890: Consulting on mapper UX/design problems, being my pet mapper Senefi: Offsetting items with a focus on detail/the more unused canidates SimplyLogan: Detailed map work and mapper feedback, personally very kind even if we end up talking past each other sometimes. Thank you! SpaceSmithers: Just like, random mapping support out of nowhere, and bein a straight up cool dude Tattle: A bunch of misc project management stuff, organizing the discord, managing the test server, dealing with all the mapping bullshit for me, being my backup in case of bus. I know you think you didn't do much but your presence and work have been a great help Thunder12345: Came out of nowhere and just so much of the random bounties, I'm kind of upset about how much we paid him Time-Green: I hooked him in by fucking with stuff he made and now he's just doin shit, thanks for helping out man! Twaticus: Provided artistic feedback and authority for my poor feeble coder brain, believed in the project for YEARS, was a constant source of ❤️ and affirmation unit0016: I have no god damn idea who she is, popped out of nowhere on the github one day and dealt with a bunch of annoying rendering/refactoring. Godspeed random furry thank you for all your effort and issue reports Viro: A bunch of detailed spriting moving towards 3/4ths, both on and off the wallening fork. If anyone believed this project would be done, it was viro Wallem: Artistic review and consultation, was my go-to guy for a long time when the other two spritetainers were inactive Waltermeldon: Cracked out a bunch of rendering work, he's the reason windows look like not dogwater. Alongside floyd and action spent a TON of time speaking to lummox/unearthing how byond rendering worked trying to make this thing happen ZephyrTFA: Added directional airlock helpers, dealt with a big fuckin bugaboo that was living in my brain like it was nothing. Love you brother And finally: The Mojave Sun development team. They provided a testbed for the idea, committed hundreds and hundreds of hours to the artstyle, and were a large reason we caught issues early enough to meaningfully deal with them. Your work is a testament to what longterm effort and deep detailed care produce. I hope you're doing well whatever you're up to. Go out with a bang! </details> ## Changelog 🆑 Raccoff, aa07, ActionNinja, ArcaneMusic, Armhulen, Azlan, Ben10Omintrix, BigBimmer, Capsandi, CapybaraExtravagante, Draco, Floyd, Iamgoofball, Imaginos16, Infrared, Jacquerel, Justice12354, Kryson, KylerAce, LemonInTheDark, Meyhazah, Mothblocks, MTandi, Ninjanomnom, oranges, Rohesie, Runi-c, san7890, Senefi, SimplyLogan, SomeAngryMiner, SpaceSmithers, Tattle, Thunder12345, Time-Green, Twaticus, unit0016, Viro, Waltermeldon, ZephyrTFA with thanks to the Mojave Sun team! add: Resprites or offsets almost all "tall" objects in the game to match a 3/4ths perspective add: Bunch of rendering mumbo jumbo to make said 3/4ths perspective work /🆑 --------- Co-authored-by: Jacquerel <hnevard@gmail.com> Co-authored-by: san7890 <the@san7890.com> Co-authored-by: = <stewartareid@outlook.com> Co-authored-by: Capsandi <dansullycc@gmail.com> Co-authored-by: ArcaneMusic <hero12290@aol.com> Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com> Co-authored-by: SomeAngryMiner <53237389+SomeAngryMiner@users.noreply.github.com> Co-authored-by: KylerAce <kylerlumpkin1@gmail.com> Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com> Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com> Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com> Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com> Co-authored-by: Runi-c <5150427+Runi-c@users.noreply.github.com> Co-authored-by: Roryl-c <5150427+Roryl-c@users.noreply.github.com> Co-authored-by: tattle <article.disaster@gmail.com> Co-authored-by: Senefi <20830349+Peliex@users.noreply.github.com> Co-authored-by: Justice <42555530+Justice12354@users.noreply.github.com> Co-authored-by: BluBerry016 <50649185+unit0016@users.noreply.github.com> Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: SimplyLogan <47579821+loganuk@users.noreply.github.com> Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com> Co-authored-by: Rob Bailey <github@criticalaction.net> Co-authored-by: MMMiracles <lolaccount1@hotmail.com> |
||
|
|
06aa7b846a |
Fixes Donk Co. & Waffle Corp Trademark Issues (#85686)
## About The Pull Request All references to "Waffle Co" and "Waffle Company" have been scrubbed and replaced with appropriate branding. "The Waffle Corporation" may be shortened to "Waffle Corporation", "Waffle Corp" or "Waffle Corp." only. All references to "Donk Corp." and "Donk Corporation" have been scrubbed and replaced with appropriate branding. "Donk Company" may be shortened to "Donk", "Donk Co" or "Donk Co." only. ## Why It's Good For The Game Keeps these names consistant and lore accurate. ## Changelog 🆑 spellcheck: fixed many incorrect spellings of Waffle Corp and Donk Co. /🆑 --------- Co-authored-by: BlueMemesauce <47338680+BlueMemesauce@users.noreply.github.com> |
||
|
|
523dc774f2 |
Callouts and MODsuit quick module pickers now track user (#85418)
## About The Pull Request Callout and MODsuit quick picker (Ctrl + MMB) radials are now user-bound, meaning that they won't change their screen position if you move. ## Why It's Good For The Game Those aren't radials bound to specific objects and rather appear at your cursor purely for convenience. In case of callouts this is especially important as you're most likely running while casting them which will make your mouse move over and trigger a random option as you don't have to click to use them. ## Changelog 🆑 qol: Callouts and MODsuit quick module pickers now track user /🆑 |
||
|
|
b9dfb7a44f |
Power cell overlay now updates when exiting an object's contents (#85079)
## About The Pull Request The charge indicator overlay on power cells is now properly updated when the cell is charged/discharged. Before, you could use a power cell until it's empty and the overlay wouldn't change at all. ## Why It's Good For The Game The overlay is there to indicate the charge of the cell. It should work. ## Changelog 🆑 fix: The charge indicators on power cells now work properly. code: Removed some now redundant power cell appearance updates /🆑 --------- Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com> |
||
|
|
3b364b1cea |
Mining MODsuit sprite changes + balance (#85353)
## About The Pull Request Slightly slimmed down the helmet, changed belt into plates, recolored brown parts to blue and added a few more glowy bits to the mining MODsuit.  Here's what it looks like currently  Mining MODsuit now hides belts, has THICKMATERIAL while active and got large capacity storage. Eating apparatus no longer has an on-person sprite. Adjusted drill module active sprite to actually fit on your hand instead of being slightly to the side. ## Why It's Good For The Game Currently the MOD looks a bit goofy, I tried making it a bit more streamlined without removing the bulk and look of a reinforced explorer exosuit. Belts are hidden for the sake of visuals, as almost all miners wear riggings which do not fit with the MOD spritework at all. While inactive it has THICKMATERIAL but for some reason loses it when activated, which doesn't make much sense. Its a thick, armored spacesuit. Eating apparatus isn't a module that people around you need to be acutely aware of, nor did it look particularly good. I tried respriting it but there's not much to be done with 12 pixels worth of space. Large storage is a rather impactful change - currently only loader and advanced (CE's personal) MODs have it, and more can be printed after researching advanced engineering MODsuit designs (from my experience, usually done by ~40 minute mark). Storage space is a very important aspect, and mining MODs already have high competition with ash drake and H.E.C.K. armors. Having less storage makes them a weird sidegrade, arguably even a downgrade, to roundstart explorer gear that has been upgraded with plates; its only real advantage is being able to pass through lava and freeing a pocket previously occupied by your ore satchel due to arcmining nerfing its main purpose (ore mining). While this still is technically worse than roundstart backpacks, this should allow them compete with with other equipment in terms of usability. ## Changelog 🆑 balance: Mining MODsuits are now considered thick clothing and gained expanded storage. image: Mining MODsuits got a slight glowup and hide belts now /🆑 |
||
|
|
2535df375d |
Carps, frogs and young lobstrosities now fear the fishing hat! (#85380)
## About The Pull Request Carps, frogs and young lobstrosities now fear legendary anglers wearing the legendary fishing hat and will flee. The item is skill-locked, so only those that have maxxed out the skill can wear it. Differently, adult lobstrosities and megacarps (and suicide frogs, which are used nowhere) do not flee but will still prioritize them over the rest. ## Why It's Good For The Game I'm putting some emphasis on the "fish fear me" _(lobstrosities and frogs aren't exactly fish but it'd been quite boring to only include carps)_ and also making the hat a bit more than just some cosmetic novelty. ## Changelog 🆑 add: Carps, frogs and young lobstrosities now fear people wearing fishing hats! Adults and megacarp favour the 'fight' part of the fear reflex however. fix: The hat stabilizer module now inherits the clothing traits of the attached hat. /🆑 |
||
|
|
9cc1baedb2 |
Fixes mining MODsuit suit storage (#85342)
## About The Pull Request Closes #85332 #83437 had a copypasting error and ended up giving mining MOD suit storage to loaders instead of mining MODs ## Changelog 🆑 fix: Mining MODsuits now can store everything that explorer suits can /🆑 |
||
|
|
13c713b3f3 |
Projectile dampener, recycler and ninja stealth MOD modules now work properly (#85307)
## About The Pull Request Closes #85207 Projectile dampener didn't delete the field, recycler didn't work period (how did nobody notice it?) and ninja stealth didn't apply silent footsteps trait. Since the beginning. Yeah. I think I got all of these, it shouldn't call empty parent and especially should it not check for returns from it. ## Changelog 🆑 fix: Projectile dampener, recycler and ninja stealth MOD modules now work properly /🆑 |
||
|
|
ddd9f6e05d |
Makes mirage grenade dispensers and ionic jump jets work (#85253)
## About The Pull Request Partially handles #85207 ## Changelog 🆑 fix: Mirage grenade dispensers and ionic jump jets now work /🆑 |
||
|
|
7088097eb8 |
[NO SELF SURGERY] Cybernetically augmented humanoids have alternative surgeries (both standard and advanced) [NO SELF SURGERY], as well as other misc additions (#84980)
<!-- 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 ### Cybernetic variant surgeries Many of the surgeries able to be performed on organic limbs now have a version for robotic limbs. This includes; ### NONE OF THESE ARE SELF SURGERY OPTIONS - Organ repair surgeries - Stomach Pumps - Blood filtering - Autopsies - Lobotomies - Pacification - Lipoplasty - Amputation - Brainwashing (including the Sleeper Agent protocol) - Nerve Splicing and Nerve Grounding - Vein Threading and Vein Muscle Membrane - Ligament Hook and Ligament Reinforcement - Cortex Folding and Cortex Imprint These utilize mechanical steps and unique versions of their special step that uses mechanical tools. But many of these are able to be performed using standard surgery tools. In fact, I've improved the chances for doing surgery using standard tools for mechanical steps, recognizing that medical is often going to end up with synths in medbay whether we like it or not. ### NONE OF THESE ARE SELF SURGERY OPTIONS ### Organ Repair Surgeries correct EMP Failure Cascades When you repair a synthetic organ using the organ repair surgery, it reverses the effects of organ failure from an EMP. That is, the permanent failure of an organ. This allows for an alternative method to replacing that organ wholesale, which makes treating synths a lot easier for medical and EMPs less of a RNG death knell for people with cybernetic organs. However, it still needs the surgery to correct the error, so this isn't removing the danger of being EMP'd. ### Health Scanners report EMP Failure Cascades Scanning someone with a cybernetic organ now actually tells you that the organ is failing. Wow, why wasn't this already the case? ## Why It's Good For The Game #### Surgeries With the new techweb changes, augmented crew are becoming a lot, lot more common place, as are the implantation of cybernetics. These are required for research to be able to progress both medical and robotics technology. Therefore, those using these items are becoming a lot more common place. However, our medical system is quite blind to these people as of the moment. A lot of surgeries that are critical to recovering the injured/dead do not work on them outright, and medical can't resolve the problems that come with cybernetic organs entirely. This change hopefully modernizes our surgeries to account for these synthetic/cybernetically-altered crew members that neither forces people to choose between taking them to medical or robotics (they're often going to end up in medical regardless), and letting either department to function as a place for these crew to obtain medical services. Also gives them some cooler flavour to their surgeries, which I think is the most important part of this change. It actually feels like you're more than human without getting too much in the way of gameplay loops and over complicating things. Edit: To provide a bit of extra clarity on 'Why allow the advanced surgeries?' You can actually have the benefits of the advanced surgeries as an augmented humanoid. The problem is that it has to take place before you are augmented. They're not mutually exclusive, just slow to apply. There isn't much reason for there not to be a method to apply them to robotic people, particularly since augmentations are expected earlier in the round than advanced surgeries. #### EMP Failure and Detection This mechanic is probably what people hate the most about cybernetics. It is largely invisible, and forces you to have to go through a tedious process of organ replacement on what could be any one of your organs, since it wasn't being broadcast to the user which one is failing until you are possibly already doubling over. Now, it is easier for medical staff to identify if they have a cybernetically enhanced patient in the midst of a failure cascade, and have the means to resolve the problem. Robotics and cyborgs can too, since sometimes they'll have the means usually to do the same operations and detection. ## 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. --> 🆑 add: Robotic variants of many of the standard and advanced humanoid surgeries. You cannot perform self surgery with these surgeries. balance: It is easier to do robotic surgeries with normal surgery tools. qol: It is now possible to detect EMP organ failure cascades via health scanners. qol: EMP organ failure cascades can be reversed by doing organ repair surgeries targeting the failing organ. /🆑 <!-- Both 🆑's are required for the changelog to work! You can put your name to the right of the first 🆑 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. --> --------- Co-authored-by: Jacquerel <hnevard@gmail.com> |
||
|
|
9a4386d31d |
deletes wires on atom/destroy() (#85154)
Closes #85132 Fixes #85110 |
||
|
|
5f80128fa9 |
Corrects 200+ instances of "it's" where it should've been "its" instead (#85169)
## About The Pull Request it's - conjunction of "it" and "is" its - possessive form of "it" grammar is hard, and there were a lot of places where "it's" was used where it shouldn't have been. i went and painstakingly searched the entire repository for these instances, spending a few hours on it. i completely ignored the changelog archive, and i may have missed some outliers. most player-facing ones should be corrected, though ## Why It's Good For The Game proper grammar is good ## Changelog 🆑 spellcheck: Numerous instances of "it's" have been properly replaced with "its" /🆑 |
||
|
|
42b2f4dec4 |
Fixes organizer sometimes deleting brains (#85076)
## About The Pull Request Closes #85058 by adding a special = TRUE (essentially organ hotswap) arg to its Remove call, and added a safety check in case insertion fails which should drop the organ. ## Changelog 🆑 fix: Fixes organizer sometimes deleting brains /🆑 |
||
|
|
753a9cf5fa |
Adds a standalone Civilian Modsuit model, available from robotics (#84806)
## About The Pull Request I talked with Fikou on discord about #84801, and he said that it would be fine to make a standalone suit that is slowdown-free but also not spaceproof. So yeah, that's what this is. The civilian skin for the standard modsuit has been turned into a standalone model. It is similar to the loader modsuit that cargo has, in that it has no slowdown while active but doesn't protect you from space. It also has only a complexity limit of 12 instead of the usual 15, and it has abysmal armor values. It also doesn't protect you from pepper spray and the helmet doesn't allow you to use internals or block you from eating. I tweaked the sprites for it as well, removing the visor from the inhand and mob overlay sprites, to better reflect it's lack of spaceproofing. I also whipped up a quick sprite for the civilian mod plating, based off of the medical mod plating since they have similar color schemes. ## Why It's Good For The Game I'm going to just copy and paste what I said in the last PR, because all of it still applies to this one. There are a lot of really cool modsuit modules that are hampered by the other drawbacks that modsuits have. These drawbacks exist for a good reason; space proof suits should have tradeoffs, especially ones available at the start of the round like modsuits are. But that doesn't really solve the problem with the modules. One of the biggest examples of this problem is the pepper shoulders module that comes on security modsuits. It's a very cool module conceptually, but it tends to have limited usefulness in practice. Out in space, whoever you're fighting is likely wearing a spacesuit of their own, which will make them completely immune to the pepper spray. On the station, the person wearing the suit has to deal with the slowdown from it, which will far outweigh any advantage granted by the pepper shoulders module. Another good example is the medical modules, like the surgical processor, organ thrower/organizer, and thread ripper modules. All of these are great for a medical player trying to perform surgery, but who is going to be doing surgery in a depressurized room? All these modules don't mesh well with the design of modsuits as special spacesuits, and the new civilian model will hopefully give them more room to be used. ## Changelog 🆑 add: Added the civilian modsuit module as a standalone model. It offers no slowdown while activated but does NOT protect you from the void of space. You can print the plating from an exosuit fabricator and build it like a normal modsuit. del: Removed the civilian skin from the standard modsuit, as it is now a standalone model. image: Tweaked the sprites for the civilian modsuit head, both in-hand and on the mob. Also added a civilian mod plating sprite. /🆑 |
||
|
|
7d31b79672 |
Jetpacks on sec mods are pinned by default (#85041)
## About The Pull Request Sec mods didn't have their jetpacks pinned by default, like on the rest of the mods ## Why It's Good For The Game consistency and quality of life is good ## Changelog 🆑 qol: secmods jetpacks are now pinned by default /🆑 |
||
|
|
dfb12f91d6 |
HUD traits now apply their corresponding hud automatically. Most clothing/item/etc sources of HUDs now only use traits (#84984)
## About The Pull Request Currently if you want to apply a HUD you usually add both its trait and the HUD itself. Only exceptions are things like simplemobs where you should avoid adding the hud trait since it adds security/med DB access and such, but there is no cases where you'd want to apply the trait and not apply the hud. Requested by Melbert about a week ago.  ## Why It's Good For The Game This makes working with HUDs significantly easier, as you no longer have to bother with manually adding/removing them. Also potentially removes an edge case where if your hud could get removed while keeping the trait. ## Changelog 🆑 refactor: HUD traits now apply their corresponding hud automatically /🆑 |
||
|
|
abd0a76c57 |
Fixes kinesis runtime due to un-unregistering signals (#85037)
## About The Pull Request Kinesis MODsuit module currently runtimes if you try to grab an item you already grabbed and released before because the signals aren't unregistered. ## Changelog 🆑 fix: Fixed kinesis runtime due to un-unregistered signals /🆑 |
||
|
|
4e68b0b208 |
You can properly aim mining bombs at turfs now (#85006)
## About The Pull Request Due to lacking can_target_turfs mining bombs currently travel until they hit a solid object or reach their range, making aiming often frustrating. ## Why It's Good For The Game This doesn't have a balance impact but makes mining with them a bit easier as you can actually position them where you want. ## Changelog 🆑 qol: You can properly aim mining bombs at turfs now /🆑 |
||
|
|
34f3f479ae |
Small hulk cleanup / nukes TRAIT_IGNOREDAMAGESLOWDOWN (#85003)
## About The Pull Request I was investigating a bug with hulk in which using it while damaged doesn't put you back on full speed I noticed `TRAIT_IGNOREDAMAGESLOWDOWN` on its own was subtly broken, in that it did nothing if the user did not call `updatehealth` afterwards And guess what, most (if not all) uses of the trait did not do this, so it never applied correctly So I nuked the trait entirely, made all uses of it use the same thing morphine uses (`/datum/movespeed_modifier/damage_slowdown`) And since I was auditing this I saw the ball module was broke, it removed the immunity but never added it. Quick fix I also cleaned up some Hulk stuff while I was in the area because I was in the area. I removed all instances of `check_mutation` and replaced it with trait checking because it made more sense. I also also fixed a bug with the simple flying element never removing on detach because I touched something that uses it for the above change. ## Changelog 🆑 Melbert fix: Using hulk (and a myriad of similar effects) now properly updates your movespeed to ignore the damage movespeed penalty fix: Some things which temporarily make you fly don't make you fly forever fix: MODsuit ball module now properly makes you immune to damage movespeed penalty when in ball form fix: Adding Hulk via VV dropdown doesn't default to adding the strongest hulk available (that which is used by the medieval pirates) /🆑 |
||
|
|
e2b755c728 |
If you can't shoot a gun, then... JUST TOSS IT AT THEM (#84827)
## About The Pull Request Adds a new trait TRAIT_TOSS_GUN_HARD (which currently comes from the Sleeping Carp scroll, ninja MODsuit, berserk armor, being a medieval pirate or highlander). The owner of this trait deals an additional **10-20** (depending on the size of the weapon) damage to the enemy by throwing a gun, and also knocks them for 0.5 seconds. If a ballistic weapon **with a magazine** was thrown, then the magazine is removed and the bolt is racked, and if **without a magazine**, then all cartridges (revolvers) or chambered one is removed. Here's a preview of how it works: https://github.com/tgstation/tgstation/assets/126676387/2a56eb74-6d37-4343-a685-3bf7159ab628 ## Why It's Good For The Game It's classic  ## Changelog 🆑 add: If you can't shoot a gun, then... JUST TOSS IT AT THEM (for 0.5 seconds of knockdown and 10-20 an additional brute damage) /🆑 --------- Co-authored-by: paganiy <leunscrupuloustrolle@gmail.com> |
||
|
|
1b5c3fdb36 |
You can implant yourself with pathfinder MOD implant while you're wearing the suit (#84927)
## About The Pull Request Pathfinder MODule now starts as a usable module which can be triggered in order to implant MOD's wearer. ## Why It's Good For The Game Its a very cool module which unfortunately is severely hampered by having to open the suit and pull it out to eject. This doesn't have any impact on balance, but does make people more likely to use it in-game as its now not as bothersome to set up. Who even knew that captain's MODsuit has it? ## Changelog 🆑 qol: Pathfinder MODule can now be triggered while wearing the MODsuit to implant yourself without having to pull it out of the suit. /🆑 |
||
|
|
bb696fc33c |
Using ctrl + your quick MOD button now opens module selector on your mouse position (#84879)
## About The Pull Request Title. Ctrl + middle by default, can be ctrl + alt + LMB if changed in prefs. Both are unused and default to ctrl/alt click behavior respectively. ## Why It's Good For The Game A quick way to change modules. You *can* bind your module wheel to a hotkey but that still opens it on your sprite, making it harder to quickly swap modules in combat/danger. ## Changelog 🆑 qol: Using ctrl + your quick MOD button now opens module selector on your mouse position /🆑 |
||
|
|
3b8ab52e3e |
Fixes MOD hypospray using incorrect fill sprites (#84875)
## About The Pull Request After the syringe resprite their fill sprites no longer fit MOD hypos, so I added proper fill textures for them. Closes #81469 ## Why It's Good For The Game Current ones look jank and are going outside of the hypo ## Changelog 🆑 image: MOD hyposprays no longer use syringe fill sprites /🆑 |
||
|
|
968c98a5ba |
Fixes mod paint kit (#84835)
## About The Pull Request After all the attack chain refactors, the modsuit paint kit was bugged. If you tried to use it on a modsuit that had storage installed, then the paint kit would simply be inserted into the modsuit instead of allowing you to change the skin/color. Fixes #84620 Fixes #84490 ## Changelog 🆑 fix: The modsuit paint kit is no longer broken. /🆑 |
||
|
|
43e62163fe |
Adds a Contraband trait, and implements contraband as a mechanic to security bounties. (#84003)
## About The Pull Request This PR does a few things but centrally it's all centered around mechanically enforcing what items are and are-not considered contraband in-game. ### What does something being contraband MEAN? Contraband items are visually indistinguishable from non-contraband. If an item is Contraband, it can only be detected in two ways: * After being scanned by an N-Spect scanner, which is a standard item security item, assuming it still has a charge to do so. * Via a scanner gate, which can now be upgraded with an N-spect scanner to allow for it to scan a person and all their contents for contraband. ### What items ARE contraband? Contraband items are intended to be determined both logically and through other relevant examine text. However, here's the short list of items that are considered contraband, reserving the right to expand the list. <details> <summary>In hindsight it's kind of a long list.</summary> * Items that have "contraband" or "illegal" in the name or description. * Items that allow for the player to obtain other illegal items, that are NOT particularly stealthy. * This means that a syndicate uplink is NOT considered contraband, as they're typically hidden on your person as something else. * Stealth items under the syndicate uplink, the revolutionary flash, and some mapped in dangerous items that can come from both syndicate and company-aligned resources are not considered dangerous. * Items that are purchased from cargo after emagging or switching to extended cargo range. * Items purchased FROM syndicate uplinks, the wizard knowledge scroll, or other antagonist shops. * Cursed artifacts/tools magically produced by cultists or heretics. * Items purchased from the blackmarket. * Items purchased from the contraband section of vending machines. * Some drugs and overtly dangerous or criminal byproducts. </details> ### How does this interact with the round? Well, primarily, this is an aid for in-game enforcement of space law. Based on the length of the above list, we have a LONG, LONG list of items in-game that are technically considered, in one way or another, illegal to have on the station, and yet without either metaknowledge of what those items are, or how they're used, security officers lack some of the certainty of how to deal with these kinds of encounters. Additionally to the knowledge aspect of this trait, security officers may now receive a new civilian bounty to collect items that are considered contraband, also giving them an incentive to look for and confiscate contraband that's been found across the station while upholding space law. ### Other minor changes that I rolled into this Security has a bounty for 3 different rechargers, and considering access limitations, most security players aren't going to make this exchange, so I've lowered the required amount down to 1. Adjusted the N-spect scanner's description to match it's new functionality. The Civilian bounty TGUI now has an additional 1 point of padding to make it feel less cramped. https://github.com/tgstation/tgstation/assets/41715314/c3cd4752-b03a-4e0b-959e-1252fcc2369d **Updated as of 6/19/2024:** Additionally, some storage items will block the presence of contraband when going through a contraband aligned scanning gate. These items include the infiltrator modsuit core, storage implant, void cloak, the aptly named smuggler's satchel, and the chameleon kit's backpack. **Updated as of 6/23/2024:** N-spect scanner now has contextual screentips. **Updated as of 6/29/2024:** Scanner gates are now available in all lathes that have a feature specific to how scanner gates function. So, includes cargo (contraband), security (weapons), and medbay (diseases). ## Why It's Good For The Game Originally, this started out as a way to be able to provide more in-character and in-flavor bounties for security officers, because they suck! Most security bounties as they exist right now do the worst possible things from all respective bounties: * They detract away from a job's actual responsibilities as opposed to working with them. * They're best completed while sitting next to your lathe and running items back to the bounty pad. * They exist with such esoteric rarity of high quantity of items that it's miserable to fulfil. As a result, I started work on this as a framework to allow security officers to be further incentivized to collect contraband across the station, either as a result of the gamemode or just through routine patrols across the station. Implementing it as a learning tool for security as well just happened to work out as an additional bonus, and having a function in-game allowing newer or less experienced players to know if an item is considered dangerous or conspicuous also works as a particularly good way to provide information where a player may not know what they're up against. If nothing else, this might be interesting to try, and if not, I'll just snip out the QOL changes from it and we'll see how it goes. Going forward, I am a bit hesitant about the contraband scanner gate mode, and as such, will try working with the admin team to determine if that's a good feature to keep around for game health, while hoping to give it a chance in the fullness of time. ## Changelog 🆑 add: Items spawned via traitor uplinks or are known illegal contraband on the station can now be scanned and identified as such by the N-spect scanners in security. These only applies to overt traitor or antagonist items, and "stealth" items will not be seen as such. add: Scanner gates can now be upgraded by using an N-spect scanner on it to unlock "contraband scanning" mode. add: Security officers can now be offered a bounty to turn in pieces of contraband. add: Some stealthy storage items like storage implants, smuggler's satchels, void cloaks, the infiltrator modsuit, and the chameleon backpack will block the presence of contraband on your person when placed inside. qol: N-spect scanner contextual screentips. balance: Recharger security bounties ask for a quantity of 1, down from 3. qol: security, cargo, and medbay have access to scanner gate boards. /🆑 --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> |
||
|
|
0cb765a5e0 |
Creates an EMP act for Jetpacks + minor buffs to sec modsuits (#84582)
## About The Pull Request Jetpacks are now vulnerable to EMP, they get disabled for a few seconds after getting hit by an EMP blast. Sec modsuits now start with the jetpack module preinstalled instead of the mirage module, and their starting powercell has been upgraded. ## Why It's Good For The Game It's no secret that regular jetpacks and your run of the mill eva suit see far more use than actual security issued equipment. Having your best option available from the start of the shift is just boring, and doesn't encourage the crew to even engage with Modsuits in any way. With this PR i'm introducing a weakness to jetties by having em turn of for 4 seconds if you get hit by a pulse. In exchange sec mods are now a bit more suited for their job, Mirage module has been swapped with Jetpack module and they now spawn with a better cell. ## Changelog 🆑 balance: Jetpacks are now briefly disabled by EMP. balance: Mirage module has been removed from Sec modsuits. balance: Security modsuits now spawn with a better cell and the jetpack module preinstalled. /🆑 |
||
|
|
b6c84135c3 |
Refactors embedding to use datums instead of storing data in bespoke elements (#84599)
## About The Pull Request This refactors embedding elements to make them use singleton datums (similarly to armor) instead being bespoke and creating a new element every time armor values are supposed to be adjusted. Default values have been removed from defines due to now being declared in base class itself. Additionally fixes vending machines and tackling gloves setting generated shards (which they instantly embed into their victim) embed properties to null after running the embedding code, despite said shards having non-null embedding values by default, making them not be able to embed into anyone else, also potentially breaking the pain/jostling code if they somehow get updated. ## Why It's Good For The Game Current embedding system is an unnecessarily complicated mess as bespoke elements are hard to work with, and creating a new element every time you change values is hacky at best. This change should make it easier to read and work with. ## Changelog 🆑 fix: Fixed glass shards generated from falling vending machines or tackling windows not being able to embed into anyone. refactor: Refactored embedding code to use datums instead of bespoke elements and ugly associated lists. /🆑 |
||
|
|
27b6279ce1 |
All jetpacks are no longer full-speed (#84712)
## About The Pull Request Full-speed has been removed from jetpacks All jetpacks are now modsuit jetpack speed Due to having no purpose now, Adv. Ion Jetpack has been replaced with its lesser form, Ion Jetpack ## Why It's Good For The Game The meta to just blow up gravity and use your jetpack that makes you faster than 99% of the projectiles ingame and faster than a healthy full mood human to dunk on literally anyone you see because they cant click you because youre going mach 3000 is absolutely not fair With jetpacks being reasonable speeds this is no longer a problem ## Changelog 🆑 balance: All jetpacks are now modsuit jetpack speed del: Adv. Ion Jetpack module has been removed /🆑 |
||
|
|
b83b169603 |
Renames the organ thrower to the 'organizer' and clears up its description (#84534)
## About The Pull Request Renames the organ thrower to the 'organizer' and clears up its description. ## Why It's Good For The Game The organ thrower is a very silly module, and i do like it, but did you know that it instantly replaces organs? As in, the organ is removed and swapped instantly? And it can store multiple, making organ manipulation surgeries eerily instant? The description is funny, but it forsakes accuracy for amusement's sake. I did my best to keep it both funny and accurate, accurately describing its actual function now. I also changed the name, because similarly, it wasn't very descriptive. Jacquerel suggested 'organizer' which is a hilarious pun and I'm all for it, even if it does also lack some accuracy which was supposed to be the intention of the PR. ## Changelog 🆑 spellcheck: Renamed the organ thrower module to the 'organizer' spellcheck: Made its description more accurate. Did you know it instantly replaces up to 5 organs in active surgery? /🆑 |
||
|
|
d9315067a0 |
Fixes ninja's adrenaline boost modsuit module not recharging (#84678)
## About The Pull Request Makes `adrenaline_boost ` use higher attack chain signal, so you can actually recharge it instead of putting beaker in modsuit storage. ## Why It's Good For The Game Functioning modsuit modules are good ## Changelog 🆑 fix: fixed ninja's adrenaline boost module not being rechargable /🆑 |
||
|
|
2c1543d1a0 |
Projectile Dampener field now reduces stuns and stamina damage from incoming projectiles (ebow projectiles in particular) (#84284)
## About The Pull Request Projectile Dampener field now reduces stuns and stamina damage from incoming projectiles. Stamina damage is reduced by the same value as damage, stuns and knockdowns by 33% ## Why It's Good For The Game This is a pretty cool but underused module, and it doesn't really make sense in my opinion that it only affects damage. It should affect any other meaningful value the projectile has, which fits in with the flavor and makes the item more valuable and usable. It doing absolutely nothing to disabler shots is unintuitive and lame. You can always just baton them. ## Changelog 🆑 add: Projectile Dampener field now reduces stuns and stamina damage from incoming projectiles /🆑 |
||
|
|
e90a9b4b68 |
Flattens The Floor Plane (Camera Update Too) (#84350)
## About The Pull Request Ok so like, side map right? It makes things higher up in the world render above things lower down in the world. Most of the time this is what we want, but it is NOT what we want for floors. Floors are allowed to be larger then 32x32, and if they are we want them to render based off JUST their layer. If we don't allow this grass turfs and others get cut off on their bottom edge, which looks WEIRD. In order to make this happen, we can add TOPDOWN_LAYER to every layer on the floor plane and disable sidemap. I've added documentation for this to VISUALS.md, and have also implemented unit test errors to prevent mixing TOPDOWN layers with non topdown planes (or vis versa). This new test adds ~1 second to tests, which is I think a perfectly scrumpulent number. EDIT: I nerd sniped myself and implemented sidemap layering and lighting for cameras (also larger then 32x32 icon support for getflat) The lighting isn't perfect, we don't handle things displaying in the void all that well (I am convinced getflat blending is broken but I have no debugger so I can't fix it properly), but it'll do. This came up cause I had to fix another layering issue in cameras and thought I might as well go all in.  ## Why It's Good For The Game Old:  New:  ## Changelog 🆑 fix: Grass turfs will render properly now. Reworked how floors render, please report any bugs! fix: Cameras now properly capture lighting fix: The layering seen in photos should better match the actual game /🆑 |
||
|
|
e4c5c2fc2a |
Allows for proxy atoms in object melee attack chain (#83860)
## About The Pull Request 1. Objects now have an `get_proxy_for()` proc. This returns an atom that will participate in the object melee attack chain on behalf of your atom. Allows for general purpose polymorphism per object interaction 2. Cleaned up some multitool acts to accommodate proxy behaviour 3. You can pry tiles as an Engiborg with crowbar in hand & do other similar behaviour with crowbar 5. Improves & Depends on #83880. We don't need a hidden omni toolbox & can create the tools directly in the omnitool and pass them in the attack chain as a proxy rather than calling the attack chain manually. All tools are on the borg directly - Fixes #84355 - Fixes #84359 - Fixes #84393 ## Changelog SyncIt21,zxaber 🆑 fix: omni crowbar tool interaction for replacing tiles has been fixed fix: techfab screentip does not runtime when you hover over it with an omnitool multitool fix: medi borgs can do brain surgery again code: improved multitool & general tool code for some machines /🆑 --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> |
||
|
|
4aa7bae77a |
Moves tool use back higher in the chain, but makes it so tool acts are only called on non-combat-mode (#84083)
## About The Pull Request ### Dilemma So we've been running into a dilemma recently as we move more and more items over (#84070, #83910) Some things like modsuits, tables, washing machines, storage items want to do their tool acts before their item interactions In the past this was perfectly fine, because it was `tool_act` -> `attack`, but now it's a problem, because it's `item_interaction` -> `tool_act` -> `attack`. Rather than resort to snowflaking, my idea is that we can move tools back up the chain so deconstruction and other similar effects are handled first, before anything else like putting the tool onto the table. ### So why does it require non-combat-mode? A large amount of tool acts early return if the user's on combat mode to allow the user to smack the thing instead of using the tool on it. So I've decided to walk back on what I said like a week ago and make this standardized behavior. ### Misc Reintroducing `tool_act` as a proc that exist means that atoms can easily hook certain interactions that must happen very high in the click chain, such as doing something that block storage insertion. Moves some of the behaviors I put on the (admittedly rather hacky) new proc to that. (Also cleaned up a bit of lockbox and medbot code) ## Changelog 🆑 Melbert fix: Fixed modsuit interactions slightly. No longer requires combat mode to use tools on it, plasma core works as intended as well. (Using combat mode, however, will make you insert the item) refactor: Refactored lockboxes refactor: Refactored medbot skin application /🆑 |
||
|
|
044e2cebce |
Fixes head protector modules doing...nothing (#84346)
## About The Pull Request The head protector module actually applies the trait appropriately. ## Why It's Good For The Game Apparently head protection started at the hands. ## Changelog 🆑 fix: Headprotector modules and constructor modules work properly once more. /🆑 |
||
|
|
0db2a23faf |
Adds a new power storage type: The Megacell. Drastically reduces power cell consumption/storage. [MDB Ignore] (#84079)
## About The Pull Request As the title says. A standard power cell now only stores 10 KJ and drains power similar to how it did before the refactor to all power appliances. The new standard megacell stock part stores 1 MJ (what cells store right now). APCs and SMESs have had their power cells replaced with these megacell stock parts instead. Megacells can only be used in APCs and SMESs. It shouldn't be possible to use megacells in any typical appliance. This shouldn't change anything about how much 'use' you can get out of a power cell in regular practice. Most should operate the same and you should still get the same amount of shots out of a laser gun, and we can look at expanding what can be switched over to megacells, e.g. if we want mechs to require significantly more power than a typical appliance. Thanks to Meyhazah for the megacell icon sprites. ## Why It's Good For The Game Power cell consumption is way too high ever since the power appliance refactor that converted most things to be in joules. It's a bit ridiculous for most of our machinery to drain the station's power supply this early on. The reason it's like this is because regular appliances (laser guns, borgs, lights) all have a cell type that is identical to the APC/SMES cell type. And it means that if we want to provide an easy way to charge these appliances without making it easy to charge APCs/SMESs through a power bug exploit, we need to introduce a new cell type to differentiate between what supplies power and regular appliances that use power. This is primarily what the megacell stock part does. This moves us back to what it was originally like before the power refactor, where recharging power cells wouldn't drain an exorbitant amount of energy. However, it maintains the goal of the original refactor which was to prevent people from cheesing power generation to produce an infinite amount of power, as the power that APCs and SMESs operate at is drastically different from the power that a regular appliance uses. ## Changelog 🆑 Watermelon, Mayhazah balance: Drastically reduces the power consumption and max charge of power cells balance: Added a new stock part called the battery, used primarily in the construction of APCs and SMESs. add: Suiciding with a cell/battery will shock you and potentially dust you/shock the people around you if the charge is great enough. /🆑 --------- Co-authored-by: Watermelon914 <3052169-Watermelon914@users.noreply.gitlab.com> Co-authored-by: Pickle-Coding <58013024+Pickle-Coding@users.noreply.github.com> |
||
|
|
22735f1b5f |
Fixes the Infiltrator Module not having the correct welder protection and not adding the correct traits, improves welding protection defines. (#84240)
## About The Pull Request The Infiltrator module provides the same welding protection as the welding protection module, which it is not compatible with but is meant to be analogous with. The module properly adds the traits it is meant to add on activation. Updates the definitions for the welding flash protections so that they are more clear as to what they mean. ## Why It's Good For The Game https://github.com/tgstation/tgstation/pull/84112 added higher protections to the engineering module, but did not update the Infiltrator module which also provides this protection. Easy mistake. The module was not correctly adding the head protection trait is meant to be providing. This resolves that. The definitions were still not clear as to what level of protection they were supposed to provide. There is an arbitrary value of protection level in the game, there is no way to get a 'maximum' value. |
||
|
|
10d1740c94 |
MODsuit welding module protects flash-sensitives from flashes (#84112)
## About The Pull Request ```php desc = "A module installed into the visor of the suit, this projects a \ polarized, holographic overlay in front of the user's eyes. It's rated high enough for \ immunity against extremities such as spot and arc welding, solar eclipses, and handheld flashlights." ``` ## Why It's Good For The Game This module projects a screen on the inside of the MODsuit, why would it not protect flash-sensitives. ## Changelog 🆑 grungussuss fix: Welding protection module for MODsuits protect flash-sensitives from welding arcs /🆑 --------- Co-authored-by: san7890 <the@san7890.com> |
||
|
|
b6369a47b4 |
Mouse drag & drop refactored attack chain (#83690)
## About The Pull Request
Mouse drag & drop has been refactored into its own attack chain. The
flowchart below summarizes it

Brief summary of each proc is as follows
**1. `atom/MouseDrop()`**
- It is now non overridable. No subtype should ever touch this proc
because it performs 2 basic checks
a) Measures the time between mouse down & mouse release. If its less
than `LENIENCY_TIME`(0.1 seconds) then the operation is not considered a
drag but a simple click
b) Measures the distance squared between the drag start & end point. If
its less than `LENIENCY_DISTANCE`(16 pixels screen space) then the drag
is considered too small and is discarded
- These 2 sanity checks for drag & drop are applied across all
operations without fail
**2. `atom/base_mouse_drop_handler()`**
- This is where atoms handle mouse drag & drop inside the world. Ideally
it is non overridable in most cases because it also performs 2 checks
- Is the dragged object & the drop target adjacent to the player?.
Screen elements always return true for this case
- Additional checks can be enforced by `can_perform_action()` done only
on the dragged object. It uses the combined flags of
`interaction_flags_mouse_drop` for both the dragged object & drop target
to determine if the operation is feasible.
We do this only on the dragged object because if both the dragged object
& drop target are adjacent to the player then `can_perform_action()`
will return the same results when done on either object so it makes no
difference.
Checks can be bypassed via the `IGNORE_MOUSE_DROP_CHECKS` which is used
by huds & screen elements or in case you want to implement your own
unique checks
**3. `atom/mouse_drop_dragged()`**
- Called on the object that is being dragged, drop target passed here as
well, subtypes do their stuff here
- `COMSIG_MOUSEDROP_ONTO` is sent afterwards. It does not require
subtypes to call their parent proc
**4. `atom/mouse_drop_receive()`**
- Called on the drop target that is receiving the dragged object,
subtypes do their stuff here
- `COMSIG_MOUSEDROPPED_ONTO` is sent afterwards. It does not require
subtypes to call their parent proc
## Why It's Good For The Game
Implements basic sanity checks across all drag & drop operations. Allows
us to reduce code like this
|