Commit Graph

2569 Commits

Author SHA1 Message Date
SkyratBot
345b2e4732 [MIRROR] Allows datum AI to create new plans while a plan is still executing [MDB IGNORE] (#17835) 2022-11-29 19:08:17 -08:00
SkyratBot
37b60d187d [MIRROR] Fixes attempting to offset floating planes [MDB IGNORE] (#17745)
* Fixes attempting to offset floating planes (#71490)

## About The Pull Request

This is a dumb idea, and leads to fucked rendering on occasion

## Why It's Good For The Game

Fixes another portion of #70258, a player will no longer have a hidden
antag hud if they move down a z level after getting an antag. We were
trying to offset the floating plane of their image, and it went to shit.
Also fixes a bug with observers not having antag huds for the combo hud
to see. We were only giving them one on mind.on_transfer, rather then on
mind assignment. I hate mindcode

* Fixes attempting to offset floating planes

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2022-11-27 15:07:29 -08:00
SkyratBot
257feb1be7 [MIRROR] More horrible 515 proc compatibility. [MDB IGNORE] (#17671)
* More horrible 515 proc compatibility.

* Feex

* Hopefully we're done now

Co-authored-by: AnturK <AnturK@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2022-11-27 14:46:36 -08:00
SkyratBot
ea1e6ff95f [MIRROR] Adds a preference that disables intensive rendering on different multiz layers [MDB IGNORE] (#17737)
* Adds a preference that disables intensive rendering on different multiz layers (#71218)

## About The Pull Request

It's kinda hacky, but it is nearly the same as just rendering one z
layer.
We allow people to ENTIRELY REMOVE most plane masters from their screen.
This has the side effect of disabling most visual effects (AO is a big
one) which saves a LOT of gpu.

We rely on planes being essentially layers to ensure things render in
the proper order. (outside of some hackyness required to make parallax
work)

I've kept parallax and lighting enabled, so visuals will still look
better then multiz pre plane cube.
It does also mean that things like FOV don't work, but honestly they
didn't work PRE plane cube, and FOV's implementation makes me mad so I
have a hard time caring.

Reduces gpu usage on my machine on tram from 47% to 32%, just above the
27% I get on meta.

I'm happy with this.

Oh also turns out the parallaxing had almost no cost. Need to remove it
as a side effect of what I'm doing but if I could keep it I would.

There's still room for in between performance options, like disabling
things like AO on lower z layers, but I didn't expect it to make a huge
impact, so I left things as is

Also fixes a bug with paper bins not respecting z layer. It came up in
testing and annoyed me

## Why It's Good For The Game

Ensures we can make multiz maps without running into client performance
issues, allows users to customize performance and visual quality.

## Changelog
🆑
add: Adds a new rendering option to the gameplay preferences. You can
now limit the rendering intensity of multiz levels. This will make
things look a bit worse, but run a LOT better. Try it out if your
machine chokes on icebox or somethin.
/🆑

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

* Adds a preference that disables intensive rendering on different multiz layers

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2022-11-25 14:27:27 +00:00
SkyratBot
6693611532 [MIRROR] Trophy case update [MDB IGNORE] (#17616) 2022-11-22 19:47:18 -08:00
SkyratBot
b9b6a803b0 [MIRROR] Throws a bunch of parenthesis around to ensure dear Aunt Sally is always properly excused. [MDB IGNORE] (#17654) 2022-11-22 19:44:59 -08:00
SkyratBot
75c8e0126e [MIRROR] Adds support for non-science techwebs (+Config) [MDB IGNORE] (#17596)
* Adds support for non-science techwebs (+Config) (#71070)

## About The Pull Request

This is an expanding of
https://github.com/tgstation/tgstation/pull/69708

Adds a config to not connect machines to a techweb at the start of a
round
Adds the ability to multitool a server to get its techweb in its buffer,
which can then be used on machines to sync them.
Adds support for some machines to not cry when they don't have a techweb
linked to it, in case they actually don't.

If the config to not have machines connected to the science server is
enabled, research servers will make their own techwebs instead. This is
barebones though and would need more work if this option is used.

For misc stuff:
- I replaced checking ``GLOB.machines`` for research servers, to instead
check ``SSresearch.servers``, where we can use ``as anything``.
- Removed unused vars on the RD server control
- I renamed the operating computer's .dm file to remove the capitalized
letter from it. It's now operating_computer instead of Operations.

## Why It's Good For The Game

This is adding support for 2 different cases that can be used in the
future:
1. Off-station roles, we can make roles like Oldstation have their own
techweb so they don't ruin science's efforts, or use their advanced
research to get things we don't want, or even possibly have some
blacklist webs for ghost roles (like teleporters) so that way we don't
need to have this dance where we have to give them a very specific
amount of materials for them to do things while not being able to get a
teleporter and leaving. I heard discussions that people wanted this a
while back, and one of the main things preventing this from happening is
the lack of support. Hopefully this is encouragement to make it a
reality, because I think it would be a really cool expansion of ghost
roles and a good way to prevent them from messing with the round in
progress.
2. Downstreams who want to do different things with Science. Personally
I made this PR with voidcrew(shiptest) in mind and think this would make
their lives easier. I didn't expand too much on this because I'm leaving
up mostly to the downstreams to figure out what they want to do with
these systems.

## Changelog

This generally isn't really player facing, since most of the changes
would only come into effect if the config is enabled??

🆑
fix: Research servers now only show servers connected to their techweb.
/🆑

* Adds support for non-science techwebs (+Config)

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2022-11-22 11:47:40 -05:00
SkyratBot
460ab7adf5 [MIRROR] JPS Optimization (Light Botcode) [MDB IGNORE] (#17669)
* JPS Optimization (Light Botcode) (#70623)

## About The Pull Request

Alright. So.
Right now, JPS works like this:
```
code requests path
we enter the actual pathfinding
pathfinding sleeps when it overruns a tick
if it sleeps, it'll then wake up before the mc starts
continue
```
This has annoying side effects. Primarily that we have no real control
over JPS, we just sorta have to eat its cost.
So if there's like 10 different things pathfinding at once, the mc will
have no time to do anything. Hell we might even end up eating into
maptick's time if the jps work is expensive enough (note the cost of
sleeping is not accounted for, and that has overhead)
This has happen before, usually when someone makes a lot of bots, and
it's really annoying.

So then, lets put JPS on a subsystem. That way the MC has control over
it.
But wait, existing code expects to yield and get back a path list, and
that's a sane request.
This is solvable, but requires abusing pass by reference lists, and the
ability to make callbacks into partials (preinsert arguments into them
before they're called, and accept other args later)

Because of this, we can now pass callbacks into pathfinders, allowing
for async use, rather then JUST yielding.

Of note: I've removed the 10 pathfinding datums limit, since
ratelimiting like that is handled nicely by the MC.
I've also removed the 15 second timeout, since mc yielding would trigger
it too often. I'm unsure if this means we don't have exit conditions for
pathfinding, need to talk to ryll. (@ Ryll-Ryll what happens if jps just
like, fails to find a path?)

Also of note: I think bots will fire off more then one pathfinding
attempt at a time if their first takes too long to complete. This is
dumb, why do we do this?

Optimizes JPS by more then 40% by removing redundant for(thing in turf)
loops, and avoiding making proc calls if objects are non dense.
This makes things slightly more fragile, but saves a LOT of time. I
think it's worth it, tho talking to mso it might be possible to do
better. Maybe I should do a LINDA system style thing. (I did a linda
system style thing I fixed it)

Optimizes botscanning, fixes bots not seeing things adjacent to them
The list of types could be a cached typecache
We could inline both checkscan and check_bot
check_bot SHOULD NOT BE CALLED ON EVERY OBJECT IN VIEW HOLY SHIT WHY
We don't need to process adjacent and the shuffled view separately, it's
in fact easier to process them in one block
Renames a var

Moves bot's pathing images to above most floor objects, so they're
visible in maint

## Why It's Good For The Game

Speed. Also manuel will stop killing their server by placing 20000
medibots (fucking icebox man every time)

## Changelog

🆑
fix: Bots will now "notice" you if you're standing right next to them
fix: Bot paths will now draw above things like pipes, rather then below
them
refactor: Changed how pathfinding paths get generated
refactor: Made pathfinding and bot searching significantly faster
/🆑

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

* JPS Optimization (Light Botcode)

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2022-11-22 08:20:39 -08:00
SkyratBot
2848503968 [MIRROR] Improves Readability/Documentation of SSTicker.force_ending [MDB IGNORE] (#17633)
* Improves Readability/Documentation of SSTicker.force_ending (#71329)

## About The Pull Request

Hey there,

force_ending was a boolean (with inconsistent usage, flip-flopping
between using TRUE/FALSE and 1/0 variables), so let's just change it all
over to the macros and call it a good day.

I also updated documentation of the variables in that "code block" in
SSTicker while in the area because changing just one line made it look
ugly. Some of the documentation was no longer current to it's... current
use in code, so I updated those as well.
## Why It's Good For The Game

Pure code improvement, DMdocs are swell, and readability is kino.
## Changelog
Nothing here should affect players.

* Improves Readability/Documentation of SSTicker.force_ending

Co-authored-by: san7890 <the@san7890.com>
2022-11-22 10:59:53 -05:00
SkyratBot
b4fd13b16b [MIRROR] Improve the naming of the element argument hash index selector [MDB IGNORE] (#17588)
* Improve the naming of the element argument hash index selector (#71319)

So confusing name

* Improve the naming of the element argument hash index selector

* sr sync

Co-authored-by: oranges <email@oranges.net.nz>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-11-21 16:27:40 -05:00
Paxilmaniac
8c9bd528d4 Makes the event voter low chaos event system obey the toggle random events off button, also changes event voter permissions to be the same as literally everything else event related (#17466)
* you spelled trigger wrong

* Update modular_skyrat/modules/event_vote/code/event_vote.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* requested changes

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2022-11-19 11:40:47 -05:00
SkyratBot
c9011e3358 [MIRROR] Fix anomaly refineries refusing raw dimensional cores [MDB IGNORE] (#17538)
* Fix anomaly refineries refusing raw dimensional cores (#71150)

## About The Pull Request
SSmapping.anomaly_hard_limit_by_type was apparently missing the new
dimensional anomaly core
incredible innit?
Adds the dimensional anomaly core to the anomaly_hard_limit_by_type
## Why It's Good For The Game

Fixes #71147

## Changelog
🆑
fix: Raw dimensional cores can now be refined properly
/🆑

* Fix anomaly refineries refusing raw dimensional cores

Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com>
2022-11-17 17:25:11 -08:00
SkyratBot
d99be10b78 [MIRROR] Fixes Golems not spawning on Lavaland [MDB IGNORE] (#17541)
* Fixes Golems not spawning on Lavaland (#71017)

## About The Pull Request

Golems is apparently disabled on Icebox, but isn't disabled on Lavaland.
However, blacklisting ruins doesn't care for maps, and will blacklist
all, as if it were using all maps at once. This isn't a problem because
Lavaland and Icebox do not share common ruins, except for one: Golem
ship.

## Why It's Good For The Game

Config now works as it's supposed to, Golems should spawn on Lavaland
again (assuming it's enabled in config, I dont keep up to date with
that)

## Changelog

🆑
fix: Ruins blacklisted from icebox shouldn't also blacklist it from
lavaland, and vice versa.
/🆑

* Fixes Golems not spawning on Lavaland

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Jolly <70232195+Jolly-66@users.noreply.github.com>
2022-11-17 17:20:39 -08:00
SkyratBot
24eb8217c0 [MIRROR] Builds logic that manages turfs contained inside an area [MDB IGNORE] (#17379)
* Builds logic that manages turfs contained inside an area

* Mirror Conflict

* Modular!

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Funce <funce.973@gmail.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-11-16 14:42:22 -05:00
SkyratBot
618bb34eea [MIRROR] Strays away from GLOB.machines when possible [MDB IGNORE] (#17478)
* Strays away from GLOB.machines when possible (#71100)

## About The Pull Request

This replaces needless GLOB.machines with more precise lists whenever
one existed, plus adding a new one for CTF machines.

## Why It's Good For The Game

GLOB.machines holds every single /obj/machinery in the game, so checking
the whole list for stuff is pretty big. This aims to cut that down by
using smaller lists whenever possible. I also gave CTF a new list
because it checked machines very often.

## Changelog

Nothing player facing.

* Strays away from GLOB.machines when possible

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2022-11-16 11:14:48 -05:00
Zonespace
f7c26bbf25 515 Compat (#17465)
* ONLY SKYRAT CHANGES

* ACTUALLY SKYRAT CHANGES

* yolo, revert later

* Update alternate_byond_versions.txt

Co-authored-by: AnturK <AnturK@users.noreply.github.com>
2022-11-15 06:59:06 +00:00
Tastyfish
69df5a8320 [MISSED MIRROR] Giant Spider action fixes & Action feedback (#17439)
* missed mirror 70848

* SR modular
2022-11-11 06:42:28 -08:00
SkyratBot
fd699e46ce [MIRROR] Refactors sound toggle prefs away from legacy toggles, introduces a new sound pref for jukeboxes [MDB IGNORE] (#17413)
* Refactors sound toggle prefs away from legacy toggles, introduces a new sound pref for jukeboxes

* Update living_defense.dm

* fix

* Update deprivation_helmet.dm

Co-authored-by: Thunder12345 <Thunder12345@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2022-11-10 14:27:14 -08:00
SkyratBot
7f09df0bda [MIRROR] Fixes a runtime in ssmapping caused by me forgetting what iteration pattern I was using [MDB IGNORE] (#17360)
* Fixes a runtime in ssmapping caused by me forgetting what iteration pattern I was using (#70965)

Fixes #70932

* Fixes a runtime in ssmapping caused by me forgetting what iteration pattern I was using

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2022-11-04 10:56:15 -07:00
SkyratBot
94dfc81975 [MIRROR] Fixes issues with printing posters from the library management computer [MDB IGNORE] (#17344)
* Fixes issues with printing posters from the library management computer (#70471)

## About The Pull Request
Posters are kind of insane and they require that the poster item have
either a poster_type defined in the type or that you pass the structure
version of the poster to /new() otherwise they don't work. The weird
thing is that the structure needs to be in the contents of the item too,
or it again won't work (it won't remove the poster from your hands when
placing it). I fixed it so all you need to do is pass the structure
version of the poster to /new() on the item and it will move the
structure to the contents of the item if needed. It's still a bit insane
but it's better than it was and it fixed the bug.

Also SSLibrary.printable_posters was grabbing the directional mapping
helper of the random poster and so when you printed it and placed it,
you'd get confusing results. I made a quick fix to stop that from
happening.

## Why It's Good For The Game

Bug fixes are generally good things.
Fixes #70382
Fixes #66504

## Changelog

🆑 VexingRaven
fix: Fixed posters printed from the library console staying in your hand
when you place them
fix: Fixed Random Official Poster printed from the library console
always placing the west-facing variant no matter where you place it
/🆑

* Fixes issues with printing posters from the library management computer

Co-authored-by: VexingRaven <msgerbs@users.noreply.github.com>
2022-11-04 13:14:35 -04:00
SkyratBot
8989c5aa6c [MIRROR] Fixed an infinitely-printing log message about pipenets. [MDB IGNORE] (#17312)
* Fixed an infinitely-printing log message about pipenets. (#70963)

## About The Pull Request

A slight logging error resulted in a specific warning about pipenets
never being suppressed, instead continually printing the message that
states that further messages will be suppressed. This was caused by the
limit on pipenet warnings being decremented in the wrong place. This
oversight has been corrected.
## Why It's Good For The Game

![image](https://user-images.githubusercontent.com/105025397/199134575-ce47f47c-6796-4478-8478-19087308bfd8.png)

This is really annoying to scroll through.
## Changelog
🆑
fix: Properly suppressed a message about suppressing messages.
/🆑

* Fixed an infinitely-printing log message about pipenets.

Co-authored-by: lizardqueenlexi <105025397+lizardqueenlexi@users.noreply.github.com>
2022-11-02 01:04:18 -04:00
SkyratBot
3a3c9d9e11 [MIRROR] Save 0.1s in generate_station_area_list [MDB IGNORE] (#17294) 2022-10-31 18:43:55 -07:00
SkyratBot
4741dc4ac9 [MIRROR] Fix halloweens races [MDB IGNORE] (#17270)
* Fix halloweens races

* update modular

* Apply suggestions from code review

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-10-31 18:00:11 +00:00
SkyratBot
e03bb250c5 [MIRROR] Ensures early assets init when expected during unit tests, [MDB IGNORE] (#17259)
* Ensures early assets init when expected during unit tests,  (#70753)

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

* Ensures early assets init when expected during unit tests,

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2022-10-31 14:09:52 +00:00
SkyratBot
375fea374a [MIRROR] Optimizes qdel related things (slight init time savings) [MDB IGNORE] (#17240)
* Optimizes qdel related things (slight init time savings)

* lang holder

* cleanup custom spawners slightly

* ref update

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-10-30 23:15:38 -04:00
SkyratBot
62c02030e3 [MIRROR] Convert mouse and rat to basic mobs [MDB IGNORE] (#17215)
* Convert mouse and rat to basic mobs

* run the UpdatePaths script you borb

* packs and nests

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-10-28 21:27:47 -04:00
SkyratBot
3c3774f16f [MIRROR] Makes jobconfig.toml respect values of 0 and Fixes the Generate Job Configuration verb when there's a job that wasn't in the jobconfig.toml already [MDB IGNORE] (#17161)
* Makes jobconfig.toml respect values of 0 and Fixes the Generate Job Configuration verb when there's a job that wasn't in the jobconfig.toml already (#70738)

About The Pull Request

Basically it was in the documentation of #70199 that this verb was meant for when a new job is added, or for downstreams that have more jobs than /tg/ does. So I tried to use it, and it runtimed because it didn't have one of our own jobs in the jobconfig.toml file already, thus completely defeating the point of the verb.

So I just scooted the variable declarations into the proper null-checked if block, and now it works just fine!

Also, I noticed that a job we had disabled via config wasn't getting properly disabled, turns out values of 0 in the config weren't being respected, and were getting reset to the codebase default. This behavior is now fixed, and shouldn't be an issue anymore, hopefully.

Why It's Good For The Game

Makes a useful verb, actually work for its intended usecase :)

Changelog

🆑 GoldenAlpharex
config: The Generate Job Configuration verb now works as expected when there's at least one job in-game that doesn't exist in the new jobconfig.toml file already.
fix: Any value that is set to 0 in jobconfig.toml will no longer default to the codebase's default, and will actually be considered as 0.
/🆑

* Makes jobconfig.toml respect values of 0 and Fixes the Generate Job Configuration verb when there's a job that wasn't in the jobconfig.toml already

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2022-10-25 22:29:03 +00:00
SkyratBot
3b7abd584a [MIRROR] Change admin message for undeleted queries to stack trace. [MDB IGNORE] (#17137)
* Change admin message for undeleted queries to stack trace. (#70589)

Change admin message to stack trace

The admins don't know what to do with this error and I swear to god if I get another ping without a round id or server name I am going to literally explode

* Change admin message for undeleted queries to stack trace.

Co-authored-by: oranges <email@oranges.net.nz>
2022-10-24 22:31:39 -04:00
SkyratBot
66063a0b44 [MIRROR] Fixes runtime from voting action Remove() [MDB IGNORE] (#17108)
* Fixes runtime from voting action `Remove()` (#70702)

Fixes runtime from voting actions due to calling remove on ownerless actions

* Fixes runtime from voting action `Remove()`

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2022-10-22 17:11:53 -04:00
SkyratBot
7522903c16 [MIRROR] Seven Billion Hour Wait Time - Or, Expanded Job Config (TOML time) [MDB IGNORE] (#16962)
* Seven Billion Hour Wait Time - Or, Expanded Job Config (TOML time)

* conflict

* update modular

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-10-22 08:11:56 -07:00
SkyratBot
75c5d3d10d [MIRROR] fixes _queue_verb() runtiming from /client/Click() thousands of times [MDB IGNORE] (#17034)
* fixes _queue_verb() runtiming from /client/Click() thousands of times (#70647)

* fixes _queue_verb() runtiming from /client/Click() and adds info

* Update code/controllers/subsystem/verb_manager.dm

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

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

* fixes _queue_verb() runtiming from /client/Click() thousands of times

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2022-10-20 12:29:05 +01:00
SkyratBot
d7c5ab7987 [MIRROR] PKP Mind Virus: Glorfing Cigs edition [MDB IGNORE] (#16995)
* PKP Mind Virus: Glorfing Cigs edition

* conflicts

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-10-20 12:22:53 +01:00
SkyratBot
612568daa0 [MIRROR] Swaps sleep() to use SECONDS define [MDB IGNORE] (#16973)
* Swaps sleep() to use SECONDS define

* merge conflicts and skyrat modules

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-10-19 19:43:24 -04:00
SkyratBot
59dc5c36b7 [MIRROR] Cleans up the fallout from plane cube [MDB IGNORE] (#17003)
* Cleans up the fallout from plane cube (#70235)

* Cleans up the fallout from plane cube

Alright.
Makes cleaning bubbles respect planes
Adds support for updating overlays on move, fixing an issue with pointing at items
Adds better error messages for failing to provide args for mutable_appearance()
Fixes a bug where string overlays were not respecting insertion order

* Adds documentation for offset spokesman and offset_const

* Better stack trace

* Removes some redundant uses of cached MAs

At this scale, attempting to cache MAs like this has 0 impact on anything
And just makes things more messy then they need to be

* ensures fullscreen objects START offset, so things are always proper

* ensures chatmessages always have the right offset

* fixes compile

* whoops, the above lighting plane should actually be ABOVE the lighting plane

* fixes compile, also cleans up the fire overlay a tad

* Adds a unit test for plane masters that are shrunk by multiz being double shrunk

This is slightly hacky because of how I'm handing the plane master
group, but it's not THAT bad, and gives me some real good coverage

* Properly targets the seethrough plane at the game world plate. This fixes unit tests, and also just makes more sense

* whoops

* oh

* adds datum support for allocate(), cleans up a harddel from testing

* Makes camera chunks index at 1, and also makes them support non powers of two sizes, since that was unneeded

* fixes runtime in allocate

* Cleans up the fallout from plane cube

* liquid tweaks

* oop

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-10-19 19:43:05 -04:00
SkyratBot
629dd42b25 [MIRROR] [MDB IGNORE] Makes only station areas, station areas. [MDB IGNORE] (#16989)
* [MDB IGNORE] Makes only station areas, station areas.

* should fix it

* area fixes for AM templates

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
2022-10-19 16:45:37 -04:00
SkyratBot
7a2a31fb35 [MIRROR] [NO GBP] fixes some silly stairs slipups [MDB IGNORE] (#16998)
* [NO GBP] fixes some silly stairs slipups (#70628)

Two things:
Stone stairs didn't actually line up, not a soul would have noticed because mappers probably aren't gonna use it for a while, but I fixed it anyways.

Second, you could still build mat datum stairs freely without the whole frame system, invalidating its existence, so I've fixed that too. You can still build mat datum stairs, you just need a stairs frame made of iron or wood first.

* [NO GBP] fixes some silly stairs slipups

Co-authored-by: Paxilmaniac <82386923+Paxilmaniac@users.noreply.github.com>
2022-10-19 18:56:54 +01:00
SkyratBot
d7c9ed4afb [MIRROR] Quickie runechat op [MDB IGNORE] (#16940)
* Quickie runechat op (#69137)

reintroduces the intermittent queuing behavior found in #65791 since i can actually recover that part. now after MeasureText() puts us in the player input portion of the tick it will queue a callback for the next tick to resume chat message creation

generate_image() is a highly overtiming proc, now its less so

* Quickie runechat op

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
2022-10-18 02:20:25 +00:00
SkyratBot
c60daaa150 [MIRROR] Checks Filters For Cross-Station Messages [MDB IGNORE] (#16868)
* Checks Filters For Cross-Station Messages

* merge conflict

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-10-17 13:58:00 -04:00
SkyratBot
f3e84bca09 [MIRROR] Stairs DLC: Buildable stairs, material datum staircases, fall up a staircase [MDB IGNORE] (#16925)
* Stairs DLC: Buildable stairs, material datum staircases, fall up a staircase (#70504)

Adds a few new types of stairs, and makes stairs buildable within rounds.
Also removes the terminator sprite variation for stairs, because its basically unused and really not needed with plane cube multiz.

* Stairs DLC: Buildable stairs, material datum staircases, fall up a staircase

Co-authored-by: Paxilmaniac <82386923+Paxilmaniac@users.noreply.github.com>
2022-10-17 07:55:00 -07:00
SkyratBot
68d1a1cec3 [MIRROR] Bileworm Health Patch: Evolutionary Leap, Vileworms, Proximity Spawning Rules, Better Loot [MDB IGNORE] (#16821)
* Bileworm Health Patch: Evolutionary Leap, Vileworms, Proximity Spawning Rules, Better Loot

* Feex

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2022-10-12 23:41:48 +01:00
SkyratBot
2defe4a7f1 [MIRROR] Prevent mice from randomly spawning when we're running unit tests [MDB IGNORE] (#16823)
* Prevent mice and satchels from randomly spawning when we're running unit tests (#70443)

* Prevent mice from randomly spawning when we're running unit tests

Co-authored-by: san7890 <the@san7890.com>
2022-10-12 17:44:33 -04:00
Dani Glore
852ce42dbe [SEMI-MODULAR] Synthetic Quirks Rebalancer & Quirk Hider (#16697)
* Makes liquid_solder a liquid, adjusts solder and system cleaner math to use delta_time

* Adds boolean to quirks to hide them from TGUI and the character prefs window

* Renames brainproblems from Brain Tumor to Brain Degeneration. Refactors brainproblems and blooddeficiency for synths, adds species-specific detours to quirks, adds prefab pills and pillbottles for synth meds

* Add synth pills to tgstation.dme

* Adding forgotten brainproblems med record text

* Fixes quirk icons failing unittests

* Further fixes icons failing unittests

* Remove semicolon from quirks.dm

Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>

* Relocated qdel calls, renamed bp_synth and bd_synth private vars, changed is_species to isrobotic

Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2022-10-10 14:40:36 +01:00
SkyratBot
5103c1ea7c [MIRROR] Fixes multi-Z ruins (Ice Moon Mining Site) not spawning [MDB IGNORE] (#16557)
Fixes multi-Z ruins (Ice Moon Mining Site) not spawning

Co-authored-by: VexingRaven <msgerbs@users.noreply.github.com>
Co-authored-by: Tastyfish <crazychris32@gmail.com>
2022-10-03 00:44:55 -04:00
SkyratBot
9bf006d189 [MIRROR] Multiz Rework: Human Suffering Edition (Contains PLANE CUBE) [MDB IGNORE] (#16472)
* Multiz Rework: Human Suffering Edition (Contains PLANE CUBE)

* skyrat changes

* bodyparts merge

* unres door floorlight fix

* Future upstream fix for blindness

* upcoming upstream airlock fix

* fix button emissive

* Fix FOV markings?

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-10-02 23:30:09 -04:00
SkyratBot
a006328dd2 [MIRROR] Bump byond up to 514.1588 [MDB IGNORE] (#16514)
* Bump byond up to 514.1588 (#70168)

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

* Bump byond up to 514.1588

* Fixed le monke

Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: Tastyfish <crazychris32@gmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2022-10-02 12:16:26 -04:00
Zonespace
1481db3dab Improves the "disable ERP" config (#16411)
* i'm stealing the erp

* h

* Apply suggestions from code review

Co-authored-by: Tastyfish <crazychris32@gmail.com>

Co-authored-by: Tastyfish <crazychris32@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-10-02 14:20:24 +00:00
SkyratBot
b61a3f981d [MIRROR] Unit tests powernets to make sure the whole station is connected. [MDB IGNORE] (#16503)
* Unit tests powernets to make sure the whole station is connected. (#70090)

* Unit tests powernets to make sure the whole station is connected.

* fixes cable tests for blueshift and raptor

* single cable misplacement

* hard map reset

* hec

* tramstation armory stray cable

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
Co-authored-by: Tastyfish <crazychris32@gmail.com>
2022-09-29 01:24:37 -04:00
SkyratBot
3d1013078d [MIRROR] "It has been 0 days since the last incident" sign [MDB IGNORE] (#16516)
* "It has been 0 days since the last incident" sign (#70099)

Adds a fun sign to various places in engineering which tracks how many days (read: rounds) it has been since last time the engine delaminated.

* "It has been 0 days since the last incident" sign

Co-authored-by: Jacquerel <hnevard@gmail.com>
2022-09-28 23:54:54 -04:00
SkyratBot
63f635d57a [MIRROR] events now have to check parent to see if they can run [MDB IGNORE] (#16506)
* events now have to check parent to see if they can run (#70128)

* events now have to check parent to see if they can run

* update supermatter_surge

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-09-28 17:20:10 -04:00
SkyratBot
110fd07f34 [MIRROR] Micros the lighting subsystem (Saves a second of init) [MDB IGNORE] (#16461)
* Micros the lighting subsystem (Saves a second of init)

* Update stat_tracking.dm

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2022-09-28 12:19:43 -07:00