mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-13 17:14:47 +01:00
mayfools
195 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
baf3837ae8 |
Merge remote-tracking branch 'tgstation/master' into upstream-2025-11-29
# Conflicts: # _maps/RandomRuins/SpaceRuins/derelict_sulaco.dmm # _maps/RandomRuins/SpaceRuins/garbagetruck2.dmm # _maps/map_files/CatwalkStation/CatwalkStation_2023.dmm # _maps/map_files/tramstation/tramstation.dmm # code/_onclick/hud/new_player.dm # code/datums/components/squashable.dm # code/datums/diseases/advance/symptoms/heal.dm # code/datums/diseases/chronic_illness.dm # code/datums/status_effects/buffs.dm # code/datums/status_effects/debuffs/drunk.dm # code/datums/status_effects/debuffs/stamcrit.dm # code/game/machinery/computer/crew.dm # code/game/objects/items/devices/scanners/health_analyzer.dm # code/game/objects/items/wall_mounted.dm # code/game/turfs/closed/indestructible.dm # code/modules/admin/view_variables/filterrific.dm # code/modules/antagonists/heretic/influences.dm # code/modules/cargo/orderconsole.dm # code/modules/client/preferences.dm # code/modules/events/space_vines/vine_mutations.dm # code/modules/mob/dead/new_player/new_player.dm # code/modules/mob/living/carbon/human/death.dm # code/modules/mob/living/carbon/human/species_types/jellypeople.dm # code/modules/mob/living/damage_procs.dm # code/modules/mob/living/living.dm # code/modules/mob_spawn/ghost_roles/mining_roles.dm # code/modules/mob_spawn/mob_spawn.dm # code/modules/projectiles/ammunition/energy/laser.dm # code/modules/projectiles/guns/ballistic/launchers.dm # code/modules/projectiles/guns/energy/laser.dm # code/modules/reagents/chemistry/machinery/chem_dispenser.dm # code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm # code/modules/reagents/chemistry/reagents/drinks/alcohol_reagents.dm # code/modules/reagents/chemistry/reagents/medicine_reagents.dm # code/modules/surgery/healing.dm # code/modules/unit_tests/designs.dm # icons/mob/inhands/items_lefthand.dmi # icons/mob/inhands/items_righthand.dmi # tgui/packages/tgui/interfaces/ChemDispenser.tsx |
||
|
|
7a3ad79506 |
All camelCase (Brute|Burn|Fire|Tox|Oxy|Organ|Stamina)(Loss) procs now use snake_case. UNDERSCORES RULE! (#94111)
## About The Pull Request It's just a partial cleanup of anti-[STYLE](https://github.com/tgstation/tgstation/blob/master/.github/guides/STYLE.md) code from /tg/'s ancient history. I compiled & tested with my helpful assistant and damage is still working. <img width="1920" height="1040" alt="image" src="https://github.com/user-attachments/assets/26dabc17-088f-4008-b299-3ff4c27142c3" /> I'll upload the .cs script I used to do it shortly. ## Why It's Good For The Game Just minor code cleanup. Script used is located at https://metek.tech/camelTo-Snake.7z EDIT 11/23/25: Updated the script to use multithreading and sequential scan so it works a hell of a lot faster ``` /* // Copyright 2025 Joshua 'Joan Metekillot' Kidder This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>. // */ using System.Text.RegularExpressions; class Program { static async Task Main(string[] args) { var readFile = new FileStreamOptions { Access = FileAccess.Read, Share = FileShare.ReadWrite, Options = FileOptions.Asynchronous | FileOptions.SequentialScan }; FileStreamOptions writeFile = new FileStreamOptions { Share = FileShare.ReadWrite, Access = FileAccess.ReadWrite, Mode = FileMode.Truncate, Options = FileOptions.Asynchronous }; RegexOptions regexOptions = RegexOptions.Multiline | RegexOptions.Compiled; Dictionary<string, int> changedProcs = new(); string regexPattern = @"(?<=\P{L})([a-z]+)([A-Z]{1,2}[a-z]+)*(Brute|Burn|Fire|Tox|Oxy|Organ|Stamina)(Loss)([A-Z]{1,2}[a-z]+)*"; Regex camelCaseProcRegex = new(regexPattern, regexOptions); string snakeify(Match matchingRegex) { var vals = matchingRegex.Groups.Cast<Group>().SelectMany(_ => _.Captures).Select(_ => _.Value).ToArray(); var newVal = string.Join("_", vals.Skip(1).ToArray()).ToLower(); string logString = $"{vals[0]} => {newVal}"; if (changedProcs.TryGetValue(logString, out int value)) { changedProcs[logString] = value + 1; } else { changedProcs.Add(logString, 1); } return newVal; } var dmFiles = Directory.EnumerateFiles(".", "*.dm", SearchOption.AllDirectories).ToAsyncEnumerable<string>(); // uses default ParallelOptions // https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.paralleloptions?view=net-10.0#main await Parallel.ForEachAsync(dmFiles, async (filePath, UnusedCancellationToken) => { var reader = new StreamReader(filePath, readFile); string oldContent = await reader.ReadToEndAsync(); string newContent = camelCaseProcRegex.Replace(oldContent, new MatchEvaluator((Func<Match, string>)snakeify)); if (oldContent != newContent) { var writer = new StreamWriter(filePath, writeFile); await writer.WriteAsync(newContent); await writer.DisposeAsync(); } reader.Dispose(); }); var logToList = changedProcs.Cast<KeyValuePair<string, int>>().ToList(); foreach (var pair in logToList) { Console.WriteLine($"{pair.Key}: {pair.Value} locations"); } } } ``` ## Changelog 🆑 Bisar code: All (Brute|Burn|Fire|Tox|Oxy|Organ|Stamina)(Loss) procs now use snake_case, in-line with the STYLE guide. Underscores rule! /🆑 |
||
|
|
71faa643bf | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-2025-11-12 | ||
|
|
8ee1cd2474 |
Makes EMP logs less bad (#93841)
## About The Pull Request closes #93805 ## Why It's Good For The Game we actually have almost no emp logging at all lol, not even emp chem reaction, so you barely can track potential griefer? ## Changelog 🆑 admin: EMP logs are improved, additionally chemical EMP reactions are now logged. /🆑 |
||
|
|
e28e9fbdba | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-23-10-2025 | ||
|
|
38bebeaf47 |
Prosthetic Item arms no longer prevent ventcrawling: the remake (#93499)
## About The Pull Request This is me picking up #93077 but with code changes relative to the two new flags that Krysonism added in his PR, which unfortunately he never finished. ## Why It's Good For The Game Monkeys should be able to ventcrawl even if their left or right arm is actually a chainsaw or armblade or whatever. See #93077 ## Changelog 🆑 Krysonism balance: prosthetic item limbs are no longer considered equipped items for some purposes such as ventcrawling. /🆑 --------- Co-authored-by: Krysonism <robustness13@hotmail.com> |
||
|
|
9b282a850e | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-sync | ||
|
|
0918437d53 |
BORGENING! Borg changes and QOLs (#92303)
## About The Pull Request Adds a few new items and upgrades for different cyborg modules or reworks some of them. <p align="center"> <img width="608" height="199" alt="image" src="https://github.com/user-attachments/assets/ba44742f-984b-4988-af4d-e06cf66d3296" /> </p> pic unrelated :) ### Main changes: ### Medical model **Medical cyborg** gets chembag by default and a new bluespace syringe upgrade! <p align="center"> <img width="267" height="83" alt="image" src="https://github.com/user-attachments/assets/4636688f-a3bf-4db8-b0c7-75089aeb4f54" /> </p> ### Engineering model **Engineering cyborg** recieved a few new features. Now you can put your regular RPED inside of a cyborg, but mind that it has way less storage, than RPED upgrade from robotics. Robotics RPED upgrade were renamed into expanded RPED and now cost the same amount of material to produce it as BS RPED. <p align="center"> <img width="198" height="117" alt="image" src="https://github.com/user-attachments/assets/e614a9b0-41ad-4815-8eb6-f627c2bf77cc" /> </p> Worth to mention adding decal painter with own sprite (yes it uses cell instead of regular toner) <p align="center"> <img width="827" height="498" alt="image" src="https://github.com/user-attachments/assets/2eb36651-0ee2-4c9b-81ef-f8c3a96966a8" /> </p> <p align="left"> Circuit manipulator was renamed to engineering apparatus, as its can no longer hold only circuits. Additionally, it can also hold tubes/bulbs now. </p> ### Mining model **Mining cyborg** now has mesons removed and remade into a new toggle button, you dont need to use one of your modules just to be able to see through darkness of lavaland caves. <p align="center"> <img width="248" height="173" alt="image" src="https://github.com/user-attachments/assets/e85a00ec-f373-43d0-9ce9-7ec573029af3" /> </p> **Mining cyborg** got a new shield module. It helps you fighting lavaland fauna (..or annoying humans, if youre evil) in low pressure by absorbing 50% of incoming damage when activated. Takes some amount of your charge per absorbed hit. Example:  ## Why It's Good For The Game I feel big lack of some cyborg modules or even features. This PR is supposed to fix missing gap, aswell as rebalance some of existing models. ## Changelog 🆑 qol: Added new helpful modules, such as decal painter for engineering and chembag for medical borg. add: Added miner cyborg shield module. In lavaland (low) pressure, it protects you from 50% of incoming damage in exchange of your cell charge. add: Added BS syringe upgrade for medical cyborg. /🆑 |
||
|
|
753d8e5ba4 | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-25-04a | ||
|
|
8df0c5851d |
Partially reverts #89619, where I partially reverted #87936; Puts back the mining and damage AOE damage on Mech PKA, but improves the standard modkits as well (#89993)
## About The Pull Request In #89619, I removed the mech PKA's mining AOE and reduced the damaging AOE to a fraction of the damage. I have restored both of these aspects, but I have also applied this change to the standard PKA's mining and damage AOE. I have also included the mob biotype limitations as well. AOE modkits take 10% capacity, now allowing miners to use them in more setups. However, they conflict with one another. You can only have one AOE mod until you can get the dual AOE mod from tendrils. The AOE damage/mining effect is now a 2 tile effect rather than 1 tile effect. ## Why It's Good For The Game My intent in the previous PR was to bring mech PKA's down to standard mining limitations. So, why not improve those standards for everyone instead? The new state of mining expects you to be dealing with a lot of mobs at once. Even small vents can, on occasion, decide to spit out several goliaths back to back. That's a lot of mobs with a lot of health. Miners need AOE options more than ever. They have very little that are actually meaningful, sadly. So my intent here is that this should be an expectation for our miners to be seeking out and can fit into their current, standard gameplay. Certainly I've only felt like shit having to sacrifice a damage or cooldown mod for an AOE mod, only to get a very minor amount of damage splash for my efforts. That, and the radius doesn't usually impact most mobs as they spawn and attack from awkward angles or distances from one another where they are JUST out of reach of one another. Trying to use the splash to hit multiple enemies is often not worth it compared to just hitting one enemy at a time with a lot of damage. So, let's just go with the standard of 'Good AOE is fundamentally needed now' and worth from that premise. ## Changelog 🆑 balance: Mech PKA now once again mines turfs and does full damage on its AOE explosion (still only hitting mining mobs). balance: The standard PKA AOE mods are now by default 10% capacity. But they cannot be used with one another. balance: The standard PKA offensive AOE mod now does the PKA's full damage in its AOE. balance: Mining AOEs will affect everything within a 2 tile radius around the point of impact, up from a 1 tile radius. /🆑 --------- Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> |
||
|
|
d7ed479374 |
Improves hitscan projectile chunking (#89616)
## About The Pull Request Hitscan projectiles that run out of dedicated tick time before they hit anything abort their movement, ensuring that firing an emitter beam into space won't cause horrible lag. However, most hitscans also have icons and have visible (albeit unanimated) movement in such a case, making it look like projectile code is exploding as tracers appear only after a rather visible and tangible projectile hits its target. This PR resolves the issue by making hitscans "chunk" their trails in such cases, ensuring that they always look like actual hitscans. Video below has an artificial speed cap on hitscans, to showcase how it'd look during extreme lag. https://github.com/user-attachments/assets/eeac034d-d08e-45b0-b7d2-8589376f1c7d Also some minor hitscan code improvements because I can. ## Changelog 🆑 fix: Hitscan projectiles like emitter beams should look less weird during extreme lag spikes /🆑 |
||
|
|
894d21e64f |
Improves hitscan projectile chunking (#89616)
## About The Pull Request Hitscan projectiles that run out of dedicated tick time before they hit anything abort their movement, ensuring that firing an emitter beam into space won't cause horrible lag. However, most hitscans also have icons and have visible (albeit unanimated) movement in such a case, making it look like projectile code is exploding as tracers appear only after a rather visible and tangible projectile hits its target. This PR resolves the issue by making hitscans "chunk" their trails in such cases, ensuring that they always look like actual hitscans. Video below has an artificial speed cap on hitscans, to showcase how it'd look during extreme lag. https://github.com/user-attachments/assets/eeac034d-d08e-45b0-b7d2-8589376f1c7d Also some minor hitscan code improvements because I can. ## Changelog 🆑 fix: Hitscan projectiles like emitter beams should look less weird during extreme lag spikes /🆑 |
||
|
|
b6b8306fda | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-25-02a | ||
|
|
bfb5fea278 | Nerfs fish infusion slipperiness and make them slightly more susceptible to fire and heat. (#88065) | ||
|
|
bbb7a41743 |
Guncode Agony 4: The Great Projectile Purge (#87740)
## About The Pull Request ~~Kept you waitin huh!~~ The projectile refactor is finally here, 4 years later. This PR (almost) completely rewrites projectile logic to be more maintainable and performant. ### Key changes: * Instead of moving by a fixed amount of pixels, potentially skipping tile corners and being performance-heavy, projectiles now use raymarching in order to teleport through tiles and only visually animate themselves. This allows us to do custom per-projectile animations and makes the code much more reliable, sane and maintainable. You (did not) serve us well, pixel_move. * Speed variable now measures how many tiles (if SSprojectiles has default values) a projectile passes in a tick instead of being a magical Kevinz Unit™️ coefficient. pixel_speed_multiplier has been retired because it never had a right to exist in the first place. __This means that downstreams will need to set all of their custom projectiles' speed values to ``pixel_speed_multiplier / speed``__ in order to prevent projectiles from inverting their speed. * Hitscans no longer operate with spartial vectors and instead only store key points in which the projectile impacted something or changed its angle. This should similarly make the code much easier to work with, as well as fixing some visual jank due to incorrect calculations. * Projectiles only delete themselves the ***next*** tick after impacting something or reaching their maximum range. Doing so allows them to finish their impact animation and hide themselves between ticks via animation chains. This means that projectiles no longer disappear ~a tile before hitting their target, and that we can finally make impact markers be consistent with where the projectile actually landed instead of being entirely random. <details> <summary>Here is an example of how this affects our slowest-moving projectile: Magic Missiles.</summary> Before: https://github.com/user-attachments/assets/06b3a980-4701-4aeb-aa3e-e21cd056020e After: https://github.com/user-attachments/assets/abe8ed5c-4b81-4120-8d2f-cf16ff5be915 </details> <details> <summary>And here is a much faster, and currently jankier, disabler SMG.</summary> Before: https://github.com/user-attachments/assets/2d84aef1-0c83-44ef-a698-8ec716587348 After: https://github.com/user-attachments/assets/2e7c1336-f611-404f-b3ff-87433398d238 </details> ### But how will this affect the ~~trout population~~ gameplay? Beyond improved visuals, smoother movement and a few minor bugfixes, this should not have a major gameplay impact. If something changed its behavior in an unexpected way or started looking odd, please make an issue report. Projectile impacts should now be consistent with their visual position, so hitting and dodging shots should be slightly easier and more intuitive. This PR should be testmerged extensively due to the amount of changes it brings and considerable difficulty in reviewing them. Please contact me to ensure its good to merge. Closes #71822 Closes #78547 Closes #78871 Closes #83901 Closes #87802 Closes #88073 ## Why It's Good For The Game Our core projectile code is an ungodly abomination that nobody except me, Kapu and Potato dared to poke in the past months (potentially longer). It is laggy, overcomplicated and absolutely unmaintaineable - while a lot of decisions made sense 4 years ago when we were attempting to introduce pixel movement, nowadays they are only acting as major roadblocks for any contributor who is attempting to make projectile behavior that differs from normal in any way. Huge thanks to Kapu and Potato (Lemon) on the discord for providing insights, ideas and advice throughout the past months regarding potential improvements to projectile code, almost all of which made it in. ## Changelog 🆑 qol: Projectiles now visually impact their targets instead of disappearing about a tile short of it. fix: Fixed multiple minor issues with projectile behavior refactor: Completely rewrote almost all of our projectile code - if anything broke or started looking/behaving oddly, make an issue report! /🆑 |
||
|
|
e59d8ba64b | Merge commit '179a607a90ad7ec62bdaff4e6fe72af60ee56442' of https://github.com/tgstation/tgstation into upstream-24-10b | ||
|
|
96c0c0b12c |
Fish infusion (#87030)
## About The Pull Request I'm adding a new infusion ~~(actually four, but two of them are just holders for specific organs tied to a couple fish traits)~~ to the game. As the title says, it's about fish. The infusion is composed of three primary organs, plus another few that can be gotten from fish with specific traits. The primary organs are: - Gills (lungs): Instead of breathing oxygen, you now need to stay wet or breathe water vapor. - fish-DNA infused stomach: Can safely eat raw fish. - fish tail: On its own, it only speeds you up on water turfs, but it has another effect once past the organ set threshold. It also makes you waddle and flop like a fish while crawling (I still gotta finish sprites on this one) Other organs are: - semi-aquatic lungs: A subtype of gills from fish with the 'amphibious' trait, falls back on oxygen if there's no water. Can also be gotten from frogs, axolotl and crabs. - fish-DNA infused liver: From fish with the 'toxic' trait. Uses tetrodotoxin as a healing chem instead of a toxin. Also better tolerance to alcohol if you want to drink like a fish (ba dum tsh). - inky tongue: From fish with the 'ink production' trait. Gives mobs the ability to spit ink on a cooldown, blinding and confusion foes temporarily. The main gimmick of this infusion revolves around being drenched in water to benefit from it, In the case you get the gills organ, this also becomes a necessity, to not suffocate to death (alternatively, you can breathe water vapor, without any benefit). To enable the bonus of the organs set, three organs need to be infused. They can be gills, stomach, tail and/or liver, while the inky tongue doesn't count towards it. Once the threshold is reached, the following bonus are enabled: - Wetness decays a lot slower and resists fire a bit more. - Ink spit becomes stronger, allowing it to very briefly knock down foes. - Fishing bonuses and experience - Resistance to high pressures - Slightly expanded FOV - drinking water and showers mildly heal you over time. - for felinids: You won't hate getting sprayed by water or taking a shower. - While wet: - - If the fish tail is implanted, crawling speed is boosted. - - You no longer slip on wet tiles. - - You also become slippery when lying on the floor. - - You get a very mild damage resistance and passive stamina regeneration, and cool down faster. - - You resist grabs better. - - get a very weak positive moodlet. - However, being dry will make you quite squisher, especially against fire damage, slower and give you a modest negative moodlet. While working on it, I've also noticed a few things that explained why tetrodotoxin (TTX) did jackshit at low doses, because livers have a set toxin tolerance value, below which, any amount of toxin does nothing. Also I've felt like reagents like multiver & co were a bit too strong against a reagent that's supposed to work at very low doses, with slow metabolization, so I've added a couple variables to buff TTX a bit, making it harder to purge and resistant to liver toxin tolerance (also added a bit of lungs damage). ## Why It's Good For The Game I wanted to take a shot at coding a DNA infusion and see how chock-full I could make it. DNA infusions are like a middle point between "aha, small visual trinket" and organs with generally ok effects. I seek to make something a bit more complex ~~(also tied to fishing ofc because that's more or less the recurrent gag of my recent features)~~ primaly focused around the unique theme of being strong when wet and weaker when dry. EDIT: The PR is now ready, have a set of screenshots of the (fairly mid) fish tails (and gills, barely visible) on randomly generated spessman and one consistent joe:  ## Changelog 🆑 add: Added a new infusion to the game: Fish. Its main gimmick revolves around being stronger and slippery when wet while weaker when dry. balance: Buffed tetrodotoxin a little against liver tolerance and purging reagents. /🆑 |
||
|
|
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 /🆑 |
||
|
|
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> |
||
|
|
32714950c9 |
[MIRROR] Pyro and cryo beams (the genetics powers) adjust temperature more severely, additional effects to make them more meaningfully interact with the world (#28799)
* Pyro and cryo beams (the genetics powers) adjust temperature more severely, additional effects to make them more meaningfully interact with the world (#84628) ## About The Pull Request Pyro and cryo beams now adjust temperature by a much larger margin. This is to help them remain useful against....humans. Just straight up naked humans. Pyro beams can ignite objects and heat reagents within an object. Cryo beams freeze reagents in an object. Cryo beams directly inflict the freezing blast status effect so that you absolutely will slow someone down on hit. No more fucking around with temp to MAYBE get some kind of effect. ## Why It's Good For The Game There was a point where cryokinesis was actually fairly good at slowing people down. Unfortunately, the same person who last touched temperature code also made it nearly unusable against regular human targets due to the rapid pace at which humans normalize their temperature. It takes a good while before temperature slowdown starts to take effect. Pyro beams have additional on-hit effects, which cryobeam does not. Cryobeams only have the temperature adjustment and as noted, it is quite weak. Being on fire starts to damage equipment and present a more tangible danger in some environments, such as plasma floods or having just been hit with an accelerant such as alcohol. By including a status effect onto the cryo beam that forces the target to slow down, we avoid the issue of people ignoring the effect of the cryobeam entirely as a meaningful attack compared to being shot by a pryro beam, which will usually cause people to start panicking or moving to remove the fire in some way. I also think by adding some additional interactions to the beam to make them meaningfully affect some world objects, like flammable objects, helps to realizes the idea a bit better of them being blasters of temperature rather than just being bullets. It means it goes a little beyond just being a weapon and potentially now a tool. (It was thinking of Bioshock's plasmid advertising when I made this, like lighting cigarettes.) ## Changelog 🆑 balance: Cryokinesis and pyrokinesis more severely adjust temperature. balance: Cryokinesis forces a target to slow down on hit for a few seconds. balance: Pyrokinesis can ignite objects. balance: Temperature projectiles change the temperature of the target's contained reagents. /🆑 * Pyro and cryo beams (the genetics powers) adjust temperature more severely, additional effects to make them more meaningfully interact with the world --------- Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com> |
||
|
|
1343bcb1ae |
Pyro and cryo beams (the genetics powers) adjust temperature more severely, additional effects to make them more meaningfully interact with the world (#84628)
## About The Pull Request Pyro and cryo beams now adjust temperature by a much larger margin. This is to help them remain useful against....humans. Just straight up naked humans. Pyro beams can ignite objects and heat reagents within an object. Cryo beams freeze reagents in an object. Cryo beams directly inflict the freezing blast status effect so that you absolutely will slow someone down on hit. No more fucking around with temp to MAYBE get some kind of effect. ## Why It's Good For The Game There was a point where cryokinesis was actually fairly good at slowing people down. Unfortunately, the same person who last touched temperature code also made it nearly unusable against regular human targets due to the rapid pace at which humans normalize their temperature. It takes a good while before temperature slowdown starts to take effect. Pyro beams have additional on-hit effects, which cryobeam does not. Cryobeams only have the temperature adjustment and as noted, it is quite weak. Being on fire starts to damage equipment and present a more tangible danger in some environments, such as plasma floods or having just been hit with an accelerant such as alcohol. By including a status effect onto the cryo beam that forces the target to slow down, we avoid the issue of people ignoring the effect of the cryobeam entirely as a meaningful attack compared to being shot by a pryro beam, which will usually cause people to start panicking or moving to remove the fire in some way. I also think by adding some additional interactions to the beam to make them meaningfully affect some world objects, like flammable objects, helps to realizes the idea a bit better of them being blasters of temperature rather than just being bullets. It means it goes a little beyond just being a weapon and potentially now a tool. (It was thinking of Bioshock's plasmid advertising when I made this, like lighting cigarettes.) ## Changelog 🆑 balance: Cryokinesis and pyrokinesis more severely adjust temperature. balance: Cryokinesis forces a target to slow down on hit for a few seconds. balance: Pyrokinesis can ignite objects. balance: Temperature projectiles change the temperature of the target's contained reagents. /🆑 |
||
|
|
f4e244fb49 |
[MIRROR] Refactors embedding to use datums instead of storing data in bespoke elements (#28699)
* 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. /🆑 * Refactors embedding to use datums instead of storing data in bespoke elements * modular fixes * fix c14 * paint -> pain ugggh --------- Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com> |
||
|
|
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. /🆑 |
||
|
|
e39d05b259 |
[MIRROR] Pyrokinesis bolts no longer have infinite range and hotspots (#28518)
* Pyrokinesis bolts no longer have infinite range and hotspots (#84484) ## About The Pull Request Closes #84483 Original author forgot to call the parent proc which was supposed to send a comsig and delete the projectile. ## Changelog 🆑 fix: Pyrokinesis bolts no longer have infinite range and create trails of fiery doom. /🆑 * Pyrokinesis bolts no longer have infinite range and hotspots --------- Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> |
||
|
|
a093deee76 |
Pyrokinesis bolts no longer have infinite range and hotspots (#84484)
## About The Pull Request Closes #84483 Original author forgot to call the parent proc which was supposed to send a comsig and delete the projectile. ## Changelog 🆑 fix: Pyrokinesis bolts no longer have infinite range and create trails of fiery doom. /🆑 |
||
|
|
d13ba21201 |
[MIRROR] First Genetics Content in 5 Years (Adds new positive mutations!) (#28449)
* First Genetics Content in 5 Years (Adds new positive mutations!) * Update reach.dm * delete * Update adaptation.dm * Update reach.dm --------- Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com> |
||
|
|
ff836e10be |
First Genetics Content in 5 Years (Adds new positive mutations!) (#83652)
## About The Pull Request Sister PR to #83439, that needs to be merged before this. Adds a plethora of new positive mutations to the game! Mutations now have a variable that directly adds and removes traits instead of manually doing so for idk Tripled cryobeam range. Made the mushroom hallucinogen's code more readable. - Adrenaline Rush Trigger your body's adrenaline response, granting you 10 * P units of pump-up, synaptizine, and determination. After 25 seconds, you crash, recieving 7 * S units of tiring and dizzying solution. Can be Energized, Powered, and Synchronized. - Mending Touch Transfer injuries from the target to yourself! Heal 35 * P damage, recieving up to 35 * S damage in turn. Transfers moderate wounds, fire stacks, and attempts to parallel limb-to-limb damage. Has bonuses for pacifist players. Can be Energized, Powered, and Synchronized. - Elastic Arms Your arms become floppy and you can interact with things as if you were adjacent to them from one tile further! Does not work through walls or dense objects, and you become unable to lift huge items, pull large corpses, and you get chunky fingers. Split temperature adaptation into three: - Cold Adaptation Gain cold immunity, gain ice slip immunity! - Heat Adaptation Gain heat and ash storm immunity - Thermal Adaptation Resist both cold and heat, but no extra fancies. The sprite is green now! Pressure Adapt has a purple sprite. You can mix the cold mutations with Fiery Sweat to make these new ones: - Cindikinesis Instead of summoning snow, you can now summon... ash. Wow. Very cool. - Pyrokinesis You can fire fire now! Fires beams of heat that, unlike the temperature gun, actually ignite on hit. Higher instability cost than its sister mutation. The changes have been themed primarily around classic superhero gimmicks. Genetics feels like a natural spawning point for superheroes, and its mutations show this via the good ol' 'radiation made me fire eye lasers' hero backstory. Adding more ways to be a superhero is fun. Also, added two new speech mutations: - Trichromatic Larynx Every word you say is now either red, green, or blue! - Heckacious Larynx (Trichromatic Larynx x Wacky) You sound, well. Absolutely ridiculous. Spectacularly silly. Profoundly wacky. Don't give it to the clown. Unlocked the Elvis mutation as well. ## Why It's Good For The Game > Adds a plethora of new positive mutations to the game! Genetics is in desperate need of new content, all it's had for years is a slow gutting and removal of the few things it does have. Hulk is, being real, stupid, dumb, stagnated, and overpowered, but it's been begrudgingly accepted because genetics is quite literally just, nothing without it. I'm here to add the somethings to genetics and add some more variety (and no i'm not touching hulk) > Mutations now have a variable that directly adds and removes traits instead of manually doing so for every mutation. Less stupid > Tripled cryobeam range. Shit joke mutation is now long-range shit joke mutation! > Made the mushroom hallucinogen's code more readable. Slightly OOS because I was going to add color blind mutations but decided not to creep. This piece o shit code has been hurting my head for years and now that I've finally understood it I want to make sure others don't go through that pani. > - Adrenaline Rush A quick burst of some mild chemicals at the cost of eventual nausea, sounds like a fair trade to me! If you're already on the ground, this isn't going to do anything. > - Mending Touch Healing is something that's lacking from the mutations, and this puts a fun spin on it, making the caster a damage pincushion as they heal and absorb damage. > - Elastic Arms Classic superhero power, very funny, lots of silly and sandbox potential. Has innate drawbacks because 1. thematic and 2. it's pretty strong > Split temperature adaptation into three: They combine into the same thing it used to be, so don't freak out. This just adds some separation between the immune types, for things like themed superheroes. > - Cold Adaptation Perhaps mildly concerning, but I think this might be a fun spin on it? TODO: make hiking boots effect? > - Heat Adaptation Nothing to say. It's cool. > - Thermal Adaptation Nothing wrong with this mutation so it stays in > You can mix the cold mutations with Fiery Sweat to make these new ones: How can we have frozone and not, uh human torch or something. why are there no heavy hitter fire superheroes in marvel or dc??? > - Cindikinesis Can't really summon an equivalent to snow that's actually useful, so here's this instead. Clown might like it, or maybe the chemist. > - Pyrokinesis The ignition effect is fairly weak and mostly a deterrent. I think this is the most dangerous ranged mutation in the game, which is kinda sad. > - Trichromatic Larynx Colors are fun! We have speech mutations that change words but none that change their color. Though, to be fair, this was mostly added for the mutation below's combination. > - Heckacious Larynx (Trichromatic Larynx x Wacky) I felt that Wacky wasn't nearly wacky enough. It just made your speech comic sans. That's great and all, but. It's not much? This will be a truly clownly mutation, the Genetics equivalent of a HONK mech. I made it a combination mutation specifically to restrain its power level. > Unlocked the Elvis mutation as well. Was there a reason to lock this? ## Changelog 🆑 add: Added tons of new mutations to Genetics, alongside some recipes! add: Thermal Adaptation has been made a combination mutation from the stronger but narrower Cold and Heat adaptations. balance: Cryobeams have 9 tile range, and fiery sweat doesn't cause spread on contact. image: Added some neat new sprites for the new mutations, and added a greyscale version of the magic hand sprites. code: Infinitesmally improved mutation code. /🆑 |
||
|
|
813591ad15 |
[MIRROR] Small playsound audit, particularly involving portal sounds (#28170)
* Small playsound audit, particularly involving portal sounds * wew --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com> |
||
|
|
9efdb4f8bb |
[MIRROR] Wawastation (#27992)
* Wawastation * Update _basemap.dm * Update gateway.dm --------- Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com> |
||
|
|
6fea9d999d |
Small playsound audit, particularly involving portal sounds (#83893)
## About The Pull Request I was looking at sounds (as you do) and I noticed this  These sounds don't exist We have `portal_open_1`, not `portal_open1`. This wasn't caught on compile because they used `""` and not `''`. So I went through and audited a bunch of playsound uses that don't use `''`. Only one error, fortunately Likewise there was a ton of places running `get_sfx` pointlessly (because `playsound` does it for you) so I clened that up. However while auditing the portal stuff I noticed a few oddities, so I cleaned it up a bit. Also also I added the portal sounds to the wormholes event and gave it a free ™️ optimization because it was an in-world loop ## Changelog 🆑 Melbert sound: Portals made by portal guns now make sounds as expected sound: Wormholes from the wormhole event now make sounds when formed /🆑 |
||
|
|
c57afc4689 |
Wawastation (#82298)
- [x] #82282 - [x] map in aux base how the hell did i forget it - [x] fill out maints - [x] properly test the goddamn thing - [x] fix major cameranets - [ ] fix any issues - [x] write a proper pr body ## About The Pull Request adds this map to the map rotation bottom level (24.5.2024)  upper level (24.5.2024)  ## general map details and department stuff - the station is more focused on the bottom level, so falling in doesnt roundremove you - this is an asteroid station, so assistants can larp as dorfs and mine towards the sweet loot - there is plenty multiz usage - service is the center of the station **Service** - Is the center of the station. Arrivals docks directly in the middle of the station next to Upper Service, so bar might get more traffic. Not much different than normal Service, but janitors closet is also present here, he sleeps on the floor. We do not talk about the janitor. Above Bar is Library and Hydroponics with an overlook to look at bar. The Theater has a big curtain and a podium directly in the bar. 29.3.2024  **Civilian** - Also in the center of the station, next to bar. There isnt much to talk about dorms, its pretty normal. **Cargo** - Absence of chutes that go to departments, reminder that mail sorting is a thing. Cargo bay is a big open area with a boutique/shop facing primary hall that starts closed, and Cargo has its own crate elevator. Theres upper Cargo where mining, bitrunning and a secure warehouse is located (There may be a murder scene). The quartermasters office spans two z-levels and is relatively compact. Not much else different from regular cargo. ~~Oh also the QM starts with an empty PML-9 and a mostly functional rocket~~ 29.3.2024  **Medical** - Large centralized medbay, also two z-levels. There is a public waiting room with triage and a reception. There is also an inner elevator for the crippled. There are two medbay-access patient rooms that are unrestricted from the inside, and two operating rooms. Medbay has its own rad shelter. The virologist does not get their own satellite, but is still relatively secure. 29.3.2024 https://i.ibb.co/hs9kKbV/ezgif-1-f7b697b067.gif (large gif) **Command** - AI Sat transit tube access is here. HoP has an open stall facing primary hall, ~~and maybe a piano trapdoor~~ pretty classic bridge, Captain does not get his own office but gets a really comfortable quarters with his own emergency mass ejection for abandoning ship. The council meeting room is present above bridge, with ERT Ferry dock docking inside adjacent to the council room. **Security** - Mostly bottom z level security. Very compact brig cells, and a meeting room that everyone that is related to security may spawn in if youre lucky. Warden has a weapon handout point facing the inner security hall and the equipment room. Reeducation chamber has a shocked grille treadmill. HoS and Warden Room and armory are on the upper z-level, and warden has a VERY good overlook over permabrig. Armory is seperated into nonlethal to mostly nonlethal and lethal. 29.3.2024  **Science** - Also pretty centralized, breakroom with a smoking corner, two z levels and a big overlook. RD office overlooks toxins and bomb site. Genetics and RD Office is on the upper floor, with a science exclusive monkey exhibit. Xenobio is thick due to proximity to bomb site, otherwise normal. 29.3.2024  **AI Sat** - Okay at this point assume any department is multiz. The antechamber is an elevator and the turrets are on said elevator. The elevator may be sent to the top level by engineers, where the AI core is. Telecomms is on the bottom level, and AI core is above it. Contains a borg entertainment room, and also the upload. The elevator being raised is necessary to properly enter AI Room. **Engineering** - Contains a less stale but still average and less than optimal SM setup. Prone to catastrophic disaster. The SM Room is two levels and very open, and CE has a trapdoor directly into the shard. Turbine is above atmospherics, so is the crystallizer. The HFR and main atmos and distribution room are on the bottom level. Piped by **Kendra Hunter**. Contains a built in electrolyzer corner so atmos mains stop gutting the aesthetics to place down some dumb machine. ## Why It's Good For The Game another interesting map into the roster, different from the other multiz maps in the form that you dont get stuck in hell by falling down a hole todo write better section ## Changelog 🆑 add: wawastation, the station map /🆑 --------- Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com> |
||
|
|
3949817e33 |
[MIRROR] allows the SC/FISHER to shoot floor lights (#27703)
* allows the SC/FISHER to shoot floor lights (#83182) ## About The Pull Request Lowers the hit threshold layer of SC/FISHER bolts from `PROJECTILE_HIT_THRESHHOLD_LAYER` (2.75) to `LOW_OBJ_LAYER` (2.5), allowing you to shoot floor lights with it. ## Why It's Good For The Game floor lights count as lightbulbs and therefore you should be able to explode them with the gun that explodes lightbulbs ## Changelog 🆑 fix: The SC/FISHER can now shoot floor lights. /🆑 Co-authored-by: Hatterhat <Hatterhat@ users.noreply.github.com> * allows the SC/FISHER to shoot floor lights --------- Co-authored-by: Hatterhat <31829017+Hatterhat@users.noreply.github.com> Co-authored-by: Hatterhat <Hatterhat@ users.noreply.github.com> |
||
|
|
1cfd96c899 |
[MIRROR] Portals now make sounds (#27701)
* Portals now make sounds (#83166) ## About The Pull Request ### New sounds: https://drive.google.com/drive/folders/1vLoyxY93Qfe_GtCnetkEHLrkGYZ8S7nD?usp=sharing Demo: https://github.com/tgstation/tgstation/assets/96586172/2c468ab8-deea-4151-8d66-167b63fdda39 Changes teleporter,gulag teleporter, hand tele, bluespace teleport gun, cultist teleport, experimental syndicate teleporter teleport sounds. ## Why It's Good For The Game I think sounds are an integral part of immersion and having no cool sci-fi noises for portals really spoils it. ## Changelog 🆑 grungussuss and Virgilcore sound: portals now have a unique sound to them /🆑 * Portals now make sounds --------- Co-authored-by: Sadboysuss <96586172+Sadboysuss@users.noreply.github.com> |
||
|
|
3f73d00482 |
allows the SC/FISHER to shoot floor lights (#83182)
## About The Pull Request Lowers the hit threshold layer of SC/FISHER bolts from `PROJECTILE_HIT_THRESHHOLD_LAYER` (2.75) to `LOW_OBJ_LAYER` (2.5), allowing you to shoot floor lights with it. ## Why It's Good For The Game floor lights count as lightbulbs and therefore you should be able to explode them with the gun that explodes lightbulbs ## Changelog 🆑 fix: The SC/FISHER can now shoot floor lights. /🆑 Co-authored-by: Hatterhat <Hatterhat@users.noreply.github.com> |
||
|
|
8b8934c700 |
Portals now make sounds (#83166)
## About The Pull Request ### New sounds: https://drive.google.com/drive/folders/1vLoyxY93Qfe_GtCnetkEHLrkGYZ8S7nD?usp=sharing Demo: https://github.com/tgstation/tgstation/assets/96586172/2c468ab8-deea-4151-8d66-167b63fdda39 Changes teleporter,gulag teleporter, hand tele, bluespace teleport gun, cultist teleport, experimental syndicate teleporter teleport sounds. ## Why It's Good For The Game I think sounds are an integral part of immersion and having no cool sci-fi noises for portals really spoils it. ## Changelog 🆑 grungussuss and Virgilcore sound: portals now have a unique sound to them /🆑 |
||
|
|
06f045f781 |
[MIRROR] Makes the rocket launcher epic ( Giant RPG Buff ) (#27047)
* Makes the rocket launcher epic ( Giant RPG Buff ) (#82212) ## About The Pull Request   The sprites of rocket launchers, rockets, and their projectiles have been updated. The name of the rocket launcher has been changed from "PML-9" to "Dardo-RE Rocket Launcher". Rocket launchers can be worn in suit slots as well as on your back if you really wanted. ## Why It's Good For The Game  The PML sprite is nearly like seven years old at this point I think. This is something a little less ancient and a little more cool looking. Speaking of cool. Weapon names that are just a bunch of random letters and numbers together suck, especially with TTS around making some of these abbreviated names pronounce really weird. The new one should roll off the ai generated tongue a little easier if someone mentions it by name. ## Changelog 🆑 add: The PML-9's name has been changed to something that's a little less boring random numbers and letters, and something that TTS can likely pronounce much nicer than before. Get blown up by a Dardo rocket launcher today. image: Sprites for rocket launchers, rockets, and rocket projectiles have been changed to something fresher looking. balance: Rocket launchers can be worn on your back or armor vest. /🆑 * Makes the rocket launcher epic ( Giant RPG Buff ) --------- Co-authored-by: Paxilmaniac <82386923+Paxilmaniac@users.noreply.github.com> |
||
|
|
37bc259bb0 |
[MIRROR] Refactor removing unused defines. (#26998)
* Refactor removing unused defines. (#82115) Refactors a lot of the unused defines. Refactors a lot of the unused defines. Nothing player facing --------- Co-authored-by: san7890 <the@san7890.com> * Oh well. I hope this works fine. --------- Co-authored-by: Bilbo367 <163439532+Bilbo367@users.noreply.github.com> Co-authored-by: san7890 <the@san7890.com> Co-authored-by: Useroth <37159550+Useroth@users.noreply.github.com> |
||
|
|
929a713b3e |
Makes the rocket launcher epic ( Giant RPG Buff ) (#82212)
## About The Pull Request   The sprites of rocket launchers, rockets, and their projectiles have been updated. The name of the rocket launcher has been changed from "PML-9" to "Dardo-RE Rocket Launcher". Rocket launchers can be worn in suit slots as well as on your back if you really wanted. ## Why It's Good For The Game  The PML sprite is nearly like seven years old at this point I think. This is something a little less ancient and a little more cool looking. Speaking of cool. Weapon names that are just a bunch of random letters and numbers together suck, especially with TTS around making some of these abbreviated names pronounce really weird. The new one should roll off the ai generated tongue a little easier if someone mentions it by name. ## Changelog 🆑 add: The PML-9's name has been changed to something that's a little less boring random numbers and letters, and something that TTS can likely pronounce much nicer than before. Get blown up by a Dardo rocket launcher today. image: Sprites for rocket launchers, rockets, and rocket projectiles have been changed to something fresher looking. balance: Rocket launchers can be worn on your back or armor vest. /🆑 |
||
|
|
466b3df048 |
Refactor removing unused defines. (#82115)
## About The Pull Request Refactors a lot of the unused defines. ## Why It's Good For The Game Refactors a lot of the unused defines. ## Changelog Nothing player facing --------- Co-authored-by: san7890 <the@san7890.com> |
||
|
|
8e8cc93958 |
[MIRROR] Buffs the SC/FISHER Saboteur Handgun. (#26875)
* Buffs the SC/FISHER Saboteur Handgun. (#81553) ## About The Pull Request The saboteur gun will now silence pAIs, toggle off radio broadcasting (won't auto-relay nearby speech), disable turrets, chill out secbots a little, and turn off APCs like power outages do. The disrupt duration has also been buffed from 10/20 to 15/25 for ranged and point-blank respectively. Removed a conspicious chat message from an otherwise inconspicious gun. Brought the code up to date. ## Why It's Good For The Game The concept is cool, alas it's also undermined by how much of a joke it's right now, and the game has plenty already. The amount of interactions it has with things is underwhelming, so you could barely consider it a stealth tool. The duration is also quite scarce, I pointed that out in the original PR too. Basically, I want to make the item cooler. ## Changelog 🆑 balance: Buffed the duration of the SC/FISHER Saboteur Handgun's disruption effects. It's also stealthier and it won't conspiciously alert living mobs hit by it. add: Added saboteur interactions with radios, pAIs, turrets, secbots and APCs. /🆑 --------- Co-authored-by: Jacquerel <hnevard@ gmail.com> * Buffs the SC/FISHER Saboteur Handgun. --------- Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> Co-authored-by: Jacquerel <hnevard@ gmail.com> |
||
|
|
9f4a8dfc50 |
Buffs the SC/FISHER Saboteur Handgun. (#81553)
## About The Pull Request The saboteur gun will now silence pAIs, toggle off radio broadcasting (won't auto-relay nearby speech), disable turrets, chill out secbots a little, and turn off APCs like power outages do. The disrupt duration has also been buffed from 10/20 to 15/25 for ranged and point-blank respectively. Removed a conspicious chat message from an otherwise inconspicious gun. Brought the code up to date. ## Why It's Good For The Game The concept is cool, alas it's also undermined by how much of a joke it's right now, and the game has plenty already. The amount of interactions it has with things is underwhelming, so you could barely consider it a stealth tool. The duration is also quite scarce, I pointed that out in the original PR too. Basically, I want to make the item cooler. ## Changelog 🆑 balance: Buffed the duration of the SC/FISHER Saboteur Handgun's disruption effects. It's also stealthier and it won't conspiciously alert living mobs hit by it. add: Added saboteur interactions with radios, pAIs, turrets, secbots and APCs. /🆑 --------- Co-authored-by: Jacquerel <hnevard@gmail.com> |
||
|
|
9a3fb5c5c1 |
[MIRROR] FOV is Dead (Long Live FOV) [MDB IGNORE] (#25600)
* FOV is Dead (Long Live FOV) * Update _megafauna.dm * Update _vehicle.dm * FOV Hotfix: Actually offsets gameplane render relays * removes redundant visual_shadow * removes GAME_PLANE_UPPER references * Update mob_movement.dm --------- Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com> |
||
|
|
f03084c1ca |
FOV is Dead (Long Live FOV) (#80062)
## About The Pull Request FOV as it is currently implemented is incompatible* with wallening. I'm doin wallening, so we gotta redo things here. The issue is the masking of mobs. Wallening relies on sidemap (layering based off physical position), which only works on things on the same plane (because planes are basically sheets we render down onto) So rather then masking mobs, let's reuse the masking idea from old fov, and use it to cut out a bit of the game render plane, and blur/over-saturate the bit that's masked out. My hope is this makes things visible in light, but not as much in darkness, alongside making more vivid shit more easily seen (just like real life) Here's some videos, what follows after is the commits I care about (since I had to rip a bunch of planes to nothing, so the files changed tab might be a bit of a mess) Oh also I had to remove the darkness pref since the darkness is doing a lot of the heavy lifting now. I'm sorry. Edit: NEW FOV SPRITES! Thanks dongle your aviator glasses will guide us to a better future. https://github.com/tgstation/tgstation/assets/58055496/afa9eeb8-8b7b-4364-b0c0-7ac8070b5609 https://github.com/tgstation/tgstation/assets/58055496/0eff040c-8bf1-47e4-a4f3-dac56fb2ccc8 ## Commits I Care About [Implements something like fov, but without the planes as layers hell](https://github.com/tgstation/tgstation/commit/a604c7b1c8d74cd27af4d806d85892c1f7e35ba8) Rather then masking out mobs standing behind us, we use a combo color matrix and blur filter to make the stuff covered by fov harder to see. We achive this by splitting the game plane into two, masking both by fov (one normally and one inversely), and then applying effects to one of the two. I want to make the fov fullscreens more gradient, but as an effect this is a good start [Removes WALL_PLANE_UPPER by adding a WALL_PLANE overlay to material walls (init cost comes here)](https://github.com/tgstation/tgstation/commit/25489337392f708cb337fbf05a2329eacdfc5346) @Mothblocks see this. comment in commit explains further but uh, we need to draw material walls to the light mask plane so things actually can be seen on them, but we can't do that and also have them be big, so they get an overlay. Sorry, slight init time bump, about 0.5 seconds. I can kill it with wallening. [Moves SEETHROUGH_PLANE above ABOVE_GAME_PLANE](https://github.com/tgstation/tgstation/commit/beec4c00e01d34a04fba7c2bb98a9b70d27ead82) I don't think it actually wants to draw here @Time-Green I think this was you so pinging for opinion [Resprites FOV masks to be clean (and more consistent)](https://github.com/tgstation/tgstation/pull/80062/commits/f02ad13696b3b17658af612c62848b48609d785d) [f02ad13](https://github.com/tgstation/tgstation/pull/80062/commits/f02ad13696b3b17658af612c62848b48609d785d) This is 100% donglesplonge's work, he's spent a week or so going back and forth with me sharpening these to a mirror shine, real chill ## Why It's Good For The Game Walls are closing in ## Changelog 🆑 LemonInTheDark, Donglesplonge image: Redoes fov "mask" sprites. They're clean, have a very pleasant dithering effect, and look real fuckin good! del: Changed FOV, it no longer hides mobs, instead it blurs the hidden area, and makes it a bit darker/oversaturated /🆑 ###### * It's technically possible if we start using render targets to create 2 sets of sources but that's insane and we aren't doing it |
||
|
|
29d5249962 |
[MIRROR] Makes the SC/FISHER a bit better - more range/accessibility/pacifist-usability [MDB IGNORE] (#25135)
* Makes the SC/FISHER a bit better - more range/accessibility/pacifist-usability (#79835) ## About The Pull Request - SC/FISHER is now pacifist-usable. - SC/FISHER black-market availability prob up to 75, from 50. - SC/FISHER range bumped from 14 to 21. ## Why It's Good For The Game The SC/FISHER does no damage (except against ethereals, where it does a grand total of 3 per shot), which I think is negligible but can be removed if it's that bad to allow pacifists a gimmick method of murdering another guy, so I think pacifists should be allowed to use it. The range buff and black-market availability are just because I felt like it, since I don't think it's available enough, especially for a doohickey whose sole purpose is "break lightbulbs". ## Changelog 🆑 balance: The SC/FISHER disruptor pistol is now more likely to show up in black market uplinks. balance: The SC/FISHER now has more range (21 tiles up from 14), and is usable by pacifists. /🆑 --------- Co-authored-by: Hatterhat <Hatterhat@ users.noreply.github.com> * Makes the SC/FISHER a bit better - more range/accessibility/pacifist-usability --------- Co-authored-by: Hatterhat <31829017+Hatterhat@users.noreply.github.com> Co-authored-by: Hatterhat <Hatterhat@ users.noreply.github.com> |
||
|
|
6a77a2962a |
Makes the SC/FISHER a bit better - more range/accessibility/pacifist-usability (#79835)
## About The Pull Request - SC/FISHER is now pacifist-usable. - SC/FISHER black-market availability prob up to 75, from 50. - SC/FISHER range bumped from 14 to 21. ## Why It's Good For The Game The SC/FISHER does no damage (except against ethereals, where it does a grand total of 3 per shot), which I think is negligible but can be removed if it's that bad to allow pacifists a gimmick method of murdering another guy, so I think pacifists should be allowed to use it. The range buff and black-market availability are just because I felt like it, since I don't think it's available enough, especially for a doohickey whose sole purpose is "break lightbulbs". ## Changelog 🆑 balance: The SC/FISHER disruptor pistol is now more likely to show up in black market uplinks. balance: The SC/FISHER now has more range (21 tiles up from 14), and is usable by pacifists. /🆑 --------- Co-authored-by: Hatterhat <Hatterhat@users.noreply.github.com> |
||
|
|
4b4119e4b6 |
[MIRROR] New Muzzle Flash + Temperature gun Baking beam change [MDB IGNORE] (#24557)
* New Muzzle Flash + Temperature gun Baking beam change * Update _energy.dm --------- Co-authored-by: DrTuxedo <42353186+DrDiasyl@users.noreply.github.com> Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> |
||
|
|
28559aa7fc |
New Muzzle Flash + Temperature gun Baking beam change (#79212)
## About The Pull Request Now there are new muzzle flash sprites for the guns. There are 3 types: **BALLISTICS** https://github.com/tgstation/tgstation/assets/42353186/82d7b285-fcf0-4780-8479-143691641e0a **BLUE** https://github.com/tgstation/tgstation/assets/42353186/331c926d-8556-4715-ab61-9a4998dd93d2 **RED** https://github.com/tgstation/tgstation/assets/42353186/c814646d-6d56-4426-bde7-b7a7a06caa39 Also, now temperature gun "BAKE" mode beams have different sprites from the "FREEZE" beams: https://github.com/tgstation/tgstation/assets/42353186/c78363ac-ad04-4534-9323-dc13ba017823 ## Why It's Good For The Game Muzzle flashes were one of the most oldest effect sprites in the base, and are rather bad and bland looking. This makes them more good-looking. Also gives variety, previously there only been Ballistic and Energy one, and they weren't even different. Temperature gun "BAKE" mode beam having a different colour will help distinguish what the hell you're being shot with. ## Changelog 🆑 image: Muzzle flashes got a new sprite, each direction included! image: Temperature Gun "BAKE" beams are now lava colored /🆑 |
||
|
|
c63f897521 |
[MIRROR] It is now possible to survive the Mansus [MDB IGNORE] (#24490)
* It is now possible to survive the Mansus (#79131) ## About The Pull Request Fixes #79113 There were a handful of bugs with the Mansus realm, this PR fixes them. Firstly an most importantly, a refactor to damage handling touched the "unholy determination" effect incorrectly (and I'm not even sure why?), causing it to damage you instead of healing you most of the time. This damage was not avoidable, so most people would be crit shortly after entering the area and stay there. Secondly, some of the heretic realms were unlit. A change to when lazyloaded template atmosphere initialises means that the bonfires were trying to light themselves with no air. Now they do this in late_initialize instead, giving time for air to arrive. Thirdly, the spooky hands were runtiming when passing through transit tiles outside of the bounds of the heretic map. They shouldn't be effected by shuttle drag anyway, so now they aren't. Fourthly, I removed a row of empty space at the edge of the heretic map, just because it annoyed me slightly. Finally, while I was touching the heretic buff I made it heal you 1/4 as much as it originally did. This is a balance change rather than a fix, I'll atomise it out if it is controversial but I don't really expect it to be. In the future I would like to come back to these and make each realm more specific to the path, because I think we could make these both more exciting and more characterful. ## Why It's Good For The Game Once it is working properly, the hand dodging minigame is actually extremely forgiving, even if you don't move very much and get frequently hit. This means some of those hits might actually add some tension. ## Changelog 🆑 fix: You should be revived properly when entering the mansus realm following a heretic sacrifice fix: The buff which is supposed to heal you in the mansus realm will now do that instead of unavoidably damaging you balance: The mansus realm's healing buff heals for 25% as much as it did before it was broken /🆑 * It is now possible to survive the Mansus --------- Co-authored-by: Jacquerel <hnevard@gmail.com> |
||
|
|
10f194781d |
It is now possible to survive the Mansus (#79131)
## About The Pull Request Fixes #79113 There were a handful of bugs with the Mansus realm, this PR fixes them. Firstly an most importantly, a refactor to damage handling touched the "unholy determination" effect incorrectly (and I'm not even sure why?), causing it to damage you instead of healing you most of the time. This damage was not avoidable, so most people would be crit shortly after entering the area and stay there. Secondly, some of the heretic realms were unlit. A change to when lazyloaded template atmosphere initialises means that the bonfires were trying to light themselves with no air. Now they do this in late_initialize instead, giving time for air to arrive. Thirdly, the spooky hands were runtiming when passing through transit tiles outside of the bounds of the heretic map. They shouldn't be effected by shuttle drag anyway, so now they aren't. Fourthly, I removed a row of empty space at the edge of the heretic map, just because it annoyed me slightly. Finally, while I was touching the heretic buff I made it heal you 1/4 as much as it originally did. This is a balance change rather than a fix, I'll atomise it out if it is controversial but I don't really expect it to be. In the future I would like to come back to these and make each realm more specific to the path, because I think we could make these both more exciting and more characterful. ## Why It's Good For The Game Once it is working properly, the hand dodging minigame is actually extremely forgiving, even if you don't move very much and get frequently hit. This means some of those hits might actually add some tension. ## Changelog 🆑 fix: You should be revived properly when entering the mansus realm following a heretic sacrifice fix: The buff which is supposed to heal you in the mansus realm will now do that instead of unavoidably damaging you balance: The mansus realm's healing buff heals for 25% as much as it did before it was broken /🆑 |
||
|
|
b6da56408e |
[MIRROR] A comprehensive refactor / cleanup of bullet_hit and on_hit to cut out a single bad species / mob proc [MDB IGNORE] (#24430)
* A comprehensive refactor / cleanup of `bullet_hit` and `on_hit` to cut out a single bad species / mob proc (#79024) ## About The Pull Request - Refactored `bullet_act`. Adds `should_call_parent` and refactors associated children to support that. - Fixes silicons sparking off when hit by disabler fire. - Desnowflakes firing range target integrity and cleans up its bullet-hole code a bit. - Cleans up changeling tentacle code a fair bit and fixes it not taking off throw mode if you fail to catch something. - The Sleeping Carp deflection is now signalized - Nightmare projectile dodging is now signalized and sourced from the Nightmare's brain rather than species - Refactored how cardboard cutouts get knocked over to be less snowflaked / use integrity - Also adds projectile `on_hit` `should_call_parent` and cleans up a bit of that, particularly their arguments. - On hit arguments were passed wrong this entire time, it's a good thing nothing relied on that. ## Why It's Good For The Game This is cringe. https://github.com/tgstation/tgstation/blob/1863eb2cd82e7cee4fdfff37b42d3fd0c7edd797/code/modules/mob/living/carbon/human/_species.dm#L1430-L1442 Bullets should overall act more consistent across mob types and objects. ## Changelog 🆑 Melbert fix: Silicons don't spark when shot by disablers fix: Changelings who fail to catch something with a tencacle will have throw mode disabled automatically fix: Fixes occasions where you can reflect with Sleeping Carp when you shouldn't be able to fix: Fixes some projectiles causing like 20x less eye blur than they should be refactor: Refactored bullet-mob interactions refactor: Nightmare "shadow dodge" projectile ability is now sourced from their brain /🆑 * A comprehensive refactor / cleanup of `bullet_hit` and `on_hit` to cut out a single bad species / mob proc * Modular changes --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com> |