* Adds The Sturdy Shako (HoS Hat) (#74277)
## About The Pull Request
Adds a new craftable HoS shako, made from the standard peaked cap and
some plasteel and gold.

Moves the HoS cap into a subtype `/obj/item/clothing/head/hats/hos/cap`
to avoid catching the beret in the crafting recipe, the base type
`/obj/item/clothing/head/hats/hos` is now a generic subtype which should
never exist.
(Yes there's a TF2 reference included with the hat)
## Why It's Good For The Game
Adds an additional level of style for an HoS willing to put a little
effort into gathering the required materials. As it is crafted as a
one-to-one trade with another headgear there is no additional spare
headgear introduced.
## Changelog
🆑
add: The Nanotrasen Costuming Department has released specifications for
how to convert the Head of Security's cap into a shako.
/🆑
---------
Co-authored-by: Jacquerel <hnevard@ gmail.com>
Co-authored-by: Fikou <23585223+Fikou@ users.noreply.github.com>
* Adds The Sturdy Shako (HoS Hat)
---------
Co-authored-by: Thunder12345 <Thunder12345@users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@ gmail.com>
Co-authored-by: Fikou <23585223+Fikou@ users.noreply.github.com>
* Fixes syndicate ghost roles not spawning with codespeak language
* Fixes related NRI issues as well while we're at it
* Fixes a couple issue and adds the new naming scheme
* Phonetic alphabet numbers, fixes trailing space in formatting
* change to NATO numbers rather than phonetic
* final quality sweep
* moved this into the proper place
* Removes the no longer in use 'rank' var
* fixes a runtime
* Update modular_skyrat/master_files/code/modules/mob_spawn/mob_spawn.dm
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
* Fixes a mistake
* refactor outfit paths
* Doc
* Fixes ashwalkers sometimes spawning without language
* Removes the need for post_transfer_prefs for languages and fixes language prefs not being applied correctly due to a bug
Fixes another bug - the innate language (common) was always being applied when a new mob was spawned on the station, but interestingly it works fine for ghost roles.
My solution to ensure that things are always set up correctly is to use the proc 'adjust_language_to_prefs' to do just that, and call it at the highest level after a mob spawns.
This fixes the bug that was making it so that even if you deselected common from language prefs you'd still get it no matter what. Which honestly I am still fuzzy on the precise cause of because of how much coupling there is between mind code, language holders, and spawning new mobs. The logic of this code is absolutely mental and rather than try to weave things into functions it seems best to just do this instead. Less prone to breakage that way.
* Update modular_skyrat/master_files/code/modules/client/preferences/middleware/languages.dm
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
* Suggestions
* A more fitting description for this var
* Modifies language perk tooltips to better fit the codebase, refactors do_not_sanitize into a whitelist instead that can be configured for species
The Ashwalker tooltip inaccurately listed common as a language they were able to speak. Also slightly changed the wording of the rest of the tooltips to reflect the fact it is possible to disable a species' native tongue via prefs.
Refactored the 'do_not_sanitize' var to use a whitelist instead, allowing for more reliable sanitizing and also more configuration for new species to have such features.
* rephrasing
---------
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
Buff scythes, goats, and plantbgone vs PLANT biotypes (#72889)
This buffs scythes, goats, and plantbgone vs PLANT biotypes:
- Scythes now deal x1.5 damage to venus flytraps (3 hits to kill)
- Scythes now target the flower bud vines
- Goats now target flower bud vines and deal 15 damage to PLANT biotypes
- Goats have a eating sound whenever they bite PLANT biotypes
- Plantbgone now does 2 dmg per unit to PLANT biotypes (10 dmg per
spray)
- Plantbgone now has a 75% chance to remove weeds and deals large damage
to flower buds
- Weed control crates now come with a pair of leather gloves
- Golems are immune to thorn effects
- Any kind of thick glove material will prevent thorn effects when
attacking
- Flower buds will now take x4 damage from fire and sharp weapons
(unless they have fire trait)
- Regular scythes are now a sharp object
Also this fixes a few runtimes with spacevines and nulls. The bane
element now accepts `mob_biotypes` bitflags as an argument.
Before my changes:
- Plant-b-gone was doing 0.4 dmg per unit to PLANT biotypes (2 dmg per
spray)
- Scythes took 5 hits to kill venus flytraps
- Goats only affected podpeople
- Flower bud vines were being ignored by weed killing code
- Plantbgone only had a 50% chance to remove weeds (and this was very
inconsistent due to RNG)
- Botanical gloves and thick gloves didn't protect from thorns
- Golems were getting pierced by thorns despite having pierce immunity
- Flower buds were not taking the x4 damage like they should have been
- Regular scythes were not a sharp object, but other scythes
(chaplain's, megafauna loot) were sharp
This makes the weed killer crate more effective since people were
complaining about it being worthless vs vines and flower buds. These
changes give people more options to respond to threats vs plants.
🆑
add: Add a pair of leather gloves to weed control crate
balance: Mobs with the PLANT biotypes (venus flytraps, pod people,
killer tomatoes) are now much weaker vs scythes, goats, and plantbgone.
balance: Plantbgone is now more effective at destroying weeds.
balance: Regular scythes are now a sharp object
fix: Fixed scythes, goats, and plantbgone not affecting flower bud
vines.
fix: Thick and botanical gloves not protecting from thorns
fix: Golems not having pierce immunity from thorns
fix: Runtime where vines tried to spread into null turf
fix: Runtime where null vines that were destroyed were trying to spread
to nearby turfs
soundadd: Add eat food sound when goats eat plants
code: Improved goat targeting code
code: The bane element now accepts `mob_biotypes` bitflags as an
argument.
/🆑
Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* Refactors memories to be less painful to add and apply, moves memory detail / text to memory subtypes. Adds some new memories to demonstrate. (#72110)
So, a huge issue with memories and - what I personally believe is the
reason why not many have been added since their inception is - they're
very annoying to add!
Normally, adding subtypes of stuff like traumas or hallucinations are as
easy as doing just that, adding a subtype.
But memories used this factory argument passing method combined with
holding all their strings in a JSON file which made it just frustrating
to add, debug, or just mess with.
It also made it much harder to organize new memories keep it clean for
stuff like downstreams.
So I refactored it. Memories are now handled on a subtype by subtype
basis, instead of all memories being a `/datum/memory`.
Any variety of arguments can be passed into memories like addcomponent
(KWARGS) so each subtype can have their own `new` parameters.
This makes it much much easier to add a new memory. All you need to do
is make your subtype and add it somewhere. Don't need to mess with jsons
or defines or anything.
To demonstrate this, I added a few memories. Some existing memories had
their story values tweak to compensate.
Makes it way simpler to add new memories. Maybe we'll get some more fun
ones now?
🆑 Melbert
add: Roundstart captains will now memorize the code to the spare ID
safe.
add: Traitors will now memorize the location and code to their uplink.
add: Heads of staff winning a revolution will now get a memory of their
success.
add: Heads of staff and head revolutionaries who lose their respective
sides of the revolution also get a memory of their failure.
add: Completing a ritual of knowledge as a heretic grants you a quality
memory.
add: Successfully defusing a bomb now grants you a cool memory. Failing
it will also grant you a memory, though you will likely not be alive to
see it.
add: Planting bombs now increase their memory quality depending on how
cool the bomb is.
refactor: Memories have been refactored to be much easier to add.
/🆑
* Modular!
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Funce <funce.973@gmail.com>
Reorganize the outfits under 'mob_spawn' (#72345)
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->
I got home, sat on my computer ready to work on an Goliath Infused
hermit idea I had, instead, I found more outfits that slipped through
the cracks and are not reorganized properly so I'm doing this again!
<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->
Code improvement readability something
<!-- Argue for the merits of your changes and how they benefit the game,
especially if they are controversial and/or far reaching. If you can't
actually explain WHY what you are doing will improve the game, then it
probably isn't good for the game in the first place. -->
<!-- If your PR modifies aspects of the game that can be concretely
observed by players or admins you should add a changelog. If your change
does NOT meet this description, remove this section. Be sure to properly
mark your PRs to prevent unnecessary GBP loss. You can read up on GBP
and it's effects on PRs in the tgstation guides for contributors. Please
note that maintainers freely reserve the right to remove and add tags
should they deem it appropriate. You can attempt to finagle the system
all you want, but it's best to shoot for clear communication right off
the bat. -->
<!-- Both 🆑's are required for the changelog to work! You can put
your name to the right of the first 🆑 if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->
Co-authored-by: GuillaumePrata <55374212+GuillaumePrata@users.noreply.github.com>
* Quirks are passed an incoming client when applied, allowing quirks to read preferences in `add` and `add_unique`. Renders visual quirks on the preference menu dummy.
* fixes quirk order to match upstream
* Modular quirk updates
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
* Fix allow_spawn check for Ashwalkers and Battlecruiser crew (#71480)
## About The Pull Request
Currently, if you fail the allow_spawn test for Ashwalkers or
Battlecruiser Crew you will get the deny message even if the check was
silent. Meaning every time you open the spawners menu you get "You have
exhausted your usefulness to the Necropolis." or "You have already used
up your chance to roll as Battlecruiser." All the other allow_spawn
checks have a `!silent` check before sending the message so that they
only show this message if the player actually clicks the spawner.
Also for some reason the ashwalker message is bold and it shouldn't be.
## Why It's Good For The Game
Consistency is good, as is not giving the player unnecessary chat
messages.
## Changelog
🆑 VexingRaven
fix: Ashwalker Eggs and Battlecruiser spawners no longer give you a
warning every time you open the spawn menu if you've already spawned as
that role once.
spellcheck: Ashwalker Egg warning message for having already spawned
once is no longer bolded for no reason.
/🆑
* Fix allow_spawn check for Ashwalkers and Battlecruiser crew
Co-authored-by: VexingRaven <msgerbs@users.noreply.github.com>
* Removes ghost check for battlecruiser objective and fixes players being able to roll it multiple times in a row (#70194)
Removes the ghost check for the battlecruiser objective
Fixes the same player being able to reroll battlecruiser
* Removes ghost check for battlecruiser objective and fixes players being able to roll it multiple times in a row
Co-authored-by: Salex08 <33989683+Salex08@users.noreply.github.com>
* Refactors team antagonists and roundend report handling (#69585)
* Refactors team antagonists and roundend report handling
Refactors teams and subtypes
* Makes use of ``as anything`` and ``\improper``
* Removes many single letter variables
* Moves team code to the team file
* Makes team objectives only allow objectives for SpacemanDMM
* Makes members and objectives clear when a team is deleted
* Generalizes team's add_objective
* Checks for show_roundend_report in roundend
* Replaces ``get_team == src`` with a simple mind check
* Makes Bloodbrothers fit using parent's endround report.
* Removes the unused procs ``is_solo`` and ``antag_listing_footer``
* Makes replaces ``get_team_antag`` ``specific`` with ``include_subtypes`` to be consistent with Antag helpers (and because I thought it looked better that way)
* Refactors team antagonists and roundend report handling
* improper borers
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
* The GAGening: Clothesmate edition
* ThisShouldWork
* hgnbhg
* would probably help to have the right .dmi
* fixed?
* Fuck you
Co-authored-by: Twaticus <46540570+Twaticus@users.noreply.github.com>
* [READY] Venus human trap fix 3.0: Allow ghosts to possess them even when obscured, use better spawning system
* Fixes the merge conflict!
* Fixes ghost role spawners not being covered by the ghost role spawner ban
Co-authored-by: RandomGamer123 <31096837+RandomGamer123@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Nukies Rework Part....2.1? Kinda?: Gives Battlecruiser operatives the Ansem pistol, as well as some internals in their currently empty bag. (#68419)
* Gives Battlecruiser operatives the Ansem pistol, as well as populate their bags with some internals.
* Box variable
* Nukies Rework Part....2.1? Kinda?: Gives Battlecruiser operatives the Ansem pistol, as well as some internals in their currently empty bag.
Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
* Revisiting The Goliath: Or, that time I dripped out the SBC Starfury just because (#68126)
Drips the SHIT out of the SBC Starfury while not completely overhauling it. Touches everything NOT in engineering or southward (because I love how scuffed that part is and refuse to touch it on principle) - Also converts one map varedit into a real boy subtype, and moves tiny fans to their own file.
Mandatory disclosure on the gameplay changes:
Fighters 1 and 3 are now NOT in the hangar, and are now attached to the formerly unused gunnery rooms.
Cryo now works. Yeah. I know.
You can actually open the anesthetic closet now.
Everyone now shares three spawners. This doesn't reduce the amount of people who can play when this rolls, as I've adjusted var/uses in accordance: it just reduces clutter.
A few of the horizontal double airlocks have been compacted into glass_large airlocks.
The bar windows now actually have grilles like they were meant to.
Four turbines have shown up. They aren't functional*, they just look like gunnery and conveniently fit in the spots. I'm sure this is space OSHA compliant.
The map is ever so slightly smaller, vertically. This should distance us from an edge case where somehow all space levels are too cluttered for this to spawn properly, for the time being.
*Technically there's nothing stopping you from using them besides the amount of time it'd take for the operatives to kick your ass
This map was originally designed wayyy back before we even had the computer sprites we have now, (#27760 if you want to see SOUL) and it shows. While it will never have it's SM again, we can at least make the thing much nicer to look at.
* Revisiting The Goliath: Or, that time I dripped out the SBC Starfury just because
Co-authored-by: BluBerry016 <50649185+unit0016@users.noreply.github.com>
* An Exploration Into Lame Jobs - Syndicate Listening Post Remap (#67330)
* An Exploration Into Lame Jobs - Syndicate Listening Post Remap
Hey there,
Have you ever been bored at your job? A job where you can't scheme something up to get you up to date? Stranded at your job? Alone at your job? Has the job ever asked you a lot of question? Like I am right now? Should I stop?
Anyways, I decided to think about it, and I remapped the Syndicate's Space Listening Post. How nice!
* An Exploration Into Lame Jobs - Syndicate Listening Post Remap
Co-authored-by: san7890 <the@san7890.com>
* [MDB IGNORE] More /area/ typepath organization and cleanup (#67107)
This further continues what I did in b4fb8f3ed1 (but instead of just stations, its now every (most) applicable area in the game
* [MDB IGNORE] More /area/ typepath organization and cleanup
* wew
* e
* Update CentCom_skyrat.dmm
* wew
* ews
Co-authored-by: Jolly <70232195+Jolly-66@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* [NO GBP] Resolves Golems not being allowed in the areas they created (#66000)
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* [NO GBP] Resolves Golems not being allowed in the areas they created
Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Block free golems from using shuttle consoles, other than to go home (#65991)
* Block golems from using shuttle consoles
* Update code/modules/mob_spawn/ghost_roles/golem_roles.dm
Co-authored-by: Kylerace <kylerlumpkin1@ gmail.com>
* Block free golems from using shuttle consoles, other than to go home
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Kylerace <kylerlumpkin1@ gmail.com>
* Fixes several incorrect spider menu descriptions and automatizes the process a little bit (#65806)
* Fixes several incorrect spider menu descriptions and automatizes the process a little bit
Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
* Medical Revamp: Resprites and Jumpsuit/Under Changes (#65236)
New sprites for the CMO's turtleneck/skirtleneck, paramedic jumpsuit/jumpskirt, virologist jumpsuit/jumpskirt, and chemist jumpsuit/jumpskirt
* Medical Revamp: Resprites and Jumpsuit/Under Changes
* fix
Co-authored-by: axietheaxolotl <86872535+axietheaxolotl@users.noreply.github.com>
Co-authored-by: jjpark-kb <55967837+jjpark-kb@users.noreply.github.com>
* Makes the Russian fugitive hunters less bad (also gives them a pet bear) (#65016)
* Makes the Russian fugitive hunters less bad (also gives them a pet bear)
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Removes reference to removed starfury SM (#64758)
* Ghostroles literally crying right now
* Revert "Ghostroles literally crying right now"
This reverts commit c419bca393b96d6b20d509063f8cc33ca9e443c5.
* partial unrevert
* Removes reference to removed starfury SM
Co-authored-by: BluBerry016 <50649185+unit0016@users.noreply.github.com>