mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-13 17:14:47 +01:00
observer_fix_tm
288 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
0d4938228f |
Fix CI Failures [IDB IGNORE] [MDB IGNORE] (#5126)
## About The Pull Request - null all GAGS vars for brass wirecutters as it doesn't use GAGS - Repath `mothbomb.dmi` so it actually gets deployed with the server - Generate map icons - Fix 150+ crafting material parity failures - Fix airlock lights not working - Fix certain species missing eyes ## Why It's Good For The Game Don't like red X ## Proof Of Testing If this PR is green check then you Know |
||
|
|
6e9f2ccfc0 |
Merge remote-tracking branch 'tgstation/master' into upstream-12-15
# Conflicts: # .github/workflows/compile_all_maps.yml # .github/workflows/run_integration_tests.yml # _maps/map_files/CatwalkStation/CatwalkStation_2023.dmm # code/_onclick/hud/credits.dm # code/controllers/subsystem/networks/id_access.dm # code/datums/diseases/advance/advance.dm # code/datums/diseases/advance/symptoms/heal.dm # code/game/machinery/doors/door.dm # code/game/objects/structures/crates_lockers/closets/secure/medical.dm # code/game/objects/structures/crates_lockers/closets/secure/security.dm # code/modules/antagonists/malf_ai/malf_ai_modules.dm # code/modules/jobs/job_types/_job.dm # code/modules/loadout/categories/accessories.dm # code/modules/loadout/loadout_helpers.dm # code/modules/loadout/loadout_items.dm # code/modules/loadout/loadout_preference.dm # code/modules/mob/living/silicon/robot/robot_defense.dm # code/modules/mod/mod_theme.dm # code/modules/projectiles/ammunition/energy/laser.dm # code/modules/reagents/reagent_containers/cups/drinks.dm # code/modules/shuttle/mobile_port/variants/supply.dm # code/modules/surgery/organs/internal/eyes/_eyes.dm # code/modules/unit_tests/screenshots/screenshot_antag_icons_heretic.png # icons/hud/screen_full.dmi |
||
|
|
1d270f5f27 |
Converts pre-rework generic heretic gear into chaplain clothing and a null rod (#94363)
## About The Pull Request Reused the old pre-rework heretic robe and blade assets as a new set of chaplain gear and null rod option. Replaced the last few existing uses of the now spriteless generic robe: - Deathmatch, changed heretic warrior to use blade robes - Deathmatch, changed ripper to use the new chaplain armour - Tribal mothman legion corpse, changed to use new chaplain armour - Heretic preview and hallucination, changed to use rust robes - Heretic virtual domain, changed to use rust robes <img width="127" height="131" alt="image" src="https://github.com/user-attachments/assets/690e848e-5191-44d4-bd58-5e338fa2aa4e" /> ## Why It's Good For The Game Chaplains are the playground of old magic content assets, where they find a second life as cosplay outfits. Chaplains can already cosplay cultists, it's only fair that they can pretend to be a heretic as well. ## Changelog 🆑 add: Added a new set of chaplain armour based on the generic heretic robes unavailable since the path rework. /🆑 |
||
|
|
5b39a57e97 |
Update insect parts (#4898)
## About The Pull Request Updates the insect_parts_greyscale.dmi file to remove the darker hands and feet from the basesprite. These can still be implemented via markings. ## Why It's Good For The Game Due to request, people would like more ease of customization when customizing their insects ## Proof Of Testing <img width="267" height="280" alt="image" src="https://github.com/user-attachments/assets/78879f6c-54f7-4c6c-911a-55009365024e" /> ## Changelog 🆑 qol: Removed dark hands and feet from Anthropomorphic Insect sprite. /🆑 |
||
|
|
058503ed0d | Update screenshot tests | ||
|
|
3e3fa72cdf |
Fixes for ca2cc70322
|
||
|
|
e28e9fbdba | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-23-10-2025 | ||
|
|
37c6e18a11 |
Normalizes Shadekin Eyes (#4839)
## About The Pull Request shadekin eyes had different offsets based on the direction before but now they wont be different ## Why It's Good For The Game fix bug ## Proof Of Testing i am not opening my localhost again just to show proof but this is what they looked like before <img width="560" height="259" alt="afbeelding" src="https://github.com/user-attachments/assets/58115cc5-d879-42f9-8730-5517c057663d" /> They are now fine after I fixed them I moved the right one 1 pixel more into the face <details> <summary>Screenshots/Videos</summary> </details> ## Changelog 🆑 fix: fixes shadekin eyes being offset wrong /🆑 |
||
|
|
ca2cc70322 |
Organ damage refactor/cleanup (#93436)
## About The Pull Request So, my original goal was just a refactor for the emissive overlays of eyes, as a way to implement the specular emissive introduced by smartkar some time ago, but somehow I found myself dragged into a bigger refactor or cleanup of organ damage, thresholds, failures. One of the main problem was that there were no procs called when a organ suffered enough damage to fail or when recovering from failure. It'd just enable or disable a bitflag, leaving it up to subtypes to decide how to tackle organ failure their own ways: diverse, funky and sometimes incompatible. More often than not relying on their very own "update_thingamajig" kinda procs that run whenever the organ takes damage, rather than just when the threshold is reached (low, high, failure. There are however a couple organs with their own quirky thresholds, I let those slide). There's also a bit of old code, especially for ears, with the `AdjustEarDamage` and temporary deafness both predating the framework for organ damage as far as I know. It really needed a coat of fresh paint. Oh, there were also more than a handful of organs that still heavily relied on some ORGAN_TRAIT source instead of the `organ_traits` list and the two add/remove procs `add_organ_trait` or `remove_organ_trait`. This include organs that lose or gain specific traits when failing et viceversa. ~~Lastly, felinids (and the halloween ghost species) having reflective eyes. It's just a nod to the tapetum lucidum that animals with night vision often have (including cats), which is why their eyes are a bit brighter in the dark. Felinids however, do not have night vision (nor do ghosts). This is merely cosmetic.~~ Cut out for the time being due to issues with the specular emissive... ## Why It's Good For The Game Refactoring / cleaning up old organ code. ## Changelog 🆑 refactor: Refactored organ damage code a little. Hopefully there won't be issues (otherwise report them). /🆑 |
||
|
|
d14e538393 | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-15-10-2025 | ||
|
|
e85674d366 |
Unified CMO blues slightly, updates garment bags slightly, updates CMO locker contents slightly (#93321)
## About The Pull Request ### CMO palette update Before - after <img width="533" height="324" alt="image" src="https://github.com/user-attachments/assets/c8a843a6-875d-4796-8c62-d24dd509147b" /> Logical follow up to #93313 and #91902 CMO now has a backpack which matches their teal palette rather than re-using the medical doctor's blue backpack CMO now starts with white sneakers instead of blue sneakers ### Garment bag update Garment bags can hold backpacks, duffels, etc. However they CANNOT store backpacks which have ANY contents, so no risk of storage nesting memes here. ### Misc Removed the defib mount from the CMO's closet Minor bugfix for being unable to swap storage positions of items which were instantiated in a storage ## Why It's Good For The Game - Much like the Paramedic, the CMO has had many cooks which have not always been on the same page, so this makes their sprite a bit more coherent. - Heads with unique packs just tossed them in their closet which is pretty spammy given we have four variants now. Putting them in the garment back makes sense. - Defib mount in CMO's locker hasn't been necessary for a while now that all treatment centers spawn with defib mounts. - Bugfix. ## Changelog 🆑 Melbert image: CMO now has unique backpack/satchel/etc. sprites which matches their teal palette. image: CMO spawns with white sneakers instead of blue sneakers. qol: Garment bags can hold empty backpacks/satchels/etc. del: Defib mount removed from CMO's locker. fix: Items stocked in a storage item by default can be mouse-drag-swapped like any other item. /🆑 |
||
|
|
9b282a850e | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-sync | ||
|
|
3cb0b239b7 |
Merges ghosts into spirits & a rework (#92879)
## About The Pull Request Having 2 different species with similar names, looks, attributes etc. seemed like it would be confusing so I thought we should probably trim it down to 1, however since I'm doing that I thought of other changes to go along with it: - The passthrough ability was replaced, now while you're passing through things you no longer drop stuff, but you put a tombstone where you start phasing, and are pulled back to it while done. You still can't interact with anything in this form. Having the tombstone dug out will be raiding your grave, so you'll be pulled out as a dead skeleton. - Removes holy water interactions - Ghosts now have organic limbs & are a Humanoid, so they can have surgery and other forms of healing used on them. https://github.com/user-attachments/assets/5db0c204-0070-466b-8b6c-1702ff0fd94e ## Why It's Good For The Game Ghosts being available to Wizards is okayish but is a rather big buff for one you get free, yes you can still be caught up to if you're in hallways and such but it's way easier to get away with than like, your default teleport scroll even. Being available to Miners though was a big mistake because it opened them to be quite an annoyance with it. The only counter was the fact no healing worked on them, which I don't think is how it should be balanced. I thought I could trust players with such tools but apparently I had too high hopes. Anyway this makes it more bearable for it to be given out at the low cost it currently is at, it's still good as flavor, to spook people or ghost around, and I think while it doesn't make 100% sense why you lose access to your hands, inventory, and UI when you supposedly "drop" your tombstone, I think it's still a good advantage for "scouting", sorta like a lesser spirit realm rune. Closes https://github.com/tgstation/tgstation/issues/91849 ## Changelog 🆑 del: Merged ghosts and spirits into one species. balance: Spirit's passthrough ability is now tied down 7 tiles from a tombstone, but is no longer affected by holy water nor does it make them drop their equipped gear. balance: Ghosts can now be healed. /🆑 |
||
|
|
75e5f43f5a | Update screenshot_digi_leg_test.png | ||
|
|
939f2fc9ac | Merge branch 'master' of https://github.com/tgstation/tgstation into xpokee-test-upstream-sync | ||
|
|
135a09182b |
Refactors obscured (#92779)
## About The Pull Request Fixes #85028 Obscured flags and covered flags are tracked on carbons, updated as items are equipped and unequipped. It's that shrimple. Closes #92760 Just removes the species exception checks for not making sense Also refactors handcuffs / legcuffs removal. In all of these situations they were hardcoded when they could easily just use an inventory proc to work. ## Why It's Good For The Game Stops a million excessive calls to `check_obscured_slots` Makes obscured behavior more consistent Makes obscured behavior easier to use Cleans up human rendering (There was some cursed stuff before with render item -> updated obscured -> update body -> cause side effects) ## Changelog 🆑 Melbert del: Golems which somehow manage to grow wings and somehow manage to equip something that covers their jumpsuit can no longer fly. (Seriously, this will not affect anyone) refactor: Refactored clothing obscurity entirely. Items should be a loooot more consistent and what covers what, and should update a lot snappier. As always, report any oddities, like mysteriously disappearing articles of clothing, hair, or species parts refactored: Refactored handcuffs and legcuffs a bit, report any odd situations with cuffs like getting stuck restrained /🆑 |
||
|
|
34566c051f |
(READY FOR MERGE) Adds a new species: Lycans (and cursekin) (#4331)
## About The Pull Request Adds a new species, lycans. They start as a cursekin, but can transform between lycan form and cursekin form at will via an action button, with a three-minute cooldown between swapping forms. **You need to select ears/tail as a cursekin or your lycan form won't have them. (You can toggle them off in-game via the show/hide mutant parts verb)** The secondary mutant color for body color also changes the lycan form body color. ### Cursekin Form In cursekin form, you are pretty much comparable to a baseline human, albeit with far more customization due to opting for mutant colors over skin tone. At this time, the one notable difference is that your body will reject any inorganic organs/implants that may be attempted to be inserted. ### Lycan Form In lycan form is where you really start to see the differences from a human, some key differences are: - You now have built in armor, but, are unable to wear clothes, armour, or any gear. - Your punches do damage equivalent to a butcher cleaver (minus AP), but you cannot use guns. - You are oversized - You have night vision and better hearing, but this comes at a cost as you will take extra damage from flash bangs, on both the eyes and ears fronts. - You have chunky fingers and are illiterate. - You get the hunger increase of vulps. ### To Do: - [x] Code in all the features outlined by the bounty issuer. - [x] Polish the code. - [x] Fix any remaining bugs. - [x] Have the PR test-merged. - [x] Fix any new bugs that come up. - [ ] Full merge. ## Why It's Good For The Game It's a whole new species with mostly unique mechanics not seen by other species. The transformation aspect is not seen in any other species unless you count slimes, and the cybernetic rejection is not used by other species in this exact way to my knowledge. This lets players play as a species capable of transforming between two species, which makes for some interesting possibilities. ## Proof Of Testing Everything seemed to work on my end. ## Changelog 🆑 add: added a new species, werewolves (and werehumans) image: added icons for the werewolves from Monkestation /🆑 --------- Co-authored-by: Artur Lang <24881678+Arturlang@users.noreply.github.com> Co-authored-by: The Sharkening <95130227+StrangeWeirdKitten@users.noreply.github.com> Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com> |
||
|
|
b95174d2da |
Reflavors the Lone Infiltrator to prevent confusion with Lone Operative (#4495)
## About The Pull Request We've had many cases of new players mistaking Lone Infiltrator for Lone Operative. This PR renames the antagonist to "Syndicate Boarder," and changes their preview to instead use the Infiltrator MOD (even if they don't actually get an infiltrator MOD, yet) ## Why It's Good For The Game Prevents confusion with the murderbone punishment antagonist type and more clearly explains what the Syndicate Boarder (former Lone Infiltrator) is. ## Proof Of Testing <img width="340" height="309" alt="image" src="https://github.com/user-attachments/assets/c26ca7fb-5655-424e-b2f7-209790738e69" /> ## Changelog 🆑 ReturnToZender qol: Lone Infiltrators have been renamed to Syndicate Boarders for clarity. /🆑 --------- Co-authored-by: Artur Lang <24881678+Arturlang@users.noreply.github.com> |
||
|
|
4c62a21b1a | Fixes for #92061 | ||
|
|
c5f1e43ca4 |
Reworks species previews in the creator (#4415)
## About The Pull Request This PR makes it so all the species previews and more visually interesting and more closely resemble what the species you're about to become should look like. See proof of testing for before vs after comparison. This has no effect on characters of this species, only what people see when browsing species for what to pick. ## Why It's Good For The Game This PR will give a better idea of what the vibe of a species is, and therefore allow you to make a better choice as to what your character will look like ## Proof Of Testing Before <img width="70" height="599" alt="image" src="https://github.com/user-attachments/assets/0785366f-44d7-4fab-b160-ea2525671695" /> After <img width="85" height="596" alt="image" src="https://github.com/user-attachments/assets/3f6a8939-c25e-43cf-9810-a2242bc42659" /> <details> <summary>Screenshots/Videos</summary> </details> ## Changelog 🆑 ReturnToZender qol: Character previews in the species menu got a visual glow-up! add: Akula (Generic) has been renamed to the Aquatic template species add: Primitive Demihumans have been renamed to Hearthkin in the species list, so they're not confused with a template species. add: Anthromorphic Insects have been renamed to "Insectoids," simplifying their name and preventing confusion with Anthromorphs. /🆑 |
||
|
|
d738cbb296 |
Several balance changes to Combat MODsuits (#91944)
## About The Pull Request atomization of https://github.com/tgstation/tgstation/pull/91702 with a few changes. - armor booster module has been removed, nukie suits are now always fully armored and EVA proof. - Jetpack modules have had their power drain reduced considerably. - Cap,Hos and Sec MODs armor values have been bumped up (similar to the old hardsuit values). - Sec armor plates are now a cargo import. The nf suit now comes with the Shock absorber pre-installed. - Fixes Nukie suits not having T4 flash protection. - All combat modsuits now have ear protection by default when the suit active (Cap,Sec,Hos,Syndie,ERT, Death Squad, Ninja and RD.) - Night visor module now comes preinstalled in the syndie mods and doesn't conflict with other vision modules, nor it costs complexity, power drain reduced, the module itself has been removed from the uplink. - Increases the complexity on the nukie suits by 2 points. - all traitor modules now cost 1 less TC. ## Why It's Good For The Game **armor booster removal** I really dislike how this module works, it's a constant hassle having to manually swap mode depending on the pressure, it's just an annoyng memory check that punishes you with chip damage when not respected. The choice of wheter wearing a mod or not doesn't really apply to nuclear operatives since they wear these things all the time and losing half of your armor in space never really made a ton of sense to begin with. **Jetpack power drain buff** The drain on this thing is absolute fucking nuts, it eats high capacity cells in a matter of minutes, power should be a limiting factor to using these things but it shouldn't tank your battery health this quickly. **Cap,Sec,Hos MODs buffs** Back when Fikou introduced MODsuits, one point he clarified in the design doc is that "Combat stuff usually leads to uninteresting design, it makes the suits do everything for everyone" I don't want to diss on the dude (Love you bud), but I don't think his point makes a ton of sense. Combat stuff, on this case Combat mods should be built with Combat in mind. In all fairness he then has a paragraph addressing why the crew based combat suits should have low armor, but it still rings hollow to me. Armored or not, being slower than your average spessman is enough to make you an easy target or to never be able to chase anyone on foot, even with their armor increased I don't see players having them constantly on all the time, the slowdown is a hard enough disincentive. The Magnate and HoS mods specifically are unique pieces of gear, and they are usually assigned to 2 of the most important (and prone to assassination) roles on the station. There's also a weird paradox with some of the modules they come equipped with the sec MODs, the pepper spray and the projectile dampener are built around getting hit, which is a hard sell when your armor is so low you might as well just die straight up. Out of respect to Fikou's will of not wanting to grant the crew the ability to mass produce combat MODs, I removed the sec modplates from the techweb and moved em as a cargo import. **Uplink MODules Price reduction** These were originally priced with progression in mind, traitor specifically has become considerably weaker since they lost access to avenues to generate extra TCs. It's hard to justify getting a suit when most weapons in the uplink cost more than half of your budget, let alone the modules. **Shock absorption into the inf suit** This module is pretty much already mandatory if you don't want to lose fights in one hit, wearing a syndie modsuit makes you giga valid to everyone on station and any traitor worth their salt will buy this module regardless anyway; it just punishes new players who don't know better. **Night Visor MOD changes** This module is completely useless, nobody ever uses it, because it conflicts with other vision modules, and it's completely redundant since Thermal vision already comes packed with NV on their own. **Complexity increase on the Nukie suits + T4 flashing protection added** The nukie suits have honestly quite limited complexity for the role they are supposed to fill , the T4 flash protection missing from the suit is unintended as we made any other MODsuit have T4 protection already, Moth Nukies rejoice. **Ear Protection on combat MODs (oh boy)** Listen, as of right now we have a total of 2 counters for flashbangs, a Bowman or being deaf. A sealed, airtight suit shouldn't offer less protection against loud noises than a mere headset. baddies that usually pack these suits usually have a Bowman anyway, Nukies have it, ninja can easily teleport into a sec outpost and get it, it's a bit more tricky for traitor since they usually have to invest in an emag to quickly take the set or kill a security officer. At least now if you see a baddie roll up in a suit you no longer have to play hypotheticals wheter your flashbang will work properly or not. I also gave the ear protection to the RD mod despite it not being a combat MOD, because frankly it made sense, it's a bomb proof armor, It should also protect you from loud noises. ## Changelog 🆑 removal: Armor booster module has been removed. balance: Jetpack module energy drain has been massively reduced. balance: armor on the Magnate,Safegaurd and sec modsuits has been considerably increased. balance: Sec MOD plates have been transferred from RnD to Cargo. balance The Infiltrator MOD now comes with the shock absorption module pre-installed. balance: Nukie MODsuits hav a bit more complexity. fix: Nukie MODs now have the same flash protection as the other suits with welding protection. balance: night visor module comes pre-installed in the syndie mods, no longer consumes complexity,drains less power and doesn't conflict with the other visor MODules. removal: Nightvision MODule removed from the uplink. balance: Combat MODs and RDs now grant earing protection when the suit is active. /🆑 --------- Co-authored-by: Xander3359 <66163761+Xander3359@users.noreply.github.com> |
||
|
|
ec0a685866 |
Several balance changes to Combat MODsuits (#91944)
## About The Pull Request atomization of https://github.com/tgstation/tgstation/pull/91702 with a few changes. - armor booster module has been removed, nukie suits are now always fully armored and EVA proof. - Jetpack modules have had their power drain reduced considerably. - Cap,Hos and Sec MODs armor values have been bumped up (similar to the old hardsuit values). - Sec armor plates are now a cargo import. The nf suit now comes with the Shock absorber pre-installed. - Fixes Nukie suits not having T4 flash protection. - All combat modsuits now have ear protection by default when the suit active (Cap,Sec,Hos,Syndie,ERT, Death Squad, Ninja and RD.) - Night visor module now comes preinstalled in the syndie mods and doesn't conflict with other vision modules, nor it costs complexity, power drain reduced, the module itself has been removed from the uplink. - Increases the complexity on the nukie suits by 2 points. - all traitor modules now cost 1 less TC. ## Why It's Good For The Game **armor booster removal** I really dislike how this module works, it's a constant hassle having to manually swap mode depending on the pressure, it's just an annoyng memory check that punishes you with chip damage when not respected. The choice of wheter wearing a mod or not doesn't really apply to nuclear operatives since they wear these things all the time and losing half of your armor in space never really made a ton of sense to begin with. **Jetpack power drain buff** The drain on this thing is absolute fucking nuts, it eats high capacity cells in a matter of minutes, power should be a limiting factor to using these things but it shouldn't tank your battery health this quickly. **Cap,Sec,Hos MODs buffs** Back when Fikou introduced MODsuits, one point he clarified in the design doc is that "Combat stuff usually leads to uninteresting design, it makes the suits do everything for everyone" I don't want to diss on the dude (Love you bud), but I don't think his point makes a ton of sense. Combat stuff, on this case Combat mods should be built with Combat in mind. In all fairness he then has a paragraph addressing why the crew based combat suits should have low armor, but it still rings hollow to me. Armored or not, being slower than your average spessman is enough to make you an easy target or to never be able to chase anyone on foot, even with their armor increased I don't see players having them constantly on all the time, the slowdown is a hard enough disincentive. The Magnate and HoS mods specifically are unique pieces of gear, and they are usually assigned to 2 of the most important (and prone to assassination) roles on the station. There's also a weird paradox with some of the modules they come equipped with the sec MODs, the pepper spray and the projectile dampener are built around getting hit, which is a hard sell when your armor is so low you might as well just die straight up. Out of respect to Fikou's will of not wanting to grant the crew the ability to mass produce combat MODs, I removed the sec modplates from the techweb and moved em as a cargo import. **Uplink MODules Price reduction** These were originally priced with progression in mind, traitor specifically has become considerably weaker since they lost access to avenues to generate extra TCs. It's hard to justify getting a suit when most weapons in the uplink cost more than half of your budget, let alone the modules. **Shock absorption into the inf suit** This module is pretty much already mandatory if you don't want to lose fights in one hit, wearing a syndie modsuit makes you giga valid to everyone on station and any traitor worth their salt will buy this module regardless anyway; it just punishes new players who don't know better. **Night Visor MOD changes** This module is completely useless, nobody ever uses it, because it conflicts with other vision modules, and it's completely redundant since Thermal vision already comes packed with NV on their own. **Complexity increase on the Nukie suits + T4 flashing protection added** The nukie suits have honestly quite limited complexity for the role they are supposed to fill , the T4 flash protection missing from the suit is unintended as we made any other MODsuit have T4 protection already, Moth Nukies rejoice. **Ear Protection on combat MODs (oh boy)** Listen, as of right now we have a total of 2 counters for flashbangs, a Bowman or being deaf. A sealed, airtight suit shouldn't offer less protection against loud noises than a mere headset. baddies that usually pack these suits usually have a Bowman anyway, Nukies have it, ninja can easily teleport into a sec outpost and get it, it's a bit more tricky for traitor since they usually have to invest in an emag to quickly take the set or kill a security officer. At least now if you see a baddie roll up in a suit you no longer have to play hypotheticals wheter your flashbang will work properly or not. I also gave the ear protection to the RD mod despite it not being a combat MOD, because frankly it made sense, it's a bomb proof armor, It should also protect you from loud noises. ## Changelog 🆑 removal: Armor booster module has been removed. balance: Jetpack module energy drain has been massively reduced. balance: armor on the Magnate,Safegaurd and sec modsuits has been considerably increased. balance: Sec MOD plates have been transferred from RnD to Cargo. balance The Infiltrator MOD now comes with the shock absorption module pre-installed. balance: Nukie MODsuits hav a bit more complexity. fix: Nukie MODs now have the same flash protection as the other suits with welding protection. balance: night visor module comes pre-installed in the syndie mods, no longer consumes complexity,drains less power and doesn't conflict with the other visor MODules. removal: Nightvision MODule removed from the uplink. balance: Combat MODs and RDs now grant earing protection when the suit is active. /🆑 --------- Co-authored-by: Xander3359 <66163761+Xander3359@users.noreply.github.com> |
||
|
|
4420ed30ec | Update screenshot tests | ||
|
|
2dbbe4f41d |
Voidwalker Rework | Basic Mob Edition + Bonus Antag (#91646)
Reworks the Voidwalker into a basic mob, including a lot of the balance and mechanics! Old (left), new (right)  https://github.com/user-attachments/assets/22d6138f-11aa-4f7a-8600-2565e6578bcf (little outdated) https://youtu.be/cp1E3qPJGX4 (high res mirror) **🟨Voidwalker mob changes🟨** No longer a human species and no more void eater. Instead deals damage by simple unarmed attacks. Instead of dealing brute, the voidwalker does oxygen damage (4-5 hits to knock out) with left-click, and slight brute on right click. Non-human mobs automatically take brute damage instead of oxygen damage. 150 HP 33% burn armor Yes it has hands, but it can only pick up and drop stuff **🟨Window phase🟨**  Instead of needing to smash a window with the void eater, moving through windows simply leaves them passable for 5 seconds. Makes kidnapping a lot easier, but also makes it easier for people to chase you People who used the voided skull also leave windows passable for a short bit. **🟩Cosmic Charge🟩** Standard charge ability, but only lets you charge towards space and works while dragging people **🟩The Vomitwalker🟩** People you kidnapped now occasionally do the nebula vomit, which voidwalkers can use to dive from and into  Diving into it is very fast but also removes the nebula vomit. You can also kidnap people into the vomit (this doesn't remove the vomit). There is also a little UI for tracking this. Clicking it while in space dive teleports you to the next nebula vomit, if there are any.  **🟨Voided people changes🟨** Kidnapped people and people that used the cosmic skull are no longer muted, but take 10% extra brute and occasionally leave behind glass shards when taking a lot of damage. Are no longer obliterated on a second encounter with voidwalkers. Voidwalkers can't hurt people they've already voided (unless they really want to), but instead just knock them out for 30s Also the kidnapped do space vomit as I said earlier. **🟩Sunwalker🟩** Voidwalker variant made for pure murderbone. Has no camo and kindap mechanics, but has a fiery charge, loads of damage and area igniting and people ignition. It's admin, but I might change this later once I've had some more time to think about it.  Other changes: - Voidwindows no longer need to be space adjacent - Unsettle works faster but can't be used in combat anymore - Space camo now grants complete space invisibility - Makes a lot of aspects easily moddable, so we can easily mod it into a moistwalker in-game - Taking a cosmic skull when you already used one gives you the old voidwalker void eater arm. Additional uses just gives you more void eater arms until you run out of hands - I definitely forgot a lot more - I made a cool voidwalker hud! It even has a unique space camo toggle <details> <summary>Lot of text</summary> Voidwalker was basically a snowflaked toghether human species because I didn't know how to sprite, but I was able to work with species and visual effects. Then I realized I can just commission sprites! This also let me just cut out a lot of the snowflake code, because it's no longer a human so half the things I didn't want them to be able to do, they just literally cannot do. Voidwalkers were in a bit of strange spot with kidnapping? There was essentially no incentive, other than "smash spaceman = funny". They also had issues doing, anything? There's surprisingly little space on a space station, especially maps such as tram. Making the voided victims have nebula vomit gives the voidwalker a reason to WANT to kidnap, by giving them a way to appear basically anywhere on the station. I don't think it's too overpowered. Voided people don't vomit that much, it's easily cleanable and diving into it removes them, so they're limited usability. Replacing the brute damage with oxygen damage also kinda... just makes sense? I seriously contemplated letting them do stamina damage for the first iteration, but opted not to do it because stamina damage has so many hooks attached. Oxygen damage doesn't! It's also just incredibly thematic, let's them bypass most armor and makes them more suited to non-letha kidnappings. Space camo making them completely invisible was also long overdue. It was literally just urging people to turn up their gamma and turn down their parallax settings. I thought it was an interesting mechanic, but it's just straight up unfair and doesn't belong in a multiplayer game. They now more frequently leave behind little glass shards, leave particles from nebula vomit they leave from and have more unique sound effects, so attentive (and lucky) people can still deduce if an area is safe-ish. I removed being able to shatter voided people because the mechanic was deeply misunderstood. It was intended to give them a means of removing people if they kept incessently bothering the voidwalker, but people went out of their way to use this to roundremove people they had already voided. The 30s sleep conveys my intention a lot better, and fits better now that the voidwalker benefits from having as many voided people vomitting all over the place. The cosmic charge gives them some much needed survivability. My experiences (in observing voidwalkers, I can never get the roll ;_;) is that they're constantly one mistake away from complete obliteration. The cosmic charge let's them get out quick despite their slow movement speed in gravity. It also makes them stronger when fighting in space. They got 33% burn armor so it's a tiny bit harder to wipe them away in a single laser salvo, while still giving people ample opportunity to fight them off . Also they're like glass or something so it fits thematically. I gave them hands because I thought it was cool, might be a mistake idk </details> 🆑 Time-Green, INFRARED_BACON add: Voidwalker has been throughly reworked! Now you are even less safe! admin: Adds admin-only Sunwalker mob fix: Unsettle doesnt work on yourself anymore fix: Space camo doesnt stop bobbing anymore fix: Voidwalker windows now recharge on kidnap runtime: Fixes healthanalyzers runtiming when scanning mobs without reagent holders /🆑 |
||
|
|
c5f1b7f8c3 |
Da blobmob update! Indepedent strains, new sprites, egglike spores, fixes, sounds and buffs! #Cytology2025 (#91368)
## About The Pull Request This PR makes a number of changes focusing on improving the blob minions, spores, nauts, zombies and their associated component. ## New sprites The blob spore, blob zombie and blobbernaut has been resprited. The spore and zombie have been lightly touched to preserve the most of the original characteristics while given a cleaner look. The spore and zombie have a partially desaturated version used to let more of the strain colour through instead of them all ending up dark brown. The blobbernaut has been reshaded and the side sprite has been made coherent with the front state, I made decided how the front state was shaded should be the "canon" one (this might be a bit controversial but the wild inconsistency was bugging me.) The blobbernaut is a bit less veiny, but the veins look more natural and use the strain complementary colour. Many combinations are cool, some are a bit lacking due to the weird choices of complementary colour.   ## New Cytology Related Features Blob mobs can now have strains independently of an overmind. The 15% mutation chance of vat grown creatures causes a spore or blobbernaut to get a random strain. When I first added the blob spore cell line, ghosts could click on cyto blob spores to posses them, they would then presumably(?) but not explicitly be free antags. This ability was lost when the blob spore code was modernised. Very few people knew about this, and no one grew blob spores anyway. This feature is coming back in a big way, vat grown blob spores present a new unique job hazard, they are automatically offered to ghost as an extremely shitty, but free antag. I have tested spawning like 15 antag pre-buff blob spores in a live round and they failed completely to antagonise the crew effectively, hopefully these buffed spores won't present too much of an issue to our great administration team, if that ends up being the case, there are many levers to pull to tone them down. ## Blob Spore Buffs Blob spores prior to this PR were almost completely useless. The main cause of this was the extremely dilute reagent smoke reaction; 10u divided over 20 seconds. This resulted the smoke clouds dealing 0.15 - 0.6 DPS, a completely negligible and useless amount. The smoke reagent concentration has been massively increased(10u -> 40u) and the smoke duration has been reduced(20s -> 8s). The result of this is that blob spore clouds are something you want to avoid standing in, but they provide less smoke cover for the blob and nauts. Blob spores have also gained the ability to vent crawl. Simple mobs that can't either open doors or vent crawl feel super bad to play. They also deal a little more melee damage, but this is still pathetically low on account of their low attack speed. I have adjusted their supplementary reagents and reduced the amounts of spores produced per cycle(2 -> 1) to make them a bit harder to mass produce. ## Blob Strain Buffs I have not made this PR with the goal of buffing any particular strain, but some changes have affected blob strain balance: ### Debris Devourer This was the only strain that was strongly mechanically tied to the core. In order to allow for independent debris devourer mobs, they can now eat trash(or any item really), they are independent, they store these items inside their mob, and use these for the debris devourer reactions. If they have an overmind, the item gets sent to the core. This should result in a nice buff to the strain, which I've been told is one of the bad ones. ### Regenerative Materia & Cryogenic Poison 5 years back another contributor removed the ability of blobs and blobbernauts to transfer reagents with their attacks(as their expose method is vapour). This was a completely undocumented change and possibly unintentional, so I am reverting it by giving blob reagents penetrates_skin = VAPOR again. This only really affects these two strains. It makes regenerative materia much stronger, while barely having any effect on cryogenic poison, because temperature normalisation changes has made it completely ineffective even with much more reagent applied. ### Electromagnetic Web The spore reagent cloud buff might also give a boost to some strains with good expose effects, like electromagnetic web. ## Blob Cooking Blob spores now drop spore sacks, they can be ground for spore toxin, or cracked on a griddle to create an egg-like treat! I also added a detoxification reaction to reduce the amount of toxin when cooked, might not work yet because I think griddles may not actually heat the food? ## Sound Effects Blob spores bursting and blobbernauts dying have sound effects. ## Why It's Good For The Game level 5 biohazard ## Changelog 🆑 image: blob mobs have been respectfully resprited. add: vat grown blob mobs can sometimes get born with a blob strain. add: blob spores drop spore sacks, crack them on the griddle. add: debris devourer mobs can now eat trash, sending it to the core, if there is one. add: vat grown blob spores are now sentient and evil. balance: blob spores now have much more concentrated smoke. balance: blob spores can ventcrawl. fix: regenerative materia and cryogenic poison strain blob tiles & nauts now inject chems again. sound: blob spores & blobbernaut now have death sound effects. /🆑 |
||
|
|
39a2434c06 |
Voidwalker Rework | Basic Mob Edition + Bonus Antag (#91646)
## About The Pull Request Reworks the Voidwalker into a basic mob, including a lot of the balance and mechanics! Old (left), new (right)  https://github.com/user-attachments/assets/22d6138f-11aa-4f7a-8600-2565e6578bcf (little outdated) https://youtu.be/cp1E3qPJGX4 (high res mirror) **🟨Voidwalker mob changes🟨** No longer a human species and no more void eater. Instead deals damage by simple unarmed attacks. Instead of dealing brute, the voidwalker does oxygen damage (4-5 hits to knock out) with left-click, and slight brute on right click. Non-human mobs automatically take brute damage instead of oxygen damage. 150 HP 33% burn armor Yes it has hands, but it can only pick up and drop stuff **🟨Window phase🟨**  Instead of needing to smash a window with the void eater, moving through windows simply leaves them passable for 5 seconds. Makes kidnapping a lot easier, but also makes it easier for people to chase you People who used the voided skull also leave windows passable for a short bit. **🟩Cosmic Charge🟩** Standard charge ability, but only lets you charge towards space and works while dragging people **🟩The Vomitwalker🟩** People you kidnapped now occasionally do the nebula vomit, which voidwalkers can use to dive from and into  Diving into it is very fast but also removes the nebula vomit. You can also kidnap people into the vomit (this doesn't remove the vomit). There is also a little UI for tracking this. Clicking it while in space dive teleports you to the next nebula vomit, if there are any.  **🟨Voided people changes🟨** Kidnapped people and people that used the cosmic skull are no longer muted, but take 10% extra brute and occasionally leave behind glass shards when taking a lot of damage. Are no longer obliterated on a second encounter with voidwalkers. Voidwalkers can't hurt people they've already voided (unless they really want to), but instead just knock them out for 30s Also the kidnapped do space vomit as I said earlier. **🟩Sunwalker🟩** Voidwalker variant made for pure murderbone. Has no camo and kindap mechanics, but has a fiery charge, loads of damage and area igniting and people ignition. It's admin, but I might change this later once I've had some more time to think about it.  Other changes: - Voidwindows no longer need to be space adjacent - Unsettle works faster but can't be used in combat anymore - Space camo now grants complete space invisibility - Makes a lot of aspects easily moddable, so we can easily mod it into a moistwalker in-game - Taking a cosmic skull when you already used one gives you the old voidwalker void eater arm. Additional uses just gives you more void eater arms until you run out of hands - I definitely forgot a lot more - I made a cool voidwalker hud! It even has a unique space camo toggle ## Why It's Good For The Game <details> <summary>Lot of text</summary> Voidwalker was basically a snowflaked toghether human species because I didn't know how to sprite, but I was able to work with species and visual effects. Then I realized I can just commission sprites! This also let me just cut out a lot of the snowflake code, because it's no longer a human so half the things I didn't want them to be able to do, they just literally cannot do. Voidwalkers were in a bit of strange spot with kidnapping? There was essentially no incentive, other than "smash spaceman = funny". They also had issues doing, anything? There's surprisingly little space on a space station, especially maps such as tram. Making the voided victims have nebula vomit gives the voidwalker a reason to WANT to kidnap, by giving them a way to appear basically anywhere on the station. I don't think it's too overpowered. Voided people don't vomit that much, it's easily cleanable and diving into it removes them, so they're limited usability. Replacing the brute damage with oxygen damage also kinda... just makes sense? I seriously contemplated letting them do stamina damage for the first iteration, but opted not to do it because stamina damage has so many hooks attached. Oxygen damage doesn't! It's also just incredibly thematic, let's them bypass most armor and makes them more suited to non-letha kidnappings. Space camo making them completely invisible was also long overdue. It was literally just urging people to turn up their gamma and turn down their parallax settings. I thought it was an interesting mechanic, but it's just straight up unfair and doesn't belong in a multiplayer game. They now more frequently leave behind little glass shards, leave particles from nebula vomit they leave from and have more unique sound effects, so attentive (and lucky) people can still deduce if an area is safe-ish. I removed being able to shatter voided people because the mechanic was deeply misunderstood. It was intended to give them a means of removing people if they kept incessently bothering the voidwalker, but people went out of their way to use this to roundremove people they had already voided. The 30s sleep conveys my intention a lot better, and fits better now that the voidwalker benefits from having as many voided people vomitting all over the place. The cosmic charge gives them some much needed survivability. My experiences (in observing voidwalkers, I can never get the roll ;_;) is that they're constantly one mistake away from complete obliteration. The cosmic charge let's them get out quick despite their slow movement speed in gravity. It also makes them stronger when fighting in space. They got 33% burn armor so it's a tiny bit harder to wipe them away in a single laser salvo, while still giving people ample opportunity to fight them off . Also they're like glass or something so it fits thematically. I gave them hands because I thought it was cool, might be a mistake idk </details> ## Changelog 🆑 Time-Green, INFRARED_BACON add: Voidwalker has been throughly reworked! Now you are even less safe! admin: Adds admin-only Sunwalker mob fix: Unsettle doesnt work on yourself anymore fix: Space camo doesnt stop bobbing anymore fix: Voidwalker windows now recharge on kidnap runtime: Fixes healthanalyzers runtiming when scanning mobs without reagent holders /🆑 |
||
|
|
e0bdfc3f5f |
Dynamic Rework (#91290)
Implements https://hackmd.io/@tgstation/SkeUS7lSp , rewriting Dynamic
from the ground-up
- Dynamic configuration is now vastly streamlined, making it far far far
easier to understand and edit
- Threat is gone entirely; round chaos is now determined by dynamic
tiers
- There's 5 dynamic tiers, 0 to 4.
- 0 is a pure greenshift.
- Tiers are just picked via weight - "16% chance of getting a high chaos
round".
- Tiers have min pop ranges. "Tier 4 (high chaos) requires 25 pop to be
selected".
- Tier determines how much of every ruleset is picked. "Tier 4 (High
Chaos) will pick 3-4 roundstart[1], 1-2 light, 1-2 heavy, and 2-3
latejoins".
- The number of rulesets picked depends on how many people are in the
server - this is also configurable[2]. As an example, a tier that
demands "1-3" rulesets will not spawn 3 rulesets if population <= 40 and
will not spawn 2 rulesets if population <= 25.
- Tiers also determine time before light, heavy, and latejoin rulesets
are picked, as well as the cooldown range between spawns. More chaotic
tiers may send midrounds sooner or wait less time between sending them.
- On the ruleset side of things, "requirements", "scaling", and
"enemies" is gone.
- You can configure a ruleset's min pop and weight flat, or per tier.
- For example a ruleset like Obsession is weighted higher for tiers 1-2
and lower for tiers 3-4.
- Rather than scaling up, roundstart rulesets can just be selected
multiple times.
- Rulesets also have `min_antag_cap` and `max_antag_cap`.
`min_antag_cap` determines how many candidates are needed for it to run,
and `max_antag_cap` determines how many candidates are selected.
- Rulesets attempt to run every 2.5 minutes. [3]
- Light rulesets will ALWAYS be picked before heavy rulesets. [4]
- Light injection chance is no longer 100%, heavy injection chance
formula has been simplified.
- Chance simply scales based on number of dead players / total number
off players, with a flag 50% chance if no antags exist. [5]
[1] This does not guarantee you will actually GET 3-4 roundstart
rulesets. If a roundstart ruleset is picked, and it ends up being unable
to execute (such as "not enough candidates", that slot is effectively a
wash.) This might be revisited.
[2] Currently, this is a hard limit - below X pop, you WILL get a
quarter or a half of the rulesets. This might be revisited to just be
weighted - you are just MORE LIKELY to get a quarter or a half.
[3] Little worried about accidentally frontloading everything so we'll
see about this
[4] This may be revisited but in most contexts it seems sensible.
[5] This may also be revisited, I'm not 100% sure what the best / most
simple way to tackle midround chances is.
Other implementation details
- The process of making rulesets has been streamlined as well. Many
rulesets only amount to a definition and `assign_role`.
- Dynamic.json -> Dynamic.toml
- Dynamic event hijacked was ripped out entirely.
- Most midround antag random events are now dynamic rulesets. Fugitives,
Morphs, Slaughter Demons, etc.
- The 1 weight slaughter demon event is gone. RIP in peace.
- There is now a hidden midround event that simply adds +1 latejoin, +1
light, or +1 heavy ruleset.
- `mind.special_role` is dead. Minds have a lazylist of special roles
now but it's essentially only used for traitor panel.
- Revs refactored almost entirely. Revs can now exist without a dynamic
ruleset.
- Cult refactored a tiny bit.
- Antag datums cleaned up.
- Pre round setup is less centralized on Dynamic.
- Admins have a whole panel for interfacing with dynamic. It's pretty
slapdash I'm sure someone could make a nicer looking one.


- Maybe some other things.
See readme for more info.
Will you see a massive change in how rounds play out? My hunch says
rounds will spawn less rulesets on average, but it's ultimately to how
it's configured
🆑 Melbert
refactor: Dynamic rewritten entirely, report any strange rounds
config: Dynamic config reworked, it's now a TOML file
refactor: Refactored antag roles somewhat, report any oddities
refactor: Refactored Revolution entirely, report any oddities
del: Deleted most midround events that spawn antags - they use dynamic
rulesets now
add: Dynamic rulesets can now be false alarms
add: Adds a random event that gives dynamic the ability to run another
ruleset later
admin: Adds a panel for messing around with dynamic
admin: Adds a panel for chance for every dynamic ruleset to be selected
admin: You can spawn revs without using dynamic now
fix: Nuke team leaders get their fun title back
/🆑
(cherry picked from commit
|
||
|
|
78cffc2101 |
Adds a new halloween species: Spirits (#90711)
Adds 2 new species: Spirits and Ghosts
Spirits are available roundstart during Halloween, Wabbajack and
Xenobio's black slime extract
Ghosts are available through Magic mirrors
They fly around, and don't have legs and instead float around. They also
can't get legs implanted onto themselves.
They also do have organs, so they are affected by flashbangs, they do
get hungry, they do need oxygen to survive (they don't take damage in
space but they do suffocate & get slowdown), and can process chems.
Gibbing a ghost gives ectoplasm, an ingredient for ghost burgers.
Chaplains also got a buff here, null rod-type weapons' bane is now
against Spirit mobs, rather than hardcoded revenants. This means it now
includes Spirits/Ghosts, but also Soulscythes & Cult shades.
Also re-adds https://github.com/tgstation/tgstation/pull/81630 which was
reverted in https://github.com/tgstation/tgstation/pull/86506 which I
assume was accidental.
Ghosts have an innate ability to become incorporeal, which allows them
to phase through walls and stuff. Using this will immediately make them
drop any non-ghost limb/organ (not implants cause I thought it would be
funny). This ability is not available if they have holy water in their
system, and like revenants they also can't walk over blessed tiles with
it. They are also invisible to cameras while using this (not the obscura
though).
Sprites taken from observers directly, if anyone wants to make custom
sprites for them feel free. If anyone wants to make this obtainable
somehow in-game as well I wouldn't be opposed, halloween is just where I
thought it would fit most.
This also adds a lot of fixes that I encountered trying to add this,
from systems that have been neglected throughout the years.
https://github.com/user-attachments/assets/e368d710-80a0-4c63-b271-1abe3dd41a5e
We haven't gotten a new halloween species in a long time and thought it
would be fun if you can play as an actual ghost, the soul that remains
after a person passes, so Halloween feels more haunted. It's overall
made in just good fun, with a bonus that Ghosts are a cool species to
play with as well for Wizards & maybe Chaplains in the future (Dead sect
when?)
🆑
add: Added a new halloween species: Spirits, a species without legs and
instead floats.
add: Added a new magic mirror species: Ghosts, like spirits but with the
ability to become incorporeal, traversing through solid wall.
fix: Mobs unable to use storage items now can't use storage items.
fix: Mobs unable to use items can now not open airlocks & closets
fix: Mobs unable to pick items up can no longer pick items up and
immediately drop, moving one tile at a time.
fix: Mobs with intentional missing limbs (Alien larva) no longer show
their limbs as missing on examine (again)
fix: Golems' pref page had a missing icon, it now has one.
/🆑
---------
Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com>
(cherry picked from commit
|
||
|
|
4c277dc572 |
Dynamic Rework (#91290)
## About The Pull Request Implements https://hackmd.io/@tgstation/SkeUS7lSp , rewriting Dynamic from the ground-up - Dynamic configuration is now vastly streamlined, making it far far far easier to understand and edit - Threat is gone entirely; round chaos is now determined by dynamic tiers - There's 5 dynamic tiers, 0 to 4. - 0 is a pure greenshift. - Tiers are just picked via weight - "16% chance of getting a high chaos round". - Tiers have min pop ranges. "Tier 4 (high chaos) requires 25 pop to be selected". - Tier determines how much of every ruleset is picked. "Tier 4 (High Chaos) will pick 3-4 roundstart[1], 1-2 light, 1-2 heavy, and 2-3 latejoins". - The number of rulesets picked depends on how many people are in the server - this is also configurable[2]. As an example, a tier that demands "1-3" rulesets will not spawn 3 rulesets if population <= 40 and will not spawn 2 rulesets if population <= 25. - Tiers also determine time before light, heavy, and latejoin rulesets are picked, as well as the cooldown range between spawns. More chaotic tiers may send midrounds sooner or wait less time between sending them. - On the ruleset side of things, "requirements", "scaling", and "enemies" is gone. - You can configure a ruleset's min pop and weight flat, or per tier. - For example a ruleset like Obsession is weighted higher for tiers 1-2 and lower for tiers 3-4. - Rather than scaling up, roundstart rulesets can just be selected multiple times. - Rulesets also have `min_antag_cap` and `max_antag_cap`. `min_antag_cap` determines how many candidates are needed for it to run, and `max_antag_cap` determines how many candidates are selected. - Rulesets attempt to run every 2.5 minutes. [3] - Light rulesets will ALWAYS be picked before heavy rulesets. [4] - Light injection chance is no longer 100%, heavy injection chance formula has been simplified. - Chance simply scales based on number of dead players / total number off players, with a flag 50% chance if no antags exist. [5] [1] This does not guarantee you will actually GET 3-4 roundstart rulesets. If a roundstart ruleset is picked, and it ends up being unable to execute (such as "not enough candidates", that slot is effectively a wash.) This might be revisited. [2] Currently, this is a hard limit - below X pop, you WILL get a quarter or a half of the rulesets. This might be revisited to just be weighted - you are just MORE LIKELY to get a quarter or a half. [3] Little worried about accidentally frontloading everything so we'll see about this [4] This may be revisited but in most contexts it seems sensible. [5] This may also be revisited, I'm not 100% sure what the best / most simple way to tackle midround chances is. Other implementation details - The process of making rulesets has been streamlined as well. Many rulesets only amount to a definition and `assign_role`. - Dynamic.json -> Dynamic.toml - Dynamic event hijacked was ripped out entirely. - Most midround antag random events are now dynamic rulesets. Fugitives, Morphs, Slaughter Demons, etc. - The 1 weight slaughter demon event is gone. RIP in peace. - There is now a hidden midround event that simply adds +1 latejoin, +1 light, or +1 heavy ruleset. - `mind.special_role` is dead. Minds have a lazylist of special roles now but it's essentially only used for traitor panel. - Revs refactored almost entirely. Revs can now exist without a dynamic ruleset. - Cult refactored a tiny bit. - Antag datums cleaned up. - Pre round setup is less centralized on Dynamic. - Admins have a whole panel for interfacing with dynamic. It's pretty slapdash I'm sure someone could make a nicer looking one.   - Maybe some other things. ## Why It's Good For The Game See readme for more info. Will you see a massive change in how rounds play out? My hunch says rounds will spawn less rulesets on average, but it's ultimately to how it's configured ## Changelog 🆑 Melbert refactor: Dynamic rewritten entirely, report any strange rounds config: Dynamic config reworked, it's now a TOML file refactor: Refactored antag roles somewhat, report any oddities refactor: Refactored Revolution entirely, report any oddities del: Deleted most midround events that spawn antags - they use dynamic rulesets now add: Dynamic rulesets can now be false alarms add: Adds a random event that gives dynamic the ability to run another ruleset later admin: Adds a panel for messing around with dynamic admin: Adds a panel for chance for every dynamic ruleset to be selected admin: You can spawn revs without using dynamic now fix: Nuke team leaders get their fun title back /🆑 |
||
|
|
096c032402 |
Adds a new halloween species: Spirits (#90711)
## About The Pull Request Adds 2 new species: Spirits and Ghosts Spirits are available roundstart during Halloween, Wabbajack and Xenobio's black slime extract Ghosts are available through Magic mirrors They fly around, and don't have legs and instead float around. They also can't get legs implanted onto themselves. They also do have organs, so they are affected by flashbangs, they do get hungry, they do need oxygen to survive (they don't take damage in space but they do suffocate & get slowdown), and can process chems. Gibbing a ghost gives ectoplasm, an ingredient for ghost burgers. Chaplains also got a buff here, null rod-type weapons' bane is now against Spirit mobs, rather than hardcoded revenants. This means it now includes Spirits/Ghosts, but also Soulscythes & Cult shades. Also re-adds https://github.com/tgstation/tgstation/pull/81630 which was reverted in https://github.com/tgstation/tgstation/pull/86506 which I assume was accidental. ### The difference between Spirits and Ghosts Ghosts have an innate ability to become incorporeal, which allows them to phase through walls and stuff. Using this will immediately make them drop any non-ghost limb/organ (not implants cause I thought it would be funny). This ability is not available if they have holy water in their system, and like revenants they also can't walk over blessed tiles with it. They are also invisible to cameras while using this (not the obscura though). Sprites taken from observers directly, if anyone wants to make custom sprites for them feel free. If anyone wants to make this obtainable somehow in-game as well I wouldn't be opposed, halloween is just where I thought it would fit most. This also adds a lot of fixes that I encountered trying to add this, from systems that have been neglected throughout the years. https://github.com/user-attachments/assets/e368d710-80a0-4c63-b271-1abe3dd41a5e ## Why It's Good For The Game We haven't gotten a new halloween species in a long time and thought it would be fun if you can play as an actual ghost, the soul that remains after a person passes, so Halloween feels more haunted. It's overall made in just good fun, with a bonus that Ghosts are a cool species to play with as well for Wizards & maybe Chaplains in the future (Dead sect when?) ## Changelog 🆑 add: Added a new halloween species: Spirits, a species without legs and instead floats. add: Added a new magic mirror species: Ghosts, like spirits but with the ability to become incorporeal, traversing through solid wall. fix: Mobs unable to use storage items now can't use storage items. fix: Mobs unable to use items can now not open airlocks & closets fix: Mobs unable to pick items up can no longer pick items up and immediately drop, moving one tile at a time. fix: Mobs with intentional missing limbs (Alien larva) no longer show their limbs as missing on examine (again) fix: Golems' pref page had a missing icon, it now has one. /🆑 --------- Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com> |
||
|
|
98c097e157 |
Fixes Vox Legs Becoming Regular Digi Legs Whenever You Change Anything At All (#4103)
## About The Pull Request Title ## Why It's Good For The Game Bug is bad ## Proof Of Testing https://github.com/user-attachments/assets/be82bcb9-bd64-41ad-af32-bd1288f5f1c0 <details> <summary>Screenshots/Videos</summary> </details> ## Changelog 🆑 fix: Vox legs no longer change to regular digitigrade legs when you change anything at all /🆑 |
||
|
|
7fd63f89fd |
Luminescent eyes respect eye colors in preferences (#4060)
## About The Pull Request You dont have to set the hex code manually anymore based on your eye colors ## Why It's Good For The Game Fixes #3466 ## Proof Of Testing https://github.com/user-attachments/assets/a058fe6f-b0c4-4cbb-af09-968fa26f25b8 </details> ## Changelog 🆑 Fix: Luminescent eyes respect eye colors in preferences once more /🆑 |
||
|
|
7ee563027c | Update screenshot tests | ||
|
|
b4061f1800 |
[MDB IGNORE] Blood Refactor Chapter 2: Collector's Edition (#91054)
## About The Pull Request Refactors most of blood handling code untouched by #90593 and completely rewrites all blood decals, components and reagents. - Blood types now have behavioral flags which allow them to control where they leave decals/DNA/viruses. Oil no longer transfers DNA and viruses with it, while podpeople water-blood doesn't leave visible decals on turfs and items, but still can be picked up by DNA scanners. - Multiple blood types have received unique handling - liquid electricity blood now glows in the dark, oil trails are flammable and lube ones are slippery. Oil blood can be restored with fuel, lube with silicon and slime with stable plasma (as normal plasma already passively regenerates their blood), instead of everything using iron. Saline solution only supplements on iron-based blood and won't do anything to help with bloodloss for species who rely on different blood types. (Roundstart this applies only to Ethereals) - All blood logic has been moved away from the blood reagent itself into a blood element that is assigned to the blood reagent by default, and to any reagent that's drawn from a mob as their "blood" (in ``transfer_blood_to``). This means that blood you draw from lizards will be green and have lizard's blood description instead of mentioning red blood cells, Ethereal "blood" will actually contain their DNA and genes, etc. - Refactored all blood decals. Blood states are no more, everything is now handled via blood DNA. Credits to MrMelbert and Maplestation, as a significant amount of code has been taken from https://github.com/MrMelbert/MapleStationCode/pull/436 and many of his followup PRs. Oil and xenomorph splatters are now subtypes of blood, blood drying is now animated, blood trails now curve and can be diagonal. - Rewrote bloodysoles and bloody_spreader components, credits to Melbert again for the former, while latter now makes more sense with its interactions. Bloody soles no longer share blood DNA with your hands. - Ported Melbert's bloody footprint sprites and bot-blood-spreading functionality. - Removed all species-side reagent interactions, instead they're handled by said species' livers. (This previously included exotic blood handling, thus the removal) - Slightly optimized human rendering by removing inbetween overlay holders for clothing when they're not needed. - Blood-transmitted diseases will now get added to many more decals than before. - Cleaned up and partially refactored replica pods, fixed an issue where monkeys/manipulators were unable to harvest mindless pods. - Exotic bloodtype on species now automatically assigns their blood reagent, without the need to assign them separately. - Clown mobs now bleed (with colorful reagent instead of blood during april fools), and so do vatbeasts (lizard blood) - Implemented generic procs for handling bleeding checks, all sorts of scanners now also correctly call your blood for what it is. - Podpeople's guts are now lime-green like their organs, instead of being weirdly greyish like their water-blood. (Their bleeding overlays are still grey, as they're bleeding water) - Slimepeople now can bleed. Their jelly is pale purple in color, but their wound overlays copy their body color. - Injecting/spraying/splashing/etc mob with a reagent preserves its data, so you could theoretically recycle fine wines from someone's bloodstream - Fixed burdened chaplain's sect never actually giving a blessing when applying effects, and giving a blessing when nothing can be healed. Inverted check strikes again. - Closes #91039 #### Examples A lot of blood here has dried, visually the blood colors are almost exactly the same as before either of the blood refactors.   |
||
|
|
655b66bdd0 |
Adds automatic GAGS icon generation for mapping and the loadout menu (#90940)
Revival of https://github.com/tgstation/tgstation/pull/86482, which is even more doable now that we have rustg iconforge generation. What this PR does: - Sets up every single GAGS icon in the game to have their own preview icon autogenerated during compile. This is configurable to not run during live. The icons are created in `icons/map_icons/..` - This also has the side effect of providing accurate GAGS icons for things like the loadout menu. No more having to create your own previews.  <details><summary>Mappers rejoice!</summary>   </details> <details><summary>Uses iconforge so it does not take up much time during init</summary>  </details> --- this still applies: Note for Spriters: After you've assigned the correct values to vars, you must run the game through init on your local machine and commit the changes to the map icon dmi files. Unit tests should catch all cases of forgetting to assign the correct vars, or not running through init. Note for Server Operators: In order to not generate these icons on live I've added a new config entry which should be disabled on live called GENERATE_ASSETS_IN_INIT in the config.txt No more error icons in SDMM and loadout. 🆑 refactor: preview icons for greyscale items are now automatically generated, meaning you can see GAGS as they actually appear ingame while mapping or viewing the loadout menu. /🆑 --------- Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> |
||
|
|
cb51a652a9 |
Adds automatic GAGS icon generation for mapping and the loadout menu (#90940)
## About The Pull Request Revival of https://github.com/tgstation/tgstation/pull/86482, which is even more doable now that we have rustg iconforge generation. What this PR does: - Sets up every single GAGS icon in the game to have their own preview icon autogenerated during compile. This is configurable to not run during live. The icons are created in `icons/map_icons/..` - This also has the side effect of providing accurate GAGS icons for things like the loadout menu. No more having to create your own previews.  <details><summary>Mappers rejoice!</summary>   </details> <details><summary>Uses iconforge so it does not take up much time during init</summary>  </details> --- ### Copied from https://github.com/tgstation/tgstation/pull/86482 as this still applies: Note for Spriters: After you've assigned the correct values to vars, you must run the game through init on your local machine and commit the changes to the map icon dmi files. Unit tests should catch all cases of forgetting to assign the correct vars, or not running through init. Note for Server Operators: In order to not generate these icons on live I've added a new config entry which should be disabled on live called GENERATE_ASSETS_IN_INIT in the config.txt ## Why It's Good For The Game No more error icons in SDMM and loadout. ## Changelog 🆑 refactor: preview icons for greyscale items are now automatically generated, meaning you can see GAGS as they actually appear ingame while mapping or viewing the loadout menu. /🆑 --------- Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> |
||
|
|
29b71a8bc4 | Update screenshot tests | ||
|
|
39f3d16095 |
Screenshot Tests Airlocks (#91203)
Tests that both normal and glass airlocks, and some of their overlays work. |
||
|
|
f245d8ab79 |
Screenshot Tests Airlocks (#91203)
## About The Pull Request Tests that both normal and glass airlocks, and some of their overlays work. |
||
|
|
4c6da11d2d | Update screenshot tests | ||
|
|
77616e8b0e |
Add Proteans to the game. (#3449)
## About The Pull Request Adds the funny nanite blob dudes from Vigro code into the game. It's more of a port of the idea since they're coded from the ground up. They will be more of a utility focused species then a combat focused species. **They are fragile.** - Eats metal. You need metal to live and you need metal to heal. - Healed by materials. You feed Proteans metal to heal them. - Difficult to kill, but extremely fragile. They are considered a deathless species but they are stuck in their suit if they die. **You have to order a new refactory from cargo to revive them** **Order Refactory > Screwdriver suit > Insert refactory > Wait 5 minutes.** - Easily dismembered. They have 30 seconds to recover their limbs and pop them on or they will melt into nothingness. Can do a lengthy heal which replaces missing limbs and easy to replace organs. - Without a refactory, you will wither away. - Without an orchastrator, you will have a lot of issues moving. - You can lock your suit on someone. (OOC escape will work) - You can assimilate modsuits. - [x] OOC escape - [x] Suit Transformation fixes - [x] Modsuit Assimilation - [x] Ensure organs are working - [x] Species info and lore - [x] Antag Proteans - [x] Custom damage. Disable various surgeries. - [x] Testing, polish, feedback. - [x] Runtime and CI fixing. - [ ] Live testing and balance. ## Why It's Good For The Game This was the second to top vote on species people wanted to see added and this is more custom mechanics then what is just a human reskin. ## Proof Of Testing   ## Changelog 🆑 StrangeWeirdKitten, Majkl-J add: New species: Proteans /🆑 --------- Co-authored-by: Waterpig <49160555+Majkl-J@users.noreply.github.com> Co-authored-by: Bubberbot <151680451+Bubberbot@users.noreply.github.com> Co-authored-by: Arturlang <24881678+Arturlang@users.noreply.github.com> Co-authored-by: aKromatopzia <94389683+aKromatopzia@users.noreply.github.com> Co-authored-by: Jinshee <96621959+Jinshee@users.noreply.github.com> Co-authored-by: Jinshee <manastra2536@gmail.com> Co-authored-by: JustMeTheIInd <145101584+JustMeTheIInd@users.noreply.github.com> Co-authored-by: nevimer <77420409+nevimer@users.noreply.github.com> Co-authored-by: Odairu <39929315+Odairu@users.noreply.github.com> Co-authored-by: LT3 <83487515+lessthnthree@users.noreply.github.com> Co-authored-by: Roxy <75404941+TealSeer@users.noreply.github.com> |
||
|
|
a4885ae5c2 | Update screenshot tests | ||
|
|
6dc25bfd9d |
adds a naked person into unit tests (#90942)
Working on https://github.com/tgstation/tgstation/pull/90711 I noticed I got a screenshot test error because limbs weren't being rendered properly, which is cool, however I got this alert from antagonist icon screenshot tests, for Changelings. That's when I noticed we don't actually have any screenshot tests to ensure limbs look the same, so I'm adding a naked person. If for some reason Changeling's icons are changed or removed, we won't have any way to tell limb icons randomly break one day because all our screenshotted mobs are clothed. Nothing player-facing |
||
|
|
09faf36cae | fix | ||
|
|
0694edc174 |
Fixes potential edgecases with human limb initialization (#90945)
Human initialization calls species' ``create_fresh_body``, which calls carbon ``create_bodyparts``, which adds bodyparts directly using ``add_bodypart`` to bypass a lot of unnecessary update calls inside of that proc. However, this also bypasses 3 comsigs, and bodypart sorting, which means that order of bodyparts set in ``bodyparts``/``replace_body`` could determine how the mob would spawn and render until they had a limb reattached to them, and some bodypart-owned effects like organ set bonuses wouldn't apply on mobs when they were added from their species. I've just added a ``lazy`` arg to ``try_attach_limb`` which makes it only check for limb validity, attach the limb and early return after sending relevant comsigs without doing any of the updating. |
||
|
|
008a0c7a86 |
adds a naked person into unit tests (#90942)
## About The Pull Request Working on https://github.com/tgstation/tgstation/pull/90711 I noticed I got a screenshot test error because limbs weren't being rendered properly, which is cool, however I got this alert from antagonist icon screenshot tests, for Changelings. That's when I noticed we don't actually have any screenshot tests to ensure limbs look the same, so I'm adding a naked person. ## Why It's Good For The Game If for some reason Changeling's icons are changed or removed, we won't have any way to tell limb icons randomly break one day because all our screenshotted mobs are clothed. ## Changelog Nothing player-facing |
||
|
|
3d01e86e29 |
There will be (colorful) blood: datumizes bloodtypes, greyscales blood sprites, and fixes a lot of inconsistencies with gibs and forensic data (#90593)
## About The Pull Request This PR: - Converts all of the blood types into their own datums, which can be set up to have their own colors, descriptions, and other fun unique properties. For example, the clown blood that is constantly randomizing itself. - Converts all the blood decals into greyscale, which in turn eliminates the need for separate xeno sprites. They both use the same ones now. - Audit of blood splatters/gibs/bodyparts/organs to make sure that they are getting the correct forensic data applied to them. - For the admins: Adds a clown blood smite. My primary goal with was to make the appearance of the new sprites look almost indistinguishable to the original ones. I consider this a "first pass", as in there are still some further refactors I would like to do on the backend side, but am satisfied with it enough to push it forward as a first step towards a better blood system! I didn't want to do too much at once because of A) fatigue and B) easier to test things to make sure I'm not breaking something important this way. This has been test-merged on Nova for over a week now and has been going great, so I finally got around to upstreaming the bones to TG. Although I did test it a bit you may want to TM it just in case I missed some things when copying it over. |
||
|
|
3613de5a83 |
Updated sprites for Vox Primalis (#3378)
Mirrors vox primalis updates from https://github.com/NovaSector/NovaSector/pull/5076 with permission from @HalcyonicWolf Info all given in above link ## Changelog 🆑 HalcyonicWolf image: added/modified several protective clothing sprites for Vox Primalis /🆑 --------- Co-authored-by: SyntheticSnake <mmeade362@gmail.com> Co-authored-by: Roxy <75404941+TealSeer@users.noreply.github.com> |
||
|
|
12d995aeea |
Squashed commit of the following:
commit cb550ab79badae3ffd493dcee24d96f7ad146ed6 Merge: 732416f01d8 |
||
|
|
38dc2369ef |
Adds GAGS fedoras, updates all other fedora sprites to match the Detective's (+ other related tweaks) (#90132)
## About The Pull Request First just to get it out of the way, yippee, greyscale fedoras. Available in the Clothesmate. Now you can make a hat to match those custom buttondowns+suitjackets we already have.  However, because so many of the fedoras pair with other sprites, I couldn't just make all of them greyscale. Then they wouldn't quite match! So I've updated them all - most of the on-mobs are just slight tweaks to shading so they (as mentioned) match the detective fedora. The obj sprites were also changed - most are the newer sprite (again, detective's) but I opted to keep the Reporter and Curator fedoras as slightly updated old ones because those in particular feel cooler to have the wide-brims and the angle.  **Additional changes you might notice in the screenshot:** - Beige Suit had its contrast just _barely_ tweaked to match the fedora. - Carpskin hat has like 3px changed because they were stray/inconsistent - Curator's `treasure hunter jacket` had its color changed to pair with the hat. As it was, the hat being the same color would have been near identical to the detective's, and this actually matches up with the intended reference better too. (Plus it inadvertently matches the boots) - All the hats are down 1px to match the detective. With hair masks, it looks a **lot** better over hair now... <details><summary>However, for spritetainer's curiosity, this is the comparison of how it'd look if they were all up 1px</summary>  </details> <details><summary>I also had to slightly alter the mask because it originally cut off 1px too much. No visual change on the only other hat that uses it (the sec helmet) </summary>  </details> ## Why It's Good For The Game **Greyscale Fedoras** We #love customization. Players can already make their own suits, why not their own hats to match? **All the resprites** Having all of the fedoras looking similar is nice, especially with the onmob sprites' shading and obj sprites' shapes. Helps players associate the items with each other better. Plus, the curator's was _really_ soulful. As for the curator's jacket, I feel having it not be as similar to the detective's palette will make it stand out more as the unique item it is. It's a treasure hunter. Give them the admiration they deserve. **Height/Hairmask** The height is consistency - one fedora being lower than the other is confusing and almost looks like a bug. The hairmask solves the issue that lowering them previously caused - no more severe clipping with hair. ## Changelog 🆑 add: Added greyscale Fedoras, available in the Clothesmate! image: Resprited most of the Fedoras - now they'll all be much more consistent with the detective's updated and sleek ones. They also all have a hairmask now, so hair will no longer clip with them! image: To pair with this, the Beige suit has been just slightly tweaked and the Curator's "Treasure Hunter Jacket" entirely recolored to better match their fedoras. /🆑 |