mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 05:00:55 +01:00
ok-behavior-trees
94
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
8a01d69e7e | Various upstream related fixes | ||
|
|
88e84645b1 | Merge commit '6b52b564a50e4f3091470529c683587e5de15d49' into upstream-sync-7-22-2026 | ||
|
|
2cf56ab1e1 |
Allows gorillas to kill themselves with items (#96736)
## About The Pull Request This PR moves most of the code for using an item to commit suicide from `human` to `living`, so that anything with hands can use what it is holding to commit suicide. This was surprisingly painless, as most `suicide_act` procs were already written without the assumption that the person killing themselves was a human even though they couldn't be anything else. This might occasionally mean that in some cases (like drones) it may reference anatomy that they don't have (like necks) but I think that's not a big deal and don't worry about it. ## Why It's Good For The Game It's funny. ## Changelog 🆑 balance: Anything with hands can now use the things it is holding to commit suicide /🆑 |
||
|
|
6eb2d1674a |
Implementing materials checks for techweb designs. (#96257)
## About The Pull Request In similar fashion to what was done with crafting recipes last year, this year it's time for techweb designs and printed items to be audited. This is mostly just about consistency, we've a lot of items that can be printed by protolathes, autolathes, circuit printers and techfab etc. However they almost all (except most stacks, mainly) have custom materials that do not match in one way or another with the materials used by the design, which is what this PR is for. "But items printed from lathes etc. already get the mats used to make them." Yes, they do, however that isn't the case for items of the same type that were spawned in some other way (cargo shuttle, space/maints loot, mapped, admins), this create a subtle discrepancy. It isn't a huge deal (in spite of the size of this PR, ton of designs), but given that I have done something similar with crafting recipes before, I may as well give it a second arc of some sort and bring things to completion. And fix a few possible oversights. TL;DR consistency and stuff ## Why It's Good For The Game Consistency, unit test checks to make it harder not to be consistent in the future. Still has a few TODOs like: - [x] Fixed newly printed, fully charged RCDs costing less than the RCD cartridges required to fully charge one. EDIT: I had to tweak the newly added RDD as well because it suffered from the same fundamental issue. - [x] Fixed plates being made of iron and yet shattering like ceramic ones. A new subtype for metallic ones has been made. ## Changelog 🆑 refactor: Refactored a few things with techweb designs (the ones for autolathes, protolathes, circuit printers, mechfabs etc.) to make sure that the materials of items that can be made from these designs more closely match the materials used to make them. fix: Lizard fries no longer need a plate to be made, like all other treats that used to require plates in a distant past. balance: Tweaked the materials cost of RCD, RDD and RCD cartridges. image: Oven trays now have a more metallic hue. balance: Plates printed printed from lathes won't shatter like ceramic ones, in virtue of them being made out of iron instead. /🆑 |
||
|
+37 |
21b4095dfd |
[MDB IGNORE] [IDB IGNORE] Upstream Sync - 04/17/2026 (#5453)
Upstream 04/17/2026 fixes https://github.com/Bubberstation/Bubberstation/issues/5549 --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: tgstation-ci[bot] <179393467+tgstation-ci[bot]@users.noreply.github.com> Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com> Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com> Co-authored-by: rageguy505 <54517726+rageguy505@users.noreply.github.com> Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com> Co-authored-by: Aliceee2ch <160794176+Aliceee2ch@users.noreply.github.com> Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com> Co-authored-by: Tsar-Salat <62388554+Tsar-Salat@users.noreply.github.com> Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Co-authored-by: Maxipat <108554989+Maxipat112@users.noreply.github.com> Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com> Co-authored-by: SimplyLogan <47579821+loganuk@users.noreply.github.com> Co-authored-by: loganuk <fakeemail123@aol.com> Co-authored-by: Leland Kemble <70413276+lelandkemble@users.noreply.github.com> Co-authored-by: FalloutFalcon <86381784+FalloutFalcon@users.noreply.github.com> Co-authored-by: Roxy <75404941+TealSeer@users.noreply.github.com> Co-authored-by: Lucy <lucy@absolucy.moe> Co-authored-by: siliconOpossum <138069572+siliconOpossum@users.noreply.github.com> Co-authored-by: Isratosh <Isratosh@hotmail.com> Co-authored-by: TheRyeGuyWhoWillNowDie <70169560+TheRyeGuyWhoWillNowDie@users.noreply.github.com> Co-authored-by: Neocloudy <88008002+Neocloudy@users.noreply.github.com> Co-authored-by: Alexander V. <volas@ya.ru> Co-authored-by: ElGitificador <168473461+ElGitificador@users.noreply.github.com> Co-authored-by: Twaticus <46540570+Twaticus@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> Co-authored-by: Cameron Lennox <killer65311@gmail.com> Co-authored-by: Tim <timothymtorres@gmail.com> Co-authored-by: Iamgoofball <iamgoofball@gmail.com> Co-authored-by: Layzu666 <121319428+Layzu666@users.noreply.github.com> Co-authored-by: Arturlang <24881678+Arturlang@users.noreply.github.com> Co-authored-by: _0Steven <42909981+00-Steven@users.noreply.github.com> Co-authored-by: mrmanlikesbt <99309552+mrmanlikesbt@users.noreply.github.com> Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com> Co-authored-by: John F. Kennedy <54908920+MacaroniCritter@users.noreply.github.com> Co-authored-by: Cursor <102828457+theselfish@users.noreply.github.com> Co-authored-by: Josh <josh.adam.powell@gmail.com> Co-authored-by: Josh Powell <josh.powell@softwire.com> Co-authored-by: Yobrocharlie <Charliemiller5617@gmail.com> Co-authored-by: Hardly3D <66234359+Hardly3D@users.noreply.github.com> Co-authored-by: shayoki <96078776+shayoki@users.noreply.github.com> Co-authored-by: LT3 <83487515+lessthnthree@users.noreply.github.com> |
||
|
|
d4bb05bcc7 |
Replaces uses of welder sounds when using razors with hair cutting noises (#95754)
## About The Pull Request Title. I saw someone shaving Ian and it annoyed me it was using a welder sound. ## Why It's Good For The Game Yo ass ain' welding. ## Changelog 🆑 sound: Shaving Ian will no longer sound like you're using a Welder. /🆑 |
||
|
|
00ccf0c6b5 |
Merge remote-tracking branch 'tgstation/master' into upstream-feb12-2026
# Conflicts: # .github/CODEOWNERS # .github/workflows/compile_changelogs.yml # .github/workflows/stale.yml # SQL/database_changelog.md # _maps/map_files/CatwalkStation/CatwalkStation_2023.dmm # code/__DEFINES/atom_hud.dm # code/__DEFINES/inventory.dm # code/__DEFINES/mobs.dm # code/__DEFINES/species_clothing_paths.dm # code/__DEFINES/subsystems.dm # code/__DEFINES/surgery.dm # code/__HELPERS/global_lists.dm # code/_globalvars/lists/maintenance_loot.dm # code/_globalvars/traits/_traits.dm # code/controllers/subsystem/minor_mapping.dm # code/controllers/subsystem/processing/quirks.dm # code/controllers/subsystem/shuttle.dm # code/datums/components/palette.dm # code/datums/components/surgery_initiator.dm # code/datums/diseases/advance/advance.dm # code/datums/hud.dm # code/datums/mood.dm # code/datums/mutations/chameleon.dm # code/datums/quirks/negative_quirks/nyctophobia.dm # code/datums/status_effects/debuffs/debuffs.dm # code/datums/status_effects/debuffs/drunk.dm # code/datums/status_effects/debuffs/slime/slime_leech.dm # code/datums/weather/weather.dm # code/game/data_huds.dm # code/game/objects/items.dm # code/game/objects/items/devices/scanners/health_analyzer.dm # code/game/objects/items/frog_statue.dm # code/game/objects/items/rcd/RLD.dm # code/game/objects/items/robot/items/hypo.dm # code/game/objects/items/stacks/medical.dm # code/game/objects/items/stacks/wrap.dm # code/game/objects/items/storage/garment.dm # code/game/objects/items/tools/medical/defib.dm # code/game/objects/items/weaponry.dm # code/game/objects/items/weaponry/melee/misc.dm # code/game/objects/structures/crates_lockers/closets/secure/security.dm # code/game/objects/structures/curtains.dm # code/game/objects/structures/dresser.dm # code/game/objects/structures/girders.dm # code/game/objects/structures/maintenance.dm # code/game/objects/structures/mirror.dm # code/modules/admin/greyscale_modify_menu.dm # code/modules/admin/verbs/light_debug.dm # code/modules/antagonists/ashwalker/ashwalker.dm # code/modules/antagonists/heretic/knowledge/starting_lore.dm # code/modules/antagonists/ninja/ninjaDrainAct.dm # code/modules/art/paintings.dm # code/modules/client/preferences.dm # code/modules/client/verbs/ooc.dm # code/modules/clothing/head/wig.dm # code/modules/events/disease_outbreak.dm # code/modules/holodeck/holo_effect.dm # code/modules/jobs/job_types/head_of_security.dm # code/modules/jobs/job_types/security_officer.dm # code/modules/library/skill_learning/generic_skillchips/point.dm # code/modules/mining/lavaland/ash_flora.dm # code/modules/mining/lavaland/mining_loot/megafauna/ash_drake.dm # code/modules/mob/dead/new_player/new_player.dm # code/modules/mob/living/basic/guardian/guardian.dm # code/modules/mob/living/basic/space_fauna/space_dragon/space_dragon.dm # code/modules/mob/living/carbon/carbon.dm # code/modules/mob/living/carbon/human/human.dm # code/modules/mob/living/carbon/human/human_defines.dm # code/modules/mob/living/carbon/life.dm # code/modules/mob/living/living.dm # code/modules/mob/living/living_defines.dm # code/modules/mob/mob.dm # code/modules/mob_spawn/ghost_roles/mining_roles.dm # code/modules/mod/mod_control.dm # code/modules/mod/modules/modules_general.dm # code/modules/modular_computers/computers/item/computer_ui.dm # code/modules/paperwork/paper.dm # code/modules/paperwork/paperbin.dm # code/modules/power/lighting/light.dm # code/modules/projectiles/guns/energy/kinetic_accelerator.dm # code/modules/projectiles/projectile.dm # code/modules/reagents/chemistry/reagents/drinks/alcohol_reagents.dm # code/modules/reagents/chemistry/reagents/food_reagents.dm # code/modules/reagents/chemistry/reagents/other_reagents.dm # code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm # code/modules/research/xenobiology/crossbreeding/_clothing.dm # code/modules/research/xenobiology/crossbreeding/prismatic.dm # code/modules/surgery/advanced/brainwashing.dm # code/modules/surgery/advanced/lobotomy.dm # code/modules/surgery/amputation.dm # code/modules/surgery/blood_filter.dm # code/modules/surgery/bodyparts/_bodyparts.dm # code/modules/surgery/brain_surgery.dm # code/modules/surgery/cavity_implant.dm # code/modules/surgery/coronary_bypass.dm # code/modules/surgery/gastrectomy.dm # code/modules/surgery/healing.dm # code/modules/surgery/limb_augmentation.dm # code/modules/surgery/organ_manipulation.dm # code/modules/surgery/revival.dm # code/modules/surgery/sleeper_protocol.dm # code/modules/surgery/surgery_helpers.dm # code/modules/surgery/surgery_step.dm # code/modules/unit_tests/_unit_tests.dm # code/modules/unit_tests/designs.dm # code/modules/unit_tests/icon_state_worn.dm # code/modules/unit_tests/screenshots/screenshot_antag_icons_cultist.png # code/modules/unit_tests/screenshots/screenshot_antag_icons_headrevolutionary.png # code/modules/unit_tests/screenshots/screenshot_antag_icons_provocateur.png # code/modules/unit_tests/screenshots/screenshot_husk_body.png # code/modules/unit_tests/screenshots/screenshot_husk_body_missing_limbs.png # icons/map_icons/clothing/head/_head.dmi # icons/map_icons/clothing/shoes.dmi # icons/map_icons/items/_item.dmi # icons/mob/huds/hud.dmi # icons/mob/inhands/64x64_lefthand.dmi # icons/mob/inhands/64x64_righthand.dmi # icons/obj/machines/computer.dmi # tgui/packages/tgui/interfaces/OperatingComputer.jsx # tgui/packages/tgui/interfaces/PreferencesMenu/CharacterPreferences/MainPage.tsx # tgui/packages/tgui/interfaces/PreferencesMenu/types.ts # tgui/packages/tgui/interfaces/SurgeryInitiator.tsx # tools/icon_cutter/check.py |
||
|
|
bfdb237612 | Spooky Scary Supreme Surgery (Rework) (#93697) | ||
|
|
ce509e0ad5 | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-23-10-2025 | ||
|
|
54198986b7 | generic device handling sounds (#93536) | ||
|
|
bc2215667f |
Re-refactors batons / Refactors attack chain force modifiers (#90809)
Melee attack chain now has a list passed along with it, `attack_modifiers`, which you can stick force modifiers to change the resulting attack This is basically a soft implementation of damage packets until a more definitive pr, but one that only applies to item attack chain, and not unarmed attacks. This change was done to facilitate a baton refactor - batons no longer hack together their own attack chain, and are now integrated straight into the real attack chain. This refactor itself was done because batons don't send any attack signals, which has been annoying in the past (for swing combat). 🆑 Melbert refactor: Batons have been refactored again. Baton stuns now properly count as an attack, when before it was a nothing. Report any oddities, particularly in regards to harmbatonning vs normal batonning. refactor: The method of adjusting item damage mid-attack has been refactored - some affected items include the Nullblade and knives. Report any strange happenings with damage numbers. refactor: A few objects have been moved to the new interaction chain - records consoles, mawed crucible, alien weeds and space vines, hedges, restaurant portals, and some mobs - to name a few. fix: Spears only deal bonus damage against secure lockers, not all closet types (including crates) /🆑 |
||
|
|
5261efb67f |
Re-refactors batons / Refactors attack chain force modifiers (#90809)
## About The Pull Request Melee attack chain now has a list passed along with it, `attack_modifiers`, which you can stick force modifiers to change the resulting attack This is basically a soft implementation of damage packets until a more definitive pr, but one that only applies to item attack chain, and not unarmed attacks. This change was done to facilitate a baton refactor - batons no longer hack together their own attack chain, and are now integrated straight into the real attack chain. This refactor itself was done because batons don't send any attack signals, which has been annoying in the past (for swing combat). ## Changelog 🆑 Melbert refactor: Batons have been refactored again. Baton stuns now properly count as an attack, when before it was a nothing. Report any oddities, particularly in regards to harmbatonning vs normal batonning. refactor: The method of adjusting item damage mid-attack has been refactored - some affected items include the Nullblade and knives. Report any strange happenings with damage numbers. refactor: A few objects have been moved to the new interaction chain - records consoles, mawed crucible, alien weeds and space vines, hedges, restaurant portals, and some mobs - to name a few. fix: Spears only deal bonus damage against secure lockers, not all closet types (including crates) /🆑 |
||
|
|
11d82b7995 |
You can now interact with held mobs beside wearing them (feat: "minor" melee attack chain cleanup) (#90080)
People can now pet held mothroaches and pugs if they want to, or use items on them, hopefully without causing many issues. After all, it only took about a couple dozen lines of code to make... ...Oh, did the 527 files changed or the 850~ lines added/removed perhaps catch your eye? Made you wonder if I accidentally pushed the wrong branch? or skewed something up big time? Well, nuh uh. I just happen to be fed up with the melee attack chain still using stringized params instead of an array/list. It was frankly revolting to see how I'd have had to otherwise call `list2params` for what I'm trying to accomplish here, and make this PR another tessera to the immense stupidity of our attack chain procs calling `params2list` over and over and over instead of just using that one call instance from `ClickOn` as an argument. It's 2025, honey, wake up! I also tried to replace some of those single letter vars/args but there are just way too many of them. Improving old code. And I want to be able to pet mobroaches while holding them too. 🆑 qol: You can now interact with held mobs in more ways beside wearing them. /🆑 |
||
|
|
339616ae78 |
You can now interact with held mobs beside wearing them (feat: "minor" melee attack chain cleanup) (#90080)
## About The Pull Request People can now pet held mothroaches and pugs if they want to, or use items on them, hopefully without causing many issues. After all, it only took about a couple dozen lines of code to make... ...Oh, did the 527 files changed or the 850~ lines added/removed perhaps catch your eye? Made you wonder if I accidentally pushed the wrong branch? or skewed something up big time? Well, nuh uh. I just happen to be fed up with the melee attack chain still using stringized params instead of an array/list. It was frankly revolting to see how I'd have had to otherwise call `list2params` for what I'm trying to accomplish here, and make this PR another tessera to the immense stupidity of our attack chain procs calling `params2list` over and over and over instead of just using that one call instance from `ClickOn` as an argument. It's 2025, honey, wake up! I also tried to replace some of those single letter vars/args but there are just way too many of them. ## Why It's Good For The Game Improving old code. And I want to be able to pet mobroaches while holding them too. ## Changelog 🆑 qol: You can now interact with held mobs in more ways beside wearing them. /🆑 |
||
|
|
753d8e5ba4 | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-25-04a | ||
|
|
d578965582 |
Wallout Loadout equips itself / Lipstick Loadout comes applies itself (and is customizable) (#89808)
## About The Pull Request - Selecting Wallet in the loadout, will equip the wallet when you load into the game. It will auto-fill the wallet with small items from your roundstart kit like quirk items or other loadout items. - Selecting Lipstick in the loadout will automatically apply it to your character. You still get the lipstick item at game start. - Deletes all the preset lipstick colors, now you can just pick what color you want. You can also pick what layer the lipstick starts at (high, middle, low). ## Why It's Good For The Game - Makes it work like the station trait (except the money part) - Convenience - Extra customization ## Changelog 🆑 Melbert qol: Wallet loadout item comes pre-equipped qol: Lipstick loadout item comes pre-applied qol: You can choose your lipstick color from any color now. You can also choose what layer it defaults to. /🆑 |
||
|
|
b6b8306fda | Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-25-02a | ||
|
|
71d6f8b2fa |
Add hair clipper sound (#88547)
## About The Pull Request This adds a hair clipper sound to the razor item used to adjust mobs beards and hairstyles. https://github.com/user-attachments/assets/dba18247-415d-42b5-9e4b-a5c73d670088 Source: https://freesound.org/people/VIPERSTRONG/sounds/655747/ License: CC0 ## Why It's Good For The Game Buzz buzz buzz ## Changelog 🆑 sound: Add hair clipper sound to hair razor item /🆑 |
||
|
|
e59d8ba64b | Merge commit '179a607a90ad7ec62bdaff4e6fe72af60ee56442' of https://github.com/tgstation/tgstation into upstream-24-10b | ||
|
|
bb70889f6e |
TG Upstream Part 1
3591 individual conflicts Update build.js Update install_node.sh Update byond.js oh my fucking god hat slow huh holy shit we all fall down 2 more I missed 2900 individual conflicts 2700 Individual conflicts replaces yarn file with tg version, bumping us down to 2200-ish Down to 2000 individual conflicts 140 down mmm aaaaaaaaaaaaaaaaaaa not yt 575 soon 900 individual conflicts 600 individual conflicts, 121 file conflicts im not okay 160 across 19 files 29 in 4 files 0 conflicts, compiletime fix time some minor incap stuff missed ticks weird dupe definition stuff missed ticks 2 incap fixes undefs and pie fix Radio update and some extra minor stuff returns a single override no more dupe definitions, 175 compiletime errors Unticked file fix sound and emote stuff honk and more radio stuff |
||
|
|
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 /🆑 |
||
|
|
4c4930c71d | Merge branch 'master' of https://github.com/tgstation/tgstation into pulls-tg-to-fix-shit | ||
|
|
91baa94ac5 |
event based incapicated and able_to_run (#86031)
## About The Pull Request this is a revival of #82635 . i got permission from potato to reopen this, he did almost all the work. i only just solved the conflicts and fixed all the bugs that were preventing the original from being merged (but it should be TMed first) ## Why It's Good For The Game slightly improves the performance of basic mob AI ## Changelog 🆑 LemonInTheDark refactor: able_to_run and incapacitated have been refactored to be event based /🆑 --------- Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> Co-authored-by: ZephyrTFA <matthew@tfaluc.com> |
||
|
|
e1bf793264 |
Spelling and Grammar Fixes (#86022)
## About The Pull Request Fixes several errors to spelling, grammar, and punctuation. ## Why It's Good For The Game ## Changelog 🆑 spellcheck: fixed a few typos /🆑 |
||
|
|
39d5215ae2 |
[MIRROR] Fixed random lipstick texture, fake syndie lipstick no longer can randomly spawn (#29418)
Fixed random lipstick texture, fake syndie lipstick no longer can randomly spawn Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Co-authored-by: projectkepler-RU <99981766+projectkepler-ru@users.noreply.github.com> |
||
|
|
700c67d767 |
[MIRROR] add syndie lipstick (#29305)
* add syndie lipstick * Ready! --------- Co-authored-by: hack-wrench <60922927+hack-wrench@users.noreply.github.com> Co-authored-by: Waterpig <49160555+Majkl-J@users.noreply.github.com> Co-authored-by: projectkepler-RU <99981766+projectkepler-ru@users.noreply.github.com> |
||
|
|
2bb73bd33e |
Fixed random lipstick texture, fake syndie lipstick no longer can randomly spawn (#85880)
## About The Pull Request Closes #85876 Also adds a variable to blacklist lipstick from randomly spawning. While fake lipstick doesn't apply its traits it still has its sprite and name which could confuse players ## Changelog 🆑 fix: Fixed random lipstick texture, fake syndie lipstick no longer can randomly spawn /🆑 |
||
|
|
c5e2321313 |
add syndie lipstick (#85249)
## About The Pull Request Add syndicate branded lipstick for stealth operations, super-secret formula allows you to do similar energy gun damage with just a kiss, leaving a distinctive laser-like mark. ## Why It's Good For The Game The traitor arsenal is replenished with a new method of killing, elegant and without suspicion. Just send an air `*kiss`! You might ask what makes syndie kiss different from mime gun, besides similar characteristics to egun: - Causes burn damage - It's the emote `*kiss` after lipstick application that does the damage, not the lipstick itself - It has standard kissing cooldown - Kisses always fly to the head, good for the investigation - Can fly through windows and lattice - Unlimited number of lipstick uses - Could be wiped out, unlike mime gun - Can be reapplied after wiping off In addition to adding lipstick, also: - Fix wallhit sound, accidentally hit a wall and no sound came out of it, and not just with a kiss - Kiss log no longer contains on hitting the kisser name, but there is a log about sending a kiss ## Changelog     🆑 add: add syndicate branded lipstick to uplink (6 TC), after applying lipstick *kiss deals damage equal to energy gun fix: fix wallhit sound for projectile /🆑 |
||
|
|
24151d1228 |
[MIRROR] Moves "sprite accessories" (e.g. Hair, Undergarments, Mutant Bits) from GLOB to a datasystem (#27561)
* Moves "sprite accessories" (e.g. Hair, Undergarments, Mutant Bits) from `GLOB` to a datasystem * Merge branch 'master' of https://github.com/tgstation/tgstation * Moves everything I can think of to the subsystem * Seems to be working fine now * makes it compile --------- Co-authored-by: san7890 <the@san7890.com> Co-authored-by: Waterpig <wtryoutube@seznam.cz> |
||
|
|
5f44545da8 |
Moves "sprite accessories" (e.g. Hair, Undergarments, Mutant Bits) from GLOB to a datasystem (#82847)
This is just a revitalization of #80275. ## About The Pull Request On the tin, basically demotes everything related to setting up and storing these bulky lists generated from reading `/datum/sprite_accessory` subtypes from living in a global space that will instead be in a compartmentalized subsystem for accesses. Also a lot of code modernization and micro-improvements (unquantifiable) ## Why It's Good For The Game Same exact expected results, just accessed in a different way.  There's a few reasons why I want this to happen. * The `GLOB` space is too clogged. There are at least a thousand variables on `GLOB`, and it's extremely painful to access stuff on production/local through view variables when you're debugging stuff like this. It's also painful when there is stuff that _should_ live on `GLOB` that you might want to see in VV/Debugger but are forced to either have to scroll a mile to find what you want or wait a long while for it to load. The less bulky lists we have of stored initialized datums, the better. * `make_datum_reference_lists()` is a consequence of wack stuff like this where we're reliant on certain things being initialized in the `GLOB` portion of world initialization _before_ subsystems/static variables load - most of these datum lists in the aforementioned proc doesn't _really_ need to be ready to go before `world.New()` for example. We'll sadly have to abuse `PreInit()` for now, but it really is something that has to be ready to go due the critical dependence that stuff like Preferences has on it. * We don't have to have the procs live in a global namespace either. Instead of passing in `GLOB.XList` or `DSstorage.XList` every single time, we can instead just move the proc setup on the subsystem and use `XList` in a more native fashion. * It's easier to find what you need. To me, it's a lot nicer to ctrl+click the DS and go to the variables to find something I'm looking for instead of having to scavenge around for any footprint/trace of the global I want to look for. This is more trivial than the other two, but that's something I like to think about when I go to bed. I also had to refactor a bit of the code to accommodate the limitations of the new DS system, but it should be a lot cleaner anyways. ## Changelog Not relevant --- Also nothing should have broken but it's a good thing we have screenshot unit tests to prove me wrong. |
||
|
+18 |
ba5c112a86 |
Huge Mirror fixes (#27488)
* Fixes incorrect operator usage in mecha code (#82570)
## About The Pull Request
I completely screwed up and told the original PR author of #82415
(
|
||
|
|
8e3f635b98 |
Alt click refactor (#82656)
## About The Pull Request Rewrites how alt click works. Based heavily on #82625. What a cool concept, it flows nicely with #82533. Fixes #81242 (tm bugs fixed) Fixes #82668 <details><summary>More info for devs</summary> Handy regex used for alt click s&r: `AltClick\((.*).*\)(\n\t.*\.\.\(\))?` `click_alt($1)` (yes I am aware this only copies the first arg. there are no other args!) ### Obj reskins No reason for obj reskin to check on every single alt click for every object. It applies to only a few items. - Moved to obj/item - Made into signal - Added screentips ### Ventcrawling Every single atmospherics machine checked for ventcrawling capability on alt click despite only 3 objects needing that functionality. This has been moved down to those individual items. </details> ## Why It's Good For The Game For players: - Alt clicking should work more logically, not causing double actions like eject disk and open item window - Added context menus for reskinnable items - Removed adjacency restriction on loot panel For devs: - Makes alt click interactions easier to work with, no more click chain nonsense and redundant guard clauses. - OOP hell reduced - Pascal Case reduced - Glorious snake case ## Changelog 🆑 add: The lootpanel now works at range. add: Screentips for reskinnable items. fix: Alt click interactions have been refactored, which may lead to unintentional changes to gameplay. Report any issues, please. /🆑 |
||
|
|
c72d1dcf48 |
[MIRROR] Replaces a number of deciseconds into SECONDS (#27188)
* Replaces a number of deciseconds into SECONDS * blep --------- Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com> Co-authored-by: Waterpig <wtryoutube@seznam.cz> Co-authored-by: Waterpig <49160555+Majkl-J@users.noreply.github.com> |
||
|
|
1443ef79d3 |
Replaces a number of deciseconds into SECONDS (#82436)
## About The Pull Request Using these search regexes: Number ending in 0: `do_after\((\w+), (\d+)0,` Replace: `do_after($1, $2 SECONDS,` Single digit number: `do_after\((\w+), [1-9],` replace: `do_after($1, 0.$2 SECONDS,` Double: `do_after\((\w+), (\d)([1-9]),` Replace: `do_after($1, $2.$3 SECONDS,` ## Why It's Good For The Game Code readability |
||
|
|
4c01e3f805 |
[MIRROR] Demotes the "electrical conductivity" flag from flags_1 to obj_flags [MDB IGNORE] (#25381)
* Demotes the "electrical conductivity" flag from `flags_1` to `obj_flags` (#80033) ## About The Pull Request Code to handle this flag only ever existed on the `/obj` sublevel, so there's no need for it to be on the `/atom` level `flags_1`. There was probably a point in time in which mobs or turfs conducted electricity but there's zero code for it anymore so we truly just live in a society now. ## Why It's Good For The Game Frees up a slot on `flags_1` (which is really nice actually), proper scoping of certain bitflag stuff, etc. ## Changelog Not relevant to players. I may have screwed something up, will be doing a few passes on this myself to ensure all the search and replaces went alright but we should be good™️ * Demotes the "electrical conductivity" flag from `flags_1` to `obj_flags` * Modular * Update misc.dm --------- Co-authored-by: san7890 <the@san7890.com> Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com> |
||
|
|
7f7688b60a |
Demotes the "electrical conductivity" flag from flags_1 to obj_flags (#80033)
## About The Pull Request
Code to handle this flag only ever existed on the `/obj` sublevel, so
there's no need for it to be on the `/atom` level `flags_1`. There was
probably a point in time in which mobs or turfs conducted electricity
but there's zero code for it anymore so we truly just live in a society
now.
## Why It's Good For The Game
Frees up a slot on `flags_1` (which is really nice actually), proper
scoping of certain bitflag stuff, etc.
## Changelog
Not relevant to players.
I may have screwed something up, will be doing a few passes on this
myself to ensure all the search and replaces went alright but we should
be good™️
|
||
|
|
a15b5fe935 |
[MIRROR] Allows you to choose between three lipstick styles [MDB IGNORE] (#24275)
* Allows you to choose between three lipstick styles (#78750) ## About The Pull Request Somehow the lipstick sprite got messed up and was a pixel lower than it should have been, ending up on the chin instead of the lips. Edit: I just found https://github.com/tgstation/tgstation/pull/55281 in the history and now I'm not sure anymore... I've instead opted into making three different lipstick styles with a radial to select which one you want to put on your face. You can change styles via alt click. This way if you want to have it lower like Queen Amidala you can, or higher if you're like me and think that looks better.   <details><summary>Lower (Aka how is is in the current build)</summary>  </details> <details><summary>Upper (All pixels shifted up one)</summary>  </details> <details><summary>Middle (The new default- pixels shifted up one for the profile sprites)</summary>  </details> ## Why It's Good For The Game More character customization options ## Changelog 🆑 image: you can now change the style of lipstick to be higher or lower on the face by alt-clicking the lipstick tube /🆑 --------- Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com> Co-authored-by: san7890 <the@ san7890.com> * Allows you to choose between three lipstick styles --------- Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com> Co-authored-by: san7890 <the@ san7890.com> |
||
|
|
a939eb0246 |
Allows you to choose between three lipstick styles (#78750)
## About The Pull Request Somehow the lipstick sprite got messed up and was a pixel lower than it should have been, ending up on the chin instead of the lips. Edit: I just found https://github.com/tgstation/tgstation/pull/55281 in the history and now I'm not sure anymore... I've instead opted into making three different lipstick styles with a radial to select which one you want to put on your face. You can change styles via alt click. This way if you want to have it lower like Queen Amidala you can, or higher if you're like me and think that looks better.   <details><summary>Lower (Aka how is is in the current build)</summary>  </details> <details><summary>Upper (All pixels shifted up one)</summary>  </details> <details><summary>Middle (The new default- pixels shifted up one for the profile sprites)</summary>  </details> ## Why It's Good For The Game More character customization options ## Changelog 🆑 image: you can now change the style of lipstick to be higher or lower on the face by alt-clicking the lipstick tube /🆑 --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: san7890 <the@san7890.com> |
||
|
|
06cce1effb |
[MIRROR] replaces surgical and coroner duffels with surgery trays and medical carts, resprites razor [MDB IGNORE] (#23499)
* replaces surgical and coroner duffels with surgery trays and medical carts, resprites razor * Update cosmetics.dm * Update tramstation.dmm --------- Co-authored-by: Lamb <110322848+CoiledLamb@users.noreply.github.com> Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com> Co-authored-by: Pinta <68373373+softcerv@users.noreply.github.com> |
||
|
|
3c0159b143 |
replaces surgical and coroner duffels with surgery trays and medical carts, resprites razor (#77975)
## About The Pull Request replaces all instances of surgical duffels with surgery trays, and all coroner duffels with morgue surgical trays. they contain about the same items, with surgical trays/carts also having bone gel and tape, since their list of holdable items is much more limited. the surgery tray is a diagetic storage unit that displays any surgery tool it's holding in a small, almost world-state esque form on top of it. it can be carried around by dragging it on to yourself, but it will slow you down like an unzipped duffel would. it can also be deployed by activating it, and pulled around, but it will roll noisily in the process. currently, all tool tiers are supported - from alien, to advanced, to cruel, to normal.  here you can see just a few of the possible combinations of tools - default, default morgue, advanced, and alien. but any combination of these tools should work together somewhat cleanly, as you can see here:  also adds a medical razor variant, because otherwise they wouldn't fit with the look of the other tools on the tray, before and after here:  ## Why It's Good For The Game having constantly visible tool storage like this means you don't have to worry about the one tool you need from the bag being stolen - if it is, you can see it before an operation starts, and plan around that! it also gives a little flexibility to mappers - if they'd like a more mobile cart for their medbay, or if they'd like the somewhat stationary tray. it also plain looks cool, and isn't quite as clunky as a duffelbag would be. ## Changelog 🆑 add: adds medical carts and surgery trays image: gives the surgery razor a unique sprite /🆑 --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: JohnFulpWillard <53777086+JohnFulpWillard@users.noreply.github.com> Co-authored-by: Jacquerel <hnevard@gmail.com> |
||
|
|
db83be17da |
[MANUAL MIRROR] SPECIES NUKING 2023: Head flags 2: Electric Boogaloo (#76298) [MDB IGNORE] (#22506)
SPECIES NUKING 2023: Head flags 2: Electric Boogaloo (#76298) Continues the work I started on https://github.com/tgstation/tgstation/pull/76074 Fixes https://github.com/tgstation/tgstation/issues/73782 Implements a bunch of wrapper procs for hair style, facial hair style, etc etc the whole nine yards. Fixes many issues, especially with gradients because I did sloppy tired code that didn't work there. Makes head/get_limb_icon() not a disgusting mess (well, at least makes it less of a disgusting mess). Actually makes hair and lips depend entirely on the bodypart. 🆑 refactor: Head rendering code has been updated significantly... Again. Please report any issues with hair, facial hair, lipstick and such. /🆑 Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com> |
||
|
|
7a504490f0 |
[MIRROR] SPECIES NUKING 2023: Refactors a bunch of species traits into flags for the head bodypart [MDB IGNORE] (#21991)
* SPECIES NUKING 2023: Refactors a bunch of species traits into flags for the head bodypart * Makes it all compile, for now * Fixes eye emissives not working right. * Fixes the plasmaman head (oof conflicts) * Fixes the screenshot tests --------- Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com> Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com> |
||
|
|
614fab11b2 |
SPECIES NUKING 2023: Head flags 2: Electric Boogaloo (#76298)
## About The Pull Request Continues the work I started on https://github.com/tgstation/tgstation/pull/76074 Fixes https://github.com/tgstation/tgstation/issues/73782 Implements a bunch of wrapper procs for hair style, facial hair style, etc etc the whole nine yards. Fixes many issues, especially with gradients because I did sloppy tired code that didn't work there. Makes head/get_limb_icon() not a disgusting mess (well, at least makes it less of a disgusting mess). ## Why It's Good For The Game Actually makes hair and lips depend entirely on the bodypart. ## Changelog 🆑 refactor: Head rendering code has been updated significantly... Again. Please report any issues with hair, facial hair, lipstick and such. /🆑 |
||
|
|
f030b3b5aa |
SPECIES NUKING 2023: Refactors a bunch of species traits into flags for the head bodypart (#76074)
## About The Pull Request Title. I saw a comment on psyker code complaining about these species traits (which admittedly, they suck) and heeded the call to turn all of this crap into something defined almost entirely by the head bodypart. ## Why It's Good For The Game Potential to simplify species code further in the future, by delegating more visuals to bodyparts, which is where most of them should be handled. ## Changelog Should not be player facing, unless I fucked up. --------- Co-authored-by: Time-Green <timkoster1@hotmail.com> |
||
|
|
fe8fc4d010 |
[MIRROR] Split weapons_and_items.dmi icons into their own categories [MDB IGNORE] (#20360)
* Split weapons_and_items.dmi icons into their own categories * update modular * I hate the dme * random ass define removal fix * missing icons fix --------- Co-authored-by: Tim <timothymtorres@gmail.com> Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com> |
||
|
|
4397d63a55 |
Split weapons_and_items.dmi icons into their own categories (#74363)
## About The Pull Request This sprite file had been a dumping ground for miscellaneous sprites for the past decade. It's bloated and full of random kinds of icons and even has a few unused ones. It's time to reorganize them into their own separate dmi's based on theme. ## Why It's Good For The Game Better organization and easier access when looking for stuff. ## Changelog 🆑 imageadd: Split all icons in weapons_and_items.dmi to their own categories imagedel: Removed some unused icons /🆑 |
||
|
|
f8f2abb11f |
[MIRROR] Refactor, improve, and rename canUseTopic to be can_perform_action [MDB IGNORE] (#19391)
* Refactor, improve, and rename canUseTopic to be can_perform_action * updoot * https://github.com/tgstation/tgstation/pull/72876 https://github.com/tgstation/tgstation/pull/72876 --------- Co-authored-by: Tim <timothymtorres@gmail.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com> |
||
|
|
bbf67180b4 |
[MIRROR] Adds The rest of the lipstick colours to cosmetics.dm [MDB IGNORE] (#19733)
* Adds The rest of the lipstick colours to cosmetics.dm (#73849) ## About The Pull Request I noticed while working on a feature for a downstream, that three of the lipstick colours weren't actually seperate items, so this PR just adds those three so they can be spawned in by admins. ## Why It's Good For The Game It lets admins spawn more colours of lipstick for costuming, also good for downstreams that might want to make lipsticks buyable. ## Changelog 🆑 add: Adds the rest of the lipsticks to the cosmetics.dm /🆑 * Adds The rest of the lipstick colours to cosmetics.dm --------- Co-authored-by: Moth-lantern <122066083+Moth-lantern@users.noreply.github.com> |
||
|
|
3d5a463285 |
Adds The rest of the lipstick colours to cosmetics.dm (#73849)
## About The Pull Request I noticed while working on a feature for a downstream, that three of the lipstick colours weren't actually seperate items, so this PR just adds those three so they can be spawned in by admins. ## Why It's Good For The Game It lets admins spawn more colours of lipstick for costuming, also good for downstreams that might want to make lipsticks buyable. ## Changelog 🆑 add: Adds the rest of the lipsticks to the cosmetics.dm /🆑 |
||
|
|
a1ada2c9ef |
Refactor, improve, and rename canUseTopic to be can_perform_action (#73434)
This builds on what #69790 did and improved the code even further. Notable things: - `Topic()` is a deprecated proc in our codebase (replaced with Javascript tgui) so it makes sense to rename `canUseTopic` to `can_perform_action` which is more straightforward in what it does. - Positional and named arguments have been converted into a easier to use `action_bitflag` - The bitflags adds some new checks you can use like: `NEED_GRAVITY | NEED_LITERACY | NEED_LIGHT` when you want to perform an action. - Redundant, duplicate, or dead code has been removed. - Fixes several runtimes where `canUseTopic` was being called without a proper target (IV drips, gibber, food processor) - Better documentation for the proc and bitflags with examples |