* Fixes runtime when putting a mmi into a borg (#69548)
Fixes runtime when putting a brain into a borg
* Fixes runtime when putting a mmi into a borg
Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
* Improves AI Law Module Examining (#69475)
* Improves AI Law Module Examining
Hey there,
The old version of checking to see what AI laws were on a board were just ugly. They were in a proc completely separate from the actual Examine, and the to_chat utilization it used meant that ghosts couldn't see it (since they didn't count as mob/user i believe). So, let's use examine blocks, make the implementation cleaner in the examine (and actually make it ordered too!).
* Addresses Review + File Organization
Cleans up comments, compresses lines of code.
I also moved the handle_unique_ai() proc below all the examine/attack/display_laws procs to give it some sense of grouping.
* i accidentally deleted the whole line
* Update code/game/objects/items/AI_modules/_AI_modules.dm
real
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Improves AI Law Module Examining
Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Add logging to Protocol CRAB-17 (#69522)
This adds admin and game logging for the CRAB-17 phone.
Requested by @ TheVekter
Why It's Good For The Game
Helps admins and players see when the event happens and by who.
* Add logging to Protocol CRAB-17
Co-authored-by: Tim <timothymtorres@gmail.com>
* Food Expansion 4! The great salad update and more (#69355)
About The Pull Request
This is my fourth food expansion PR, adding and changing quite a few things.
This PR will:
Add 7 different types of salads
Add a new ingredient supply beacon box called 'Salads', which includes ingredients used for the salad recipes
Give cherry jelly its own container, and allow jelly to be ordered from the produce console
Make cherry jelly actually nourish you when consumed
Add paçoca, a Brazilian peanut candy requested by @ GuillaumePrata
Add mashed potatoes
Add shepherds pie
Add Cullen skink
* Food Expansion 4! The great salad update and more
Co-authored-by: MidoriWroth <kodyman@att.net>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Stop stacks merging when in a machine and not being used as a construction part, fixes#68456 (#69295)
* Stop stacks merging when in a machine and not being used as a construction part, fixes#68456
Co-authored-by: RandomGamer123 <31096837+RandomGamer123@users.noreply.github.com>
* Fix chaplain's not being able to pick their bible cover while illiterate or blind (#69249)
* Fix chaplain's bible cover menu not working while blind/illiterate.
* Fix chaplain's not being able to pick their bible cover while illiterate or blind
Co-authored-by: Tim <timothymtorres@gmail.com>
* Ports rideable pigs from Aether (With changes to make them basic mobs) (#69248)
Adds rideable pigs from aether(With changes to make them basic mobs)
Pigs now drop pork, and you can cook it into pork chops.
* Ports rideable pigs from Aether (With changes to make them basic mobs)
Co-authored-by: LukasBeedellCodestuff <92578337+LukasBeedellCodestuff@users.noreply.github.com>
* Space Dragon Antag Datum Refactor Take 2 (#68988)
* Space Dragon Antag Datum Refactor Take 2
Space Dragon's antag datum and the mob has been separated, so it is now possible to have non-dragon space dragons, with customizable spawned mobs and factions.
* Space Dragon Antag Datum Refactor Take 2
Co-authored-by: IndieanaJones <47086570+IndieanaJones@users.noreply.github.com>
* Vending machines now support categories (and premium/contraband is moved there), adds it to the Clothesmate (#69076)
* Initial setup and data
* Work on UI
* Final UI
* Remove TODO
* Section for categories
* Vending machines now support categories (and premium/contraband is moved there), adds it to the Clothesmate
* Adds the modular version of product_categories and implements it for the Clothesmate!
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Spyglass sanity check on dropped / equipped (#69283)
you can put things on / take things off of people who don't have clients.
* Spyglass sanity check on dropped / equipped
Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
* reset TG human_helpers, modularly overwrite proc's examines (and better)
* better DNR trait itself (wish this could be more modular...)
* ghosts that DNR ACTUALLY go DNR
* might as well make sure it can be undone cleanly
* idk if med_hud_set_status will actually change it but its MEANT to
* removes excess info (it's in the PR body itself now)
* Splits up 'Gross' food from 'Gore' and reshuffles taste preferences accordingly (#68899)
* Splits up 'gross' food from 'carrion'
* Adds a couple of missed burgers.
Moths dislike Carrion rather than it being poison to them.
* BEES is now BUGS
* It's always safe and a good idea to use find/replace
* Splits up 'Gross' food from 'Gore' and reshuffles taste preferences accordingly
* Splits up 'Gross' food from 'Gore' and reshuffles taste preferences accordingly
Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
* Fixes "My human left arm itches" message (#69213)
* Fixes "My Human Left arm itches"
* lets get this too
* Fixes "My human left arm itches" message
Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
* Fax Machine (#69083)
* Adds the Fax machine, which allows you to send and receive faxes from around the station.
Co-authored-by: twilightwanderer <twilightwanderer@ users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>
* Fax Machine
* our maps
Co-authored-by: twilightwanderer <88540658+twilightwanderer@users.noreply.github.com>
Co-authored-by: twilightwanderer <twilightwanderer@ users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>
Co-authored-by: John Doe <gamingskeleton3@gmail.com>
* GAGS most radio encryption keys (#69104)
* the radio star
* I think it's funny that I've had the same contrast problem on all of my GAGS PRS
* oops forgot to make the RD's key unique
* fine
* what if I said please
* swaps translation key to be in line with the other new ones
* GAGS most radio encryption keys
* Fixes our modular encryption keys as well!
Co-authored-by: Wallem <66052067+Wallemations@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
* Fixes bibbles holding normal sized items, cleans up an unused proc (#69163)
* Fixes bibbles holding normal sized items, cleans up an unused proc
Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
* Ranged analyzer qol (#68703)
* Ranged analyzers can now read up to 15 tiles away, and will scan the floor you click on, even if you don't directly click on the floor.
* Ranged analyzer qol
Co-authored-by: FinancialGoose <92416224+TheBoondock@users.noreply.github.com>
* Fix tape recorder printing out transcripts phat enough to crash your game. (#69121)
About The Pull Request
Tape recorders can hold 10 minutes of say logs and then transcribe them.
People say a lot of things in 10 minutes.
These transcriptions can be quite large.
These transcriptions have a lot of spans, which get sanitised away to nothingness JS-side. This causes a lot of client-side JS processing on paper for transcripts that go super saiyan beyond the character limit.
This can hang peoples' games up when they're running SS13 on their Samsung SmartFridge.
This PR paginates printed transcripts.
* Fix tape recorder printing out transcripts phat enough to crash your game.
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
* Removes ComponentInitialize()
* Fixes a leftover merge conflict marker
* Fixes the oversight that came from the upstream merge skew
* Fixes all of the instances where we used ComponentInitialize() when we shouldn't've been
* Fixes CI being broken because of the HEV suits
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Replaces the mood component with a mood datum
* Fixes merge conflicts and updates all of our mood events to use the new mood datums
Co-authored-by: Seth Scherer <supernovaa41@gmx.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Fixes 118(give or take) cases of mapload not being passed to initilaize (#69107)
fixes 114 cases of mapload not being passed to initilaize
* Fixes 118(give or take) cases of mapload not being passed to initilaize
* Fixes a lot (give or take) cases of mapload not being passed to initilaize
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
* [GBP No Update] Perish, individual logging runtime (#69024)
missed 2 or 3(lol it was more when I look back at the files), LOG_GAME tags on the log_message line, and did some cleaning up since i was looking through every log_message again
Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com>
Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com>
* [GBP No Update] Perish, individual logging runtime
Co-authored-by: Mooshimi <85910816+Mooshimi@users.noreply.github.com>
Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com>
* Changes sprites for the two bat sub-variants (#68882)
Updates the sprite for the metal & homerun bat
* Changes sprites for the two bat sub-variants
Co-authored-by: Wallem <66052067+Wallemations@users.noreply.github.com>
* Prevents NAN amounts infecting the chemistry reagent container system (#69017)
* Don't allow NAN into the reagent holders, and better reporting on add reagent and remove reagent
* Replace admin message with stack_trace and return and improve math defines to check for finite numbers
* Refactor things to use these new defines, attempts to fix unit tests by filtering out <= 0 amounts first
Co-authored-by: Aleksej Komarov <stylemistake@ gmail.com>
* Prevents NAN amounts infecting the chemistry reagent container system
Co-authored-by: oranges <email@oranges.net.nz>
Co-authored-by: Aleksej Komarov <stylemistake@ gmail.com>
* Removes the "proximity crew pinpointer" (the ones parameds spawn with), paramedic PDAs start with the lifeline app instead (#68993)
* Parameds start with the Lifeline tablet app instead of a proximity pinpointer, with a Calomel bottle replacing their now empty medical belt slot.
* Removes the "proximity crew pinpointer" (the ones parameds spawn with), paramedic PDAs start with the lifeline app instead
* wew
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* specific_parts = TRUE machines examine upgrade (#68849)
About The Pull Request
Closes: #68805
Bluespace Artillery Bore
DNA Vault
Mining Equipment Vendor (A board with specific_parts = FALSE for comparison)
Why It's Good For The Game
Machines that require a specific minimum level of parts should probably have it visible.
Changelog
cl
qol: Machines that require a minimum level of part now have it visible.
/cl
* specific_parts = TRUE machines examine upgrade
Co-authored-by: Mooshimi <85910816+Mooshimi@users.noreply.github.com>
* Makes the universal recorder display the correct amount of silence on playback. (#68681)
About The Pull Request
Currently, when playing recorded audio on the universal recorder, whenever it skips over silence it displays 10 times the actual length of the silence. This is because the var responsible, "playsleepseconds", is actually a value in deciseconds. This PR simply converts from deciseconds to seconds when printing the "skipping silence" message, without touching the underlying functionality.
01
Before: incorrect time value reported
02
After: correct time value reported
Why It's Good For The Game
This bug makes the universal recorder's playback slightly confusing, as it reports incredibly long silences where there were none. Having the bug fixed makes this feature work properly.
Changelog
cl
fix: Universal recorder now properly reports length of silence in seconds instead of deciseconds
/cl
* Makes the universal recorder display the correct amount of silence on playback.
Co-authored-by: lizardqueenlexi <105025397+lizardqueenlexi@users.noreply.github.com>
* Adds the Mothroach (#68763)
About The Pull Request
Yup. That's pretty much it. This PR adds the Mothroach to the game, described as "An ancient ancestor of the moth that surprisingly looks like the crossbreed of a moth and a cockroach."
Do you love the Mothroach? Then you can cuddle with it and pat it, as well as place it on your head for extra cuteness.
What if you hate it, though? You can always kill and butcher Mothroaches in order to mass produce moth plushes for your own profit... How fun!
Either way, you win!
The Mothroach can be picked up and has a special on-head sprite (which looks really cute). It is able to vent-crawl and you may get one by randomly summoning a friendly mob through the gold slime extracts, or by ordering one through the Cargo Requests. After butchered, you may use its hide, a heart, and some cloth to craft a moth plushie, the most devilish of Devil's designs.
Full Preview of all the Sprites (NEW): https://www.youtube.com/watch?v=pdg8FTNEYjI
Preview of some of the Sprites (OLD): https://www.youtube.com/watch?v=9A-8hGCiW0s
In-hand, on-head, and grounded Mothroach sprite credits go to ValuedEmployee.
I did the Mothroach hide sprite though!
Why It's Good For The Game
The Mothroach is incredibly cute and a neat, fresh, new piece of content. Although it could use some future repurposing, right now it's simply a cute exotic pet with a few interactions.
These cute sprites are just too good to go to waste...
I keep seeing people complain about the lack of new content. Well, here's something niche that won't break the whole balance of the game and that will be cute. I seriously cannot see a motive not to add this to the game. Just because it isn't a powergaming tool or something that is seen every shift, that doesn't mean that it won't have a positive influence on the game. As I have stated, right now the Mothroaches are underperforming in terms of interactions and ways of getting them, but adding them is the first step to later improve them.
Changelog
cl
add: The Mothroach, your new local exotic pet
add: Mothroach Hide and Mothroach Meat
add: New crafting recipe for the Moth Plush: 1 Mothroach Hide; 1 heart; 3 cloth
fix: Fixes dead mobs on-head not having sprites
/cl
* Adds the Mothroach
Co-authored-by: Justice <42555530+Justice12354@users.noreply.github.com>
* Fixes temporary_pollution_emission runtime from null turfs
* Space can no longer have smoke on it!
* Updates many pollution procs to use snake_case
* Converts more pollution procs to snake_case