* Advanced Greyscale Sprite Generation (#58112)
* Nonfunctional greyscale code
* Functional greyscale sprites via filter
Probably going to set the icon instead later
* Switches to greyscale json config
* Adds the reference layer type and converts the other canister types
* Working previews
* Adds readme
* Fixes overlays and breaking
* Removes old canister sprites
* Removes an unused var
* Fixes tgui lints
* Removes a bunch of the old canister icon states
Yeah I need to fix relabeling as well
* Removes some debug sprites
* Sorts canister type list and breaks up base shader step
* Removes an unnecessary preview hack
* Makes prototype canister greyscale
* Properly sizes the ui
* Fills in the canister map sprite
* Adds some more warnings to layers
* Makes broken overlay more prominent
* Removes a preview var that isn't needed anymore
* Cleans up client ref in Destroy
* Cleans up the tgui window a bit
* Update GreyscaleModifyMenu.tsx
* Animates the canister falling over
* Removes a commented out line that's no longer needed
Co-authored-by: Aleksej Komarov <stylemistake@ gmail.com>
* Advanced Greyscale Sprite Generation
Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
Co-authored-by: Aleksej Komarov <stylemistake@ gmail.com>
* Smart Pipes(reborn) (#58038)
How these new pipes work.
-Smart pipes autoconnect to nearby smart pipes
-They are now color coded, so they only connect to the same colored pipe, the GREY pipe is the wildcard and can connect to every other color, so be aware of this
-ALL components spawned by the RPD can be colored (from pumps to connectors, from pipes to manifolds), if you leave them GREY they can connect to every other color. Color adapters can be colored, but they'll still connect two pipes with different colors. BUILDABLE machines are GREY (thermomachines, cryo, HFR) so be aware of this
-Trying to go across another smart pipe will now build a bridge pipe automatically already colored of the color you choose, so you don't have to place it yourself anymore (is still available in the RPD tho)
-ALL binary components, layer manifolds, color adapters and bridge pipe can be put ONTOP of a smart pipe, but not on another of these. Smart pipes can't be placed on top of these pipes, so you have to build them first.
-Lcrossings can't be made anymore (sorry y'all i tryed, if someone have a way of doing them ping me on discord)
-REMEMBER you still have 5 layers to go, these rules apply to the same layer pipes, so if you do a crossing on different layers you won't see a bridge pipe appear.
* Smart Pipes(reborn)
Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
* Better accomodation of multiple servers using the same database.
* updated the PR number in readme.md
* Updated the database_changelog description.
* Oopsie.
* Cosmetic touch and sql query fixes.
* Opsie wopsie
* Oopsie x2
* Fugg
* 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
* Ref Tracking: Revengance
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Highlander + Summon Guns and Magic now uses signals to equip new crewmembers (#57817)
* Highlander + Summon Guns and Magic now uses signals to equip new crewmembers
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* Added the N.E.R.D. (Nanotrasen Emergency Response Drone) team as an admin ERT. (#57766)
Added the ability to call a Nanotrasen Emergency Response Drone Team in the Create Antagonist.
* Added the N.E.R.D. (Nanotrasen Emergency Response Drone) team as an admin ERT.
Co-authored-by: Cimika/Lessie/KathyRyals <65850818+KathyRyals@users.noreply.github.com>
* I hate the fact that I need to do it like this (#57794)
Co-authored-by: Triggeredboi <lucas.moreno2124@ gmail.com>
* The outfit manager now updates the Select Equipment menu
Co-authored-by: Trigg <36010999+TriggeredBoi@users.noreply.github.com>
Co-authored-by: Triggeredboi <lucas.moreno2124@ gmail.com>
* Ghost Pool Protection now actually updates when you click buttons (#57621)
* Ghost Pool Protection now actually updates when you click buttons
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* map templates placing being centered is now a selection (#57545)
* map templates placing being centered is now a selection
Co-authored-by: Fikou <piotrbryla@onet.pl>
* Adds a debug button that will automatically render an entry to the chemistry wiki page (#57309)
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Adds a debug button that will automatically render an entry to the chemistry wiki page
Co-authored-by: Thalpy <33956696+Thalpy@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Fixes ERT Briefing Officer Outfit pref (#57069)
I was dumb in #56345 and committed a suggestion from a maintainer without actually checking what it did, leading to the part where you select what outfit you want in your preferences to not actually let you select an outfit.
This also removes the can_be_admin_equipped var from outfit datums, apparently it was supposed to be used for outfits that were only supposed to be spawned in certain ways or some nonsense, but nothing actually used it so bye bye
* Fixes ERT Briefing Officer Outfit pref
* Update preferences.dm
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
* Secret panel once again improved (#56766)
Much easier to add to this panel, before with flexboxes it was nearly impossible but stacks are a lot more friendly.
Miscellaneous old garbage I caught:
For some reason, monkey and only monkey button sent a to_chat to the world of your sins. I cut that, that's unacceptable
I accidentally left out species change from my last pr, it's back in.
* Secret panel once again improved
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* Give bone keys to arena shuttle victors (#56376)
Now that necropolis crates require bone keys to open, the Arena Shuttle
will give any survivors from the arena a bone key to open a crate with.
* disabled DLC only content on arena shuttle
Co-authored-by: Tlaltecuhtli <33834933+Tlaltecuhtli@users.noreply.github.com>
* Re-adds the admin button to let them exempt players from job exp requirements. (#56799)
* Re-adds the admin button to let them exempt players from job exp requirements.
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
* Enables 514 testing on master, Removes all reliance on extools outside of maptick (#56724)
* Uses 514's map_cpu var when it's available
* Uses auxtools for the debugger, to supply cross verison compatibility
* Nukes extools reference tracking, reinstates the old ref tracking system
* Enables 514 testing on master, Removes all reliance on extools outside of maptick
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* [READY] Adds station traits: Small modifiers that can randomly be chosen each round
* conflicts
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
* Adds powerup system, refactors ctf pickups and powerup mine subtypes into it (#56605)
* Adds powerup system, refactors ctf pickups and powerup mine subtypes into it
Co-authored-by: Fikou <piotrbryla@onet.pl>
* Dynamic 2021 (#56221)
About The Pull Request
Dynamic 2021, among much other things, splits the threat level into two separate budgets, one for round start and one for midround/latejoin. You can read the design doc, plus methodology and charts here: https://hackmd.io/@ tgstation/S1C4dYJkO.
To server owners: this is incompatible with current dynamic.json configurations. This is not just because some fields have different values now, but because the older values are not balanced towards this system.
Inidividual list of changes (as I remember them):
Threat level is now split into two separate budgets, one for round start and one for midround/latejoin.
In TESTING, you can now run dynamic simulations to see the roundstart picks.
antag_cap is now based on an equation rather than a fixed list of antags per indice--the old system is not scalable. You can now pass it either a number for a fixed constant, or a list with "denominator" and an optional "offset" to fit the equation ceil(x / denominator) + offset, with x being population.
Midround/latejoin timers are now vars on /datum/game_mode/dynamic itself, and thus can be configured by head admins per server.
Removes some older, as far as I can tell completely unused admin tools relating to dynamic.
autotraitor_cooldown is now properly respected from config, and is based on an exact time rather than on ticks (450 used to be 15 minutes, now it's just 15 MINUTES).
The rulesets dynamic chooses are now in a dynamic.json file in round logs. Relies on tgstation/tgstation13.org#64 to be public.
Adds more logging to the autotraitor ruleset for admins.
Midround/latejoin chance modifiers are now configurable.
Labelled "Do Not Merge", as the design doc outlines the specific playtesting schedule I would like to perform.
Note to self: Remove the custom MOTD before merge.
Why It's Good For The Game
(Copied from design doc)
Dynamic currently dumps as much threat as it can into round start threats. This means that rounds at ~50 threat can have an absurd amount of antagonists round start, while leaving very little threat for midround/latejoin antagonists. What inevitably happens is just one of those picked decides to murderbone, leading to the inevitable 20 minute shuttle call. Furthermore, once those antagonists are dead, Dynamic doesn’t have any threat left to spend on new antagonists that keep the round flowing, promoting the mentality of “antags dead, I’m bored, let’s leave”.
The proposed solution of Dynamic 2021 is to split threat level into two separate budgets, one for round start and one for midround/latejoin. This split, like threat level, will also be done on a lorentz curve–meaning that while most rounds will have them evenly split, there is still the possibility of chaotic high antagonist round start rounds, or the possibility of a midround onslaught.
* Dynamic 2021
Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
* Add the PubbyStation Monastery as a purchasable shuttle (#56234)
This commit will add a slightly modified version of Pubbystation's
Monastery to the list of available emergency shuttles, becoming the
most expensive shuttle to buy at 250 times the crate price (Defaults
around 50,000cr)
This shuttle will cause significant damage and fully showcase the
absurdity of the Monastery's size by providing an up close and
personal, interactive comparison. PubbyStation's monastery will be
forever preserved.
* Adds the PubbyStation Monastery as a purchasable shuttle
Co-authored-by: Son-of-Space <63861499+Son-of-Space@users.noreply.github.com>
* woop (#56400)
Anon names post-roundstart now correctly changes IDs as well
* Anon names post-roundstart now correctly changes IDs as well
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>