[MIRROR] Drastic Lag Mitigation Subsystem: SSlag_switch (#6786)

* Drastic Lag Mitigation Subsystem: SSlag_switch (#59717)

Requested by oranges and inspired by the upcoming event. A new subsyetem, non-processing (for now), aimed at providing some toggle switches that can be flipped as a last ditch effort to save some CPU cycles by sacrificing some non-critical mechanics. Below you can see each individual toggle.

Screenshot of the admin panel:
image
Surely there are more opportunities for toggles I missed, but adding new ones is not very difficult at all.
Why It's Good For The Game

Better performance during extreme pop, I hope.
Changelog

cl
code: Introduces the Lag Switch subsystem for when a smoother experience is worth trading a few bells and whistles for. Performance enhancement measures can be togged by admins with the Show Lag Switches admin verb or enabled automatically at a pop amount set via config.
config: Added a new config var: number/auto_lag_switch_pop

* Drastic Lag Mitigation Subsystem: SSlag_switch

* mirrored the changes to the modular file

Co-authored-by: Wayland-Smithy <64715958+Wayland-Smithy@users.noreply.github.com>
Co-authored-by: Useroth <37159550+Useroth@users.noreply.github.com>
This commit is contained in:
SkyratBot
2021-07-08 03:24:16 +02:00
committed by GitHub
co-authored by Wayland-Smithy Useroth
parent 694032f53f
commit df651808d4
29 changed files with 315 additions and 29 deletions
+1 -1
View File
@@ -35,5 +35,5 @@ SUBSYSTEM_DEF(input)
user.set_macros()
/datum/controller/subsystem/input/fire()
for(var/mob/user as anything in GLOB.player_list)
for(var/mob/user as anything in GLOB.keyloop_list)
user.focus?.keyLoop(user.client)