Commit Graph

2943 Commits

Author SHA1 Message Date
Useroth
ba64528c4c [DNM] Revert "[MIRROR] Refactors dbcore and limits the maximum amount of concurrent async queries to a variable amount" (#6478)
* Revert "[MIRROR] Refactors dbcore and limits the maximum amount of concurrent async queries to a variable amount (#6436)"

This reverts commit e2519525f9.

* Update time_track.dm

Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-08-06 23:56:35 +01:00
SkyratBot
91070a797c [MIRROR] Job refactor 2: less hardcoded lists (#7410)
* Job refactor 2: less hardcoded lists

* CRITICAL DEP 1

* CRITCAL DEP 2

* Update nanotrasen_admiral.dm

* Update nanotrasen_admiral.dm

* Update nanotrasen_admiral.dm

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-08-06 01:42:53 +01:00
SkyratBot
090ef8f1d6 [MIRROR] Thrownthing datum refactor: you can now throw stuff at mobs lying on the floor. (#7404)
* Thrownthing datum refactor: you can now throw stuff at mobs lying on the floor. (#60604)

* Thrownthing datum refactor: you can now throw stuff at mobs lying on the floor.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2021-08-05 13:19:07 +01:00
FlamingLily
09a0205a8d [NON-MODULAR] Alt title maintenance (#7284)
* Update job.dm

* Update job.dm

* Update job.dm

* Update job.dm

* Update job.dm
2021-08-03 21:30:48 +01:00
SkyratBot
e2c9240251 [MIRROR] Adds the bare minimum admin components and allows admins to define list literals. (#7320)
* Adds the bare minimum admin components and allows admins to define list literals.

* Update decaySS.dm

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-08-03 21:11:09 +01:00
SkyratBot
9745444632 [MIRROR] quirks taken are now recorded by the blackbox. (#7345)
* quirks taken are now recorded by the blackbox. (#60581)

* quirks taken are now recorded by the blackbox.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2021-08-03 20:05:53 +01:00
SkyratBot
5c705d4ba7 [MIRROR] Open space turfs now trigger the "falling" phobia (#7280)
* Open space turfs now trigger the "falling" phobia (#60575)

* Open space turfs now trigger the "falling" phobia

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2021-08-01 11:41:25 +01:00
SkyratBot
8ae1ddc170 [MIRROR] Revert "makes the tram more powerful than you can ever imagine" (#7263)
* Revert "makes the tram more powerful than you can ever imagine (#60381)" (#60537)

This reverts commit 55d876d1be.

* Revert "makes the tram more powerful than you can ever imagine"

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
2021-08-01 11:40:15 +01:00
SkyratBot
491d740685 [MIRROR] Makes shaking smoother, makes close range explosions more shakey (#7227)
* Makes shaking smoother, makes close range explosions more shakey  (#60314)

* Makes camera shaking more smooth

Makes shake_camera use more then instant steps for its animates. The concept is to not respect duration quite so
strictly. So instead of instantly moving, we get the distance to travel, pick the lower of the two numbers to
preserve some jerk, and multiply it by tile size * 0.7. So effectively 0.7 ticks per tile. I've found this works
reasonably well for making shaking events look less shit, though there is room to make it a preference option in
future, since this number could go between 0 for the old behavior, and say 5 for slow but not say, visually
hasurdus speeds.

* Makes large close range explosions shake more then far out ones

The old system for calculating explosion shake was sqrt(delta/10) when the delta could really only ever go up to
like 20. So it maxed out at 1.3 or so, which doesn't really fit being hit directly by a bomb. I hate old coders.

I'm changing the fomula to sqrt(range/(dist + 1)), which works out to roughly 4.5 at 20 near_distance, which is
a maxcap. Scales reasonably fast, 4 tiles or so, so this primarially effects getting hit full on with a big
bomb

* Makes shaking smoother, makes close range explosions more shakey

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-07-29 11:15:32 +01:00
SkyratBot
bdc2b2d3c9 [MIRROR] Revives PR #58579; Sligh refactor to AI datums that allows for basic support of subtrees (#7214)
* Revives PR #58579; Sligh refactor to AI datums that allows for basic support of subtrees (#60249)

Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: coiax <yellowbounder@ gmail.com>
Co-authored-by: Watermelon914 <37270891+Watermelon914@ users.noreply.github.com>
Co-authored-by: Rohesie <rohesie@ gmail.com>
Co-authored-by: Matthew J. <12817816+ZephyrTFA@ users.noreply.github.com>
Co-authored-by: AnturK <AnturK@ users.noreply.github.com>
Co-authored-by: Jonathan Rubenstein <jrubcop@ gmail.com>
Co-authored-by: Kylerace <kylerlumpkin1@ gmail.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
Co-authored-by: tralezab <40974010+tralezab@ users.noreply.github.com>
Co-authored-by: Jordan Brown <Cyberboss@ users.noreply.github.com>
Co-authored-by: Fikou <piotrbryla@ onet.pl>
Co-authored-by: Emmanuel S. <emmanuelssr@ gmail.com>

* Revives PR #58579; Sligh refactor to AI datums that allows for basic support of subtrees

Co-authored-by: ma44 <guyonleagueoflegends@gmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: coiax <yellowbounder@ gmail.com>
Co-authored-by: Watermelon914 <37270891+Watermelon914@ users.noreply.github.com>
Co-authored-by: Rohesie <rohesie@ gmail.com>
Co-authored-by: Matthew J. <12817816+ZephyrTFA@ users.noreply.github.com>
Co-authored-by: AnturK <AnturK@ users.noreply.github.com>
Co-authored-by: Jonathan Rubenstein <jrubcop@ gmail.com>
Co-authored-by: Kylerace <kylerlumpkin1@ gmail.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
Co-authored-by: tralezab <40974010+tralezab@ users.noreply.github.com>
Co-authored-by: Jordan Brown <Cyberboss@ users.noreply.github.com>
Co-authored-by: Fikou <piotrbryla@ onet.pl>
Co-authored-by: Emmanuel S. <emmanuelssr@ gmail.com>
2021-07-29 11:11:03 +01:00
SkyratBot
9f7d93f3f3 [MIRROR] Remove nanites (#7210)
* Remove nanites

* a

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-07-29 00:45:17 +01:00
SkyratBot
9cf38b193c [MIRROR] Fixes security not getting assigned to departments (#7085)
* Fixes security not getting assigned to departments

* Update ticker.dm

* Update _job.dm

* a

* Update _job.dm

* Update _job.dm

* Update security_officer.dm

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-07-28 21:37:35 +01:00
SkyratBot
b9deea8747 [MIRROR] Reorder job equip code so quirk equips are last (#7080)
* Reorder job equip code so quirk equips are last

* Update ticker.dm

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-07-28 21:17:51 +01:00
SkyratBot
7a977056d1 [MIRROR] Fixes a runtime that would leave everyone naked (#7042)
* Fixes a runtime that would leave everyone naked

* Update ticker.dm

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-07-28 21:15:33 +01:00
SkyratBot
227b722820 [MIRROR] Job refactor: strings to references and typepaths [This could seriously break things :)] (#7006)
* Job refactor: strings to references and typepaths

* 0

* holy fuck

* Update preferences.dm

* Update preferences.dm

* Update preferences.dm

* Update preferences.dm

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-07-28 21:12:42 +01:00
SkyratBot
4829450329 [MIRROR] makes the tram more powerful than you can ever imagine (#7169)
* makes the tram more powerful than you can ever imagine (#60381)

* makes the tram more powerful than you can ever imagine

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
2021-07-28 19:02:23 +01:00
Matthew J
bab2714a02 [NON-MODULAR] Events Roll Less Often (#7147)
* update event freq

* Update code/controllers/subsystem/events.dm

* Update code/controllers/subsystem/events.dm

* Update cme.dm
2021-07-27 17:24:57 -05:00
Seris02
28935231b5 [NON-MODULAR] Fixes extra job icons, revamps those icons, adds some new ones for the others that didn't have any (#7004)
* got it workin nice

* a

* a again
2021-07-23 17:58:47 +12:00
OrionTheFox
d33967c931 [WIP][Test merge me please] Rockplanet Revamp! (#6256)
* Merge the Ruins module into the Mapping module

I was always confused which to use soooo now theyre just the same

* Re-mapping + Files

THIS ISNT WORKING HELPHELPHELP

* wow thats a bad typo

fun fact, missing a single / can keep all ruins from spawning :)

* Ruins atmos + adds

There's probably a better way to do this. I'll probably have to revert the atmos things with this. Oh well.

* fixefixe

hngh

* fix that little pre-spawned ruin

hnngh

* fixes that pre-spawned ruin

hnngh OCD

* Delete quicksand.dmi

whoops

* Apply suggestions from code review

Co-authored-by: Tom <tomforde4@gmail.com>

* makes var-edited turfs into subtypes

i fucking hate it

* adds whiteship LZ (hopefully they all fit?)

* RENAMES ANY CODE MENTION TO "ROCKPLANET" FROM "ASTEROID"

Fixes having to differentiate between Asteroid(Mining planet) and Asteroid(Space object)

* rocklblnbglb

mapp p

* renames asteroid.txt to rockplanet.txt in config

* "sorts" files in the mapping module

while I'm here im gonna tidy it up ok

* fixes map conflicts

* missed a bit

* few gulag tweaks

hehe

* fix random space tile/area fuckery/aaaaaaa

* move mobs stuff about/rename/prep for The Lost

* pretty stuff.,.,.,

MY METAL POLES ARE HERE POG

* lz lz lz

* shower fix ree

Co-authored-by: Tom <tomforde4@gmail.com>
2021-07-21 15:46:16 +01:00
SkyratBot
c1163dff19 [MIRROR] EVEN MORE HARDDEL FIXES (#7017)
* EVEN MORE HARDDEL FIXES (#60228)

Fixes a ton of harddels, sourced from #59996
I think this brings us down to like, ~100 per round from ~200, with only like 20 of those being proper hell failures. I've seen harddel profiles below 1 second of total cost. Feeling good.

See you on the other side

Makes the cryopod control computer into a weakref, never trust bee code
Converts brig door timer internal lists to weakrefs
Fixes a harddel caused by qdeling a motion sensitive camera after it had left its source area, jesus christ why didn't we do this already holy shit
Converts the radio implant ref held by the antenna mutation to weakrefs because it isn't reliably cleaned up, makes the radio implant actually qdel its fucking radio
Removes the target var from the throwing datum, it does literally nothing and just exists to cause harddels, mostly for the singularity
 Fixes a cable harddel sourced from things that try to enter blueprints after smoothing, but before roundstart. IE, shuttles. Removes shuttles from the blueprints
Fixes emmisive blockers being added post qdel
Removes some manual ghosting from cryopods, I initially did this for harddel reasons, but I figured out a better fix for that. I'm now doing it because it's got this really strange logic for like "re-entering the game" that doesn't actually link to what the ghostize proc does. We should remove this at some point
Fixes robot hud objects harddeling due to hanging refs
Fixes buildmode related hanging refs, I'm coming for you admin team
Fixes a few instances of trying to add the forensics component post qdel, hhhhhhhhhhh
Fixes some split personality harddels/weirdness
Replaces a use of disconnect_duct with an init qdel hint, I suspect there's more issues with duct harddels, I've seen some odd logs about ahhh the area_contents list, but we can worry about that later
Makes teleporter targets into weakrefs, properly types them as /atom
Makes frequency devices into weakrefs
Makes cameras remove themselves from camera nets on Destroy
Makes tgui ui datums implement destroy, this means if I ever see one hang a ref to user or whatever, I know there's an error with calling close() properly. I've seen this harddel once, but not after this change so I assume there was some error with close(). IDK maybe this is a papering over? Would have to ask @ stylemistake
I've seen logs of beartraps being in world post del, putting a return there just in case. The same is true of nerf darts, but I haven't really looked into that yet
Makes a shoe's ref to untying alerts a weakref, yes this is needed.
Moves clearing client_in_contents to the Login of the new mob. This prevents doing things like ghosting someone before a mob qdel causing harddels
Fixes a harddel set sourced from adding a status effect to a qdeleted thing. Is this an error? I'm honestly not sure.
Converts bsa code to weakrefs
Converts the partner var of heat exchangers to weakrefs
Converts camera assemblies to weakrefs
Fixes some dumb behavior with ammo casings and assuming you'll be on a turf post Destroy parent call
Fixes? merger related harddels, you were never cleared from your own members list, so origin objects would end up making a new list, creating harddels. Potential input from @ ninjanomnom about the logic
Chasms store a static list of "falling atoms", which only exists for chasms that go somewhere else. This list wasn't being cleared of qdeleted objects, which is what happens when you fall in most chasms. Fixes this, and converts the list to weakrefs.
Fixes some runtimes in both sheet code, and the weather listener element. This is here because runtime spam made testing more of a pain, didn't think it needed its own pr
Fixes colorful reagent harddels sourced from reagents that were qdel'd before roundstart. I'm only like 50% sure this actually got it, but the issue may have been solved by #60174, so eh
Turns the nuke op antag datum's ref to the war button into a weakref
Fixes some holopad code that was not nulling refs all the time
Converts camera bugs to weakrefs, this was the result of the bug being "reworked" like 6 years back without taking the existing ref clearing into account. Whole item needs a redo, but this'll do for now.
Ensures that the both pulling and pullee refs are cleared on Destroy
The crew monitor held all users in a non clearing list, makes that list a weakref because I hate everything

Oh and I removed all sources of gas_mixture qdeletion, I'm kinda unsure on this since it's not technically supported, but any harddels from it might? indicate something going wrong with like, gas passing logic. I'd like @ MrStonedOne's thoughts, since I trust him to call me an idiot if I'm wrong.

<!-- Please add a short description of why you think these changes would benefit the game. If you can't justify it in words, it might not be worth adding. -->

## Why it's not good for the game

I crashed sybil like 10 times to get this data, I'm gonna put it to good use. Don't think you're safe sybilites, I'm coming for you.

* EVEN MORE HARDDEL FIXES

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-07-20 12:59:41 +02:00
SkyratBot
f4b2218a9b [MIRROR] Rework maintenance loot spawners to fire at roundstart (#6986)
* Rework maintenance loot spawners to fire at roundstart (#59913)

Maintenance loot spawners now fire at roundstart, rather than during the initialization of the Atoms subsystem.
Maintenance loot spawners do not qdel themselves during the spawning process, but persist, and merely hide themselves from living players.

As a cute side effect, this lets preround observers look at the colourful maintenance loot dice icons before the round starts. Observers can continue to see the loot dice post-round, but they are deliberately
very faint.

* Rework maintenance loot spawners to fire at roundstart

* fixafix

Co-authored-by: coiax <yellowbounder@gmail.com>
Co-authored-by: Useroth <37159550+Useroth@users.noreply.github.com>
2021-07-19 15:04:40 +02:00
SkyratBot
9dd2f82046 [MIRROR] Reduces explosion shake to a reasonable level (#6976)
* Tones down explosions (#60233)

* Reduces explosion shake to a reasonable level

Co-authored-by: Helianthus00 <64755361+Helianthus00@users.noreply.github.com>
2021-07-19 20:03:55 +12:00
SkyratBot
4907ea3c92 [MIRROR] Fix automatic evac news broadcast emergency_reason double encode (#6960)
* Fix automatic evac news broadcast emergency_reason double encode (#60212)

I forgot to html_decode the reason when I did it for the station name.

* Fix automatic evac news broadcast emergency_reason double encode

Co-authored-by: Wayland-Smithy <64715958+Wayland-Smithy@users.noreply.github.com>
2021-07-16 20:35:47 +01:00
SkyratBot
d18e837d27 [MIRROR] Raises the base gc queue time from 2 minutes to 5 (#6908)
* Raises the base gc queue time from 2 minutes to 5 (#60174)

This queue allows things that hold refs to objects intermitently to free them on their own, without causing
harddels. A big part of this is byond, who will occasionally hold refs to an object for up to I think? 5
minutes. The old timer was lower for fear of memory leaks, but that's not as big a concern anymore

* Raises the base gc queue time from 2 minutes to 5

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-07-14 15:30:38 +01:00
SkyratBot
0842c757f9 [MIRROR] makes a bunch of lists that use typecacheof() static. doesnt find out why its overtiming at all but what the hell it helps (#6885)
* makes a bunch of lists that use typecacheof() static. doesnt find out why its overtiming at all but what the hell it helps (#60147)

Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>

* makes a bunch of lists that use typecacheof() static. doesnt find out why its overtiming at all but what the hell it helps

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2021-07-12 22:50:42 +01:00
SkyratBot
9b86bc5a70 [MIRROR] New arrivals are less likely to spawn on top of each other. (#6858)
* New arrivals are less likely to spawn on top of each other. (#60156)

* New arrivals are less likely to spawn on top of each other.

This will close #58311 (Just an issue about new arrivals spawning on top of each other like fools)
Co-authored-by: coiax <yellowbounder@ gmail.com>

* New arrivals are less likely to spawn on top of each other.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2021-07-12 21:46:30 +01:00
SkyratBot
8fa2c84140 [MIRROR] Fix some station name html encoding for plaintext handlers (#6822)
* Fix some station name html encoding for plaintext handlers (#60021)

* fix (double) encoding

* tfw no server friends and no send2sameserver

* Fix some station name html encoding for plaintext handlers

Co-authored-by: Wayland-Smithy <64715958+Wayland-Smithy@users.noreply.github.com>
2021-07-10 14:12:46 +01:00
Matthew J
744dbeb496 Update ticker.dm (#6788) 2021-07-08 10:52:01 +02:00
SkyratBot
df651808d4 [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>
2021-07-08 03:24:16 +02:00
SkyratBot
fb5576ee8f [MIRROR] Add new Wallets! station trait (#6704)
* Add new Wallets! station trait

* Update wallets.dm

Co-authored-by: coiax <yellowbounder@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-07-04 23:59:42 +01:00
SkyratBot
2d4ee5459b [MIRROR] Changes a line of the master controller to make it easier to read (#6699)
* Changes a line of the master controller to make it easier to read (#59974)

* Changes a line of the master controller to make it easier to read

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-07-04 16:30:35 +01:00
SkyratBot
cda689393e [MIRROR] PDAs now include round time (#6672)
* PDAs now include round time (#59957)

Part of my document on duplicating verb panel functionality so at some point in the far, far future we may be rid of it. you can read more here.

hackmd.io/tJ5H3opRQiG1GCN1sP142w

The other thing the status panel needs to do is send time dilation to the tgui chat. Having messed around with tgui chat, I am very confident i'm going to need stylemistake or mothblocks help me out with that one, it's so beyond my level it isn't even funny.

I know this is a VERY long description for a very small change but expect more of this in the future

* PDAs now include round time

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2021-07-03 22:23:07 +01:00
SkyratBot
c4c628f912 [MIRROR] Adds verification for reference layers to check if target config has the desired icon_state (#6640)
* Adds verification for reference layers to check if target config has the desired icon_state (#59884)

* Adds verification for reference layers to check if target config has the desired icon_state

Co-authored-by: Emmett Gaines <ninjanomnom@protonmail.com>
2021-07-01 22:58:39 +01:00
SkyratBot
86517eaf36 [MIRROR] [s] Remove ability to circumvent config VAS protection (#6635)
* Remove ability to circumvent config VAS protection (#59875)

* [s] Remove ability to circumvent config VAS protection

Co-authored-by: Bobbahbrown <bobbahbrown@gmail.com>
2021-07-01 22:57:17 +01:00
SkyratBot
cab78dcf78 [MIRROR] Changes how weather sends sound to players, reduces sound loop overtime (#6627)
* 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>
2021-07-01 02:18:04 +01:00
Gandalf
84fcf3b429 Byond minimum version is now 514.1557 (#6626)
* 514.1557

* a
2021-07-01 00:06:33 +01:00
SkyratBot
a2d29d582d [MIRROR] Add $reset directive to config processor for setting a config entry to default value (#6602)
* Add $reset directive to config processor for setting a config entry to default value

* Update game_options.dm

Co-authored-by: Bobbahbrown <bobbahbrown@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-06-30 20:20:24 +01:00
SkyratBot
7269bd83ab [MIRROR] Adds USB to arrest consoles. Adds list circuit components. (#6593)
* Adds USB to arrest consoles. Adds list circuit components. (#59850)

Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>

* Adds USB to arrest consoles. Adds list circuit components.

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2021-06-30 20:01:36 +01:00
Gandalf
98e46a709c SSdecay - Making the station dirty(and creepy) (#6480)
* SSDECAY

* Update decaySS.dm

* Update decaySS.dm

* Update decaySS.dm

* Update lighting.dm

* Update decaySS.dm

* Update decaySS.dm

* a

* a

* Update decaySS.dm

* Update decaySS.dm

* Update lighting.dm

* Update decaySS.dm

* Update decaySS.dm

* oof

* Update decaySS.dm

* Update decaySS.dm

* OOPS

* Update nests.dm

* Update nests.dm

* Update nests.dm

* a

* Update nests.dm

* dry blood

* no more light noise

* Update nests.dm

* Update nests.dm

* a

* Update vatbeast.dm

* Update decaySS.dm

* Update nests.dm

* Update decaySS.dm

* Update nests.dm

* bad

* Update nests.dm

* a

* Update nests.dm
2021-06-28 15:41:32 +02:00
SkyratBot
78afb2bccf Adds configs to disable laggy hard deletes (#6559)
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
2021-06-28 14:19:27 +01:00
SkyratBot
8c6ea00947 [MIRROR] Properly fix postpones in the mc. (#6524)
* 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>
2021-06-25 22:14:55 +01:00
SkyratBot
ce6c830d7b [MIRROR] Makes all laggy garbage failures log to admins as well as postpone further garbage ticks (#6492)
* Makes all laggy garbage failures log to admins as well as postpone further garbage ticks (#59791)

1 second was too long in the current lag market.
(postpone doesn't work here because of a bug i'll fix in another webedit in another pr since its actually a mc bug)

* Makes all laggy garbage failures log to admins as well as postpone further garbage ticks

Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
2021-06-24 23:02:16 +01:00
SkyratBot
3d87b766b3 [MIRROR] Makes master support ss.postpone()ing the next fire of running subsystems (#6491)
* Makes master support ss.postpone()ing the next fire of running subsystems (#59792)

Sadly it can't apply this to the next fire resume of paused subsystems, but at least its not resetting that postpone.

* Makes master support ss.postpone()ing the next fire of running subsystems

Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
2021-06-24 23:01:57 +01:00
SkyratBot
c96dcd4506 [MIRROR] Port: fixes of SStimer subsystem from RU SS220 Paradise (#6446)
* Port: fixes of SStimer subsystem from RU SS220 Paradise (#59718)

Unobvious problem spot

#define BUCKET_POS(timer) (((round((timer.timeToRun - SStimer.head_offset) / world.tick_lag)+1) % BUCKET_LEN)||BUCKET_LEN)

With tick_lag equal to 0.1, 0.25, 0.5, rounding of division is normal. But at other values it may be shifted either more or less due to the specifics of floating-point storage and processing. Numbers 0.1, 0.25, 0.5 have blank mantissa, unlike others which lead to numbers such as 245.0000004 when divided.
PS: tick_lag is rounded to the first two decimal places.

Fixes

    Rewrote the circular doubly linked list to a regular doubly linked list, because it could cause timers to loop infinitely.
    Fixed re-creation of a bucket if the timer does not have a callback.
    Added debug stat indicator RST to MC SStimer.
    Added optional ability to log dump all timers on crash.
    Fixed subsystem logic when a bucket position is misplaced due to division and rounding inaccuracy. The system now captures such rounding errors and restores the correct timer position.

References

[RU] SS220 Paradise port process from TGstation and fixes:

    ss220-space/Paradise#5
    ss220-space/Paradise#10
    ss220-space/Paradise#26
    ss220-space/Paradise#32
    ss220-space/Paradise#37

Contributors

    @ semoro: fixes
    @ Bizzonium: port

Changelog

cl Semoro and azizonkg
fix: Ported fixes of SStimer subsystem from RU SS220 Paradise
config: Added a new config var: flag/log_timers_on_bucket_reset
/cl

* Port: fixes of SStimer subsystem from RU SS220 Paradise

Co-authored-by: Aziz Chynaliev <azizonkg@gmail.com>
2021-06-22 22:38:52 +01:00
SkyratBot
b325c7a53b [MIRROR] Fix phantom mobs getting quirks from silicon job selections. (#6410)
* Fix phantom mobs getting quirks from silicon job selections.

* Update job.dm

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-06-22 01:03:57 +01:00
SkyratBot
e2519525f9 [MIRROR] Refactors dbcore and limits the maximum amount of concurrent async queries to a variable amount (#6436)
* 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>
2021-06-22 00:49:20 +01:00
SkyratBot
87e3a63f7d [MIRROR] During unit tests, does extra verification on text based overlays (#6415)
* During unit tests, does extra verification on text based overlays (#59553)

This makes it so during unit tests, adding a text based overlay to something will runtime if the icon does not have an icon state matching that text. I would do this during normal compiles as well but getting the icon states from an icon is surprisingly expensive.

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@ users.noreply.github.com>

* During unit tests, does extra verification on text based overlays

Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@ users.noreply.github.com>
2021-06-21 00:48:24 +01:00
Gandalf
d0bfc4de04 The Nanotrasen Representative (MY WAY) (#6368)
* 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
2021-06-20 02:23:29 +01:00
Matthew J
0647c6e029 [NON-MODULAR] SSjobs no longer runtimes and stops loading if it can't find a single job (#6360)
* fix job runtimes

* refac

* hnnn
2021-06-18 14:05:06 +01:00
SkyratBot
7d1d0e1fad [MIRROR] Refactors most spans into span procs (#6315)
* Refactors most spans into span procs

* AA

* a

* AAAAAAAAAAAAAAAAAAAAAA

* Update species.dm

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-06-16 00:24:49 +01:00