mirror of
https://github.com/fulpstation/fulpstation.git
synced 2025-12-10 18:11:47 +00:00
bb22d37fc9ddf21e0648dd4d22a53de158b712bb
76 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
d4a65d5841 | wow awesome | ||
|
|
d535503645 |
[MDB IGNORE] May TGU (#635)
* Does the TG Update 😃 * updates beef stations * test * Revert "test" This reverts commit |
||
|
|
5bea28c809 |
[MDB IGNORE] April TGU (#602)
* im so confused * fix helio * fix to maps * FIXES * fixes bloodsucker powers * fix targeted powers * re-adds kindred archives * cryo fix to all maps + selene fix * visible instead * pubby incinerator * pubby new chem and area fixes * ??? * incinerators * more map fixes * fixes beef limbs * im lost * update again * stuttering * maybe fixes checks * Update bloodsucker_datum.dm |
||
|
|
15f80ab884 |
[MDB IGNORE] TGU (#544)
* TGU yea yeah * hopefully kills all lattices in walls * another go * more lattices * pubby fix * maybe the last lattices fix * makes checks run again * saves selene station ! 😃 * little bfenem :) * new tgu + fulp fixes * map fixes * i rember 😄 * fix selene map merge conflicts |
||
|
|
f9928fac60 |
[MDB IGNORE] [IDB IGNORE] feubrary tgu (#505)
* Automatic changelog compile [ci skip] * Update readme.md * Automatic changelog compile [ci skip] * what * swagging * i lied about the laundry room bit that was never part of the first commit but it is now although only solitaire and pubby has it because one the others its not a proper room because its open into dorms or the bathrooms * woops * there we go * WHY was pubby beepsky a varedited secbot instead of the normal subtype * PLEASE tel me i caught them all * defeats heliantus * Update Solitairestation.dmm * Update Heliostation.dmm * please tell me thats all of them * i am full of rage * i THINK thats all for the dupe cables * should be good * i never want to see heliostation again in my life * sexy mime override * merge conflicts in exchange of linter fails * solitaire * Update tgstation.dme * solitaire locker room * will that fix it * Update beef_station.dmm * Update tgstation.dme * linters * Update Solitairestation.dmm * linters * tgu again * restores the readme Co-authored-by: Changelogs <action@github.com> Co-authored-by: JohnFulpWillard <53777086+JohnFulpWillard@users.noreply.github.com> |
||
|
|
468ba0f1c8 |
[IDB IGNORE] [MDB IGNORE] December TGU (#433)
* TG UPDATE REAL * fix checks probably * TGU, minus hardsuit stuff. * oops * haha this isnt even needed * re-adds batform * Pepsi's Fulp ERT MODsuits (#21) * makes beef cyto the parent type of a now existent parent * Removes ERTs Guns (#23) * fix checks * F OFF * Update Solitairestation.dmm * Update Solitairestation.dmm * tg update again, removes maidborgs * FU (fulp update) * FUCK YOU SOLITAIRE * Update README.md * Update species.dm * not my fault you prick (#24) * digi fix * tgu Co-authored-by: Pepsilawn <reisenrui@gmail.com> |
||
|
|
05e85a5b2f |
[MDB IGNORE] ID fix (#396)
* YEA YEAH YE * Update PubbyStation.dmm * tgu * except that * Update SeleneStation.dmm * revert https://github.com/tgstation/tgstation/pull/62568 * SM fix on fulp maps |
||
|
|
da88f85361 |
[MDB IGNORE] [IDB IGNORE] Late September TGU (#367)
* tgu * updated paths * updating more paths * master server * more repaths * tgu * oh these were defined * y * tgu * fixes fulp shuttles i think * revert * tgu * fix checks and stuff * Update sound.dm * Update tg_edits.md * tgu |
||
|
|
03e71941bd |
[MDB IGNORE] [IDB IGNORE] September TGU (#351)
* tgu
* repath
* tgu again
* Pubby update
* starting on preferences
* starting on bloodsuckers
* more tgui
* deputies and monster hunter
* finished beefmen
* Update beefman.ts
* Tgu map changes (#8)
* selene areas and slight fixes
* fixes helio areas and other small stuff
* tgu
* fulp bans thank you beatrice
* test
* Update bans.dm
* Update bans.dm
* full access
* Revert "full access"
This reverts commit
|
||
|
|
edf5ddbffe |
[MDB IGNORE] [IDB IGNORE] August TGU (#334)
* Automatic changelog compile [ci skip] * Update readme.md * Automatic changelog compile [ci skip] * what * TG Update * *Bass drop* * This TGU has been brought to you by: The only reason I did TGU Modular Bloodsuckers * Fulp job stuff * Mapping stuff It's just renaming /chapel/main to /chapel * actually im too scared to change this * please stop being a bad mapper.... please..... * Update Heliostation.dmm * i ALWAYS miss this one EVERY TIME * repaths * Update bans.dm * Revert "Update bans.dm" This reverts commit |
||
|
|
e5bfc6fa44 |
TGU (#318)
* Automatic changelog compile [ci skip]
* Update readme.md
* Automatic changelog compile [ci skip]
* merges TG into branch, ensures all fulp files are untouched and fixes dme
* does what the first commit says
* jobs fix
* Pubbystation
* Heliostation & Selenestation
* Update SeleneStation.dmm
* Revert "Update SeleneStation.dmm"
This reverts commit
|
||
|
|
0e81dab0cf |
TGU: Agent ID buff, Even more Circuit stuff, Spectroscopy, DBcore subsystem to help with crashes (#238)
* lol 882 conflicts * build.js never forget * um * and this * sure * i refuse to see life in black and white * oh Lord, don't ask me what I mean * Just say that it's on meeee * that's just the weight of the world * of course the british file gives me trouble fuck you british people * wow, this is your room? it's so cool! [png of a bloodsucker lair full of dead bloodless people] * Make a lot of money and feel dead inside * tell me you didnt test your code without telling me you didnt test your code * stay winning * mech toy repath * yea add this to the readme john!!!!! (haha) * you mean trolling the right-click functions? * yea Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com> * yea 2 Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com> * span macros * virtual insanity is what we're living it's aaaalright now * um * yeah * lol * this makes it compile i think why beefman code be like this * i knew it was going to happen i just hoped it wouldn't * forgot this Co-authored-by: Enricode <SgtHunk@users.noreply.github.com> Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com> |
||
|
|
6f485927f8 |
TG Update (#104)
* Updating GBP from PR #57981 [ci skip] * Removes total_moles_specific, just use gaslists normally. I don't know how I missed this (#57973) * Refactors pellet_cloud/create_cassing_pellets to not sleep (#57974) Co-authored-by: MLGTASTICa <ak9bc01d@yahoo.com> * Automatic changelog generation for PR #57974 [ci skip] * Updating GBP from PR #57974 [ci skip] * Fix Tooltip documentation (#58013) * Remove SS_NO_TICK_CHECK (#57800) ## About The Pull Request This is a whopper, will need @MrStonedOne to review. In theory this flag shouldn't be needed and my own testing didn't find any issues, but I'd feel better with a lengthy test merge. ## Why It's Good For The Game Might make nightshift subsystem lag less, MC loop has less stuff to check. * Updating GBP from PR #57800 [ci skip] * Reorder the list of items in more outfits. (#57801) On my quest to make outfits easier to read and fix some small mistakes by applying a priority order. ID > uniform > suit > backpack > other clothing in alphabetic order > pockets > hands > others Moved the base/assistant plasmaman outfit from the middle of the standard file to the top of the plasmaman outfit file. Reorganized the plasmaman outfit order to have jobs within a department close to each other. Moved the Death Commando outfit into the ERT file together with a line that adds mindshields to CentCom outfits because I had to dig to find that a long time ago... Also fixes detective plasmaman spawning with a worse headset and plasmamen prisoners spawning with a different shoe. Like... how no one has seen that plasmaman spawn with the wrong headset? Do we have no plasmaman sec? Yes I know the answer... * Automatic changelog generation for PR #57801 [ci skip] * Updating GBP from PR #57801 [ci skip] * Fix sql changelog (#57972) Fixed bad SQL that I originally wrote in the changelog for 5.11, anyone trying to update their schema from < 5.11 up would notice this. * Test newest version of gbp-action (#57980) Read about it here: tgstation/gbp-action#28 TLDR: Less race conditions, and all logs are now pushed to a separate branch. The new location of gbp-balances.toml is in the gbp-balances branch. Will most likely be able to delete the one in master so people don't get confused. This required a workflow update, and so was not directly pushed to master. This currently uses my PR branch directly so that I can make changes for anything that doesn't work. When it is solid, I will push it to master and we will go back to gbp-actions@master, or some pinned version. * Fixes mech HUD's not being properly removed (#57964) Fixes mech hud's not being removed when leaving the odysseus or clarke * Automatic changelog generation for PR #57964 [ci skip] * Resprites the fork! (#57490) About The Pull Request This PR resprites the fork. image Why It's Good For The Game The old fork was really tall and black. Forks are really hard to sprite but i think this is an improvement. Changelog cl imageadd: The fork has a new sprite. /cl * Automatic changelog generation for PR #57490 [ci skip] * rpds can now interact with the unwrench upgrade (#57959) Adds the functionality to upgrade the RPD by 'slapping' the unwrench upgrade disk with the RPD itself It doesn't exactly revolutionize gameplay and at most allows engineering cyborg players to at least upgrade their RPD to unwrench saving them a headache and a module slot when doing their thing I suppose * Automatic changelog generation for PR #57959 [ci skip] * Automatic changelog compile [ci skip] * Fix collect changes (#58022) * Xenomorphs can now strip humans again (#58007) * Automatic changelog generation for PR #58007 [ci skip] * Fix back not respecting internals (#58012) * Automatic changelog generation for PR #58012 [ci skip] * Layer overhaul (#57915) ## About The Pull Request Changes up some layer and plane defines for no particular reason lol ## Why It's Good For The Game Planes actually override layers, and layers control ordering within planes. A lot of the usage of plane and layer was wholly unnecessary. This refactor helps future maintainability while also being needed staging for _future features._ * Resprites all gas vending machines (#57919) The existing sprites are an amalgamation of parts of existing sprites, this PR replaces them with original sprites designed for the devices Sprites were made by me and were recolored by maxymax13 * Automatic changelog generation for PR #57919 [ci skip] * Update arcade.dm (#57984) * Automatic changelog generation for PR #57984 [ci skip] * Hand Drill Sound is now smoother on the ear. (#58004) * Automatic changelog generation for PR #58004 [ci skip] * Fixes Orion bad messages (#58018) * Automatic changelog generation for PR #58018 [ci skip] * A non-functional heart no longer causes heart attack if you have Muscled Veins (#58016) * Automatic changelog generation for PR #58016 [ci skip] * Nerfs holodeck thunderdome suits (#58011) * Automatic changelog generation for PR #58011 [ci skip] * You can now manufacture bone gel (#58006) * Automatic changelog generation for PR #58006 [ci skip] * Fixes Antigravity Grenades (#57991) * Automatic changelog generation for PR #57991 [ci skip] * Fixes flying damage slowdown applying to the floating movetype instead. (#57994) * Automatic changelog generation for PR #57994 [ci skip] * Fixes lights on people (#58000) - Fixes light eaters not putting out lights on people. * Automatic changelog generation for PR #58000 [ci skip] * CTF spawner awareness in tips (#57995) Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com> * Automatic changelog generation for PR #57995 [ci skip] * Fixes incorrect params passed into callback function causing server crashing numbers of runtimes. (#58020) [21:03:59] Runtime in change_turf.dm,301: type mismatch: /turf/closed/mineral/random/vo... (/turf/closed/mineral/random/volcanic) & 18 proc name: AfterChange (/turf/open/AfterChange) src: the volcanic floor (135,80,3) (/turf/open/floor/plating/asteroid/basalt/lava_land_surface) call stack: the volcanic floor (135,80,3) (/turf/open/floor/plating/asteroid/basalt/lava_land_surface): AfterChange(/turf/closed/mineral/random/vo... (/turf/closed/mineral/random/volcanic), null) /datum/callback (/datum/callback): InvokeAsync() Timer (/datum/controller/subsystem/timer): fire(0) Timer (/datum/controller/subsystem/timer): ignite(0) Master (/datum/controller/master): RunQueue() Master (/datum/controller/master): Loop() Master (/datum/controller/master): StartProcessing(0) x9000 Missing args in callback meant two runtimes each time a turf was mined, exploded, blown up etc. Causes openspace to mess up if the server runs low on memory. * Automatic changelog generation for PR #58020 [ci skip] * Automatic changelog compile [ci skip] * Lowers rot disease chance (#58034) Lowered the chance of disease creation by ~60% Every round was having horrible breakouts, this ought to fix that * Automatic changelog generation for PR #58034 [ci skip] * Fixes error sprite from pdas in exosuit storage slots (#58033) fix: putting a PDA into an exosuit storage slot won't cause the missing texture sprite any more. * Automatic changelog generation for PR #58033 [ci skip] * Enhance spray bottle logging while improving code and variable names. (#58070) * Improve and loog * Copybara * Testing feex * Extra doc * Feex * Range start from 1 instead of 0 * Automatic changelog generation for PR #58070 [ci skip] * Automatic changelog compile [ci skip] * Feex (#58073) * Automatic changelog generation for PR #58073 [ci skip] * trigger spacemandmm reparse in CBT 'Build All' task (#58061) * Fixes runtimes related to quick equip. (#58043) Basic sanity and ensure unequip is properly called before equipping again. * Fixes a moth wing sprite mistake (#58059) A wing sprite had a silhouette for the mob that I missed in #53969 * Automatic changelog generation for PR #58059 [ci skip] * Fixes cargo gas canisters not being purchaseable (#58028) * Automatic changelog generation for PR #58028 [ci skip] * Fixes Tips Message About Ctf To Be Properly Descriptive Of Ctf (#58050) * Automatic changelog generation for PR #58050 [ci skip] * Mansus grasp now can ignite cigars (#58055) * Automatic changelog generation for PR #58055 [ci skip] * fix missing atmos features from various station (#57936) Adds bluespace vendors to tramstation Setup freezers to use waste loop Connect delta station freezers to waste loop Connect kilo station freezers to waste loop * Automatic changelog generation for PR #57936 [ci skip] * Revert "Switch tgui tooltips to popper.js" (#58078) * Revert "Switch tgui tooltips to popper.js (#57992)" This reverts commit |
||
|
|
353d006659 |
[TM] TG Update: Combat mode, drone exploration, and more! (#58)
* Updating GBP from PR #57626 [ci skip] * Simple bots now use a different snowflake method for all access. (#57861) * Automatic changelog generation for PR #57861 [ci skip] * Updating GBP from PR #57861 [ci skip] * Automatic changelog compile [ci skip] * Defines the interrogation room as unique area and not 4 different var edits. (#57612) * Defines the interrogation room as unique area and not 4 different var-edits * Fixes the gaping hole in the wall * We added a new map at the very end. * Blaseball * Committing the changes * Rebuilds the deltastation setup in case it's actually breaking something... * Automatic changelog generation for PR #57612 [ci skip] * Updating GBP from PR #57612 [ci skip] * Bump pillow from 7.2.0 to 8.1.1 in /tools (#57906) Bumps [pillow](https://github.com/python-pillow/Pillow) from 7.2.0 to 8.1.1. - [Release notes](https://github.com/python-pillow/Pillow/releases) - [Changelog](https://github.com/python-pillow/Pillow/blob/master/CHANGES.rst) - [Commits](https://github.com/python-pillow/Pillow/compare/7.2.0...8.1.1) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Adds right-click support to AIs/Cyborgs (#57881) Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com> * Automatic changelog generation for PR #57881 [ci skip] * Updating GBP from PR #57881 [ci skip] * Ice cream revamp: Ice cream is a component and cones can hold multiple servings of ice cream now. (#57415) * Ice cream rework WIP * I'm done! * i'll deal with my verbose engrish at a later date. I'm dead tired. * linter aaaaaa * Take a bite! * FINALLY, A COMPONENT! * ghost macro. * Review, typos, beheading of a lame comsig. * Typo. Now I'm self-obliged to test it again. * It works. * Automatic changelog generation for PR #57415 [ci skip] * Updating GBP from PR #57415 [ci skip] * i shot my own phazon to death and i cry. (#57772) Co-authored-by: MLGTASTICa <ak9bc01d@yahoo.com> * Automatic changelog generation for PR #57772 [ci skip] * Updating GBP from PR #57772 [ci skip] * Fixes admin immovable rods not hitting things (#57890) Timber did an oopsie in #57850 and made it so rods with a specific target (AKA any spawned by admins either through the trigger event button or the admin smite) quit out of their creation before they started listening for clonging things. Possibly this was partly intended, in case you wanted to spawn a rod that would only hit whatever you designated as your target and nothing else, but this current setup doesn't hit the target either soo something needs fixing. @Timberpoes let me know what you think and if you were intending for a soft rod option that would only hit the target. Fixes: #57888 * Automatic changelog generation for PR #57890 [ci skip] * Updating GBP from PR #57890 [ci skip] * Ghosts can now interact with the crew monitor console. (#57891) * Automatic changelog generation for PR #57891 [ci skip] * Updating GBP from PR #57891 [ci skip] * Fixes unbalanced flyperson leg (#57892) One of Flypeople's legs while facing up is missing a single pixel, causing it all to be unbalanced, this fixes that. * Automatic changelog generation for PR #57892 [ci skip] * Updating GBP from PR #57892 [ci skip] * undefined variable wtf *Dies of cringe* * tgui: ESLint and VSCode settings improvements (#57905) Added column 80 rulers to all javascript and scss files. Added a "prettier" config to have sensible defaults for those who prefer to use it. Added RadarJS (fork of SonarQube's SonarJS). Launchable only via bin/tgui --lint-harder for now. Disabled ESLint rule for parens around arrow function arguments, because in TypeScript they're pretty much always required, and I don't want to replace it throughout the codebase. Removed unused javascript extensions from tooling (jsx, mjs). * Automatic changelog compile [ci skip] * Fixing the undoable experisci arcade experiment. (#57898) * Automatic changelog generation for PR #57898 [ci skip] * Updating GBP from PR #57898 [ci skip] * [s] Fixing an infinite loop exception with Move() (#57895) * Replaces use of handle_atom_del() with Exited() in modular computer hardware. And fixes an issue. (#57387) Title. The issue being hardware/on_remove() calling /try_eject() even if the holder is being destroyed, which is quirky. I also replaced an instance of /New() with /Initialize() and deleted a troublesome /Destroy(). handle_atom_del() is awful. Nearly every (minus the storage component; it's a tangled trial of mental gymnastic) behavior implemented there can pretty much be moved to Exited() and it'll work just as fine, if not better against edge cases such as recall spells. But that's not the scope of this PR. I'm here to fix #57161. * Automatic changelog generation for PR #57387 [ci skip] * Updating GBP from PR #57387 [ci skip] * Highlander + Summon Guns and Magic now uses signals to equip new crewmembers (#57817) * Automatic changelog generation for PR #57817 [ci skip] * Updating GBP from PR #57817 [ci skip] * makes holodeck books a holo_effect so they get added to the spawned list (#57909) * Automatic changelog generation for PR #57909 [ci skip] * Updating GBP from PR #57909 [ci skip] * Dogs no longer take whatever they're holding/wearing to the grave (#57670) * Automatic changelog generation for PR #57670 [ci skip] * Updating GBP from PR #57670 [ci skip] * Turns off cache on docker publish action (#57912) Maybe it will stop it screaming in pain about missing dependencies. Publish action suggests alternative of running this as cronjob to update cached version so if this works but is too slow we can change to that. * Adds a plumbing layer manifold (#57494) Adds a multilayer plumbing manifold, I also murdered the multilayer duct You can now alt-click the plumbing RCD to change the layer it prints. I made a whole thing where right clicking changed the settings and you could use that to change machinery aswell. I even did that with the plunger, it was absolutely beautiful. Anyway that drained the life out of me because apparently there's no attack_obj_secondary and afterattack_secondary ALSO called attack_obj (left click). I just hate whoever made it with intensity Plumbing now uses three layers. They should be easier to navigate. I tried to make layer connecting the same as cross-color connecting, but that would take more of my soul then there is to take * Automatic changelog generation for PR #57494 [ci skip] * Updating GBP from PR #57494 [ci skip] * Makes stations more airtight (#57535) I've gone through delta, meta, and icebox and added some choice windoors, changed some areas around, added some more doors, and changed some other miscellaneous things. I'll list the full changes in drop downs, for both our sakes Delta: <details> Splits the central hallway into fore and aft central hallways Adds the spaces that jut out of medbay and sci into the central hallway, rather then having them be a part of medbay and sci Adds medbay access locked windoors to the back desk of the medbay reception area Adds airlocks to both the upper and lower parts of the main hallway </details> Meta: <details> Gives the storage wing another set of firelocks, and two fire alarms. It didn't have any alarms in the first place, so hopefully this helps things Adds the spaces that jut out of medbay and sci into the central hallway, rather then having them be a part of medbay and sci Replaces a small bit of the science area with nanite lab, to prevent a breach near xenobio causing fire alarms at the front of sci Adds a windoor in front of the ORM to block air Adds a wall behind a smart fridge in chemistry </details> Icebox: <details> Added airlocks between arrivals and the port hallway, and the escape hallway and the starboard hallway Added a windoor between the kitchen and the bar </details> ## Why It's Good For The Game Cuts delta's main hallway in half, with the goal of reducing fire alarm strain. Some thoughts on this would be nice, I don't want to make everything else that uses areas worse just because fire alarms are dumb, and I'm worried that's what I've ended up doing here. I've also added the portions of medbay/sci that jut out into the main hallway into the main hallway, I think? I could make these into lobby areas, but I'm not sure if that's appropriate or not. Adds a few windoors and airlocks to better section off portions of the station, this should reduce the amount of mass gas spreading that can occur. My goal here is to reduce the amount of uninteresting gas movement and make firelocks less hellish when there's a breach * Automatic changelog generation for PR #57535 [ci skip] * Updating GBP from PR #57535 [ci skip] * Move a signal that is randomly seperated from others of it's kind (#57914) Co-authored-by: actioninja <actioninja@criticalaction.net> * Fix plant trash from grown food not inheriting their proper seeds (#57924) This PR fixes plant trash not getting the seed from their parent. trash_type is a type path, not an instantiated object. istype always fails trying to use it on trash_type. ispath is the correct helper to use here, because it's a type path and not an object. * Automatic changelog generation for PR #57924 [ci skip] * Updating GBP from PR #57924 [ci skip] * Makes deadchat control's examine only shows up for ghosts (#57926) This PR early returns the on_examine proc for deadchat control if the examiner is not an observer. So, only ghosts (deadchat) are allowed to see if something is under deadchat control. Humans don't need to know (or shouldn't know) if deadchat is expanding its reach into the physical realm. * Automatic changelog generation for PR #57926 [ci skip] * Updating GBP from PR #57926 [ci skip] * Adds materials to PDAs (#57923) Puts a small amount of iron, glass, and plastic into a PDA 'cause that sort of material usage makes sense to me * Automatic changelog generation for PR #57923 [ci skip] * Updating GBP from PR #57923 [ci skip] * Automatic changelog compile [ci skip] * Adds sticking metallic kitchenware into APCs (#57910) Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com> * Automatic changelog generation for PR #57910 [ci skip] * Updating GBP from PR #57910 [ci skip] * Bane AI (#57771) We take Gotham from the corrupt! The rich! The oppressors of generations who have kept you down with myths of opportunity, and we give it back to you...the people...Gotham is yours. None shall interfere, do as you please! * Automatic changelog generation for PR #57771 [ci skip] * Updating GBP from PR #57771 [ci skip] * Splits winter coats/hoods into their own sprite file (#57896) Moves the winter coats and their hoods into their own sprite file. 335 icons in one of the files got lowered to 289 after moving 46 wintercoat icons to their own file. Renames some icons because they had a long name. * Updating GBP from PR #57896 [ci skip] * remove double pen door from meta xeno (#57879) door double removal * Automatic changelog generation for PR #57879 [ci skip] * Updating GBP from PR #57879 [ci skip] * Resprites ventriloquist dummy (#57863) ## About The Pull Request Resprites the ventriloquist dummy #https://github.com/tgstation/tgstation/projects/6#card-2814241 ## Why It's Good For The Game The current sprite is just the assistant doll cut in half. This gives it a unique sprite and also makes it so that the hands line up with the item better than the current sprite. It's also a lot creepier (and animated!) * Automatic changelog generation for PR #57863 [ci skip] * Updating GBP from PR #57863 [ci skip] * Fixes missing pixel on envirosuits (#57849) ## About The Pull Request Adds 1 pixel to every evirosuit side sprite except the prototype. ## Why It's Good For The Game The current envirosuit sprites all have a single pixel missing on the foot, which causes the foot to be visible. This pixel is there on the prototype, but all the others are missing it. This PR adds 1 pixel to each side sprite to cover it up. * Automatic changelog generation for PR #57849 [ci skip] * Updating GBP from PR #57849 [ci skip] * Updates round tips (#57927) Deals with any mention of cloning, intents, and a few outdated mechanics * Automatic changelog generation for PR #57927 [ci skip] * Updating GBP from PR #57927 [ci skip] * Thermomachine update (#57918) This PR adds an UI button that allow the players to decide if use enviromental heat or red port pipe (it will have an error if the choice is not working for some reasons, like not having moles in the pipes/air, not having pipes connected at all, etc) This also fix the issue of having roundstart freezers heating up rooms because the waste pipe didn't have any gas * Automatic changelog generation for PR #57918 [ci skip] * Updating GBP from PR #57918 [ci skip] * Improves status bar coverage (#57916) This PR makes sure all MouseEntered() procs call their parent, which handles the status bar. This fixes instances where the status bar was missing, for example when you hovered over the ghost buttons, you would not be shown a name of the button, but completely different object, like "space", which was very misleading. This also means that the new status bar should have better parity the with the old status bar, which also showed these things. * Automatic changelog generation for PR #57916 [ci skip] * Updating GBP from PR #57916 [ci skip] * Create explicit warning if not building with CBT (#57931) Adds a new CBT define which is automatically created when building. If this define is absent, the build will fail. This is what Cyberboss tried to do with USE_BUILD_BAT_INSTEAD_OF_DREAM_MAKER.dm, but couldn't. The reasoning behind this is CBT is already a requirement to build a fresh project, otherwise the tgui bundle files won't exist. This gives a readable error to go along with that. However, you can currently build once then just use Dream Maker. This is a footgun - not only are we already adding new things to CBT like tgfont which will fail later on, but also it will create weird scenarios when we add tasks to CBT that don't immediately fail if not ran, or otherwise create out of sync builds. Also replaces rmSync with unlinkSync, which works on older Node versions. Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com> Co-authored-by: Aleksej Komarov <stylemistake@gmail.com> * Additional CTF maps (#57230) This pull request adds a map loader as well as new maps to CTF. When a game starts a CTF map will be selected at random and will be playable by ghosts. As well as this new functionality CTF now fully supports 4 teams. A green and yellow team have been added complete with both standard and instagib gear. At current five maps are planned: Classic - the original map we all know and love Four Side - A four team CTF map where all teams compete over one flag Downtown - Terrestrial city themed map Limbo - Wizard themed map featuring portals and uses KOTH rather than CTF Cruiser - Space themed map utilizing the powerup system Random maps are selected on game load Support for four teams added Why It's Good For The Game CTF has been more or less the same on the surface since its creation. This PR allows for some much needed map variety which will increase replay value. CTF is far more regularly played then mafia due to its fast rounds and common use during round end delays and I believe that it deserves a boost in content. Changelog cl add: CTF can now selects a random map at game start add: CTF now supports four teams add: Gear for yellow and green CTF teams has been added add: CTF ID cards for all 4 teams have been added - courtesy of maxymax13 add: a new CTF map, Four Side has been added add: a new CTF map, Downtown has been added add: a new KOTH map, Limbo has been added add: a new CTF map, Cruiser has been added fix: KOTH capture points retain their sprites after being claimed /cl * Automatic changelog generation for PR #57230 [ci skip] * Updating GBP from PR #57230 [ci skip] * Implements Plant Biotype (#57108) Implements a plant biotype for plant based mobs. Changes the wood golem mob to be an organic, humanoid, and plant biotype---because wood is an organic substance, not a mineral. This additionally adds the ability for plantbgone/weedkiller to deal damage to plant biotypes. Why It's Good For The Game There's a curious lack of a defined plant biotype, despite plants sharing a unique number of traits. Ideally, this behavior can be more consistently implemented with something like biotypes. A minor example of this is utilized in this PR: weedkiller and plantbgone impacting plant-like mobs, which is what you'd expect. Changelog cl add: Plant-like mobs are now impacted and take damage from plant-b-gone and weedkiller reagents add: Plant-like mobs can be health scanned with a plant analyzer add: Plant-like mobs are impacted by the floral gun in the same manner pod people are /cl * Automatic changelog generation for PR #57108 [ci skip] * Updating GBP from PR #57108 [ci skip] * fix (#57900) Fix missing cable from upper atmos apc Fix wrong area in north-west corner resulting in airlock not working * Automatic changelog generation for PR #57900 [ci skip] * Updating GBP from PR #57900 [ci skip] * Add note about rust-g for building on Linux (#57622) This PR adds a minor note about needing to compile rust-g to Linux building instructions. I'm not sure if this is the appropriate place for it, but I don't see a better place to put it. * cyborg lollipop launchers can no longer spam timers (#57786) About The Pull Request Cyborg treat dispensers now have a maximum treat storage capacity of 5 treats instead of 30 treats, and recharge their treats at a rate of one treat per 10 seconds instead of one treat per second. To compensate for this, the damage of gumballs and lollipops that have been launched from an emagged cyborg has been increased from 3 to 10. Launched gumballs and lollipops will no longer delete themselves after 2 minutes (if not equipped). The 2u of omnizine in each cyborg lollipop has been replaced by 2u of psicodine. The contents of normal lollipops have not been modified. Cyborg cookie dispensers can now only dispense a cookie once every 10 seconds (instead of once per second). Non-cyborg cookie dispensers no longer self-recharge, but can now accept compressed matter cartirdges for reloading purposes. Support has been added for other types of RSFs to have use cooldowns. Why It's Good For The Game The self-deletion mechanism was apparently causing timer spam, so I reduced the amount of treats that cyborgs could spam out (and the rate of that spamming) so that the mechanism would no longer be necessary. I increased the damage of launched treats to compensate to keep the emagged treat launcher from becoming a very sad joke of a weapon. Floyd threw a fit when he learned that cyborgs could freely dispense lollipops that contained omnizine, so I replaced the omnizine with psicodine, a chem that is perhaps more appropriate for lollipops (it calms people down), doesn't do much of importance, and can't react to form any rare or interesting chems. The cookie dispenser thing is also an attempt to appease Floyd, since he doesn't like cyborgs being able to spam food everywhere. Changelog cl ATHATH balance: Cyborg treat dispensers now have a maximum treat storage capacity of 5 treats instead of 30 treats, and recharge their treats at a rate of one treat per 10 seconds instead of one treat per second. To compensate for this, the damage of gumballs and lollipops that have been launched from an emagged cyborg has been increased from 3 to 10. del: Launched gumballs and lollipops will no longer delete themselves after 2 minutes (if not equipped). balance: The 2u of omnizine in each cyborg lollipop has been replaced by 2u of psicodine. The contents of normal lollipops have not been modified. balance: Cyborg cookie dispensers can now only dispense a cookie once every 10 seconds (instead of once per second). Non-cyborg cookie dispensers no longer self-recharge, but can now accept compressed matter cartirdges for reloading purposes. Support has been added for other types of RSFs to have use cooldowns. /cl * Automatic changelog generation for PR #57786 [ci skip] * Updating GBP from PR #57786 [ci skip] * Minor tramstation and train-rail-fluff fixes (#57639) Fixes an incorrectly-shifted sprite for floor tram rails and adds some missing tram-rail fluff objects Also does some minor renaming (railing -> rail) cl fix: Nanotrasen railroad engineers have done some minor repairs to their in-station tram rails. /cl * Automatic changelog generation for PR #57639 [ci skip] * Updating GBP from PR #57639 [ci skip] * Automatic changelog compile [ci skip] * Paper bins show the paper inside them (atomised) (#57907) Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com> * Automatic changelog generation for PR #57907 [ci skip] * Updating GBP from PR #57907 [ci skip] * Ref Tracking: Revengance (#57728) * Ref Tracking: Revengance Fixes reference tracking ignoring self references due to a poorly thought out tick checking system. Fixes reference tracking ignoring the contents of assoc lists Makes the reference tracking printouts actually describe what list the ref is in, rather then just saying "list" Adds REFERENCE_TRACKING_DEBUG, a define which toggles tracking info for the ref tracking procs, which allows for oversight on how the proc is working Allows for direct calls of qdel_and_find_ref_if_fail(), makes it use ref rather then REF(), fixing it breaking for mobs. (Ditto for the qdel hint which does the same thing) Moves REAGENTS_TESTING out of the reftracking define block Makes unit tests define REFERENCE_TRACKING, REFERENCE_TRACKING_DEBUG, and FIND_REF_NO_CHECK_TICK Adds a unit test that sanity checks the reference finder proc * Updating GBP from PR #57728 [ci skip] * fix (#57902) Fix missing tile under airlock above turbine in kilo station * Automatic changelog generation for PR #57902 [ci skip] * Updating GBP from PR #57902 [ci skip] * You can now put food on plates, and plate no longer materialize out of nowhere as you cook (#57770) * All plates removed. Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com> Co-authored-by: DeAndre <robustness13@hotmail.com> Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com> Co-authored-by: Krysonism <49783092+Krysonism@users.noreply.github.com> * Automatic changelog generation for PR #57770 [ci skip] * Updating GBP from PR #57770 [ci skip] * tgui strip panel + strippable element (#57889) Completely removes show_inv and replaces it with /datum/element/strippable. It takes a list of instantiated /datum/strippable_item which communicate which slots are available and how to interact with them. This element has been added to humans, alien humanoids, parrots, and corgis. Co-authored-by: Aleksej Komarov <stylemistake@gmail.com> * Automatic changelog generation for PR #57889 [ci skip] * Updating GBP from PR #57889 [ci skip] * Adds explorer drones / adventures. (#57851) A new side-job for cargo. Prepare and launch exploration drones at distant sites to encounter weird adventures, collect loot and expand the station cargo network. Adventures - the main content type here, can be written by anyone without any knowledge of programming. The purpose here is creating an way of interesting way of delivering lore (and adding some new job content/cargo expansion method). Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com> Co-authored-by: EOBGames <58124831+EOBGames@users.noreply.github.com> Co-authored-by: Fikou <piotrbryla@onet.pl> Co-authored-by: Aleksej Komarov <stylemistake@gmail.com> * Updating GBP from PR #57851 [ci skip] * Fermichem 2.6 - Adds the HPLC: a new roundstart method of detecting purity, as well as a method of partially purifying reagents (#57858) Adds the High-performance liquid chromatography machine - a new roundstart method of detecting purity, as well as a method of partially purifying reagents. A single machine has been added to each of the 4(5) maps - this lets people determine their purity based off the size of the green (pure portion) to the orange (impure portion) of a reagent's peak shown on the mas spectroscopy display. If a reagent is impure - it will be displayed as red. In addition to this function, the HPLC can purify reagents by selecting a range of them and pressing the purify button. This will cost some time depending on the mass of the reagent and will purify it up it's default purity (in the tweaked reagent cases - 75%, for the reagents I've yet to get to - 100%). It will also reduce the volume accordingly (so in essence you are reducing the volume of the impure parts). The sprite itself will indicate when it's running, so you don't need to be nearby it or use the UI to know when it's done * Automatic changelog generation for PR #57858 [ci skip] * Updating GBP from PR #57858 [ci skip] * Partially revert reaction chamber (#57855) * Automatic changelog generation for PR #57855 [ci skip] * Updating GBP from PR #57855 [ci skip] * Blobbernaut HUD improvements (#57922) * Automatic changelog generation for PR #57922 [ci skip] * Updating GBP from PR #57922 [ci skip] * Crops the cached ID card icon so it is less obnoxious in tgui chat. (#57935) * Automatic changelog generation for PR #57935 [ci skip] * Updating GBP from PR #57935 [ci skip] * Some minor atmos cleanup (#57933) Fixes mining not making turfs active, I forgot to add a type arg when I added one to AfterChange(). This isn't the only source of the issue, but it's the most prevalent one Cleans up total_moles_specific() slightly, there's no point iterating a list if you already have the gas id. Removes a null assignment and if check, they don't catch anything as things are now, and if someone passes null to the proc I want a runtime Oh and I reordered a bit of atmospherics.dm to make a comment make sense. Don't worry about it * Automatic changelog generation for PR #57933 [ci skip] * Updating GBP from PR #57933 [ci skip] * emissive blockers are now just an overlay (with kickass fucking graphs). FUCK YOU MAPTICK (#57934) currently emissive blockers are objects added to the vis_contents of every item. however mutable appearances as overlays can serve this role perfectly well and according to my tests should cause less maptick per item. for mobs mutable appearances dont work for reasons i dont understand so instead this adds the em_block object to overlays instead of vis_contents. these both use atom/movable/update_icon() now graphed test results in pr * Updating GBP from PR #57934 [ci skip] * Converts trait comments to doc comments (#57941) This converts the existing comments traits had `#define TRAIT_BLA "bla" // yadda yadda` to proper doc comments so that they show with SDMM and the codedocs website. People just reference old code when writing new code, and people not using doc-comments for traits is something that comes up often. * Automatic changelog compile [ci skip] * Gibs/Dead bodies no longer produce miasma (#57957) * Gibs/Dead bodies no longer produce miasma Miasma production as it is now is too little over too long a time span, and it just ends up spreading across the station and having little effect. My goal here is to remove a source of uninteresting gas from the station's air, and make corpses and gib piles more infectious. I've placed the cap on disease payout at a strength of 7, so there's a slight chance of a positive disease, but I think it's counteracted by the danger presented by just infecting yourself till you get what you want. I've rewriten the rot component to just run a percent chance to infect someone with a disease based on the type of rot, and moved almost all of its behavior to signals. There's one portion I can't rewrite without making significant changes to how I handle atmos sensitivity, so that'll come later. Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com> * Automatic changelog generation for PR #57957 [ci skip] * Updating GBP from PR #57957 [ci skip] * [Ready] Fermichem part 2.3 Adds a new reagent: Eigenstasium (#56918) Co-authored-by: Rohesie <rohesie@gmail.com> Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com> * Automatic changelog generation for PR #56918 [ci skip] * Updating GBP from PR #56918 [ci skip] * Bump pyyaml from 5.3.1 to 5.4 in /tools (#57956) Bumps [pyyaml](https://github.com/yaml/pyyaml) from 5.3.1 to 5.4. - [Release notes](https://github.com/yaml/pyyaml/releases) - [Changelog](https://github.com/yaml/pyyaml/blob/master/CHANGES) - [Commits](https://github.com/yaml/pyyaml/compare/5.3.1...5.4) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Syndicate Shuttle Console cannot be deconstructed via tools (#57962) * Automatic changelog generation for PR #57962 [ci skip] * Updating GBP from PR #57962 [ci skip] * Metastation's Nanite lab RC is now named properly (#57952) * Automatic changelog generation for PR #57952 [ci skip] * Updating GBP from PR #57952 [ci skip] * Sentience fun balloon QoL (#57928) * Automatic changelog generation for PR #57928 [ci skip] * Updating GBP from PR #57928 [ci skip] * Examine atmos machinery will tell the piping layer (#57937) * Automatic changelog generation for PR #57937 [ci skip] * Updating GBP from PR #57937 [ci skip] * fix (#57917) move layer adaptors into another spot in engi and toxins to prevent distro and waste mixing * Automatic changelog generation for PR #57917 [ci skip] * Updating GBP from PR #57917 [ci skip] * Thermomachine balance (#57921) Changed how much internal heat_capacity the machine has, from 5000 to 7500, this to try and increase the speed of cooling/heating that was a bit slower than the old version Added a check that stops the machine from cooling when set to heater and heating when set to cooler Changed efficiency to be clamped between 0.65 and 1 (lessen the power spikes) Power usage reduce on lower efficiency if above a certain amount removed else if when checking to use enviroment heat (allow to use enviroment to cool even with the red port connected and with gas) * Automatic changelog generation for PR #57921 [ci skip] * Updating GBP from PR #57921 [ci skip] * Moth eyes now have their own obj and mob sprites (#57893) imageadd: Moth eyes now have a unique sprite that reflects on your mob. * Automatic changelog generation for PR #57893 [ci skip] * Updating GBP from PR #57893 [ci skip] * Improves spoon in hand sprites (#57938) fix: Spoons are consistently rendered in the correct hand on the player's sprite * Automatic changelog generation for PR #57938 [ci skip] * Updating GBP from PR #57938 [ci skip] * Fixes the apocalypse rune alt appearance for humans. (#57965) * Automatic changelog generation for PR #57965 [ci skip] * Updating GBP from PR #57965 [ci skip] * Cyborgs now use the same icon states for charge screen alerts as ethereals. (#57966) * Automatic changelog generation for PR #57966 [ci skip] * Updating GBP from PR #57966 [ci skip] * lazy tramstation fix (#57843) Fix an already fixed issue with xenos and other mid-round antags from spawning inside atmos chambers. Copy-paste very bad * Automatic changelog generation for PR #57843 [ci skip] * Updating GBP from PR #57843 [ci skip] * ai_behaviour cleanup ft. less chatty tourists (#57945) Each of these lines is punctuated by an audio sting every 8 seconds without refrain. So, this PR adds a new vocalisation limiter to tourist bots who can't find a seat. Instead of always vocalising every 8 seconds, they're now guaranteed to vocalise the first time and then have a 60% chance to have vocalised again each minute thereafter. Tourists waiting for food now have an approx 40% chance to have vocalised in any given minute. This should be considered alongside the fact that multiple (up to 10) tourists can be present at any given point in time and with the difficulty in players killing them, they can create a lot of unnecessary audio spam. If the tourists are being served rapidly, they're also giving regular guaranted audio stings on top of that which compounds the chances any given bot will output an audio cue. The AI controller now passes the larger value between the behaviour's `action_cooldown` in real seconds (as opposed to deciseconds) and delta_time when performing behaviours. This has no gameplay changes outside of those documented in this PR, since no AI behaviours with cooldowns greater than the AI controller's delta_time attempted to use delta_time. Finally, customers now have 10 minutes of patience before leaving instead of 100 minutes of patience due to a minor oversight where their patience was in deciseconds while delta_time was subtracted in seconds. * Automatic changelog generation for PR #57945 [ci skip] * Updating GBP from PR #57945 [ci skip] * Further updates the rounds tips (#57951) Removes and/or updates some more tips that #57927 missed. * Automatic changelog generation for PR #57951 [ci skip] * Updating GBP from PR #57951 [ci skip] * fixes jungle grass having wrong broken states (#57967) * Automatic changelog generation for PR #57967 [ci skip] * Updating GBP from PR #57967 [ci skip] * Switch tgui tooltips to popper.js (#57992) * Preliminary popper support * Switch tooltips to popper.js * Documentation, change DEFAULT_PLACEMENT * Automatic changelog generation for PR #57992 [ci skip] * Updating GBP from PR #57992 [ci skip] * Quick-Create-Antagonist tweaks (#57913) Gives admins control of how many antags they spawn, instead of assuming a maximum of (generally) 3. image * Automatic changelog generation for PR #57913 [ci skip] * Automatic changelog compile [ci skip] * Renames TRAIT_MONKEYLIKE to TRAIT_DISCOORDINATED_TOOL_USER and fixes an issu with jungle fever (#57897) Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com> * Automatic changelog generation for PR #57897 [ci skip] * Updating GBP from PR #57897 [ci skip] * Corrects span and a typo with emagged pAIs (#57981) * Automatic changelog generation for PR #57981 [ci skip] * Updating GBP from PR #57981 [ci skip] * Removes total_moles_specific, just use gaslists normally. I don't know how I missed this (#57973) * Refactors pellet_cloud/create_cassing_pellets to not sleep (#57974) Co-authored-by: MLGTASTICa <ak9bc01d@yahoo.com> * Automatic changelog generation for PR #57974 [ci skip] * Updating GBP from PR #57974 [ci skip] * Fix Tooltip documentation (#58013) * Remove SS_NO_TICK_CHECK (#57800) ## About The Pull Request This is a whopper, will need @MrStonedOne to review. In theory this flag shouldn't be needed and my own testing didn't find any issues, but I'd feel better with a lengthy test merge. ## Why It's Good For The Game Might make nightshift subsystem lag less, MC loop has less stuff to check. * Updating GBP from PR #57800 [ci skip] * Reorder the list of items in more outfits. (#57801) On my quest to make outfits easier to read and fix some small mistakes by applying a priority order. ID > uniform > suit > backpack > other clothing in alphabetic order > pockets > hands > others Moved the base/assistant plasmaman outfit from the middle of the standard file to the top of the plasmaman outfit file. Reorganized the plasmaman outfit order to have jobs within a department close to each other. Moved the Death Commando outfit into the ERT file together with a line that adds mindshields to CentCom outfits because I had to dig to find that a long time ago... Also fixes detective plasmaman spawning with a worse headset and plasmamen prisoners spawning with a different shoe. Like... how no one has seen that plasmaman spawn with the wrong headset? Do we have no plasmaman sec? Yes I know the answer... * Automatic changelog generation for PR #57801 [ci skip] * Updating GBP from PR #57801 [ci skip] * Fix sql changelog (#57972) Fixed bad SQL that I originally wrote in the changelog for 5.11, anyone trying to update their schema from < 5.11 up would notice this. * Test newest version of gbp-action (#57980) Read about it here: tgstation/gbp-action#28 TLDR: Less race conditions, and all logs are now pushed to a separate branch. The new location of gbp-balances.toml is in the gbp-balances branch. Will most likely be able to delete the one in master so people don't get confused. This required a workflow update, and so was not directly pushed to master. This currently uses my PR branch directly so that I can make changes for anything that doesn't work. When it is solid, I will push it to master and we will go back to gbp-actions@master, or some pinned version. * Fixes mech HUD's not being properly removed (#57964) Fixes mech hud's not being removed when leaving the odysseus or clarke * Automatic changelog generation for PR #57964 [ci skip] * Resprites the fork! (#57490) About The Pull Request This PR resprites the fork. image Why It's Good For The Game The old fork was really tall and black. Forks are really hard to sprite but i think this is an improvement. Changelog cl imageadd: The fork has a new sprite. /cl * Automatic changelog generation for PR #57490 [ci skip] * rpds can now interact with the unwrench upgrade (#57959) Adds the functionality to upgrade the RPD by 'slapping' the unwrench upgrade disk with the RPD itself It doesn't exactly revolutionize gameplay and at most allows engineering cyborg players to at least upgrade their RPD to unwrench saving them a headache and a module slot when doing their thing I suppose * Automatic changelog generation for PR #57959 [ci skip] * *begins beatboxing like the friday night funkin dad* pp pp ppkk pk pk pk pkpp pk pk ppk ppp p yeah * this made a whole area dissapear lole * Wtf TGU is done??? i think * my brain is so fucking large i am smart * Consider your unused variable SANITIZED *in a very low tone of voice* bitch * fIXES ME BEING DUMB Mirror bot fan VS TGU Enjoyers *insert that one funny video of the british guy all angry staring at the camera with the greyscale chad flexing his muscles to the right* * DEAD ATMOS WTF *dies of cringe* * POTATO WHY Lowers the disease chance for a bit this is just so we don't instantly die from disease * Does thingy Adds cameras to drone area, adds a light so freezer room feels less dark * light yeah * Gets the new fulp commits over here yeah * gets us updated with TG once more should have the commit that makes TGUI not lag you for so long :) * my life be like ooh aaahh oooh * ooh aaah oooh aah fulp update * e e eo a o eo e e e e e ao e o eo o o o o * m * when the linter is failing.. * Annotate L-ints * sickness for nothinggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg * m * sleep through self loaaaaaaaaaaaaaaaaaathing what remains of my emotionnnnnnnnnnnnnnnnn only serves to play this gameeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee * 'cause you're the only one who'd understand (The meaning of this!) Oh My God I try and I try and I try to make you listen to me I try to call you every day I'm rehearsing what to say when the truth comes out (Of my very own mouth) I've been working on a unified theory If I make it through tonight everybody's gonna hear me out 'Cause I'm the right one On my touch-tone, touch-tone telephone I'm the only one, hey! On your A.M., A.M. radio Don't hang up yet, I'm not done I'm an expert, I'm the one The one who was right all along Better to be laughed at than wrong I'm an expert in my field UFOlogy, yes, it's all real Ancient aliens, it's all true I'm an expert just like you And like you, I'm a genius before my time Disbelieving, that's the real crime Pretty soon they'll discover me in the Super-Sargasso Sea * why * i swear to god Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk> Co-authored-by: tgstation-server <tgstation-server@tgstation13.org> Co-authored-by: Changelogs <action@github.com> Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com> Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com> Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> Co-authored-by: MLGTASTICa <61350382+MLGTASTICa@users.noreply.github.com> Co-authored-by: MLGTASTICa <ak9bc01d@yahoo.com> Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com> Co-authored-by: TheVekter <TheVekter@users.noreply.github.com> Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com> Co-authored-by: Aleksej Komarov <stylemistake@gmail.com> Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com> Co-authored-by: Kylerace <kylerlumpkin1@gmail.com> Co-authored-by: AnturK <AnturK@users.noreply.github.com> Co-authored-by: Time-Green <timkoster1@hotmail.com> Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com> Co-authored-by: Rob Bailey <actioninja@gmail.com> Co-authored-by: actioninja <actioninja@criticalaction.net> Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: ArcaneDefence <51932756+ArcaneDefence@users.noreply.github.com> Co-authored-by: GuillaumePrata <55374212+GuillaumePrata@users.noreply.github.com> Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com> Co-authored-by: Horatio22 <69338705+Horatio22@users.noreply.github.com> Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com> Co-authored-by: NamelessFairy <40036527+NamelessFairy@users.noreply.github.com> Co-authored-by: Fox McCloud <Fox-McCloud@users.noreply.github.com> Co-authored-by: Cyprex <35031555+Cyprex@users.noreply.github.com> Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com> Co-authored-by: Emmanuel S <mrdoomboyo@gmail.com> Co-authored-by: cacogen <25089914+cacogen@users.noreply.github.com> Co-authored-by: Qustinnus <Floydje123@hotmail.com> Co-authored-by: EOBGames <58124831+EOBGames@users.noreply.github.com> Co-authored-by: Fikou <piotrbryla@onet.pl> Co-authored-by: Thalpy <33956696+Thalpy@users.noreply.github.com> Co-authored-by: Rohesie <rohesie@gmail.com> Co-authored-by: bloons3 <bloons3@users.noreply.github.com> Co-authored-by: dragomagol <66640614+dragomagol@users.noreply.github.com> Co-authored-by: Seth Scherer <supernovaa41@protonmail.com> Co-authored-by: Randomguy523 <55070076+Randomguy523@users.noreply.github.com> Co-authored-by: spookydonut <github@spooksoftware.com> Co-authored-by: Bobbahbrown <bobbahbrown@gmail.com> Co-authored-by: Krysonism <49783092+Krysonism@users.noreply.github.com> Co-authored-by: DuffCreeper <treyparn@yahoo.com.au> |
||
|
|
ae0959d936 |
adds xenomorph holdable flag (#55814)
adds a flag that lets something be held by xenos adds it to facehuggers makes the xeno "can i hold this item" check check for flag instead of facehuggers |
||
|
|
15c7de802a |
Refactor the procedural generation of lavaland and turf/closed/mineral (#54915)
This replaces lavaland's old diagonal tunnel gen which was really horrendously jammed into asteroid floor code (?????) with Cellular Automata which runs in rust (PR for that here: https://github.com/tgstation/rust-g/pull/57 ). The new code is a bit cleaner, but also looks better. VID: https://streamable.com/a45ke2 Things to do: - Make an icemoon version - Fix the roundstart atmos adjacency issues I asked AnturK if this was an acceptable PR for this month; he said it was okay as long as I didn't add new areas, which I don't plan to do. But if anyone thinks this PR breaks the spirit of the month I'll open it again in december. |
||
|
|
160175ee8b |
pass_flags handling refactor + rewrites a part of projectiles for the n-th time (#54924)
Yeah uhh this'll probably need testmerging even after it's done because yeah it's a bit big. If y'all want me to atomize this into two PRs (pass flags vs projectiles) tell me please. Pass flags would have to go in first though, in that case, as new projectile hit handling will rely on pass_flags_self. Pass flags: Pass flags handling now uses an atom variable named pass_flags_self. If any of these match a pass_flag on a thing trying to pass through, it's allowed through by default. This makes overriding CanAllowThrough unnecessary for the majority of things. I've however not removed overrides for very.. weird cases, like plastic flaps which uses a prob(60) for letting PASSGLASS things through for god knows why. LETPASSTHROW is now on pass_flags_self Projectiles: Not finalized yet, need to do something to make the system I have in mind have less unneeded overhead + snowflake Basically, for piercing/phasing/otherwise projectiles that go through things instead of hitting the first dense object, I have them use pass_flags flags for two new variables, projectile_phasing and projectile_piercing. Anything with pass_flags_self in the former gets phased through entirely. Anything in the latter gets hit, and the projectile then goes through. on_hit will also register a piercing hit vs a normal hit (so things like missiles can only explode on a normal hit or otherwise, instead of exploding multiple times. Not needed as missiles qdel(src) right now but it's nice to have for the future). I still need to decide what to do for hit handling proper, as Bump() is still preferred due to it not being as high-overhead as something like scanning on Moved(). I'm thinking I'll make Moved() only scan for cases where it needs to hit a non-dense object - a prone human the user clicked on, anything special like that. Don't know the exact specifics yet, which is why this is still WIP. Projectiles now use check_pierce() to determine if it goes through something and hits it, doesn't hit it, or doesn't go through something at all (should delete self after hitting). Will likely make an on_pierce proc to be called post-piercing something so you can have !fun! things like projectiles that go down in damage after piercing something. This will likely deprecate the process_hit proc, or at least make it less awful. scan_for_hit() is now used to attempt to hit something and will return whether the projectile got deleted or not. It will delete the projectile if the projectile does hit something and fails to pierce through it. scan_moved_turf() (WIP) will be used for handling moving onto a turf. permutated has been renamed to impacted. Ricocheting projectiles get it reset, allowing projectiles to pierce and potentially hit something again if it goes back around. A new unit test has been added checking for projectiles with movement type of PHASING. This is because PHASING completely causes projectiles to break down as projectiles mainly sense collisions through Bump. The small boost in performance from using PHASING instead of having all pass flags active/overriding check_pierce is in my opinion not worth the extra snowflake in scan_moved_turf() I'd have to do to deal with having to check for hits manually rather than Bump()ing things. Movement types UNSTOPPABLE renamed to PHASING to better describe what it is, going through and crossing everything but not actually bumping. Why It's Good For The Game Better pass flags handling allows for less proc overrides, bitflag checks are far less expensive in general. Fixes penetrating projectiles like sniper penetrators This system also allows for better handling of piercing projectiles (see above) without too much snowflake code, as you'd only need to modify on_pierce() if you needed to do special handling like dampening damage per target pierced, and otherwise you could just use the standardized system and just set pass flags to what's needed. If you really need a projectile that pierces almost everything, override check_pierce(), which is still going to be easier than what was done before (even with snowflake handling of UNSTOPPABLE flag process_hit() was extremely ugly, now we don't rely on movement types at all.) |
||
|
|
27d0e32b47 |
minor material_container args/vars refactor and Mk-honk shoes peeve. (#54863)
My original intention was just fixing an issue with the Mk-honk banana shoes but, considering I didn't want to add two new variables to a component with already lot of args and lengthy AddComponent() calls in term of text, I had to merge some TRUE/FALSE variable/args into the breakdown_flags bitfield (now named mat_container_flags) in the process. |
||
|
|
e461d7b777 | icons | ||
|
|
f91dd961aa |
Adds NO_ALERT flag to areas, refactors area alerts slightly (#53487)
Adds a NO_ALERTS flag for areas and adds it to most off-station area types. Up until now, whether or not an area should trigger alerts has been a snowflakey mix of ALWAYS_UNPOWERED and outdoors, with some smattering of other conditions thrown in. This unifies it all behind a single bitflag so it's easy to make sure an area does not send alerts to the station consoles. I also refactored alerts slightly so they make sense (state = 1 means not alerting? Seriously??), removed an unnecessary override of poweralm from some lavaland areas which probably doesn't do what somebody thought it does, and removes an old snowflaky override of power alarms in engineering which is a leftover from the singulo days. As an additional side effect, off-station fire alarms can now properly work locally (previously, the entire fire alarm did not work if it wasn't on the station. Now they work but just won't send alarms) |
||
|
|
2c20897f00 |
Readds the tesla, reworks it a bit (#53072)
* Makes tesla movement nicer, fixes some atmos concerns, changes how energy is handled, and readds the tesla * readds delam and desc * I fucked it * flags * holy fuck * Constricts the zaps that can generate power from a tesla coil * *kick? |
||
|
|
d4cdb49133 |
Mecha followup one (#53470)
fixes #53384 fixes #53327 fixes a bug where mechs could move too fast fixes cooldown being inconsistent makes strafe behavior better fixes lights being very small fixes #50639 fixes #47373 fixes #43605 Moved some code to the correct spots and did the varedit bitfield thing |
||
|
|
921d11bec8 | Refactor bitfields global, improve turret_flags debugging (#53239) | ||
|
|
e32c22489f |
Merge pull request #52895 from MrMelbert/blindmanwalking
Prevents blinded people from using camera consoles perfectly fine |
||
|
|
b0726e032b |
Icon smooth refactor (#52864)
bitflag list construct added: an associative list of bitflags for cheap and quick element comparison between two lists using the same system.
canSmoothWith list turned into a bitflag list.
smoothing_groups list added to substitute the type path list.
smoothing procs turned into atom procs, refactored and optimized a bit.
smooth directions redefined in order to fit in 8 bits for a future smoothing system
some variable names changed, foreseeing a second smoothing system
SMOOTH_OBJ flag added, for things that need to scan turfs for smoothing. The old locate() optimization has the risk of returning false negatives by finding a child and returning null while there might be one of the wanted type as well, as it doesn't match the type exactly.
SMOOTH_TRUE and SMOOTH_MORE condensed into SMOOTH_CORNERS. The old behavior can be replicated using smoothing groups without loss.
Does very minor code cleanup.
Processing-wise didn't find a noticeable difference. The system loses on init a bit by setting the bitflag_lists, and by scanning whole turf contents for object smoothing (increasing accuracy), and gains by making less checks per target to smooth, through the same bitflag_lists.
Memory-wise there should be a small improvement, given that on the old system we had 63512 canSmoothWith lists (a few typelists, most unique), and on this new system canSmoothWith + smoothing_groups are both bitflag_lists from the same pool, totaling 46 in number.
Could be tested a bit to see if I missed any icons not properly smoothing.
|
||
|
|
f21c7ae24f | i can't see anything | ||
|
|
b4fe4f717b |
Refactors area stuff (#52751)
-bitfielded a bunch of bools on /area, I left some untouched cus they get called a lot -Unused vars -Fixed a var pretending to be a fake bool -Probably more |
||
|
|
62676e72a8 |
Force LF line endings with gitattributes and convert repo (#52266)
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com> |
||
|
|
a773eebed6 | Indent moment | ||
|
|
f59207ec83 | Converts rad_flags to flags_1, holy shit why | ||
|
|
5c174800fb |
Grenades and projectiles can have shrapnel and embed, all carbons can suffer embeds, some bullets can ricochet, sizable refactor of embedding (#49634)
About The Pull Request
It annoyed me that we have a perfectly good frag grenade item, and a perfectly good shrapnel component, but no crossover episode between the two. This remedies that, and does a lot, lot more.
dreamseeker_2020-03-30_05-01-13.png
dreamseeker_2020-03-30_05-01-26.png
Big points:
Adds new component: pellet_cloud, which can be used by ammo casings, guns, and landmines to spray shrapnel and display aggregate hit messages ("You're hit by 6 buckshot pellets!" vs "You're hit by the buckshot pellet in the X" x6). All gun ammo that shoot multiple pellets now use this component on firing.
Adds stingbangs, premium less-lethal grenades that shoot off lots of stinger pellets, to cargo. Frag grenades are also reworked to have smaller booms, but shoot off lots of shrapnel shards. You can jump on top of these grenades to absorb a portion of the shrapnel to save those around you! There's an achievement for dying this way, called "Look Out, Sir!"
Projectiles can now embed items/shrapnel. Adds .38 DumDum ammo to cargo that does less damage and has negative armor pen, but can embed in people. This is the only ammo that currently embeds.
Bullets can now ricochet off walls, structures, and machinery (harder surfaces are more likely to ricochet). Only standard .38 and Match Grade .38/.357/L6 ammo can ricochet, with Match Grade being much better at ricocheting. You can buy Match Grade .38 from cargo and Match Grade L6 ammo from the nuke uplink, while Match .357 is admin only.
Armor now protects you from harmful embeds, taking the better of the bullet/bomb armor on the affected limb. Armor penetration can modify this of course, and many blunt embeds like stingbangs and DumDum bullets are significantly worse if you have even 1 armor.
Other misc fixes/changes
Refactored the embed element a bunch and fixed it creating new elements for every instance rather than expected bespoke behavior. There are new /obj/item helpers for modifying and adding embedding.
Fixes #49989: Spears can no longer embed in turfs cause their sprite is annoying to me, it's generally harder for most things to embed in turfs
Fixes #49741: New carbon helpers for removing embedded objects
Fixes #46416: Handles embedded objects getting qdel'd or moved while embedded
Renamed the old shrapnel component for RPG loot to MIRV to avoid confusion
Repathed frag grenades from under minibombs to under base grenades, and added explosion vars to base grenades
Why It's Good For The Game
Fixes a bunch of janky design with embeds, adds lots of new avenues for projectile and grenade variety, ricochets and collateral damage are fun!
Changelog
🆑 Ryll/Shaps
add: Adds stingbangs to cargo (and one in the sec vendor premium), premium less-lethal grenades that shoot off a giant swarm of stingball pellets to help incapacitate swarms of people in tight quarters. You can jump on top of a live one to be a hero and absorb a bunch of shrapnel, same with frag grenades. There's even an achievement for dying to a grenade you jumped on!
add: Projectiles can now embed in people! Or at least grenade shrapnel and the new .38 DumDum ammo, now available in cargo, can. DumDum rounds excel against unarmored targets, but are pricey and do poorly against armored targets.
add: Bullets can now ricochet! Or at least, standard .38 and the new .38/L6 Match Grade ammo can. Match Grade ammo is finely tuned to ricochet easier and seek targets off bounces better, and can be purchased from cargo (for the .38) or nuke ops uplink (for the L6), but standard .38 ammo has a chance to ricochet as well.
tweak: Frag grenades now have smaller explosions but shoot off a bunch of devastating shrapnel, excellent for soft targets!
tweak: Shotguns and other multi-pellet guns now print aggregate messages, so you'll get one "You've been hit by 6 buckshot pellets!" rather than 6 "You've been hit by the buckshot pellet in the X!" messages. Bye bye lag!
balance: Armor can now protect against embedding weapons, taking the best of either the bullet or bomb armor for the limb in question away from the embed chance. Some weapons are better at piercing armor than others!
/🆑
|
||
|
|
637d251e26 | icon fixes | ||
|
|
df9d859da8 |
Fixes tesla bugs, makes code better (#49260)
* Cleans shit up, adds some upper limits on zap count, makes explosions less commen. Need to fix apc issue before I test how it plays * Mood, buffs and nerfs tesla * Cherry-Picking * eyyo * back to basics * aight * broooooooooooooooooo * adds else * range * fixes shit * Sure * Cleans shit up * Fixes prob issue * Gee I like this spooky guy * I swear to god if prob picks just makes a list I am gonna blow a gasket |
||
|
|
7bef84f009 |
Mass-replacement of stat to machine_stat (#48758)
Living and machine stat vars are pretty different, one uses flags and other number-defines. This should make some other mass-replacements and searches a bit easier. |
||
|
|
f4f8a686df |
Makes grounding rods consistent, changes the supermatters bolts a great deal. (#48472)
* Goof I will find you and I will berate you holy hell Calm and peaceful ahhhhh I swear goofs pc failing was the biggest tragedy in gaming Fixes some flags More touchups Now to squash Goofs PC failing was the biggest tragady in GAMING * Fixing some misspellings before the bee gets me * GOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF * Full vehicle support * Changes some flags around, "fixes" some bugs, makes being shocked less insane * Makes spliting more reasonable, unfucks some shitty tesla code I copypasta'd into the sm, godspeed shitcode, none noticed you. * Removes my tesla_ignore_1 fix, another pr is up that should solve things, so we're just leaving it in for now, gonna have to deal with merge conflicts when it gets merged, but that won't be too bad * tfw * Nothing to see here folks * I'm a boomer |
||
|
|
0432f132fb | Fixes tesla immunity being lost if you have reactive armor and refund the lighting bolt spell / vice versa | ||
|
|
1a0428f031 |
Fixes cult space bases (again) (#47041)
* Fixes cult space bases (again) * h * Fixes duplicate definition * Lets cultists draw runes at the Lavaland cult altar ruin * Adds CULT_PERMITTED_1 flag to check if cultists can summon/buld structures here * h |
||
|
|
fd214c52a4 |
Turns mob biotypes into flags instead of lists. (#45905)
About The Pull Request title. Also renames INORGANIC to MINERAL and removes it from simplemobs (never used for simplemobs) where it doesn't fit. Doesn't make sense to have both ORGANIC and INORGANIC as a flag. Why It's Good For The Game There's no reason to use a list for this. Changelog cl code: Changed mob biotypes from lists to flags. /cl |
||
|
|
cded323274 |
Adds Hat Throwing (#45355)
* adds hat throwing on people and borgs * clothing flags, hats can knock off non-items, borg hat blacklist check * prevents hats with items in them from being able to land on heads * removes extra equip, hats can go on the hatless again, tinfoil fix * if * bit flag |
||
|
|
66af98e75a |
blocks shove knockdown is now a clothing flag. (#45107)
* blocks shove knockdown is now a clothing flag. * comment only commit |
||
|
|
534a9140aa | merge | ||
|
|
53d4c3f25a |
Refactor mob can_see_reagents (#44934)
Turns the scan_reagents var into a clothing flag. |
||
|
|
3a37d0322c | merge | ||
|
|
e82707a8cc |
Examine tooltips now work on items put into storage (#44311)
* Examine tooltips now work in items put into storage * IN_STORAGE define * IN_STORAGE bitfield and proper parenthesis |
||
|
|
2d74a86353 |
[READY] Cleans up saycode by removing random hook stubs and using a signal where relevant (#44320)
About The Pull Request This PR removes speech message and span hooks from dna, mutations, pierrot throat disease, species, tongues, masks, hats, held items, brain traumas and a carbon proc overload handling tonguelessness. Tonguelessness is now handled by tongue removal registering for the speech signal and the hook being deregistered by having a tongue put in. Also cleans up some /atom/movable/proc/get_spans() overloads that called the empty parent or overloaded the parent to do the exact same thing as the parent proc did. Also cleans up calls to radio.talk_into() where the caller would often, as a result of copypasta, provide the proc with fresh copies of the proc's default values for proc args, and makes say_quote() better by giving it a default spans value so that none of the callers have to provide the same default one. Why It's Good For The Game Changelog cl Naksu code: Cleaned up saycode /cl * start with this * oh man this looks so good * hats are dead * /obj/item/proc/speechModification is dead * brain traumas and get_held_item_speechspans() are dead * these should be static * unfortunately we still need this * /mob/living/carbon/treat_message(message) is kill * clean up get_spans() * dunk get_spans, modifies_speech for brain traumas, some superfluous static stuff * move stuff around * return values |
||
|
|
4b2fc4cc05 | Removes Hygiene | ||
|
|
9b57639f1c | Add MOBILITY_PULL to the bitfields list (#43318) | ||
|
|
881e8c1ab9 |
Refactors NODROP flag into TRAIT_NODROP (#42109)
* Refactors NODROP flag into TRAIT_NODROP 🆑 coiax fix: Anti-drop implants can no longer be used to drop objects that they were not responsible for sticking to a person's hand. fix: Backfiring with a Barnyard spellbook will now play a spooky horse sound. refactor: Refactors the way that "NODROP" items work to a new system, there should be no change in functionality. /🆑 Various items in the codebase were doing weird hoop jumps in order to preserve the nodrop flag's state when it also wanted to change it, so I moved it to a trait system. I may have gone overboard with the type of unique trait sources, but those can be changed later. My long term plan is make a general "CURSED" nodrop origin, which means you can unlock cursed items by being hit with a bolt of door opening or something. But that's for another PR, this has no functionality changes, apart from some slightly modified descriptions on cursed masks. - Removed a bunch of redundant voice changing code for all the voice changing animal masks, used two new clothing flags for this purpose. - Also refactored a bit the animal masks, making new cursed subtypes that play the sound when created. * Drop location |
||
|
|
7456587ed5 |
UNSTOPPABLE flag is now checked every time something tries to pass something instead of just once in the Move() proc (#41994)
UNSTOPPABLE flag is now checked every time something tries to pass something instead of just once in the Move() proc #41994 |
||
|
|
0de28b726a |
[READY]Humans now have hygiene (DOES NOT AFFECT MOOD GO AWAY MOODPOSTERS) (#41986)
cl Floyd / Qustinnus tweak: You now have to be naked to get the nice shower moodlet, if you shower with clothes you get a bad moodie add: Hygiene, you slowly become dirty over time, the more covered in blood you are the faster you will lose hygiene. When you are too dirty you will have a stink overlay. (Hygiene doesn't affect mood currently) It also spawns miasma slowly if you smell like shit. add: adds NEET and neat traits. NEET's get 20 bucks social welfare extra and like being unhygienic, while neat people dislike being unhygienic and like being hygienic /cl This doesn't affect mood so plssss dont strawman in this PR about how I'm forcing you to shower or die or whatever This PR is mostly visual and will allow for people to judge others for literaly being smelly as hell. also NEET and neat traits which interact with being smelly. (neat likes hygiene, dislikes lack of it. NEETs like lack of hygiene and get some social welfare (20 bucks)) |