mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-06-21 22:24:09 +01:00
088409bbe376a7adcd4d1fb747cf4a5e4f257c5b
751 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
ad111f4950 |
Spacemove refactor - Newtonian physics (#84869)
## About The Pull Request This PR significantly enhances how zero-g movement works. Its no longer locked to one of 8 directions, everything now has inertia and is affected by weight. This means that throwing a piece of wire will no longer completely reverse your movement direction, and that being thrown out of mass driver no longer will slow you down to a halt at some point. This leads to following gameplay changes: * Guns now accelerate you. Ballistics have higher acceleration than lasers, and higher calibers have higher acceleration than smaller ones. This means that firing full-auto weapons in zero-g will make you drift and accelerate significantly. While this can be a hilarious way to travel in space, it makes using them trickier. * Impacting a wall or an object while moving at high speeds will cause you to violently crash into it as if you were thrown. Careful when exploring! * Jetpacks now have inertia. Changes introduced in #84712 have been mostly reverted, although speed buff has been reduced to 0.3 instead of 0.5 (although this is compensated by new movement mechanics, so overall speed should be roughly equal). All MODsuit jetpacks now possess the speed boost. Advanced MODsuit jets (which has also been added back) and captain's jetpack instead have higher acceleration and stabilization power, providing much more precise control over your movement. * Firing guns while moving on a jetpack will partially negate your pack's acceleration, slowing you down. Non-advanced jetpacks' stabilization is not enough to compensate for heavy caliber weaponry as sniper rifles, shotguns or rocket launchers. * You no longer instantly decelerate upon sliding along a wall. Instead, it may take a few tiles if you are moving at extreme speeds. Passing over lattices still allows you to grab onto them! As space movement is angle-based instead of dir-based now, its much more smooth than before due to using new movement logic. Example of jetpack stabilization in action: https://github.com/tgstation/tgstation/assets/44720187/6761a4fd-b7de-4523-97ea-38144b8aab41 And, of course, you can do this now.  **This pull request requires extensive gameplay testing before merging**, as a large amount of numbers have been picked arbitrarily in an attempt to keep consistency with previous behavior (guns and normal-sized items applying 1 drift force, which is equal to what everything applied before this PR). Jetpacks and impacts may also require adjustments as to not be frustrating to use. Closes #85165 ## Why It's Good For The Game Zero-G refactor - currently our zero-g movement is rather ugly and can be uncomfortable to work with. A piece of cable being able to accelerate you the same as a duffelbag full of items when thrown makes no sense, and so does instantly changing directions. Inertia-based version is smoother and more intuitive. This also makes being thrown into space more of a hazard (possibly opening the door for explosive decompressions?) Jetpack inertia and gun changes - this is mostly a consequence of inertia-based movement. However, zero-g combat being preferred during modes like warops was an issue due to it negatively affecting everyone without jetpacks which are in limited supply onboard. This reverts the mobility changes which severely impacted space exploration, while making zero-g combat more dangerous and having it require more skill to be a viable option. ## What's left - [x] Refactor moth wings to use jetpack code - [x] Refactor functional wings to use jetpack code - [x] Locate and fix a recursion runtime that sometimes occurs upon splattering against a wall - [x] Add craftable tethers and modify engineering MOD tethers to use the same system ## Changelog 🆑 add: You can now craft tether anchors, which can be secured with a wrench and attached to with right click. They won't let you drift into space and you can adjust tether length/cut it via lmb/rmb/ctrl click on the wire. add: MOD tethers now remotely place and connect to tether anchors instead of throwing you at where they landed. balance: MOD tethers can now be used in gravity balance: Jetpacks are now inertia-based. balance: Guns can accelerate you significantly in zero-g. balance: All jetpacks now give you equal speed buff, however advanced MOD ion jets and captain's jetpack have higher acceleration/deceleration values. refactor: Refactored zero-g movement to be inertia-based and utilize angles instead of directions. /🆑 |
||
|
|
58501dce77 |
Reorganizes the sound folder (#86726)
## About The Pull Request <details> - renamed ai folder to announcer -- announcer -- - moved vox_fem to announcer - moved approachingTG to announcer - separated the ambience folder into ambience and instrumental -- ambience -- - created holy folder moved all related sounds there - created engineering folder and moved all related sounds there - created security folder and moved ambidet there - created general folder and moved ambigen there - created icemoon folder and moved all icebox-related ambience there - created medical folder and moved all medbay-related ambi there - created ruin folder and moves all ruins ambi there - created beach folder and moved seag and shore there - created lavaland folder and moved related ambi there - created aurora_caelus folder and placed its ambi there - created misc folder and moved the rest of the files that don't have a specific category into it -- instrumental -- - moved traitor folder here - created lobby_music folder and placed our songs there (title0 not used anywhere? - server-side modification?) -- items -- - moved secdeath to hailer - moved surgery to handling -- effects -- - moved chemistry into effects - moved hallucinations into effects - moved health into effects - moved magic into effects -- vehicles -- - moved mecha into vehicles created mobs folder -- mobs -- - moved creatures folder into mobs - moved voice into mobs renamed creatures to non-humanoids renamed voice to humanoids -- non-humanoids-- created cyborg folder created hiss folder moved harmalarm.ogg to cyborg -- humanoids -- -- misc -- moved ghostwhisper to misc moved insane_low_laugh to misc I give up trying to document this. </details> - [X] ambience - [x] announcer - [x] effects - [X] instrumental - [x] items - [x] machines - [x] misc - [X] mobs - [X] runtime - [X] vehicles - [ ] attributions ## Why It's Good For The Game This folder is so disorganized that it's vomit inducing, will make it easier to find and add new sounds, providng a minor structure to the sound folder. ## Changelog 🆑 grungussuss refactor: the sound folder in the source code has been reorganized, please report any oddities with sounds playing or not playing server: lobby music has been repathed to sound/music/lobby_music /🆑 |
||
|
|
0d18126348 |
Adds checks for mech Hydraulic clamp action (#86789)
## About The Pull Request - Fixes #86613 ## Changelog 🆑 fix: moving or rotating a mech will cancel its hydraulic clamp action /🆑 |
||
|
|
a4328ae1f9 |
Audits tgui_input_text() for length issues (#86741)
Fixes #86784
## About The Pull Request
Although some of the issues found were a direct result from #86692
(
|
||
|
|
a4e7929a3b |
Lighters use welding fuel and can be used as welders in some cases (#85941)
## About The Pull Request Lighters now have welding fuel which can be filled/extracted by hand, giving a small but consistent source of welding fuel for non-chemists. Welding fuel is now required for these lighters to work, they'll close automatically once they're out of fuel. They last for a minute, zippo lasts 2 minutes, before they need to be refuelled. It can have other reagents put into it but it only checks for welding fuel, so it won't work at all unless its got some. They can be used as welding tools in minor cases, mostly fixing things and welding doors shut, but can't do big things like deconstruction, except the xenobio one because it's a lot hotter than the normal lighter. Also added a baseline support to check for heat to perform certain welds, before heat is just this binary "has or doesnt have heat", which made its value useless. ## Why It's Good For The Game Adds a ghetto way of getting welding fuel, hiding reagents, and a ghetto welding tool without being something that prisoners could break out of prison with. They could weld the doors shut which is a little funny, security still has proper welding tools to counter it. It also currently is kinda lame that lighters could just be open 24/7, unlike matches which has a lifespan of 10 seconds each or something. ## Changelog 🆑 add: Lighters now use and require welding fuel to work, but can be used as a welding tool for tasks that don't require much heat. /🆑 --------- Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> |
||
|
|
e61afc4318 |
New Syndicate Stealth MODule: Wraith. (#86449)
## About The Pull Request Introduces a new MODule in the uplink, makes the user transperent and grants the ability to siphon light sources to recharge your suit. Ingame demonstration: https://www.youtube.com/watch?v=bhXNOAMDy4U ## Why It's Good For The Game I've been playing a ton of Splinter Cell and Intravenous recently and this random idea popped in my head. "Wouldn't it be cool if traitors could blend in the darkness to get a jump on their opponents?" Also unrelated "Wouldn't it be cool if tots had a tool to recharge their suit that didn't involve sitting in a pod for 10 minutes?" This PR introduces a new module to the uplink, the Wraith. It comes with a passive and active component. Passively it works exactly like the crew version of the cloaking module with just a couple of differences. 1) Doesn't need to be manually activated, if you lose the cloak it's regained after 5 seconds. 2) Lower stealth alpha value( how trasperent you are basically), slightly less visible than the crew version, not as good the ninja module however , I tuned it just enough so that you are more or less undetectable in the dark. The active component of the module lets you destroy stationary lights to recharge your suit power, if used on handheld or borg lights it turns them off for a minute. **Why do we need this module when we already have the stealth implant and the chameleon projector?** I can think of a few reasons. 1) MODsuits were designed to be customizible, traitor suits range between 6 to 16 TC, having to invest in a 7-8 TC item after you already bought a suit is fairly expensive. 2) This MODule would be a better fit for ambushes, as it doesn't have the *uncloaking* delay of its counterparts. It is however considerably worse if you get caught, as the cloak is disrupted on bump or damage. 3) It has better interactions with the sandbox. Lights can go out for many reasons, maybe it’s just a power outage, or some assistant broke it, or maybe it was anightmare. It leaves room for plausible deniability, adding to the paranoia. It's also not complete invisibility, if you want to stay undetected you need to lurk in the darkness, you might expand your domain, at the cost of the crew eventually wising up to your shaeneningans. Lastly, since the active component of the module uses the same proc of the saboteur handgun, I've updated the code to be a generic proc rather than a signal, to make it easier to reuse in the future. Item desc provided by NecromancerAnne. Module sprite made by Orcacora. ## Changelog 🆑 add: The Wraith Cloaking Module is now available in the uplink, costs 3 TC. code: the saboteur handgun now uses a generic proc rather than a signal /🆑 --------- Co-authored-by: Xander3359 <66163761+Xander3359@users.noreply.github.com> Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> |
||
|
|
c24dcb625c |
Fixes broken malf AI shunting, fixes AI dying when they move a controlled mech into the SM, undoes mech domination cancelling delta, makes mech destruction during control cause a massive EMP instead (#86526)
## About The Pull Request This fixes a couple of bugs that are still lurking for malf AI, primarily, and reverts an unintentional balance change I did by making mech domination cancel the delta activation. There's a balance change instead; previously mech domination death killed you (seemingly because of badly formed callstacks assuming you never had a core or APCs available); I replaced this by causing the AI to produce a massive EMP centered at their location if their mech gets destroyed while they're piloting it. ## Why It's Good For The Game Fixes https://github.com/tgstation/tgstation/issues/86107 Fixes https://github.com/tgstation/tgstation/issues/83753 Undoes unintentional balance change and adds with something that is still quite debilitating, especially if you're currently under attack as a malf AI. ## Changelog 🆑 Bisar balance: AIs piloting mechs no longer die if they hit the supermatter, nor do they harmlessly snap back to their core. The shock now causes them to produce a massive EMP. balance: Undid a balance change I did during the malf AI refactor. The doomsday countdown will no longer stop if a malf AI dominates a mech. fix: Fixed a few bugs with AI shunting and AI mech death. /🆑 |
||
|
|
69176298ed |
Spelling Fixes (#86056)
## About The Pull Request Fixes several errors to spelling, grammar, and punctuation. ## Why It's Good For The Game Improves readability and user experience. ## Changelog 🆑 spellcheck: fixed a few typos /🆑 |
||
|
|
28102fdcc2 |
Fixes Mech UI breaking in certain circumstances. (#86490)
## About The Pull Request For 2 Months, I've had to manually eject the clamp and then later re-attach it or somehow find a second weapon to add on Ripleys in order to select the cargo hold. <details> <summary>Technical Stuff</summary> This fixes an oversight in the justice mech's update to mech UI to account for if a category had no capacity. ### Pre-Justice ```DM for(var/i = 1 to max_per_category) var/equipment = equip_by_category[category] var/is_slot_free = islist(equipment) ? i > length(equipment) : isnull(equipment) if(is_slot_free) data += list(list( "slot" = category )) if(ui_selected_module_index == module_index) ui_selected_module_index = null else var/obj/item/mecha_parts/mecha_equipment/module = islist(equipment) ? equipment[i] : equipment ... )) if(isnull(ui_selected_module_index)) ui_selected_module_index = module_index module_index++ return data ``` ### Post-Justice ```DM if(max_per_category) for(var/i = 1 to max_per_category) var/equipment = equip_by_category[category] var/is_slot_free = islist(equipment) ? i > length(equipment) : isnull(equipment) if(is_slot_free) data += list(list( "slot" = category )) if(ui_selected_module_index == module_index) ui_selected_module_index = null continue var/obj/item/mecha_parts/mecha_equipment/module = islist(equipment) ? equipment[i] : equipment ... if(isnull(ui_selected_module_index)) ui_selected_module_index = module_index module_index++ return data ``` In the first code, module_index++ is called on every iteration, however it is only called if is_slot_free is false in the second version, leading to a lot of mess and null equipment indexes when there shouldn't be. This PR reverts this so that mech UI functions as intended while also retaining the check for if a category HAS any equipment capacity. </details> ### Testing <details> <details> <summary> Before</summary> https://github.com/user-attachments/assets/f94dde9c-8dd6-4b8f-8fd7-fe901814c70b </details> <details> <summary> After</summary> https://github.com/user-attachments/assets/812d7d1a-2404-400b-9b21-1594ed08eda3 </details> </details> ## Why It's Good For The Game Clicking on a module should select it. Fixes #86493 ## Changelog 🆑 TwistedSilicon fix: Mech equipment is no longer broken in the UI for specific conditions. /🆑 Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> |
||
|
|
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> |
||
|
|
9a9b428b61 |
Wallening Revert [MDB Ignore][IDB Ignore] (#86161)
This PR is reverting the wallening by reverting everything up to
|
||
|
|
83e1a58529 |
[NO GBP] Fixing Clarke's ore box the proper way (#85954)
## About The Pull Request #85924 did it in a bad way, but I was too hasty and merged it anyway, so it's on my shoulders to rectify that. ## Why It's Good For The Game Code guidelines compliance. ## Changelog N/A |
||
|
|
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. /🆑 |
||
|
|
00a0d0b890 |
Special radio channels now use bitflags instead of individual vars (#85150)
## About The Pull Request Radios/encryption keys now use a `RADIO_SPECIAL_XXXXX` bitflag for behaviors related to "special" radio channels (Binary, Centcom, Syndie). I decided to do this because I wanted to add a radio channel for pirates and hunters (hence the branch name), but it felt weird adding two more variables. The more I look at the changes I've made here the more I realize that the effort was probably not worth the utility but whatever. This also subtypes some varedited intercoms and makes them their own objects. ## Why It's Good For The Game Compresses a whopping three (3!) variables into a single one. Easier to scale (I guess?). I felt like adding a fourth/fifth variable and just moving on with the original project, but decided "lets do this the unnecessarily hard way instead". ## Changelog 🆑 Rhials code: Radios/encryption keys now use a single variable for "special" frequencies. Please report if you experience any strangeness with accessing/being unable to access the Centcom, Syndicate, or Cyborg radio. /🆑 --------- Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> |
||
|
|
886d1aecbb |
Fixes Clarke ore box breaking upon collecting boulders (#85924)
## About The Pull Request Ever since Clarkes could pick up boulders they've been broken if you ever collected one. The UI would break and all your precious minerals would be trapped inside the Clarke, only being obtainable if you broke the Clarke itself. This also updates the Clarke Storage to differentiate by ore name rather than icon, as otherwise the lower quality boulders would be mixed with normal boulders with no way to differentiate them in the UI. ## Why It's Good For The Game Fixes https://github.com/tgstation/tgstation/issues/84364 Before: <details> <summary>Before</summary> https://github.com/user-attachments/assets/f90daf35-733a-42bd-8af5-7e6712f09fba </details> <details> <summary>After</summary> https://github.com/user-attachments/assets/4510803c-6dee-403e-a051-966a8a66c17c </details> ## Changelog 🆑 TwistedSilicon fix: Clarkes will no longer become unable to dump ores upon picking a boulder up. Mine away. /🆑 |
||
|
|
310be26041 |
Adds attack_dir to multiple common damage sources, fixes mechs' directional armor (#85726)
## About The Pull Request Closes #81260 Closes #74022 Currently mechs are the only atoms utilizing attack_dir but I added it in multiple other places that were missing it to ensure that if something else uses it it won't break in those scenarios ## Changelog 🆑 fix: Mechs' directional armor now actually works /🆑 |
||
|
|
95a6db041d |
Hydraulic clamps can force doors open again (#85514)
## About The Pull Request What the title says. This behavior seems to have been removed by accident in a previous PR, so I just put it back. Fixes #85506 ## Why It's Good For The Game Bugs are bad. ## Changelog 🆑 fix: Hydraulic clamps (the mech tool) can force powered doors open again. /🆑 |
||
|
|
d548e8202f |
Retextured Durand's shield, fixed power drain and UI (#85718)
## About The Pull Request  Closes #84419 Durand drained ten times the default cell capacity per tick due to power changes, and UI for some reason multiplied the cell charge by a thousand, confusing the players. Also minor cleanup. ## Why It's Good For The Game Super dated sprite that doesn't really fit the modern durand ## Changelog 🆑 image: Durand shield got a glowup fix: Durand shield no longer instantly drains its battery fix: Mech UI no longer lies about the amount of power your mech has left /🆑 |
||
|
|
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> |
||
|
|
596a65031e |
Removed multiple cases of unnecessary updatehealth (#85537)
## About The Pull Request Doubletapping (potentially) expensive procs is bad, etc etc. Reverse of void storm fiasco. ## Changelog 🆑 code: Removed multiple cases of unnecessary updatehealth /🆑 |
||
|
|
37029f15d2 |
Fixes AI Mech Control GBJing the AI (#85354)
## About The Pull Request So when an AI entered a mech it wasnt considered an occupant it was just there, so it didnt get controls or UI or anything (cuz the add_control_flags proc only gives the controls to mobs in the occupants list) it was just there stuck unable to move or do anything really. I put this proc in so the AI can do stuff now. I dunno if this is cleanest of fixes but it's 5am and in my testing it makes it go from not working to working so I'm claiming it is good enough (tm) I cant really convey how it works in image form so I will go over the steps I did to implement this fix: On master, mess about with AI dominating mechs or controlling mechs with a beacon. See how none of the AI buttons appear, WASD stops moving the camera around. The mouse changes to the correct mech style but nothing else works. Call a bunch of procs on the AI to see what does something, add_occupant with the AI marked as the only argument works and makes everything function as intended. Tell the code to do that. ## Why It's Good For The Game I don't like mechs but I know some people do so it's cool for those people that it works :) ## Changelog 🆑 fix: AI mech control beacons and malf AI dominate mech work again. /🆑 |
||
|
|
eeb2890b07 |
Fix justice design and mecha melee attack to other mechs. (#85403)
## About The Pull Request Fix justice design deleting and breaks when RnD server updates new designs. Also fix that mech can't attack any vehicles like other mechs. ## Changelog 🆑 fix: Justice design no longer disappears fix: Mechs can attack other mechs in melee /🆑 |
||
|
|
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> |
||
|
|
925b9a3275 |
RD can emag mech fabricator(like roboticist). (#85404)
## About The Pull Request Mech fabricator now can be emaged by user who have cyborg skillchip(that one that show cyborg wires). RD and roboticist have this skillchip. ## Why It's Good For The Game RD is like roboticist, but better. ## Changelog 🆑 add: RD can emag mech fabricator(like roboticist). /🆑 --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> |
||
|
|
76d6746c44 |
[NO GBP] You can no longer tear peoples arms off with non-killer clamps (#85333)
## About The Pull Request I fucked up when fixing up the code. Oops ## Changelog 🆑 fix: You can no longer tear peoples arms off with non-killer clamps /🆑 |
||
|
|
482241657e |
Actually fixes mechs equipping infinite amount of gear (#85316)
## About The Pull Request #85205 attempt number two Closes #85166 ## Changelog 🆑 fix: Mechs can no longer equip infinite amount of weapons /🆑 |
||
|
|
3ca5be3e27 |
VIM no longer requires hands to enter (#85310)
## About The Pull Request Closes #85223 Still kinda hard to exit though :3 ## Changelog 🆑 fix: VIM no longer requires hands to enter /🆑 |
||
|
|
d4fc07fea5 |
Justice invisibility now turns off by the safety (#85272)
## About The Pull Request Small change to make justice invisibility turn off when the safety is turned on. Because you could bypass safety check on it by basically turning off mecha safety and turning it on after it went to invicibility. ## Why It's Good For The Game Now everything works as supposed. ## Changelog 🆑 fix: now Justice invisibility turns off in non combat mode as it supposed to /🆑 |
||
|
|
708b198abf |
Fixed janicart not transfering items into the trash bag (#85218)
## About The Pull Request It was trying to put items into a trash bag that doesn't have `CAN_BE_HIT` flag with an `attackby`. It now works for both the vacuum insert and the manual one. Fixes #84653 ## Why It's Good For The Game Bug fix. ## Changelog 🆑 fix: Janicart inserts items into the attached trash bag again (manual and vacuumed) /🆑 |
||
|
|
51725b238d |
Cleans up clamp code, makes kill clamp actually work, fixes anchor resetting issues (#85070)
## About The Pull Request Kill clamp tries to squeeze carbons on RMB except LMB/RMB are now responsible for left/right arm equipment, making it only work on right arm. So, now kill clamp always dismembers if possible - doing a normal attack otherwise (funny text had to be sacrificed for it) Additionally, leans up clamp action() code, added early returns and removed one-letter variables. Ensures that parent calls (for cooldown and comsigs) are called where appropriate (clamp achieved some effect) and changed it so clamped objects are no longer set to their initial anchored value (FALSE instead, as the object has to be unanchored for the clamp to be able to affect it) since that would anchor a lot of things upon failing to pick them up. Closes #67580 ## Changelog 🆑 code: Cleaned up clamp code. fix: Clamp no longer anchors down some objects upon failing to pick them up fix: Deathsquad KILL CLAMP finally works once more /🆑 |
||
|
|
c2facffd06 |
Mechs no longer bypass armor or deal direct limb damage. Cleans up drill code, fixes its armor calc and makes oreboxes work on clarke. (#85067)
## About The Pull Request Changes direct limb damage to apply_damage and added armor checks (MELEE for brute/fire, BIO for toxin) to mechs Cleans up drill code a bit and made sure that it checks armor on correct bodypart (previously it could take armor from a completely different bodypart) ## Why It's Good For The Game Direct limb damage does not activate any armor effects, comsigs, etc which causes issues. Any effects that should've occured on damage being taken also do not trigger. Mechs completely bypassing armor is highly nonintuitive, you'd expect your admin suit to actually protect you from having your skull bashed in by a Mauler. And drill taking armor from incorrect bodypart is just silly. ## Changelog 🆑 balance: Mechs now take armor into consideration when calculating punch damage fix: Mechs no longer deal direct limb damage fix: Drills automatically pick up ore on non-ripley mechs now without having to move fix: Drills no longer dismember people immune to melee damage fix: Drills now take armor from correct bodyparts when attacking code: Cleaned up one-letter variables in mech drill code /🆑 |
||
|
|
9a4386d31d |
deletes wires on atom/destroy() (#85154)
Closes #85132 Fixes #85110 |
||
|
|
d220adba3f |
HONK mech now waddles (#85152)
## About The Pull Request How the ffffffuck didn't it waddle befoerhand ## Why It's Good For The Game It's essential. Clowns need waddling to survive ## Changelog 🆑 fix: HONK mech now waddles /🆑 |
||
|
|
2c0f5d181a |
Datumizes pod types (#85033)
## About The Pull Request Changes supply pods to use datums instead of a massive nested list to store data and index defines as styles. Complete feature parity. ## Why It's Good For The Game this is nightmare fuel to work with  and this is a sin against nature and god   ends up as  which is ??? Using a nested list to store pod data is a very bad idea, it has horrible formatting, is unreadable without having index defines open in a second tab and is not extendable. And as you can see above, if someone added another pod type before 14th everything would break because other pod type lists **__only have 8 elements__** instead of 10 like the seethrough one does. ## Changelog 🆑 refactor: Pod code now uses datums instead of being a huge nested list /🆑 |
||
|
|
991ce9dd60 |
Fixed a signal reg error caused by add_occupant being called twice (#85072)
## About The Pull Request Parent proc in the chain already calls add_occupant, resulting in signals being assigned twice which threw an error ## Changelog 🆑 fix: Fixed a signal reg error caused by add_occupant being called twice /🆑 |
||
|
|
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 /🆑 |
||
|
|
f31ae8e8f5 |
Justice mech invisibility fix (#84906)
## About The Pull Request Closes: https://github.com/tgstation/tgstation/issues/84894 Fixes a bug if you exited the mech and it was in “stealth mode” at the time. This will make your Mech completely unusable. Originally bug found on Massmeta server. ## Why It's Good For The Game Have you spent a lot of TC on your new car and forgotten where you parked it? - Skill Isuue. ## Changelog 🆑 fix: Justice mech invisibility fix /🆑 |
||
|
|
a75b2e9acd |
Clown car now cares about maximum amount of drivers (#84956)
## About The Pull Request Closes #81806 ## Changelog 🆑 fix: You can no longer fit an infinite amount of drivers into a clown car - making spy-acquired clown cars usable! /🆑 |
||
|
|
57d2464591 |
Justice (a melee-only mech) can no longer have guns attached (#84925)
## About The Pull Request In the PR adding it, the justice was explicitly stated to be a melee-only mech. In fact, it was stated to be unable to support any arm-mounted attachments at all. In spite of this, it was possible due to a bug to mount both ranged attachments like guns, and (as pointed out in #84920) melee attachments like drills. Now it can't, as intended. ## Why It's Good For The Game Bugs are bad. ## Changelog 🆑 fix: You can't attach guns/drills/etc. to the Justice traitor mech anymore. /🆑 |
||
|
|
7eb93ed00b |
Holy skateboard improvement + actually fixing space movement with hoverboards. (#84790)
## About The Pull Request Added anti-magic support for things that mob can buckle to, so that we don't have to add the anti-magic component to the mob riding the holy skateboard but the skateboard itself. Also, made it possible for the holy skateboard to soar space and open space with no support without falling, at the cost of a moderate slowdown. ## Why It's Good For The Game It's a first-time contributor that added this skateboard to the game, and it looked like he couldn't find a solution to some of the issues I brought on in my review. Plus the holy skateboard being usable in spess has some real Space Jesus vibes to it. ## Changelog 🆑 fix: ACTUALLY fixed hoverboards being able to be used in space. balance: However, you can soar space with the holy skateboard. at a slower speed. /🆑 |
||
|
|
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. /🆑 |
||
|
|
b80a03cf73 |
Adds the Holy Skateboard, a holy version of the hoverboard. (#84514)
## About The Pull Request This is my first PR ever, and I have tested it. It just adds an additional nullrod variant that could be helpful for people that wish to explore space as a chaplain, or chaplains that wish to look sick and tubular. ## Why It's Good For The Game More nullrods are better. Also, it's a fun vehicle that i feel allows for more gimmicks as the 540 cr cost for a regular hoverboard is a bit steep. It's not super good, and it's not bad, so I feel it doesn't affect balance too much. ## Changelog 🆑 add: There's a previously undiscovered variant of a nullrod, recently revealed from the depths of the skating rink.. /🆑 <!-- You can use multiple of the same prefix (they're only u https://github.com/tgstation/tgstation/assets/126758839/5c94391d-8a01-40fd-93ec-ea3617ba6a59 sed 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. --> |
||
|
|
78fc87315c |
Removes stupid listlike var access code (#84648)
## About The Pull Request [Removes all other listlike var accesses](https://github.com/tgstation/tgstation/pull/84648/commits/4c5996b5c8b1da63740e8b4bf998b6cb6eadac33) Also fucking dumpsters an unused proc that allowed for arbitrary variable modifcation. Bad juju This is undefined behavior and errors in later 515 versions. also it's stupid as hell |
||
|
|
82f92cb983 |
New Traitor mech: Justice. (#84097)
## About The Pull Request Adds new mech that can be created from emaged fabricator. To craft this mech you need: 1. Emag Fabricator to recive Justice disgine(done this, fabricator will emit a text and sound signal that can reveal you). 2. You need to craft it like any other mech but you also need 8 telecrystals to finish constraction. 3. To board a mech you need syndicate access (traitor can get it by purchasing an agent card). About Mech: Video: https://youtu.be/QwJfO_lbLK0 Text: Health 200 Damage 60 Only melee attacks(can't attach range weapons(can't attach anything in his arms at all)) Block chanse 60 Speed - in safty mode 2.5 in combat mode 4.5 Attack effects: In addition to damage, it has a 50 percent chance of cutting off an arm or leg (does not put you to sleep or give a knockdown effect when hit like regular combat mechs do). If a target in crit or stun makes a finishing attack instead of a regular attack, the mech says an epic phrase and after a second cuts off the target's head by dashing through the target. Special actions(can't be used if mech in safty mode): Invisability - Makes the mech invisible for 20 seconds. If the mech is pushed or collides with someone or if the pilot presses the invisibility button again, the mech will no longer be invisible and will go into a 5 second cooldown (the same will happen after 20 seconds). If you attack in invisibility, then instead of a normal attack the mech will make an AoE 3x3 attack 1 second after pressing (the attack will be accompanied by a sound and visual effect and for a second the mech will not be able to move, which gives enemies time to run away from the attack). Upon completion AoE attack, everyone( except peoples in crit and in stunned condition) in a 3x3 radius will receive 35 damage and a 25 chance of having one of their limbs cut off. Charge Attack - Mech makes a dash towards the cursor at a distance of up to 7 cells, breaking all obstacles in its path. If the obstacle is a living person (and he is not in crit and is not stunned) then he will receive 35 damage and a 25 chance of cutting off a limb. Cooldown 5 Seconds. P.S. Also added emag_act on fabricator so you can put any new secret traitor mechs on it. Also made the sounds of mech melee attacks to vars so that it would be more convenient to change them. Also fix a runtime error where if you set something in the mech's max_equip_by_category to 0, the mech UI panel doesn't load. ## Why It's Good For The Game Adds a traitor mech with fun and interesting mechanics. This is a new mech with new unique abilities that turns the battle with you into a boss fight. ## Changelog 🆑 add: New traitor mech: Justice. Emag fabricator to get it. /🆑 --------- Co-authored-by: Jacquerel <hnevard@gmail.com> |
||
|
|
4ba3dd1a73 |
adds a new wire to mecha wires + fixes mecha shock wire (#84538)
## About The Pull Request the shock wire if cut shocks you adds a new wire that if cut makes the mecha pick a random weapon that it will shoot you with, or punch if no weapons were attached if pulsed, it will do the same if you pulsed it yourself with a multitool but with a signaler it will pick a target in range also this wire doesnt work if piloted no powergaming for you ## Why It's Good For The Game stealing a mecha right now is extremely easy, mauler included, all you need is a wirecutter and screwdriver you dont even need insuls theres little risk to that even if the shock wire actually worked with the additional risk of getting shot you now should think twice before you should try your luck stealing an efficient killing tool ## Changelog 🆑 add: mecha wire that shoots you or anyone nearby if pulsed or cut fix: mecha shock wire shocks you /🆑 |
||
|
|
ee5e1017d0 |
Ancient and recent mecha bug fixes (#84171)
## About The Pull Request Mecha guns actually utilize random spread while firing if ``randomspread = TRUE``. Currently every weapon that isn't the shotguns are always pinpoint even if they would have variance. Makes bumpsmash and melee attacks in a mech use the same cooldown. The actual speed between bumpsmash melees are the same as before (once every 0.3 seconds) and click melee is the same as well (once every second). However, if you do one or the other, it will put you on cooldown for both. The reason for this is that they're literally just calling the same proc but not respecting each others cooldowns. So we've consolidated this into one cooldown with varying cooldown timers. I don't even think this is the most elegant solution, but I'm not going to make any radical changes of the structure of the code. Fuck that. **Edit** I forgot to mention this but you have to be in combat mode to bumpsmash as a consequence of the above changes. You're fucking welcome. Separates out mecha_melee_attack proc on the ``/obj/`` level to instead only ``/obj/structure`` and ``/obj/machinery``, which is the only things we should be attacking in the /obj/ list. I don't even want to know what mechs have been able to punch while this wasn't the case. Probably nothing they should have. ## Why It's Good For The Game Mechs are a fucking diabolical nightmare of procs and some truly ancient code. Over time, things have gotten worse, as we have no one really actively maintaining some of this consistently. One of these bugs is literally day of mech implementation. I shit you not. ## Changelog 🆑 fix: Mecha weaponry is capable, for the first time ever, of experiencing recoil. This was an intended mechanic, I promise. The code just literally never worked. fix: Mecha bump melee attacks and click melee attacks are now on the same cooldown, but have varying cooldown timers. You will always bump attack faster than you will click. fix: You must be in combat mode to punch objects and to bumpsmash into objects. fix: Stops mecha being able to punch literally any object and damage them. code: Tidies up some of the autodoc comments for mech weapons. /🆑 |
||
|
|
e1bbf378b8 |
Lathe sounds (#84081)
## About The Pull Request Adds a looping sound during printing items on: - Autolathe - Techfabs - Exosuit fabricator <details> <summary>~~Demo~~ [OUTDATED]</summary> https://github.com/tgstation/tgstation/assets/96586172/15f89efc-7bbf-4228-a38a-48e78bad5f1a </details> <details> <summary>~~Demo~~ [AFTER REVIEW]</summary> https://github.com/tgstation/tgstation/assets/96586172/1e6fb486-90d7-4e6e-a4cb-e26a1af1a018 </details> ## Why It's Good For The Game Printing items being noisy is more realistic and gives feedback to the player when it's finished or busy. ## Changelog 🆑 grungussuss , Kayozz sound: exosuit fabricators, Autolathes and Techfabs will now produce sounds when printing items /🆑 |
||
|
|
38b7580894 |
durand shield is a tad bit stronger and also doesnt immediately depower the mech when taking stamina damage (#84043)
## About The Pull Request durand shield is a tad bit stronger and also doesnt immediately depower the mech when taking stamina damage ## Why It's Good For The Game i mean this shit almost immediately depowers the mecha if you hit it a few times with a toolbox and thats bad for something that costs shittons of mats making it not as bad should make it not a noob trap also bug bad ## Changelog 🆑 fix: durand shield doesnt immediately depower the mech when taking stamina damage balance: durand shield is a bit stronger /🆑 |
||
|
|
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> |
||
|
|
9950f38125 |
Fixes mech sleeper not displaying patient information without a mech syringe gun attached (#83957)
## About The Pull Request Fixes a runtime that was occurring with the mech sleeper module that would prevent the patient information from being displayed in the sleeper interface if the mech didn't also have a syringe gun attached. ## Why It's Good For The Game Fixes #83938 ## Changelog 🆑 fix: Fixed the patient information for the mech sleeper module not displaying when the mech didn't also have a syringe gun. /🆑 |