* Hookup Change Command Name to Create Command Report (#59941)
Adds and defaults the contents of command_name() to the list of names in the Create Command Report tgui presets if changed from Central Command.
* Hookup Change Command Name to Create Command Report
Co-authored-by: Wayland-Smithy <64715958+Wayland-Smithy@users.noreply.github.com>
* Changes how weather sends sound to players, reduces sound loop overtime (#59284)
* Converts looping sounds from a list of play locations to just the one
* Updates all uses of looping sounds to match the new arg
* Adds an area based sound manager that hooks into looping sounds to drive the actual audio. I'll be using this to redo how weather effects handle sound
* Some structrual stuff to make everything else smoother
Timers now properly return the time left for client based timers
Weather sends global signals when it starts/stops
Looping sounds now use their timerid var for all their sound related timers, not just the main loop
* This is the painful part
Adds an area sound manager component, it handles the logic of moving into new areas potentially creating new
sound loops. We do some extra work to prevent stacking sound loops.
Adds an ash storm listener element that adds a tailored area sound manager to clients on the lavaland z level.
It's removed on logout.
Adds the ash_storm_sounds assoc list, a reference to this is passed into area sound managers, and it's modified
in a manner that doesn't break the reference in ash_storm (This is what I hate)
* Hooks ash storm listener into cliented mobs and possessed objects
* Documents the odd ref stuff, adds an ignore start var to looping sounds, fixes some errors and lint issues
* Applies kyler's review
banging
Co-authored-by: Kylerace <kylerlumpkin1@ gmail.com>
* Cleans up some var names, reduces the amount of looping we do in some areas
* Makes the code compile, redoes the movement listener to be more general
* fuck
* We don't need to detach on del if we're just removing signals on detach
* Should? work
* if(direct) memes
Co-authored-by: Kylerace <kylerlumpkin1@ gmail.com>
* Changes how weather sends sound to players, reduces sound loop overtime
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Kylerace <kylerlumpkin1@ gmail.com>
* Properly fix postpones in the mc. (#59813)
I broke shuttles and other things by trusting queued_time.
This fixes it better, by tracking the ticks it's suppose to miss.
closes: #59805 (this doesn't actually work anymore it seems)
* Properly fix postpones in the mc.
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
* Admins hiding music title will hide it from the music player too
* Update playsound.dm
Co-authored-by: Jonathan Rubenstein <jrubcop@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
* Refactors dbcore and limits the maximum amount of concurrent async queries to a variable amount (#59676)
Refactors dbcore to work off a subsystem if executed async and limits the maximum amount of concurrent async queries to 25.
This has been tested locally on a mysql docker image and there were no crashes (as long as you didn't run it with debug extools) + data was getting recorded fine.
Why It's Good For The Game
May or may not resolve terry crashes, however, each query creates a new thread which takes up 2mb, preventing the game from using that 2mb. This can lead to ooms if they stack up, e.g. due to poor connectivity. This solves that issue.
maintainer note: this did not actually resolve the crashes, but has value anyway. Crashes were sidestepped fixed by finding out Large Address Awareness works
cl
refactor: Refactors dbcore.dm to possibly resolve the crashes that happen on Terry.
/cl
* Refactors dbcore and limits the maximum amount of concurrent async queries to a variable amount
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
* Fixes OOC heart commendations (#59543)
At some point in the last few weeks, the OOC heart commendations that players were polled for during the shuttle's return trip at the end of the round stopped appearing for people on the live servers, even though admin logs showed it was still calculating how many people were supposed to be asked, and it seemed to be working fine on my local server. My only guess is it might somehow be related to #58419 since that was the last PR to touch hearted.dm, even if it's not clear how it might've broken it.
I also neaten up the code for commendations a bit, making it so the procs are easier to follow and have less unnecessary checks. Also, the proc nominate_heart has been reworked to receive_heart, since it makes more sense for it to run on the person receiving the commendation as opposed to the person sending it. It will also properly cancel polling if the "how many to ask" check returns 0 people, rather than always polling at least one.
Edit: Figured it out, #58419 was indeed the culprit, it blindly replaced src with usr without considering that src and usr aren't necessarily the same thing (as it was here, since query_heart() was called by the ticker SS)
* Fixes OOC heart commendations
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
* Ads
* dddd
* a
* a
* a
* Update uniform_digi.dmi
* Update uniform_digi.dmi
* Update uniform_digi.dmi
* Some random new potted plants!
* a
* Update flora.dm
* a
* fixes
* a
* a
* e
* Admins will no longer accidentally undelay round end or reboot the server when multiple admins attempt to delay it at the same time.
* Update topic.dm
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
Co-authored-by: Gandalf <jzo123@hotmail.com>
* Detaches Anonymous themes and Triple AI from SSTicker (+ more anonymous themes and content) (#59373)
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Detaches Anonymous themes and Triple AI from SSTicker (+ more anonymous themes and content)
* Mirror!
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: Funce <funce.973@gmail.com>
* Make Toggle-CDN use alert() instead of tgui_alert() (#59478)
Co-authored-by: orbit <orbit@ book>
* Make Toggle-CDN use alert() instead of tgui_alert()
Co-authored-by: Cyprex <35031555+Cyprex@users.noreply.github.com>
Co-authored-by: orbit <orbit@ book>
* allows editing expired and removed bans (#59431)
This is needed for the rare case that the situation described in the ban turns out to be inaccurate, so future searches for the user in the ban db don't lead admins to the wrong opinion.
Creating a situation where the admin has to remember to edit the ban reason before unbanning them is kinda lame
I'd love to make it so only the reason is editable, but that is far too much work for too little benefit.
fixes#59424
* allows editing expired and removed bans
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
* Makes washing machines support GAGS recoloration (#59292)
* Makes washing machines support GAGS recoloration
Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
* I hate TGUI even if its better than what we had before
* this is why linters exist
* you need to be a Head or the Warden to get items
* does this please you linter?
* foundation
* basic interactions
* yea I can spell okay?
* linters please leave me alone
* begone debug code
* if you are dead, no interacting
* linters leave me alone
* linters are stealing my soul
* forgot to do this
* sound framework, probably wont work though
* max length, and interaction cooldowns
* message can now be a list and minor code improve
* I am a slave and linters are my master
* fix improper static reference
* add json loading/saving functionality
* default for message is now a list
* jsonize def interactions; implement requirements
* bad
* bug fix; CtrlShiftClick to interact
* minor qol fix
* fix CtrlShiftClick and remove debug code
* haha docker has security measures
* this was painful
* why are you in this branch
* begone
* bruh
* begone
Co-authored-by: Matthew <matthew@tfaluc.com>
Co-authored-by: Matthew J <GoldenKeyboard@users.noreply.github.com>
* haha no bypassing your OOC mute bucko
* this should do what I intend it to do
* haha, maybe actually let them use it I think
* Update code/modules/admin/admin.dm
Oops
Co-authored-by: Gandalf <jzo123@hotmail.com>
Co-authored-by: Matthew <matthew@tfaluc.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
* ignore admin proximity for sentience fun balloons (#59149)
When I changed sentience fun balloons to TGUI I accidentally made it so they can't be edited or popped unless you were next to them or had AI interact turned on. This allows admins to pop them at any range.
Why It's Good For The Game
Fixes#59136
Changelog
cl
fix: sentience fun balloons now work consistently again!
/cl
* Fixes Sentience Fun Balloons not being interactive
Co-authored-by: dragomagol <66640614+dragomagol@users.noreply.github.com>
* actionninja's code now properly insults admins without any messed up spans (#59102)
* actionninja's code now properly insults admins without any messed up spans
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* Fixes some more holes in the ref tracker (#58972)
* Fixes some more holes in the ref tracker
The reference tracker was failing to check null keyed assoc list entries, along with being unable to check both
lists in a list(list() = list()) pair
This resolves that, and adds some new logic to the unit test to check for this sort of thing
* Seperates the ref tracking unit test into 6 subtasks as requested
* Fixes some more holes in the ref tracker
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* refactors rpg loot is now a global datum singleton and so is embedopocalypse and stickapocalypse (#59093)
* ogey
* lint
* refactors rpg loot is now a global datum singleton and so is embedopocalypse and stickapocalypse
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* Adds back in a signal dropped by #45217 (#59053)
* Fixes woke plushie; Adds back in a signal dropped by #45217
Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
* Kills BOTH /poison paths by turning poisonous into an element. (+fantasty prefix, sanity on attackingtarget signal, and more) (#58882)
* Kills BOTH /poison paths by turning poisonous into an element. (+fantasty prefix, sanity on attackingtarget signal, and more)
* AAAAAAAA
* Update spellbook.dm
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>