* people with conspiracy phobias are scared of gas miners (#56834)
WHERE IS THE GAS GIANT KOWALSKI?
* people with conspiracy phobias are scared of gas miners
Co-authored-by: Fikou <piotrbryla@onet.pl>
* how to annoy everyone in one commit
* blep
* Update code/controllers/subsystem/vote.dm
Co-authored-by: Gandalf <jzo123@hotmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
* Refactors ambience to a subsystem (#56723)
Ambience is now in a subsystem, and plays every now and then without you having to move to a new area for it to play
* Refactors ambience to a subsystem
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
* 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>
* repaths plasteel tiles to iron
* Update robot_modules.dm
* a
* fuck me
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.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>
* Changed the population scaling coefficients minimal values to 0. (#56522)
## About The Pull Request
So, there on the downstream we've encountered a problem with the security officer slots jumping to 12 every time the round starts, regardless of what we set them to in the configs.
In the configs it says that you can set the coefficients to 0 to disable scaling, and upon investigation, it seems that all the scaling coefficients suffer from similar problem.
https://github.com/tgstation/tgstation/blob/master/config/game_options.txt#L198
the `min_val` in the config entry datums is 1 on each of them, leading to unexpected behaviour
## Why It's Good For The Game
It fixes certain config values leading to unexpected and unwanted behaviour
* Changed the population scaling coefficients minimal values to 0.
Co-authored-by: Useroth <37159550+Useroth@users.noreply.github.com>
* Adds Extrovert and Introvert Quirks (#56490)
Adds Extrovert and Introvert quirks. Removes the free bar moodlet, gives it to extroverts, makes a corresponding library moodlet for introverts. Introvert and Extrovert are blacklisted and therefore mutually exclusive.
Seems a bit thin, could we do x?
Yeah sure, and I'd appreciate feedback on where you'd like to see these quirks go. I want to start basic with "where do they spend their free time?" Rather than trying to do something big like moodlets for speaking a lot/little, especially because that seems a bit unbalanced and we already have a quirk that penalizes speech. I'm also looking to avoid unrealistic stereotypes, speech penalties to introverts are kind of unreasonable, introverts aren't inherently bad at talking, they just like alone time.
Why make it free?
I'm taking away a pre-existing moodlet that was free for everyone, also positive quirks are capped at 6 and I see this quirk as being essential to character building so I would prefer not to make someone pick between giving any sort of depth to their character and their powergaming loadout.
Having players define their character as introverted or extroverted and reinforcing the decision through gameplay mechanics is a great way to get them thinking about their character beyond an avatar to make other spacemen horizontal with. I'd argue that it is as foundational as decisions like gender, species, and age.
This opens up the library as a social space, as the two people who take introvert might occasionally run into each other when they are recovering mood and sanity there.
* Adds Extrovert and Introvert Quirks
Co-authored-by: RaveRadbury <3204033+RaveRadbury@users.noreply.github.com>
* Refactors Holodeck to Use Map Templates, Again! Black Magic OOM Crashing No Longer Included (#55645)
Refactors the holodeck to use map templates instead of copy_contents_to, which every maintainer seems to have complaints about.
Fixes#41485 because the matches become part of the spawned list created by ssatoms
Fixes#54789 because the holodeck area no longer has the NO_TELEPORT flag
Fixes#55676 because the map templates cant be changed midround unlike the program copies in the centcom z level
Fixes#49318 because the holodeck no longer creates new areas like the original did
This pr also changes initTemplateBounds to be a /datum/map_template proc instead of a parsed_map proc. This was mainly so I wouldn't have to duplicate vars between map_template and parsed_map. It's also nice because there's no longer a parsed_map proc inside the map_template file, especially when it didn't need to be a parsed_map proc.
The holodeck sims wont take up space in the centcom z level any more (which allows for more possible programs in the future), and map templates are more heavily tested. This is also a chance to future proof the holodeck against bugs. Holodeck also seems more responsive. This should allow for a second custom holodeck in some future ruin as well, although that of course will not be in play for the near future because of the offstation content ban. Also I documented the fuck out of the holodeck
* Refactors Holodeck to Use Map Templates, Again! Black Magic OOM Crashing No Longer Included
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
* Adds logging to uplinks, spellbooks, and the codex ciatrix (#56450)
* Initial logging
* Bugfix and adds uplink logging to config file
* Another bugfix
* Adds logging to uplinks, spellbooks, and the codex ciatrix
Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
* Added the SQL logging.. waf
* I dont know why CI does not like my sql......
* I think i fixed the sql....
* Attempt #1 to make linter happy
* Shhh linter, it will be over soon
Just breath into this cloth... ignore the chloroform smell.
(Add a Preprocesser statement, to make the SpacemanDMM linter ignore the SQL code in a mob atom obj, that causes it to trigger its hard coded test for stoplag.
This only does not trigger on other SQL, as there is hard coded exception in SpacemanDMM that ignores the other objects. the better fix would be to update SpacemanDMM to add this into the exclusion. but this change at least allows the PR to be merged finally)
Co-authored-by: MissFox <github@aesir.org.uk>
* Prevents the most common case of fire settling with an excited group (#56317)
Basically when a group with a breakdown timer one tick away from settling merges with a group with hotspots in
it, and the one with a high breakdown timer is larger, the group would settle without respecting the timer of
the hotspot group, causing fwoosh levels of flame.
There's two other ways to achieve this, if you had one group of tiles that are close to the same gasmix as
another
group, and they became inactive, we'd have the same issue. I've solved this by moving the hotspot subprocess to
after active turfs and before excited groups, just for safety ya feel me?
It's still in theory possible, but much much harder. The hard solution to this would be to integrate heat with
how we reset excited group timers, and split excited groups into smaller portions, but I'm not sure I like that
idea.
I need to mull it over.
* Prevents the most common case of fire settling with an excited group
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* once again but better this time
* Makes it so that equipping them has no sound
* Update code/modules/mob/mob.dm
Co-authored-by: Azarak <azarak10@gmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
* Fixes same-name for floor tile recipes. (#56207)
When you try to seal a breach you'll need to make sure there's lattice, and over the lattice you need to put a floor tile. The material floor tiles don't work for this, or at least the iron one doesn't. The regular one does. But it's sort of a guess on which is which while creating the recipe, unless the names are different.
* Fixes regular and material floor tile recipes having the same name.
Co-authored-by: Rohesie <rohesie@gmail.com>
* Add better weakref support to qdel (#56206)
* Add better weakref support to qdel
* change request
* Add better weakref support to qdel
Co-authored-by: spookydonut <github@spooksoftware.com>
* Add weakref support to qdel (#56171)
qdel() should allow usage of weakrefs to avoid harddels on long duration qdel_in usage
* Add weakref support to qdel
Co-authored-by: spookydonut <github@spooksoftware.com>
* Stack overflow detection for the Master Controller. (#56008)
* Stack overflow detection for the Master Controller.
Using a weakref, we can detect if the mc's stack was ended by byond due to a stack overflow, and restart it without waiting the entire defcon countdown in the failsafe controller.
I built a system around this concept under /datum/stack_end_detector and deployed it to the MC's main loop with checks in the failsafe controller.
* Stack overflow detection for the Master Controller.
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
* Allow dynamic to be configured when used as the forced secret mode (#56122)
Allow dynamic to be configured (roundstart rulesets) when used as the forced secret mode
* Allow dynamic to be configured when used as the forced secret mode
Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
* [READY] A victory for revolutionaries will no longer end the round on dynamic, instead no new security and command will be allowed to join (#55956)
Currently, a victory for revoutionaries leads to the round abruptly ending on dynamic. This has been replaced by all revolutionaries being deconverted, and no new security or command positions being available.
Also attempts to unionize (pun intended) copy and paste code in the round start and late join revolutionary rulesets into being handled under the revolutionary team instead.
* [READY] A victory for revolutionaries will no longer end the round on dynamic, instead no new security and command will be allowed to join
Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
* Finishes the allocation refactor (#55965)
#53841 continuation
I recall that the reason for infinite stuns and such was that the priority wasn't being cleared properly when something hitched and I fixed it and I don't remember where exactly but it works now (TM)
A variation of this is TMed on TGMC and it works fine
* Finishes the allocation refactor
Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
* Fix startup double runtimes again (#56047)
Prevents runtimes that occur before /world/New is called from runtiming in /world/Error due to lack of the config being loaded.
* Fix startup double runtimes again
Co-authored-by: Jordan Brown <Cyberboss@users.noreply.github.com>
* Merge pull request #55810 from NotRanged/democracy
Admins cancelling a vote now leaves a log and message
* Admins cancelling a vote now leaves a log and message
Co-authored-by: 81Denton <32391752+81Denton@users.noreply.github.com>
* The Great Radio Rework: NTNET Part 1 of many.
* Update airlock.dm
Co-authored-by: WarlockD <warlockd@gmail.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
* Butthurt Admin Prevention (#55661)
It's a story as old as time itself. Admin loads a new shuttle, decorates it, and then shuttle catastrophe triggers and the admin gets deeply, deeply owned. With this, you can set what emergency shuttle they picked and prevent any more changes to the shuttle!
* Shuttle Manipulator now gives admins the option to prevent shuttle purchases when they change the emergency shuttle.
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* Fix Hanukkah (again) and refactor Moth Week and Beer Day (#55532)
* Fix Hanukkah (again) and refactor Moth Week and Beer Day
* Remove unnecessary changes
* Fix Hanukkah (again) and refactor Moth Week and Beer Day
Co-authored-by: Jack LeCroy <3073035+jacklecroy@users.noreply.github.com>
* [READY] Creates Datumized AI and applies it to monkeys (#55238)
New AI system, implemented for monkeys.
* [READY] Creates Datumized AI and applies it to monkeys
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
* 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.
* Refactors the procedural generation of lavaland and turf/closed/mineral
Co-authored-by: Qustinnus <Floydje123@hotmail.com>