Commit Graph

2761 Commits

Author SHA1 Message Date
SomethingFish
edb232b692 March TGU (#953)
* lol.

* bit of changes

* deletes stuff

* some map path updates

* more changes

* deletes unit test that was gonna be deleted in tg

* see if this fixes anything
2023-04-04 22:12:01 -04:00
John Willard
6552e93874 Late feb tgu (#927)
* TGU again

* Update infiltrator.dm

* i will damn you to hell sinner
2023-03-10 01:06:37 -03:00
John Willard
34741540c7 REAL TGU incoming (#917)
* The REAL TGU

Pepsi's TGU is completely empty and has been sitting around doing nothing for a while.
I wanted to get my PDA stuff in and it's been a while since I did one, so I'm doing a TGU.

* Ports over PDA fix

* fix dme

* oops

* Fixes wonderland anomalies

* Update mobspawner.dm

* Update Heliostation.dmm
2023-03-01 23:43:35 -03:00
A miscellaneous Fern
f3397e3136 January TGU - First Draft (#879)
* Update beefman.dm

* Update beefman.dm

* xsaxsfvvvvvvvv

* Update shaded_bloodsucker.dm

* yeah that thing

* FUCK you

* Update hunting_contract.dm

* dd

* vdvdfv

* Update monsterhunter_weapons.dm

* Update whiterabbit.dm

* onokkn

* Update monsterhunter_weapons.dm

* Update monsterhunter_weapons.dm

* efe

* Update whiterabbit.dm

* yeaywa

* Update red_rabbit.dmi

* oihop

* Update HunterContract.js

* wonderland.dm

* gs

* dcd

* Update rabbit.dmi

* ass

* fvd

* Update paradox_rabbit.dm

* f

* Update tgstation.dme

* Delete heartbeatmoon.dmi

* shtntb

* sed

* sfe

* Update monsterhunter_weapons.dm

* cdc

* Update wonderland.dm

* dgrd

* wef

* b

* pipkk

* Update hunting_contract.dm

* Update paradox_rabbit.dm

* wr

* Update worn_mask.dmi

* some documenting

* Update areas.dm

* eg

* Update white_rabbit.dm

* Update HunterContract.js

* s

* Update weapons.dmi

* Update weapons.dmi

* Jack in the bomb

* some signals

* ui

* h

* y

* music

* Update wonderlandmusic.ogg

* f

* v

* cleanups

* g

* a

* t

* y

* g

* a

* o

* first commit

* Adding our stuff back in

* k

* Before procs

* proc refs

* carps

* Fixes

* shuttles

* dumb dumb names

* I hate windows I hate windows

* I hate windows I hate windows

* h

* Selenestation has issues

* Update monsterhunter_weapons.dm

* eretics

* Update weapons.dmi

* Update monsterhunter_weapons.dm

* g

* kpop

* r

* m

* grgr

* Update simple_animal_freeze.dm

* Update wonderland_apocalypse.dm

* Update wonderland_apocalypse.dm

* d

* Update fulp_defines.dm

* ff

* Update wonderland.dmm

* Update tgstation.dme

* Update infil_objectives.dm

* Update infil_objectives.dm

* Update monsterhunter_weapons.dm

* Update monsterhunter_event.dm

* Update monsterhunter_event.dm

* Update areas.dm

* Update monsterhunter_event.dm

* Update monsterhunter_weapons.dm

* Step 0, version 2

* step 0.5 - version 2

* step 1 - version 2

* 2.5 version 2

* fix

* Mapping

* okay fine

* more mapping

* uuuuu
hhhh

* fixes

* help me

* hurry

* I'm killing the mf that did access helpers on this map

* Welp, we lost.

* Or did we?

---------

Co-authored-by: SmoSmoSmoSmok <95004236+SmoSmoSmoSmok@users.noreply.github.com>
Co-authored-by: Pepsilawn <reisenrui@gmail.com>
Co-authored-by: SgtHunk <68669754+SgtHunk@users.noreply.github.com>
2023-02-01 03:57:55 -03:00
A miscellaneous Fern
82e5c65589 December TGU (#856)
* Let's try again

* i forgot to stage these

* Green checks. Hopefully.

* Z-edit it is

* That should do it (also kills Raid Edwards)

* Whoopsie daisy.

* Beef station

* Saves pubbystation

* Map fixes

* Ticket machines and sorting helpers
2022-12-28 04:53:04 -03:00
SomethingFish
6280f5cca0 November TGU (#846)
* this just fixes the dme its still pretty unfinished

* fixes bloodsuckers (and some silence stuff)

* fixed costumes and beefman its time to TEST

* fixes some stuff

* ITS DONE (?)

* it wasnt done.

* THE THINGS ARE FIXED RAAAAAAAAAAAAAH

* me when i have to FIX MAPS

* jk actually fixes the maps this time i promise

* i think this probably fixes the screenshots maybe

* it should work now (i hope)

* i think this dependency is helpful

* how

* please fix some of the errors

* fucked up the dio stand pathing

* tgedit for the simple animal freeze test

* lets see if this works

* fixed the merge conflict

* i think thats it?

* there are. a few new unit tests.

* THE NEW UNIT TESTS BROKE EVERYTHING

* fixes all this dumb shit

soooooy quien soyyyy no preciso identifiiiicación

* prison radio be gone

* brings back helio sec (lol)

* mobs aren't used anywhere anymore kill them

* fixes screenshots

* NOTHING BUT SCRAP

* whoops haha silly me

rewrites a few keys to fix corruption

* gives felinids brain damage (SPEEDMERGE)

* welcome to fulpstation

Co-authored-by: SgtHunk <68669754+SgtHunk@users.noreply.github.com>
2022-11-25 00:51:07 -03:00
FernandoJ8
342a7cc502 Ports the halloween races fix from tg (#70874) (#842)
* if(!(SSevents.holidays && SSevents.holidays

* fuck this formatting in particular
2022-11-06 01:06:17 -03:00
Pepsilawn
5566dc322b [MDB IGNORE] [IDB IGNORE] October TGU (#826)
* time to deal wth linters

* hello

* hi

* hey

* Fixes bat shapeshifting

* fixes tile decals

* removes grille
2022-10-15 15:18:57 -03:00
FernandoJ8
8261383d49 [MDB IGNORE] TGU: A new and improved paperwork economy AKA second august TGU (#796)
* Okay I think it's fine this time

* Forgot that I had changed the var name

* Weird console var

* and pubby

* strongdmm moment

* Screenshot tests

* Gives pubby paperwork and other misc. fixes

* faxes and fixes

* forgot to change the area

* Forcefully updating the branch, question mark?

* uh... yea

* why's the path like that

* a bunch of shit

* and pubby

* Part 1

* Final fix

* Mapping & co

* fix

* God this commit history is a mess

* kill kill murder kill murder

* areas

* and the one wire
2022-08-27 16:22:33 -04:00
Pepsilawn
450295354b Updates the Fulpstation codebase to the 01/08/2022 version of the tgstation repository (#755)
* Automatic changelog compile [ci skip]

* Update readme.md

* Automatic changelog compile [ci skip]

* what

* Wow

* Foiled by my very own grep check

* dont tell anyone i forgot to update basemaps

* The gags vendor updatepath script is broken

* can be untg-edited later just want to see TGU running soon

* Revert "can be untg-edited later just want to see TGU running soon"

This reverts commit c14b2be919.

* I like this better

* test

* i am sleep deprived

* Humanoid screenshot tests 4 backpack resprite

* infils have backpacks too apparently

* makes bloodsuckers not cooldown anymore

* removes more cooldowns

* fixes some bugs

Co-authored-by: Changelogs <action@github.com>
Co-authored-by: JohnFulpWillard <53777086+JohnFulpWillard@users.noreply.github.com>
2022-08-05 02:26:53 -04:00
John Willard
e1ef8baa2d July TGU (kills silver slime food) (#739)
* TGU

* runs updatepaths

* fulp map fixes
2022-07-23 16:12:51 -04:00
John Willard
d759c95177 TGU (Saves Selenestation) (#716)
* tgu

* Update routes.js

* dme

* Fixes proc holders 'n' stuff

* updates fulp maps + minor bs fix

* prettier

* AI uploads

* prettierx

* you should pass ci... now!

* Update _spells.dm

* F this Ci

* selene evac shuttle

* fixes targeted powers

* tgu

* Update barsigns.dm

* Fixes Ci

* prettierx
2022-07-11 21:38:54 -06:00
Pepsilawn
ed695f0248 June TGU thats so cool and awesome (#652)
* wow awesome

* pubby

* Most linters

* Selene part one

* Helio part one

* Helio part 2

* Pubby Part One

* Pubby Part 2

* Pubby Part 3

* Selene Part Two

* Selene Part Three

* Door name finale

* Bonus AI sat fixes

* Infil and BS rulesets

* Some fixes

* Selene fix test

* Selene shuttle fix

* Please work helio

* Update Heliostation.dmm

* Update PubbyStation.dmm

* debugging

* Debugging again

* Extra debugging

* Revert "Debugging again"

This reverts commit bb22d37fc9.

* restore

* fernando

* restore helio

* Selene test

* fernando2

* nericopouci zusggetion

* LOL FUCK YOU UPSTREAM I WIN IN THE END

* Updates TGU + re-adds unit test + Heliostation

* Cargo shuttle fixes

* pubby + re-adds fulp tgui

* Selene Prison

* more tgu fixes

fixes emergency shuttles, any problem I saw with pubby, and our json's having wrong area paths

* maybe fixes the rest of pubby

* Fixes some minor problems with prison shuttle

* prison shuttle fixes

* pubby fixes

* more fixes to Heliostation

* more fixes to pubby

* maybe the last pubby fix needed

* Fixes science console not having a crate location

* ports my code over so checks can not fail

* Pubby fixes

Fixes missing APCs, Air alarms, lights, and fixes AT roundstart problems

* Removes TEG, replaces with TEG boards

* Fixes problems with Heliostation

* fixes a minor screwup

* increases helio cargo shuttle by 1 tile

* test commit

* Revert "test commit"

This reverts commit dad04936d3.

* adds an extra crash to see what the problem is

* dont crash, actually

* makes proper shuttle subtypes

* another test

* Revert "another test"

This reverts commit e902c090df.

* Update monsterhunter_event.dm

* hardcodes helio

* i give up

* Update Heliostation.dmm

* add supply mapping log

* adds more mapping logs

* adds another log

* MORE logging

* swapping for another test

* Update maps.dm

* Revert "Update maps.dm"

This reverts commit 5b4433766b.

* Revert "swapping for another test"

This reverts commit f9389f54a5.

* swaps around logging

* more in-depth logging

* removes dwidth from supply port

* increases size of helio dock

* logging

* Update map_template.dm

* Update map_template.dm

* loooogs

* g

* s

* w

* Update reader.dm

* Update reader.dm

* acces helpes selene

* sry

* adds our maps to ci

* Update build.js

* Update build.js

* Have templates.dm check for child

* Revert

* We call parent instead

* Might be important idk

* woops

* restore edited file

* idk if we need this

* Revert "idk if we need this"

This reverts commit c35c532b5a.

* Revert "restore edited file"

This reverts commit 38c6bc3e35.

* Revert "woops"

This reverts commit 12c979a32b.

* Revert "Might be important idk"

This reverts commit 206f18171f.

* revert debug stuff

* test

* Revert "test"

This reverts commit 7b82ec123d.

* more fixes

* test

* Update SeleneStation.dmm

* Revert "test"

This reverts commit 26a13f61f5.

* Update SeleneStation.dmm

* my bd

* Moving shuttles to tg files

* test

* Revert "test"

This reverts commit 7912f8ac23.

* Revert "Moving shuttles to tg files"

This reverts commit d220c1a46a.

* new idea

* Revert "new idea"

This reverts commit a7d1f1a4c2.

* Revert "Revert "Moving shuttles to tg files""

This reverts commit 0b427cc070.

* possible fix?

* Docking ports

* Update SeleneStation.dmm

* Dockers

* Mining

* Arrivals

* Prison conveyor & selene cargo linters

* SHOULD BE GOOD PROBABLY?

* Update SeleneStation.dmm

* Lets Selene's supply shuttle land

* Update SeleneStation.dmm

* Saves heliostation

* Saves Selenestation

* new ordnance

* Extra fixes

* Update Heliostation.dmm

* adds heliostation permabrig shuttle

* Adds cameras

* helio fix + ports garbage day fix

* FISHING

* erm i guess

* rerun tests

* Update README.md

* Update janitor.dm

* Beef

* saves heliostation

Co-authored-by: JohnFulpWillard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: SMOSMOSMOSMOSMO <95004236+SmoSmoSmoSmok@users.noreply.github.com>
2022-06-19 07:48:06 -06:00
John Willard
d535503645 [MDB IGNORE] May TGU (#635)
* Does the TG Update 😃

* updates beef stations

* test

* Revert "test"

This reverts commit 5b0f78aa70.

* F'ed up

* removes fulp from the .dme to see if we're causing it

* removes more fulp stuff

* ANOTHER fulp edit

* Revert "ANOTHER fulp edit"

This reverts commit c88a4f16c3.

* Revert "removes more fulp stuff"

This reverts commit fd33262a93.

* Revert "removes fulp from the .dme to see if we're causing it"

This reverts commit eac08bdd21.

* remove just gags

* Revert "remove just gags"

This reverts commit 9953031344.

* removes the game

* Revert "removes the game"

This reverts commit ef2679ad76.

* removes the game again

* Revert "removes the game again"

This reverts commit 7cb3379b68.

* deletes only ERTs

* Revert "deletes only ERTs"

This reverts commit e6548bbcec.

* deletes modsuits

* Revert "deletes modsuits"

This reverts commit b0fb973801.

* fix checks please

* second attempt

* attempt 3

* modsuit stuff

* id trimmers to all offices

* tgu again + removes fulp ert

* pass checks... Now!

* minor screwup my bad

* Pass checks... Now!

* pass checks.. Now!

* fix checks... Now!

* fixes selene windoors

* fixes deputy mood boost

* delimber organs
2022-05-19 06:58:33 -06:00
John Willard
5bea28c809 [MDB IGNORE] April TGU (#602)
* im so confused

* fix helio

* fix to maps

* FIXES

* fixes bloodsucker powers

* fix targeted powers

* re-adds kindred archives

* cryo fix to all maps + selene fix

* visible instead

* pubby incinerator

* pubby new chem and area fixes

* ???

* incinerators

* more map fixes

* fixes beef limbs

* im lost

* update again

* stuttering

* maybe fixes checks

* Update bloodsucker_datum.dm
2022-04-18 20:07:38 -06:00
John Willard
15f80ab884 [MDB IGNORE] TGU (#544)
* TGU yea yeah

* hopefully kills all lattices in walls

* another go

* more lattices

* pubby fix

* maybe the last lattices fix

* makes checks run again

* saves selene station ! 😃

* little bfenem :)

* new tgu + fulp fixes

* map fixes

* i rember 😄

* fix selene map merge conflicts
2022-03-23 07:40:37 -06:00
Pepsilawn
f9928fac60 [MDB IGNORE] [IDB IGNORE] feubrary tgu (#505)
* Automatic changelog compile [ci skip]

* Update readme.md

* Automatic changelog compile [ci skip]

* what

* swagging

* i lied about the laundry room bit that was never part of the first commit but it is now although only solitaire and pubby has it because one the others its not a proper room because its open into dorms or the bathrooms

* woops

* there we go

* WHY was pubby beepsky a varedited secbot instead of the normal subtype

* PLEASE tel me i caught them all

* defeats heliantus

* Update Solitairestation.dmm

* Update Heliostation.dmm

* please tell me thats all of them

* i am full of rage

* i THINK thats all for the dupe cables

* should be good

* i never want to see heliostation again in my life

* sexy mime override

* merge conflicts in exchange of linter fails

* solitaire

* Update tgstation.dme

* solitaire locker room

* will that fix it

* Update beef_station.dmm

* Update tgstation.dme

* linters

* Update Solitairestation.dmm

* linters

* tgu again

* restores the readme

Co-authored-by: Changelogs <action@github.com>
Co-authored-by: JohnFulpWillard <53777086+JohnFulpWillard@users.noreply.github.com>
2022-02-10 19:58:29 -07:00
John Willard
f000069ecb [MDB IGNORE] [IDB IGNORE] TGU (#471)
* it compiles your honor

* shit

* TG update part 2

* adds trigger_flags

* velvet fixes

* tgu again

* kindredarchives

* runs checks again

* test: removes all fulp code

* Revert "test: removes all fulp code"

This reverts commit 80cb3de1b4.

* test 1

* Update job.dm

* Revert "Update job.dm"

This reverts commit e38d6d2963.

* Revert "test 1"

This reverts commit e26ab3aef8.

* maybe fix checks idk

* Revert "maybe fix checks idk"

This reverts commit 9e8013edfb.

* tries something else

* Revert "tries something else"

This reverts commit 71776497a0.

* Revert "Revert "maybe fix checks idk""

This reverts commit 08a2dfdab2.

* Revert "maybe fix checks idk"

This reverts commit 9e8013edfb.

* Revert "Revert "test 1""

This reverts commit 6ef4c657b7.

* brings back lost fulp stuff (lol)

* breaks checks again

* removes deputy config, fixes checks finally

* tgu again
2022-01-22 06:31:43 -07:00
John Willard
468ba0f1c8 [IDB IGNORE] [MDB IGNORE] December TGU (#433)
* TG UPDATE REAL

* fix checks probably

* TGU, minus hardsuit stuff.

* oops

* haha this isnt even needed

* re-adds batform

* Pepsi's Fulp ERT MODsuits (#21)

* makes beef cyto the parent type of a now existent parent

* Removes ERTs Guns (#23)

* fix checks

* F OFF

* Update Solitairestation.dmm

* Update Solitairestation.dmm

* tg update again, removes maidborgs

* FU (fulp update)

* FUCK YOU SOLITAIRE

* Update README.md

* Update species.dm

* not my fault you prick (#24)

* digi fix

* tgu

Co-authored-by: Pepsilawn <reisenrui@gmail.com>
2022-01-01 12:00:22 -07:00
John Willard
4f0f69fd95 [MDB IGNORE] November TGU (#406)
* TGU

* mappings

* how did i not notice this

* test

* fix to huds

* departmental request consoles

* Armsky

* tgu

* deletes cryopods (finally)

* Update tgstation.dme

* deletes pubby's cryopods

* Fixes helio and selene toxin ranges

* injector to vent on all supermatters

* map fixes

* directional 5/6 cameras are now fixed

* stool directionals on selene

* .

* re-adds kindred archives
2021-11-23 06:57:04 -07:00
John Willard
05e85a5b2f [MDB IGNORE] ID fix (#396)
* YEA YEAH YE

* Update PubbyStation.dmm

* tgu

* except that

* Update SeleneStation.dmm

* revert https://github.com/tgstation/tgstation/pull/62568

* SM fix on fulp maps
2021-11-15 15:31:16 -07:00
John Willard
b7ce41dec7 [MDB IGNORE] "Holy shit we need the halloween fixes" TGU (#395)
* tgu

* idk this seems to work

* rad collector stuff, the pubby update

* pubby update

* Helio and finishing Pubby

* map stuff

* drone dispensers

* tgu
2021-10-28 18:09:53 -06:00
John Willard
c919ffd3f9 egg (#380) 2021-10-11 17:41:13 -06:00
John Willard
da88f85361 [MDB IGNORE] [IDB IGNORE] Late September TGU (#367)
* tgu

* updated paths

* updating more paths

* master server

* more repaths

* tgu

* oh these were defined

* y

* tgu

* fixes fulp shuttles i think

* revert

* tgu

* fix checks and stuff

* Update sound.dm

* Update tg_edits.md

* tgu
2021-10-07 22:13:24 -06:00
John Willard
7be3d5e69a Modularizes a ton of Fulp edits within TG code (#362)
* removes fulp edits from job.dm

* crew monitor and basemap

* revert

* MODULAR BLOODSUCKER HUDS FINALLY

* 2 more fulp edits knocked out

* re-adds chain of command but modular

* moves bloodsucker define to new bloodsucker defines file

* chain of command fix

* ok good enough

* Update mentor_clientprocs.dm
2021-09-26 19:16:16 -06:00
John Willard
3d7b22e6b4 Standardizes fulp edits (+removes a TG edit from mentorhelp) (#357)
* Automatic changelog compile [ci skip]

* Update readme.md

* Automatic changelog compile [ci skip]

* what

* standardizes fulp edits

* update new modular edit

* Update build.js

* .

* yeah

* Update role_preferences.dm

Co-authored-by: Changelogs <action@github.com>
2021-09-20 11:52:04 -06:00
John Willard
03e71941bd [MDB IGNORE] [IDB IGNORE] September TGU (#351)
* tgu

* repath

* tgu again

* Pubby update

* starting on preferences

* starting on bloodsuckers

* more tgui

* deputies and monster hunter

* finished beefmen

* Update beefman.ts

* Tgu map changes (#8)

* selene areas and slight fixes

* fixes helio areas and other small stuff

* tgu

* fulp bans thank you beatrice

* test

* Update bans.dm

* Update bans.dm

* full access

* Revert "full access"

This reverts commit 6b4f0d2822.

* tgu

* another tgu

Co-authored-by: Helianthus00 <64755361+Helianthus00@users.noreply.github.com>
2021-09-19 12:52:05 -06:00
John Willard
03f8f0a6fc deputy config stuff (#339)
* departmentless deputy is now a config

* service deputy

* adds deputies to job config

* AAAAAAAAAAAA
2021-09-05 21:10:10 -06:00
John Willard
edf5ddbffe [MDB IGNORE] [IDB IGNORE] August TGU (#334)
* Automatic changelog compile [ci skip]

* Update readme.md

* Automatic changelog compile [ci skip]

* what

* TG Update

* *Bass drop*

* This TGU has been brought to you by: The only reason I did TGU

Modular Bloodsuckers

* Fulp job stuff

* Mapping stuff

It's just renaming /chapel/main to /chapel

* actually im too scared to change this

* please stop being a bad mapper.... please.....

* Update Heliostation.dmm

* i ALWAYS miss this one EVERY TIME

* repaths

* Update bans.dm

* Revert "Update bans.dm"

This reverts commit 1d7bfab48f.

* Update bans.dm

* ovens

* Update ticker.dm

* Update beef_station.dmm

* tgu

* del

* ya

* Update beefman.dm

* probably fixes toxins issues

* actually fixes it

* Update standard.dm

* test

* Revert "test"

This reverts commit ba94fc3f70.

* Update beefman.dm

* Revert "Revert "test""

This reverts commit 469d12e941.

* further test

* Update beefman.dm

* Revert "Update beefman.dm"

This reverts commit e4bd4dfddc.

* Revert "further test"

This reverts commit aa952c5035.

* Revert "Revert "Revert "test"""

This reverts commit c5dec4e620.

* Update beefman.dm

* Update beefman.dm

* Update beefman.dm

* .

* Revert "."

This reverts commit df1b5d16d6.

* Update beefman.dm

* Revert "Update beefman.dm"

This reverts commit b76196064c.

* tgu

* Update tgstation.dme

* Update ert_outfit.dm

* test

* Update global_lists.dm

* github folder

* repath

* Revert "test"

This reverts commit 3c6a630a6e.

* uh

* Update beefman.dm

* Revert "Update beefman.dm"

This reverts commit 6b162a0260.

* test

* Revert "test"

This reverts commit e9829316cf.

* job

* test

* Revert "test"

This reverts commit 332c34121f.

* beefman to beef

* Update beefman.dm

* Update beefman.dm

* ethereal name testing

* Revert "ethereal name testing"

This reverts commit 8bdc4f7cbe.

* eth

* Revert "eth"

This reverts commit fbb9b321b6.

* strings repathing test

* Revert "strings repathing test"

This reverts commit 6654a46438.

* strings deploy test

* Update deploy.sh

* Revert "Update deploy.sh"

This reverts commit b93afccb19.

* a

* hardcoded lists and prison ovens

* deleting the string files

* tgu

Co-authored-by: Changelogs <action@github.com>
Co-authored-by: Helianthus00 <tomfhardy@yandex.com>
2021-08-28 20:23:07 -06:00
John Willard
e5bfc6fa44 TGU (#318)
* Automatic changelog compile [ci skip]

* Update readme.md

* Automatic changelog compile [ci skip]

* merges TG into branch, ensures all fulp files are untouched and fixes dme

* does what the first commit says

* jobs fix

* Pubbystation

* Heliostation & Selenestation

* Update SeleneStation.dmm

* Revert "Update SeleneStation.dmm"

This reverts commit e618bb20a2.

* permabrig

* fix things haha awesome !

* stuff

* huds

* Update PubbyStation.dmm

* TGU

* roundend report

* edit

Co-authored-by: Changelogs <action@github.com>
Co-authored-by: Helianthus00 <64755361+Helianthus00@users.noreply.github.com>
2021-08-05 19:59:54 -06:00
John Willard
fd3c3a9606 chain of command is different here. (#300) 2021-07-25 09:01:33 -06:00
John Willard
afd04f2fad TGU (#257)
* Automatic changelog compile [ci skip]

* Update readme.md

* Automatic changelog compile [ci skip]

* Update fulp_emote_edits.dm

* TGU

* what

* .

* oh

* Fulp defines

Co-authored-by: Changelogs <action@github.com>
2021-07-05 10:00:12 -06:00
SgtHunk
0e81dab0cf TGU: Agent ID buff, Even more Circuit stuff, Spectroscopy, DBcore subsystem to help with crashes (#238)
* lol 882 conflicts

* build.js never forget

* um

* and this

* sure

* i refuse to see life in black and white

* oh Lord, don't ask me what I mean

* Just say that it's on meeee

* that's just the weight of the world

* of course the british file gives me trouble

fuck you british people

* wow, this is your room? it's so cool!

[png of a bloodsucker lair full of dead bloodless people]

* Make a lot of money and feel dead inside

* tell me you didnt test your code without telling me you didnt test your code

* stay winning

* mech toy repath

* yea

add this to the readme john!!!!! (haha)

* you mean trolling the right-click functions?

* yea

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>

* yea 2

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>

* span macros

* virtual insanity is what we're living

it's aaaalright now

* um

* yeah

* lol

* this makes it compile i think

why beefman code be like this

* i knew it was going to happen i just hoped it wouldn't

* forgot this

Co-authored-by: Enricode <SgtHunk@users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2021-06-29 21:23:35 -06:00
SgtHunk
81f8ffbc30 TGU: 2FA for admins, 2-person mech, hair gradients. Fish price halved!! (#220)
* So much win!

* um

maptick_??????
2021-06-18 19:46:15 -06:00
SgtHunk
5bc6ca9f86 TGU - Kneejerk reaction, fixed smoking, gamemode is GONE. (#204)
* Merge branch 'master' of https://github.com/tgstation/tgstation into da-tgu

* this makes it compile probably i think maybe idk

* can't spell SQL without L
2021-06-06 11:20:41 -06:00
SgtHunk
151ac16ae7 TGU: Fixes recycler self-cannibalism, some more GAGS stuff, a lot of map changes, Circuits (#183)
* Most of it

* Map edits

* plaaaques

* Some more stuff

curator console, directionals for helios cargo shuttle

* stray disposal pipe

* uhhhhhhhhhhhh

* ?

* ok and? *gif of guy eating ice*

* pa pa pa ra para pa pa I think it's time

for you to know
the awful truth
the truth about me and the truth about you
cuz you're a brand new species

* Circuit labs

* hey there

* problem, SSjob?

* act like i didnt mess up

shhhhh lets keep this between us

* QM is a head!!!!

* PULL FROM TG

The griddler vs the Jatoomer...

* now it makes sense

helios now has an actual science firing range, yes the old one is now abandoned
same with selene

* small fixes

Selene RD office shutters
Also fixes the window in HOS office in Helios that just... let you watch a wall? ?????
Oh yeah also that stray light switch in law office

* ONE MORE TIME

* FIXES LIZARD PLUSHIE

Co-authored-by: Enricode <SgtHunk@users.noreply.github.com>
2021-05-27 19:34:58 -06:00
John Willard
71daa9199f Service deputy update (#166)
* service deputy update

* standardization

* aaaaa

* ok yeah

* Update deputy_clothing.dm

* huds

* return of the sec traits
2021-05-16 10:34:36 -06:00
John Willard
38059c1ff3 TGU - Gamemode removal, GAGS & More (#159)
* TGU

* fulp code maintaining

* Update jobs.dm

* All the fulp overwrites

* the dme

* caught it

* wow modular!

* deletes ui icons

* adds new ui icons

* Helio TGU

* Heliostation TGU (#1)

* lets try again

* try

* ai  displays

* evac displays

* fire alarms

* wild hearts

plant wild seeds
aaaand wild miiiinds
have wild neeeeeeeeeeeds

extinguisher cabinet

* A lot of stuff

All directionals I think except door buttons because fuck you they're 75 and I need to put IDs in all of them I already spent 30+ minutes on the requests consoles
Oh yeah also adds the cargo stuff

* Selene

Adds cargo stuff, fixes conflicts
This does NOT add directionals

Co-authored-by: Enricode <SgtHunk@users.noreply.github.com>

* Create changelog.html

* Delete changelog.html

* Create changelog.html

* Delete changelog.html

* Config

* Helio cargo shuttle

* > deletes your cryopod

* Revert "> deletes your cryopod"

This reverts commit fd92bbf7d0.

Co-authored-by: SgtHunk <68669754+SgtHunk@users.noreply.github.com>
Co-authored-by: Enricode <SgtHunk@users.noreply.github.com>
2021-05-13 19:57:32 -06:00
John Willard
9584ef6f70 Fulp 2.0 (#135)
* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* all of our stuff

* reorganizes all the folders

* changing all the .dmi files

* The last of 'em

* updates readmes

* fix + readme

* haha revert

* Update fulp_defines.dm

* Create readme.MD

* fixes checks

* last commit was a lie

* Updated readmes

* modularizes mentorhelp + removes mentorhelp mute

* Update mentorhelp.dm

* More modularization?

* Fixes the server

* Update fulp_defines.dm

* Automatic changelog compile [ci skip]

* maybe fixes world

* Updates world

* Digi shoes :trollface:

* Update fulp_world.dm

* Update fulp_world.dm

* Update fulp_world.dm

* Update fulp_world.dm

* Update fulp_world.dm

* Update fulp_world.dm

* Update fulp_world.dm

* Update fulp_world.dm

* Update fulp_world.dm

* Update fulp_world.dm

* die die die

* fixes runtime

Co-authored-by: Changelogs <action@github.com>
2021-04-24 02:04:48 -06:00
John Willard
6f485927f8 TG Update (#104)
* Updating GBP from PR #57981 [ci skip]

* Removes total_moles_specific, just use gaslists normally. I don't know how I missed this (#57973)

* Refactors pellet_cloud/create_cassing_pellets to not sleep (#57974)

Co-authored-by: MLGTASTICa <ak9bc01d@yahoo.com>

* Automatic changelog generation for PR #57974 [ci skip]

* Updating GBP from PR #57974 [ci skip]

* Fix Tooltip documentation (#58013)

* Remove SS_NO_TICK_CHECK (#57800)

## About The Pull Request
This is a whopper, will need @MrStonedOne to review.
In theory this flag shouldn't be needed and my own testing didn't find any issues, but I'd feel better with a lengthy test merge.

## Why It's Good For The Game
Might make nightshift subsystem lag less, MC loop has less stuff to check.

* Updating GBP from PR #57800 [ci skip]

* Reorder the list of items in more outfits. (#57801)

On my quest to make outfits easier to read and fix some small mistakes by applying a priority order.

ID > uniform > suit > backpack > other clothing in alphabetic order > pockets > hands > others

Moved the base/assistant plasmaman outfit from the middle of the standard file to the top of the plasmaman outfit file.
Reorganized the plasmaman outfit order to have jobs within a department close to each other.
Moved the Death Commando outfit into the ERT file together with a line that adds mindshields to CentCom outfits because I had to dig to find that a long time ago...

Also fixes detective plasmaman spawning with a worse headset and plasmamen prisoners spawning with a different shoe.
Like... how no one has seen that plasmaman spawn with the wrong headset? Do we have no plasmaman sec? Yes I know the answer...

* Automatic changelog generation for PR #57801 [ci skip]

* Updating GBP from PR #57801 [ci skip]

* Fix sql changelog (#57972)

Fixed bad SQL that I originally wrote in the changelog for 5.11, anyone trying to update their schema from < 5.11 up would notice this.

* Test newest version of gbp-action (#57980)

Read about it here: tgstation/gbp-action#28

TLDR: Less race conditions, and all logs are now pushed to a separate branch. The new location of gbp-balances.toml is in the gbp-balances branch. Will most likely be able to delete the one in master so people don't get confused.

This required a workflow update, and so was not directly pushed to master. This currently uses my PR branch directly so that I can make changes for anything that doesn't work. When it is solid, I will push it to master and we will go back to gbp-actions@master, or some pinned version.

* Fixes mech HUD's not being properly removed (#57964)

Fixes mech hud's not being removed when leaving the odysseus or clarke

* Automatic changelog generation for PR #57964 [ci skip]

* Resprites the fork! (#57490)

About The Pull Request

This PR resprites the fork.

image
Why It's Good For The Game

The old fork was really tall and black.

Forks are really hard to sprite but i think this is an improvement.
Changelog

cl
imageadd: The fork has a new sprite.
/cl

* Automatic changelog generation for PR #57490 [ci skip]

* rpds can now interact with the unwrench upgrade (#57959)

Adds the functionality to upgrade the RPD by 'slapping' the unwrench upgrade disk with the RPD itself

It doesn't exactly revolutionize gameplay and at most allows engineering cyborg players to at least upgrade their RPD to unwrench saving them a headache and a module slot when doing their thing I suppose

* Automatic changelog generation for PR #57959 [ci skip]

* Automatic changelog compile [ci skip]

* Fix collect changes (#58022)

* Xenomorphs can now strip humans again (#58007)

* Automatic changelog generation for PR #58007 [ci skip]

* Fix back not respecting internals (#58012)

* Automatic changelog generation for PR #58012 [ci skip]

* Layer overhaul (#57915)

## About The Pull Request
Changes up some layer and plane defines for no particular reason lol

## Why It's Good For The Game
Planes actually override layers, and layers control ordering within planes. A lot of the usage of plane and layer was wholly unnecessary. This refactor helps future maintainability while also being needed staging for _future features._

* Resprites all gas vending machines (#57919)

The existing sprites are an amalgamation of parts of existing sprites, this PR replaces them with original sprites designed for the devices

Sprites were made by me and were recolored by maxymax13

* Automatic changelog generation for PR #57919 [ci skip]

* Update arcade.dm (#57984)

* Automatic changelog generation for PR #57984 [ci skip]

* Hand Drill Sound is now smoother on the ear. (#58004)

* Automatic changelog generation for PR #58004 [ci skip]

* Fixes Orion bad messages  (#58018)

* Automatic changelog generation for PR #58018 [ci skip]

* A non-functional heart no longer causes heart attack if you have Muscled Veins (#58016)

* Automatic changelog generation for PR #58016 [ci skip]

* Nerfs holodeck thunderdome suits (#58011)

* Automatic changelog generation for PR #58011 [ci skip]

* You can now manufacture bone gel (#58006)

* Automatic changelog generation for PR #58006 [ci skip]

* Fixes Antigravity Grenades  (#57991)

* Automatic changelog generation for PR #57991 [ci skip]

* Fixes flying damage slowdown applying to the floating movetype instead. (#57994)

* Automatic changelog generation for PR #57994 [ci skip]

* Fixes lights on people (#58000)

- Fixes light eaters not putting out lights on people.

* Automatic changelog generation for PR #58000 [ci skip]

* CTF spawner awareness in tips (#57995)

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

* Automatic changelog generation for PR #57995 [ci skip]

* Fixes incorrect params passed into callback function causing server crashing numbers of runtimes. (#58020)

[21:03:59] Runtime in change_turf.dm,301: type mismatch: /turf/closed/mineral/random/vo... (/turf/closed/mineral/random/volcanic) & 18
  proc name: AfterChange (/turf/open/AfterChange)
  src: the volcanic floor (135,80,3) (/turf/open/floor/plating/asteroid/basalt/lava_land_surface)
  call stack:
  the volcanic floor (135,80,3) (/turf/open/floor/plating/asteroid/basalt/lava_land_surface): AfterChange(/turf/closed/mineral/random/vo... (/turf/closed/mineral/random/volcanic), null)
  /datum/callback (/datum/callback): InvokeAsync()
  Timer (/datum/controller/subsystem/timer): fire(0)
  Timer (/datum/controller/subsystem/timer): ignite(0)
  Master (/datum/controller/master): RunQueue()
  Master (/datum/controller/master): Loop()
  Master (/datum/controller/master): StartProcessing(0)

x9000

Missing args in callback meant two runtimes each time a turf was mined, exploded, blown up etc.

Causes openspace to mess up if the server runs low on memory.

* Automatic changelog generation for PR #58020 [ci skip]

* Automatic changelog compile [ci skip]

* Lowers rot disease chance (#58034)

Lowered the chance of disease creation by ~60%
Every round was having horrible breakouts, this ought to fix that

* Automatic changelog generation for PR #58034 [ci skip]

* Fixes error sprite from pdas in exosuit storage slots (#58033)

fix: putting a PDA into an exosuit storage slot won't cause the missing texture sprite any more.

* Automatic changelog generation for PR #58033 [ci skip]

* Enhance spray bottle logging while improving code and variable names. (#58070)

* Improve and loog

* Copybara

* Testing feex

* Extra doc

* Feex

* Range start from 1 instead of 0

* Automatic changelog generation for PR #58070 [ci skip]

* Automatic changelog compile [ci skip]

* Feex (#58073)

* Automatic changelog generation for PR #58073 [ci skip]

* trigger spacemandmm reparse in CBT 'Build All' task (#58061)

* Fixes runtimes related to quick equip. (#58043)

Basic sanity and ensure unequip is properly called before equipping again.

* Fixes a moth wing sprite mistake (#58059)

A wing sprite had a silhouette for the mob that I missed in #53969

* Automatic changelog generation for PR #58059 [ci skip]

* Fixes cargo gas canisters not being purchaseable (#58028)

* Automatic changelog generation for PR #58028 [ci skip]

* Fixes Tips Message About Ctf To Be Properly Descriptive Of Ctf (#58050)

* Automatic changelog generation for PR #58050 [ci skip]

* Mansus grasp now can ignite cigars (#58055)

* Automatic changelog generation for PR #58055 [ci skip]

* fix missing atmos features from various station (#57936)

Adds bluespace vendors to tramstation
Setup freezers to use waste loop
Connect delta station freezers to waste loop
Connect kilo station freezers to waste loop

* Automatic changelog generation for PR #57936 [ci skip]

* Revert "Switch tgui tooltips to popper.js" (#58078)

* Revert "Switch tgui tooltips to popper.js (#57992)"

This reverts commit 206c8215de.

* Revert "Fix Tooltip documentation (#58013)"

This reverts commit e692b05a99.

* Fixes a way of obtaining metal in the CTF map downtown (#58041)

* Automatic changelog generation for PR #58041 [ci skip]

* Resprites the lightning orb (#58065)

* Resprites the lightning orb

* Fixes the lightning orb hud icon

* Automatic changelog generation for PR #58065 [ci skip]

* autofire no longer does SIGNAL_HANDLER_DOES_SLEEP (#58066)

* Automatic changelog generation for PR #58066 [ci skip]

* Puts a HPLC in chemistry on tramstation  (#57987)

* Automatic changelog generation for PR #57987 [ci skip]

* CTF players are no longer 13 year olds (#58040)

* Automatic changelog generation for PR #58040 [ci skip]

* reverts map_format changes (#58051)

reverts map_format changes done in #57915

* [READY] Adjusting/porting chemical toxins to fermichem (+Seiver fix) (#57606)

* Automatic changelog generation for PR #57606 [ci skip]

* Internal Affairs actually works as intended now (#58021)

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>

* Automatic changelog generation for PR #58021 [ci skip]

* changes most uses of SSvis_overlays.add_vis_overlay() inside of update_overlays() to true overlays (#57985)

* Automatic changelog compile [ci skip]

* Lights up the alien chambers on the CTF map cruiser (#58042)

* Automatic changelog generation for PR #58042 [ci skip]

* Upgrade tgui dependencies, make yarn task skippable (#58081)

* Upgrade tgui dependencies, make yarn task skippable

* Use a phony target to avoid double rebuilds

* Modifies SecTech ad from beating capitalists to communists (#58083)

* Automatic changelog generation for PR #58083 [ci skip]

* Fixes a minor oversight with eigenstasium (#58069)

* Automatic changelog generation for PR #58069 [ci skip]

* Update dependencies installed for TGSv4 precompile scripts (#58108)

* add libssl1.1

* i was told to add myself to this as well

* Automatic changelog generation for PR #58108 [ci skip]

* Automatic changelog compile [ci skip]

* Prevents morph toxin oversight (#58095)

* Automatic changelog generation for PR #58095 [ci skip]

* TGUI Limbgrower + Limbgrower refactoring and design expansion (#57955)

Refactors the limbgrower to modernize the code. Now, the limbgrower can accept any type of reagent in limbgrower designs.

Adds simple plumbing demand to the limbgrower, so you can pipe synthflesh into it.

Adds monkey tails, felinid ears and tails, lizard digitigrade legs, lizard tongues, fake lizard tails (unusable in lizard-wine and similar recipes), plasmaman organs, and ethereal organs (minus the heart) to the limbgrower via limbgrower design disks. These disks can be printed from the medical lathe once the required technology has been researched.

Adds a technology node to unlock the limbgrower design disks after advanced biotech, xenoorgan biology. In the future, this could have an experiment requirement - maybe to scan multiple types of species.

Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>

* Automatic changelog generation for PR #57955 [ci skip]

* Fixes several exosuit storage slot and back slot worn icon bugs (#57946)

* Adds teleprod exosuit slot worn icon

* ... Really expands what the pr does

* Automatic changelog generation for PR #57946 [ci skip]

* Adds emergency meetings during april fools (#58098)

🆑
add: The captain can now sometimes call emergency meetings using the communications console! Hopefully the crew will be able to sus out any imposters who might be among them!
/🆑

* Automatic changelog generation for PR #58098 [ci skip]

* Allows you to ignite cigars with cauteries and recently-fired revolvers. (#58109)

About The Pull Request

#58055 added this for Mansus Grasp and I thought why the hell not, this is also badass. Fifteen seconds sounds like long enough to do this after firing the gun.

Also EOB noticed you can't ignite cigars with the cautery and that seems odd, so I added that too. Not sure who'd want to do that, but here you go.
Why It's Good For The Game

Gun hot after firing also badassery
Changelog

🆑
add: Recently-fired revolvers can now be used to ignite cigars like a fucking badass.
add: Cauteries can now be used to ignite cigars like a very irresponsible doctor.
/🆑

* Automatic changelog generation for PR #58109 [ci skip]

* Automatic changelog compile [ci skip]

* spelling (#58103)

* Automatic changelog generation for PR #58103 [ci skip]

* Fixes oversight with eigenstasium which teleports you before saving your location (when purity is greater than 90% and ingested) (#57986)

* Fixes oversight

* Why is this so convoluted

* Final fix and test

* Expose is strange

* exposure to reagents may result in confusion, bafflement and hunger. If you feel any of these effects, consult with your doctor.

* lil cleanup

* Automatic changelog generation for PR #57986 [ci skip]

* You can now print cable coils and welding helmets from scilathes and engilathes (#57762)

* Automatic changelog generation for PR #57762 [ci skip]

* Thermomachine have full temperature range on both modes (#57990)

* qol

* better changes

* Update code/modules/atmospherics/machinery/components/binary_devices/thermomachine.dm

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

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

* Automatic changelog generation for PR #57990 [ci skip]

* Persistence now cleans up json entries (fixes a lot of runtimes involved) (#58084)

* super duper persistence cleaning

* compiles now, much better written

* Processable and grillables and microwavables now give helpful examines, some condiment containers also do (#57694)

* IM DONE LOOKING AT THE WIKI FOR BASIC SNIZZLE

* microwaved, too

* HOOH

* LINT, review

* review but this time im not lying :trollface:

* maybe i should just like test or something

* reviews i missed

* 🐑

* Automatic changelog generation for PR #57694 [ci skip]

* Fixes a critical accidental early return (#58128)

Emergency meetings work now

This loop shouldn't give up so quickly
Makes emergency meetings work when there are new players about
Also sets the 'show when dead' var to true so ghosts get the full experience

* Automatic changelog generation for PR #58128 [ci skip]

* Fixes toxin parent reagent purity affecting unintentional reagents  (#58107)

* Automatic changelog generation for PR #58107 [ci skip]

* Add extools compilation to the TGS4 precompile scripts for linux (#58113)

* Automatic changelog generation for PR #58113 [ci skip]

* Add the seeds to the permabrig (#58019)

* Automatic changelog generation for PR #58019 [ci skip]

* lone carpet subtype now doesnt smooth, adds back star carpets (#58104)

rohesie removed star carpets when they added the new smoothing system i think, this brings them back and gives both lone and star carpets a purpose, they no longer smooth, also lone carpets now use the symbol sprite again which has some customization in dirs

* Automatic changelog generation for PR #58104 [ci skip]

* emergency meetings now dont call in mobs with no client (#58133)

* Automatic changelog generation for PR #58133 [ci skip]

* Automatic changelog compile [ci skip]

* Some quick fixes for the dark gygax icon and its uplink description (#58121)

* Automatic changelog generation for PR #58121 [ci skip]

* Makes canister pressure capabilities a bit random and more unstable (#57818)

This is mainly to make bomb making just a little bit less of a formulaic activity. Canister base capacity is 8% lower but is increased by up to 20% from that amount, roughly resulting in the same average capacity. You can experiment to figure out each one's individual limit or just stick to safe minimum pressures.

To counter balance this somewhat, canister failure is a bit more violent. Damaged canisters will slowly leak gas, and a canister that breaks with internal pressure greater than it's capability will explode.

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

* Automatic changelog generation for PR #57818 [ci skip]

* RCD now rebuilds existing constructs faster and with less resources (#58029)

* RCD now rebuilds faster

* Reconstructing now costs less

* Fix _

* Remove unused flag, use helper proc

* Add sound

* Remove previously useless, now inaccurate comment

* Add MIN_COMPILER_VERSION warning

* Automatic changelog generation for PR #58029 [ci skip]

* Injectors, vents and scrubbers no longer work when placed on walls (#57971)

fixes gas deletion exploit by stopping injectors, vents and scrubbers from being placed on walls

* Automatic changelog generation for PR #57971 [ci skip]

* Xenobio outlet fix (#58002)

About The Pull Request

Fixes air outlet injector outside of Xenobiology Lab not being powered
Why It's Good For The Game

Unpowered outlet makes it difficult to siphon air out of Xenobiology Lab
Changelog

🆑
fix: Fixed air outlet injector outside of Xenobiology Lab not being powered
/🆑

* Automatic changelog generation for PR #58002 [ci skip]

* Removes a single stray-pixel on slice of vanilla cake  (#58142)

* Automatic changelog generation for PR #58142 [ci skip]

* Shorten april fools to 3 days (#58144)

this way it covers all the timezones

* Automatic changelog generation for PR #58144 [ci skip]

* Automatic changelog compile [ci skip]

* Adds moffins, a whimsical breakfast pastry (#58110)

* Adds moffins

* slightly different check as requested

* Update code/game/objects/items/food/pastries.dm

I have been got got.

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

* Update code/game/objects/items/food/pastries.dm

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Iamgoofball <iamgoofball@gmail.com>
Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>

* Automatic changelog generation for PR #58110 [ci skip]

* remove input pass-through from stat panel and just try not to keep focus instead (#58143)

About The Pull Request

The input pass-through didn't work anyway, as it would pass through lower-case keys which our input code doesn't understand (unless you were holding shift or hadcaps lock on.) It also didn't translate arrow keys to NORTH, etc. which is how BYOND expects them.

If you double clicked on the stat panel it would eat all following input from you. If you happened to have caps lock on, you might not notice this because the correct WASD values get passed to BYOND. If you were then to stop walking while holding shift because you want to examine something, your key release would be sent to BYOND as lowercase, causing it to be ignored.

Under all of those conditions, your movement would get stuck in one direction. It's more likely than you think!!!

A similar chain of events could cause Alt releases to not be sent to BYOND due to this as well.

--

The fix is to just give back focus to the map similarly to how TGUI does it. It's not quite as majestic as TGUI, but it seems to have fine results.
Why It's Good For The Game

Nobody likes sticky keys
Changelog

🆑
fix: Stat panel no longer captures input (potentially causing keys to get stuck down)
/🆑

* Automatic changelog generation for PR #58143 [ci skip]

* Actually fixes bots wrongfully failing to pathfind (#58064)

I botched #57873 and made the wrong part of the code return an empty list, so instead of it being part of the wrapper proc (like it was before), it was part of the core pathfinding proc. This meant that sometimes a non-list return value would make it by the wrapper proc when a list was expected, eventually causing bots to fail to respond to summons from AIs/PDAs as I detailed in the last PR. This solves it by ensuring all returns are lists, with the exceptions of invalid callers or endpoints, which should error.

* Automatic changelog generation for PR #58064 [ci skip]

* makes slapping someone in the face more intuitive (#58137)

* Automatic changelog generation for PR #58137 [ci skip]

* Stripping a disconnected player will tell them when they come back (#58129)

* Automatic changelog generation for PR #58129 [ci skip]

* Snappier Firelocks (#57943)

Firelocks are kind of annoying to open since it relies on a 10 second area based timer that is difficult to predict, this tries to solve that.

When forced open with the primary attack, the firelock now checks if you are adjacent to it or not. Our dearest Manuel players can think of it as you manually holding the door back. It is also made to close when you are no longer adjacent or went horizontal (resting, etc.)
This sort of made firelocks snappier and close faster too, and I hope this might help it seal off areas better.

The door will be stuck closed when you leave it however, and that's where the old behaviour comes in. Secondary attack is used to toggle the firelock and surrender it to the timer if an alarm is triggered. Primary attack without a fire alarm triggering cannot keep the door open after you walk away. I hope this is intuitive enough.

* Automatic changelog generation for PR #57943 [ci skip]

* Refactors shielded hardsuits into a component, fixes kisses consuming shield charges (#57797)

Shielded hardsuits (like the syndie ones) and shielded cult robes, despite functioning very similarly, were actually implemented twice in their own pockets of clothing code. This merges them into one component that lets you block a certain number of attacks while your suit has charges, and have the suit recharge itself after going so long without being hit (optional, cult robes still don't regain lost charges).

This PR also fixes harmless kiss projectiles consuming charges on shielded suits, I'm sure to much disappointment. They'll now pass directly through though, so you can still try your luck to see if love truly conquers all (it probably won't).

One casualty of this is that you can no longer toggle the shield color of syndie hardsuits with a multitool since that it was annoying to componentize, not something that affected gameplay, and probably something noone knew you could do anyway.

Fixes: #57723

* Automatic changelog generation for PR #57797 [ci skip]

* Placing a fireman carried person onto a table no longer harms them (#58147)

Previously, clicking on a table with a fireman carried person while not in combat mode would start a do_after(), then harmfully smash the person you fireman carrying into the table. This harmful smash has been replaced by your character merely placing the fireman carried person onto the table, like what happens when you click on a table while not in combat mode while you have someone in a grab. You can still click on a table with a fireman carried person while in combat mode to perform a limb smash, if you wish.

* Automatic changelog generation for PR #58147 [ci skip]

* adds the console (#58127)

* Automatic changelog generation for PR #58127 [ci skip]

* Adds proper logging to Holodeck safeties and programs (#58149)

* Adds proper logging to Holodeck safeties and programs

* a more elegant solution

* Automatic changelog generation for PR #58149 [ci skip]

* Recolors bucket inhand and adds omega soap inhand (#58148)

* '

* Fixed stray pixel

* Automatic changelog generation for PR #58148 [ci skip]

* Automatic changelog compile [ci skip]

* Smart Pipes(reborn) (#58038)

How these new pipes work.
-Smart pipes autoconnect to nearby smart pipes
-They are now color coded, so they only connect to the same colored pipe, the GREY pipe is the wildcard and can connect to every other color, so be aware of this
-ALL components spawned by the RPD can be colored (from pumps to connectors, from pipes to manifolds), if you leave them GREY they can connect to every other color. Color adapters can be colored, but they'll still connect two pipes with different colors. BUILDABLE machines are GREY (thermomachines, cryo, HFR) so be aware of this
-Trying to go across another smart pipe will now build a bridge pipe automatically already colored of the color you choose, so you don't have to place it yourself anymore (is still available in the RPD tho)
-ALL binary components, layer manifolds, color adapters and bridge pipe can be put ONTOP of a smart pipe, but not on another of these. Smart pipes can't be placed on top of these pipes, so you have to build them first.
-Lcrossings can't be made anymore (sorry y'all i tryed, if someone have a way of doing them ping me on discord)
-REMEMBER you still have 5 layers to go, these rules apply to the same layer pipes, so if you do a crossing on different layers you won't see a bridge pipe appear.

* Automatic changelog generation for PR #58038 [ci skip]

* resprite water cooler (#58117)

* Automatic changelog generation for PR #58117 [ci skip]

* Fixes a few roulette wheel runtimes. (#58139)

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

* Automatic changelog generation for PR #58139 [ci skip]

* Stethoscopes now require hearing instead of vision to use  (#58169)

* Automatic changelog generation for PR #58169 [ci skip]

* added colour picking to VV (#58173)

Co-authored-by: Thunder12345 <stewart@critar.demon.co.uk>

* Automatic changelog generation for PR #58173 [ci skip]

* Fixes smoker stacking unremovable negative moodlets (#58170)

* Automatic changelog generation for PR #58170 [ci skip]

* Add youtube-dl to tgs4 precompile scripts for Linux (windows users on suspicious individuals watch) (#58135)

Adds the ability for the TGS4 precompile script on Linux platforms to resolve the youtube-dl dependency. This essentially is for Docker deployments, but can also apply to regular TGS4 deployments as well.

* Automatic changelog generation for PR #58135 [ci skip]

* Fixes multiple issues related to suicides (#58178)

* Automatic changelog generation for PR #58178 [ci skip]

* Armless people can no longer buckle people (#58176)

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>

* Automatic changelog generation for PR #58176 [ci skip]

* Terror in the Toybox: The Rouny Plushie (#58221)

* rouny plushie

* rouny prizes

* loar

* Automatic changelog generation for PR #58221 [ci skip]

* fix pipe (#58120)

* Automatic changelog generation for PR #58120 [ci skip]

* Automatic changelog compile [ci skip]

* After revolutionaries win, one living headrev (if any are able to) will be allowed to rename the station with a revolutionary banner (#58165)

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

* Automatic changelog generation for PR #58165 [ci skip]

* Delete useless toFixed import in TimeDisplay (#58215)

* Fix a missing icon (#58219)

* Deletes unreachable line for tools/dmi (#58213)

Resolves #58211

* Fixes the borg hug module being able to harm and shove simple mobs  (#58175)

* Automatic changelog generation for PR #58175 [ci skip]

* Pacifists can no longer swat bugs (#58177)

Co-authored-by: Thunder12345 <stewart@critar.demon.co.uk>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>

* Automatic changelog generation for PR #58177 [ci skip]

* Fix PreCompile.bat failing with spaced paths (#58184)

* Fix PreCompile.bat failing with spaced paths

* Undo spacification

* Give miners cargo access on icebox, removes QM office access from cargo techs (#58167)

* Automatic changelog generation for PR #58167 [ci skip]

* revamps meta incinerator (#58198)

* revamps meta incinerator

cleans pipes in meta incinerator

* Update MetaStation.dmm

* [s] Restores Cargo Shuttle Blacklist Enforcement (#58201)

Removed an inappropriate as anything inside the cargo shuttle's blacklist check that was breaking it.

* Automatic changelog generation for PR #58201 [ci skip]

* Player Lobstrosities Can Right-Click To Charge (#58199)

* Automatic changelog generation for PR #58199 [ci skip]

* stat panel focus reset happens _before_ verb commands are ran (#58196)

* Automatic changelog generation for PR #58196 [ci skip]

* Fixes spelling errors in misc.dm (#58194)

* Automatic changelog generation for PR #58194 [ci skip]

* layer manifolds visual fix (#58193)

* Automatic changelog generation for PR #58193 [ci skip]

* Automatic changelog compile [ci skip]

* Moves code managing mobs getting shocked from disease code to mob status code (#58202)

* Venus human traps no longer take cold damage (#58185)

* Automatic changelog generation for PR #58185 [ci skip]

* Deletes duplicate export property (#58212)

* Reduces the amount of unsorted chat messages (#58192)

* Automatic changelog generation for PR #58192 [ci skip]

* et

* Update README.md

* Update beefman.dm

* .

* oh no

i just realized i have to map

* Update mobspawner.dm

* Update tgstation.dme

* Update Heliostation.dmm

* fixes heliostation pipes

Probably. Fuck smartpipes

* Update Heliostation.dmm

* TGU

* dme

* Update build.js

* tgu stuff

* sorry beefmen

* no

* fixes the pipes and other stuff. probably

* last of the fixes

* digi lol

* Update deputy.dm

* TGU

* fixes helio pipes

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: MLGTASTICa <61350382+MLGTASTICa@users.noreply.github.com>
Co-authored-by: MLGTASTICa <ak9bc01d@yahoo.com>
Co-authored-by: tgstation-server <tgstation-server@tgstation13.org>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: spookydonut <github@spooksoftware.com>
Co-authored-by: GuillaumePrata <55374212+GuillaumePrata@users.noreply.github.com>
Co-authored-by: Bobbahbrown <bobbahbrown@gmail.com>
Co-authored-by: Krysonism <49783092+Krysonism@users.noreply.github.com>
Co-authored-by: DuffCreeper <treyparn@yahoo.com.au>
Co-authored-by: Changelogs <action@github.com>
Co-authored-by: Rob Bailey <actioninja@gmail.com>
Co-authored-by: NamelessFairy <40036527+NamelessFairy@users.noreply.github.com>
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: FernandoJ8 <80640114+FernandoJ8@users.noreply.github.com>
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
Co-authored-by: ishitbyabullet <deathzombine@outlook.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
Co-authored-by: Iosyf <iosyf123456@abv.bg>
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
Co-authored-by: ArcaneDefence <51932756+ArcaneDefence@users.noreply.github.com>
Co-authored-by: William Wallace <me@wiox.me>
Co-authored-by: AnturK <AnturK@users.noreply.github.com>
Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
Co-authored-by: Kokonut <38844529+maxymax13@users.noreply.github.com>
Co-authored-by: EdgeLordExe <42111655+EdgeLordExe@users.noreply.github.com>
Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
Co-authored-by: Thalpy <33956696+Thalpy@users.noreply.github.com>
Co-authored-by: LordVollkorn <66637090+LordVollkorn@users.noreply.github.com>
Co-authored-by: SgtHunk <68669754+SgtHunk@users.noreply.github.com>
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Swept <sweptwastaken@protonmail.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Emmanuel S <mrdoomboyo@gmail.com>
Co-authored-by: TheVekter <TheVekter@users.noreply.github.com>
Co-authored-by: Seth Scherer <supernovaa41@protonmail.com>
Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
Co-authored-by: Capsandi <38051413+Capsandi@users.noreply.github.com>
Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: Jordan Brown <Cyberboss@users.noreply.github.com>
Co-authored-by: norill <norill@wp.pl>
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
Co-authored-by: Iamgoofball <iamgoofball@gmail.com>
Co-authored-by: vincentiusvin <54709710+vincentiusvin@users.noreply.github.com>
Co-authored-by: BootlegBow <69032410+BootlegBow@users.noreply.github.com>
Co-authored-by: Thunder12345 <Thunder12345@users.noreply.github.com>
Co-authored-by: Thunder12345 <stewart@critar.demon.co.uk>
Co-authored-by: Time-Green <timkoster1@hotmail.com>
Co-authored-by: EOBGames <58124831+EOBGames@users.noreply.github.com>
Co-authored-by: Tom <tomforde4@gmail.com>
Co-authored-by: ZeWaka <zewakagamer@gmail.com>
Co-authored-by: InsaneRed <47158596+InsaneRed@users.noreply.github.com>
Co-authored-by: IndieanaJones <47086570+IndieanaJones@users.noreply.github.com>
Co-authored-by: Imaginos16 <77556824+Imaginos16@users.noreply.github.com>
Co-authored-by: Seris02 <49109742+Seris02@users.noreply.github.com>
Co-authored-by: Ben S <tomfhardy@yandex.com>
2021-04-20 23:43:52 -06:00
John Willard
5be9999d6b Chain of Command edit (#89)
* Update job.dm

* Update code/controllers/subsystem/job.dm

i hate trailing commas

Co-authored-by: GuillaumePrata <55374212+GuillaumePrata@users.noreply.github.com>

Co-authored-by: GuillaumePrata <55374212+GuillaumePrata@users.noreply.github.com>
2021-04-07 06:51:29 -06:00
John Willard
ca9360dfdd Deputies (#88)
* (untested) groundwork

* fixes

* huds and stuff and uhh

* fixes trimming

* Updates readme

* adds the sashes

* aaaaaaaaaaaaa

* Update deputy.dm

* Fixes

* Update deputy_clothing.dm

* fixes and yeah

* shit

* SHIT

* Update deputy_clothing.dm

* organization

* Update deputy.dm

* Update deputy_clothing.dm
2021-04-04 17:26:30 -06:00
SgtHunk
353d006659 [TM] TG Update: Combat mode, drone exploration, and more! (#58)
* Updating GBP from PR #57626 [ci skip]

* Simple bots now use a different snowflake method for all access. (#57861)

* Automatic changelog generation for PR #57861 [ci skip]

* Updating GBP from PR #57861 [ci skip]

* Automatic changelog compile [ci skip]

* Defines the interrogation room as unique area and not 4 different var edits. (#57612)

* Defines the interrogation room as unique area and not 4 different var-edits

* Fixes the gaping hole in the wall

* We added a new map at the very end.

* Blaseball

* Committing the changes

* Rebuilds the deltastation setup in case it's actually breaking something...

* Automatic changelog generation for PR #57612 [ci skip]

* Updating GBP from PR #57612 [ci skip]

* Bump pillow from 7.2.0 to 8.1.1 in /tools (#57906)

Bumps [pillow](https://github.com/python-pillow/Pillow) from 7.2.0 to 8.1.1.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/master/CHANGES.rst)
- [Commits](https://github.com/python-pillow/Pillow/compare/7.2.0...8.1.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Adds right-click support to AIs/Cyborgs (#57881)

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

* Automatic changelog generation for PR #57881 [ci skip]

* Updating GBP from PR #57881 [ci skip]

* Ice cream revamp: Ice cream is a component and cones can hold multiple servings of ice cream now. (#57415)

* Ice cream rework WIP

* I'm done!

* i'll deal with my verbose engrish at a later date. I'm dead tired.

* linter aaaaaa

* Take a bite!

* FINALLY, A COMPONENT!

* ghost macro.

* Review, typos, beheading of a lame comsig.

* Typo. Now I'm self-obliged to test it again.

* It works.

* Automatic changelog generation for PR #57415 [ci skip]

* Updating GBP from PR #57415 [ci skip]

* i shot my own phazon to death and i cry. (#57772)

Co-authored-by: MLGTASTICa <ak9bc01d@yahoo.com>

* Automatic changelog generation for PR #57772 [ci skip]

* Updating GBP from PR #57772 [ci skip]

* Fixes admin immovable rods not hitting things (#57890)

Timber did an oopsie in #57850 and made it so rods with a specific target (AKA any spawned by admins either through the trigger event button or the admin smite) quit out of their creation before they started listening for clonging things. Possibly this was partly intended, in case you wanted to spawn a rod that would only hit whatever you designated as your target and nothing else, but this current setup doesn't hit the target either soo something needs fixing.

@Timberpoes let me know what you think and if you were intending for a soft rod option that would only hit the target.

Fixes: #57888

* Automatic changelog generation for PR #57890 [ci skip]

* Updating GBP from PR #57890 [ci skip]

* Ghosts can now interact with the crew monitor console. (#57891)

* Automatic changelog generation for PR #57891 [ci skip]

* Updating GBP from PR #57891 [ci skip]

* Fixes unbalanced flyperson leg (#57892)

One of Flypeople's legs while facing up is missing a single pixel, causing it all to be unbalanced, this fixes that.

* Automatic changelog generation for PR #57892 [ci skip]

* Updating GBP from PR #57892 [ci skip]

* undefined variable wtf *Dies of cringe*

* tgui: ESLint and VSCode settings improvements (#57905)

    Added column 80 rulers to all javascript and scss files.
    Added a "prettier" config to have sensible defaults for those who prefer to use it.
    Added RadarJS (fork of SonarQube's SonarJS). Launchable only via bin/tgui --lint-harder for now.
    Disabled ESLint rule for parens around arrow function arguments, because in TypeScript they're pretty much always required, and I don't want to replace it throughout the codebase.
    Removed unused javascript extensions from tooling (jsx, mjs).

* Automatic changelog compile [ci skip]

* Fixing the undoable experisci arcade experiment. (#57898)

* Automatic changelog generation for PR #57898 [ci skip]

* Updating GBP from PR #57898 [ci skip]

* [s] Fixing an infinite loop exception with Move() (#57895)

* Replaces use of handle_atom_del() with Exited() in modular computer hardware. And fixes an issue. (#57387)

Title. The issue being hardware/on_remove() calling /try_eject() even if the holder is being destroyed, which is quirky. I also replaced an instance of /New() with /Initialize() and deleted a troublesome /Destroy().

handle_atom_del() is awful. Nearly every (minus the storage component; it's a tangled trial of mental gymnastic) behavior implemented there can pretty much be moved to Exited() and it'll work just as fine, if not better against edge cases such as recall spells. But that's not the scope of this PR. I'm here to fix #57161.

* Automatic changelog generation for PR #57387 [ci skip]

* Updating GBP from PR #57387 [ci skip]

* Highlander + Summon Guns and Magic now uses signals to equip new crewmembers (#57817)

* Automatic changelog generation for PR #57817 [ci skip]

* Updating GBP from PR #57817 [ci skip]

* makes holodeck books a holo_effect so they get added to the spawned list (#57909)

* Automatic changelog generation for PR #57909 [ci skip]

* Updating GBP from PR #57909 [ci skip]

* Dogs no longer take whatever they're holding/wearing to the grave (#57670)

* Automatic changelog generation for PR #57670 [ci skip]

* Updating GBP from PR #57670 [ci skip]

* Turns off cache on docker publish action (#57912)

Maybe it will stop it screaming in pain about missing dependencies.
Publish action suggests alternative of running this as cronjob to update cached version so if this works but is too slow we can change to that.

* Adds a plumbing layer manifold (#57494)

Adds a multilayer plumbing manifold, I also murdered the multilayer duct

You can now alt-click the plumbing RCD to change the layer it prints. I made a whole thing where right clicking changed the settings and you could use that to change machinery aswell. I even did that with the plunger, it was absolutely beautiful. Anyway that drained the life out of me because apparently there's no attack_obj_secondary and afterattack_secondary ALSO called attack_obj (left click). I just hate whoever made it with intensity

Plumbing now uses three layers. They should be easier to navigate. I tried to make layer connecting the same as cross-color connecting, but that would take more of my soul then there is to take

* Automatic changelog generation for PR #57494 [ci skip]

* Updating GBP from PR #57494 [ci skip]

* Makes stations more airtight (#57535)

I've gone through delta, meta, and icebox and added some choice windoors, changed some areas around, added some more doors, and changed some other miscellaneous things.

I'll list the full changes in drop downs, for both our sakes

Delta:
<details>
Splits the central hallway into fore and aft central hallways

Adds the spaces that jut out of medbay and sci into the central hallway, rather then having them be a part of
medbay and sci

Adds medbay access locked windoors to the back desk of the medbay reception area

Adds airlocks to both the upper and lower parts of the main hallway
</details>

Meta:
<details>
Gives the storage wing another set of firelocks, and two fire alarms. It didn't have any alarms in the first place, so hopefully this helps things

Adds the spaces that jut out of medbay and sci into the central hallway, rather then having them be a part of
medbay and sci

Replaces a small bit of the science area with nanite lab, to prevent a breach near xenobio causing fire alarms
at the front of sci

Adds a windoor in front of the ORM to block air

Adds a wall behind a smart fridge in chemistry
</details>

Icebox:
<details>
Added airlocks between arrivals and the port hallway, and the escape hallway and the starboard hallway

Added a windoor between the kitchen and the bar
</details>

## Why It's Good For The Game

Cuts delta's main hallway in half, with the goal of reducing fire alarm strain. Some thoughts on this would be nice, I don't want to make everything else that uses areas worse just because fire alarms are dumb, and I'm worried that's what I've ended up doing here.

I've also added the portions of medbay/sci that jut out into the main hallway into the main hallway, I think? I could make these into lobby areas, but I'm not sure if that's appropriate or not.

Adds a few windoors and airlocks to better section off portions of the station, this should reduce the amount of mass gas spreading that can occur.

My goal here is to reduce the amount of uninteresting gas movement and make firelocks less hellish when there's a breach

* Automatic changelog generation for PR #57535 [ci skip]

* Updating GBP from PR #57535 [ci skip]

* Move a signal that is randomly seperated from others of it's kind (#57914)

Co-authored-by: actioninja <actioninja@criticalaction.net>

* Fix plant trash from grown food not inheriting their proper seeds (#57924)

This PR fixes plant trash not getting the seed from their parent.

trash_type is a type path, not an instantiated object. istype always fails trying to use it on trash_type. ispath is the correct helper to use here, because it's a type path and not an object.

* Automatic changelog generation for PR #57924 [ci skip]

* Updating GBP from PR #57924 [ci skip]

* Makes deadchat control's examine only shows up for ghosts (#57926)

This PR early returns the on_examine proc for deadchat control if the examiner is not an observer.
So, only ghosts (deadchat) are allowed to see if something is under deadchat control. Humans don't need to know (or shouldn't know) if deadchat is expanding its reach into the physical realm.

* Automatic changelog generation for PR #57926 [ci skip]

* Updating GBP from PR #57926 [ci skip]

* Adds materials to PDAs (#57923)

Puts a small amount of iron, glass, and plastic into a PDA 'cause that sort of material usage makes sense to me

* Automatic changelog generation for PR #57923 [ci skip]

* Updating GBP from PR #57923 [ci skip]

* Automatic changelog compile [ci skip]

* Adds sticking metallic kitchenware into APCs (#57910)

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

* Automatic changelog generation for PR #57910 [ci skip]

* Updating GBP from PR #57910 [ci skip]

* Bane AI (#57771)

We take Gotham from the corrupt! The rich! The oppressors of generations who have kept you down with myths of opportunity, and we give it back to you...the people...Gotham is yours. None shall interfere, do as you please!

* Automatic changelog generation for PR #57771 [ci skip]

* Updating GBP from PR #57771 [ci skip]

* Splits winter coats/hoods into their own sprite file (#57896)

Moves the winter coats and their hoods into their own sprite file.
335 icons in one of the files got lowered to 289 after moving 46 wintercoat icons to their own file.
Renames some icons because they had a long name.

* Updating GBP from PR #57896 [ci skip]

* remove double pen door from meta xeno (#57879)

door double removal

* Automatic changelog generation for PR #57879 [ci skip]

* Updating GBP from PR #57879 [ci skip]

* Resprites ventriloquist dummy (#57863)

## About The Pull Request

Resprites the ventriloquist dummy  #https://github.com/tgstation/tgstation/projects/6#card-2814241

## Why It's Good For The Game

The current sprite is just the assistant doll cut in half. This gives it a unique sprite and also makes it so that the hands line up with the item better than the current sprite. It's also a lot creepier (and animated!)

* Automatic changelog generation for PR #57863 [ci skip]

* Updating GBP from PR #57863 [ci skip]

* Fixes missing pixel on envirosuits (#57849)

## About The Pull Request

Adds 1 pixel to every evirosuit side sprite except the prototype.  

## Why It's Good For The Game

The current envirosuit sprites all have a single pixel missing on the foot, which causes the foot to be visible. This pixel is there on the prototype, but all the others are missing it.  This PR adds 1 pixel to each side sprite to cover it up.

* Automatic changelog generation for PR #57849 [ci skip]

* Updating GBP from PR #57849 [ci skip]

* Updates round tips (#57927)

Deals with any mention of cloning, intents, and a few outdated mechanics

* Automatic changelog generation for PR #57927 [ci skip]

* Updating GBP from PR #57927 [ci skip]

* Thermomachine update (#57918)

This PR adds an UI button that allow the players to decide if use enviromental heat or red port pipe (it will have an error if the choice is not working for some reasons, like not having moles in the pipes/air, not having pipes connected at all, etc)
This also fix the issue of having roundstart freezers heating up rooms because the waste pipe didn't have any gas

* Automatic changelog generation for PR #57918 [ci skip]

* Updating GBP from PR #57918 [ci skip]

* Improves status bar coverage (#57916)

This PR makes sure all MouseEntered() procs call their parent, which handles the status bar. This fixes instances where the status bar was missing, for example when you hovered over the ghost buttons, you would not be shown a name of the button, but completely different object, like "space", which was very misleading. This also means that the new status bar should have better parity the with the old status bar, which also showed these things.

* Automatic changelog generation for PR #57916 [ci skip]

* Updating GBP from PR #57916 [ci skip]

* Create explicit warning if not building with CBT (#57931)

Adds a new CBT define which is automatically created when building. If this define is absent, the build will fail.

This is what Cyberboss tried to do with USE_BUILD_BAT_INSTEAD_OF_DREAM_MAKER.dm, but couldn't.

The reasoning behind this is CBT is already a requirement to build a fresh project, otherwise the tgui bundle files won't exist. This gives a readable error to go along with that. However, you can currently build once then just use Dream Maker. This is a footgun - not only are we already adding new things to CBT like tgfont which will fail later on, but also it will create weird scenarios when we add tasks to CBT that don't immediately fail if not ran, or otherwise create out of sync builds.

Also replaces rmSync with unlinkSync, which works on older Node versions.

Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>

* Additional CTF maps (#57230)

This pull request adds a map loader as well as new maps to CTF. When a game starts a CTF map will be selected at random and will be playable by ghosts.

As well as this new functionality CTF now fully supports 4 teams. A green and yellow team have been added complete with both standard and instagib gear.

At current five maps are planned:
Classic - the original map we all know and love
Four Side - A four team CTF map where all teams compete over one flag
Downtown - Terrestrial city themed map
Limbo - Wizard themed map featuring portals and uses KOTH rather than CTF
Cruiser - Space themed map utilizing the powerup system

Random maps are selected on game load
Support for four teams added

Why It's Good For The Game

CTF has been more or less the same on the surface since its creation. This PR allows for some much needed map variety which will increase replay value. CTF is far more regularly played then mafia due to its fast rounds and common use during round end delays and I believe that it deserves a boost in content.
Changelog

cl
add: CTF can now selects a random map at game start
add: CTF now supports four teams
add: Gear for yellow and green CTF teams has been added
add: CTF ID cards for all 4 teams have been added - courtesy of maxymax13
add: a new CTF map, Four Side has been added
add: a new CTF map, Downtown has been added
add: a new KOTH map, Limbo has been added
add: a new CTF map, Cruiser has been added
fix: KOTH capture points retain their sprites after being claimed
/cl

* Automatic changelog generation for PR #57230 [ci skip]

* Updating GBP from PR #57230 [ci skip]

* Implements Plant Biotype (#57108)

Implements a plant biotype for plant based mobs. Changes the wood golem mob to be an organic, humanoid, and plant biotype---because wood is an organic substance, not a mineral.

This additionally adds the ability for plantbgone/weedkiller to deal damage to plant biotypes.
Why It's Good For The Game

There's a curious lack of a defined plant biotype, despite plants sharing a unique number of traits. Ideally, this behavior can be more consistently implemented with something like biotypes. A minor example of this is utilized in this PR: weedkiller and plantbgone impacting plant-like mobs, which is what you'd expect.
Changelog

cl
add: Plant-like mobs are now impacted and take damage from plant-b-gone and weedkiller reagents
add: Plant-like mobs can be health scanned with a plant analyzer
add: Plant-like mobs are impacted by the floral gun in the same manner pod people are
/cl

* Automatic changelog generation for PR #57108 [ci skip]

* Updating GBP from PR #57108 [ci skip]

* fix (#57900)

Fix missing cable from upper atmos apc
Fix wrong area in north-west corner resulting in airlock not working

* Automatic changelog generation for PR #57900 [ci skip]

* Updating GBP from PR #57900 [ci skip]

* Add note about rust-g for building on Linux (#57622)

This PR adds a minor note about needing to compile rust-g to Linux building instructions. I'm not sure if this is the appropriate place for it, but I don't see a better place to put it.

* cyborg lollipop launchers can no longer spam timers (#57786)

About The Pull Request

Cyborg treat dispensers now have a maximum treat storage capacity of 5 treats instead of 30 treats, and recharge their treats at a rate of one treat per 10 seconds instead of one treat per second.

To compensate for this, the damage of gumballs and lollipops that have been launched from an emagged cyborg has been increased from 3 to 10.

Launched gumballs and lollipops will no longer delete themselves after 2 minutes (if not equipped).

The 2u of omnizine in each cyborg lollipop has been replaced by 2u of psicodine. The contents of normal lollipops have not been modified.

Cyborg cookie dispensers can now only dispense a cookie once every 10 seconds (instead of once per second). Non-cyborg cookie dispensers no longer self-recharge, but can now accept compressed matter cartirdges for reloading purposes. Support has been added for other types of RSFs to have use cooldowns.
Why It's Good For The Game

The self-deletion mechanism was apparently causing timer spam, so I reduced the amount of treats that cyborgs could spam out (and the rate of that spamming) so that the mechanism would no longer be necessary. I increased the damage of launched treats to compensate to keep the emagged treat launcher from becoming a very sad joke of a weapon.

Floyd threw a fit when he learned that cyborgs could freely dispense lollipops that contained omnizine, so I replaced the omnizine with psicodine, a chem that is perhaps more appropriate for lollipops (it calms people down), doesn't do much of importance, and can't react to form any rare or interesting chems.

The cookie dispenser thing is also an attempt to appease Floyd, since he doesn't like cyborgs being able to spam food everywhere.
Changelog

cl ATHATH
balance: Cyborg treat dispensers now have a maximum treat storage capacity of 5 treats instead of 30 treats, and recharge their treats at a rate of one treat per 10 seconds instead of one treat per second. To compensate for this, the damage of gumballs and lollipops that have been launched from an emagged cyborg has been increased from 3 to 10.
del: Launched gumballs and lollipops will no longer delete themselves after 2 minutes (if not equipped).
balance: The 2u of omnizine in each cyborg lollipop has been replaced by 2u of psicodine. The contents of normal lollipops have not been modified.
balance: Cyborg cookie dispensers can now only dispense a cookie once every 10 seconds (instead of once per second). Non-cyborg cookie dispensers no longer self-recharge, but can now accept compressed matter cartirdges for reloading purposes. Support has been added for other types of RSFs to have use cooldowns.
/cl

* Automatic changelog generation for PR #57786 [ci skip]

* Updating GBP from PR #57786 [ci skip]

* Minor tramstation and train-rail-fluff fixes (#57639)

Fixes an incorrectly-shifted sprite for floor tram rails and adds some missing tram-rail fluff objects
Also does some minor renaming (railing -> rail)



cl
fix: Nanotrasen railroad engineers have done some minor repairs to their in-station tram rails.
/cl

* Automatic changelog generation for PR #57639 [ci skip]

* Updating GBP from PR #57639 [ci skip]

* Automatic changelog compile [ci skip]

* Paper bins show the paper inside them (atomised) (#57907)

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

* Automatic changelog generation for PR #57907 [ci skip]

* Updating GBP from PR #57907 [ci skip]

* Ref Tracking: Revengance (#57728)

* Ref Tracking: Revengance

Fixes reference tracking ignoring self references due to a poorly thought out tick checking system.
Fixes reference tracking ignoring the contents of assoc lists
Makes the reference tracking printouts actually describe what list the ref is in, rather then just saying "list"

Adds REFERENCE_TRACKING_DEBUG, a define which toggles tracking info for the ref tracking procs, which allows for
oversight on how the proc is working

Allows for direct calls of qdel_and_find_ref_if_fail(), makes it use ref rather then REF(), fixing it breaking
for mobs. (Ditto for the qdel hint which does the same thing)

Moves REAGENTS_TESTING out of the reftracking define block
Makes unit tests define REFERENCE_TRACKING, REFERENCE_TRACKING_DEBUG, and FIND_REF_NO_CHECK_TICK

Adds a unit test that sanity checks the reference finder proc

* Updating GBP from PR #57728 [ci skip]

* fix (#57902)

Fix missing tile under airlock above turbine in kilo station

* Automatic changelog generation for PR #57902 [ci skip]

* Updating GBP from PR #57902 [ci skip]

* You can now put food on plates, and plate no longer materialize out of nowhere as you cook (#57770)

* All plates removed.
Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
Co-authored-by: DeAndre <robustness13@hotmail.com>
Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
Co-authored-by: Krysonism <49783092+Krysonism@users.noreply.github.com>

* Automatic changelog generation for PR #57770 [ci skip]

* Updating GBP from PR #57770 [ci skip]

* tgui strip panel + strippable element (#57889)

Completely removes show_inv and replaces it with /datum/element/strippable. It takes a list of instantiated /datum/strippable_item which communicate which slots are available and how to interact with them. This element has been added to humans, alien humanoids, parrots, and corgis.

Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>

* Automatic changelog generation for PR #57889 [ci skip]

* Updating GBP from PR #57889 [ci skip]

* Adds explorer drones / adventures. (#57851)

A new side-job for cargo. Prepare and launch exploration drones at distant sites to encounter weird adventures, collect loot and expand the station cargo network. Adventures - the main content type here, can be written by anyone without any knowledge of programming. The purpose here is creating an way of interesting way of delivering lore (and adding some new job content/cargo expansion method).

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: EOBGames <58124831+EOBGames@users.noreply.github.com>
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>

* Updating GBP from PR #57851 [ci skip]

* Fermichem 2.6 - Adds the HPLC: a new roundstart method of detecting purity, as well as a method of partially purifying reagents (#57858)

Adds the High-performance liquid chromatography machine - a new roundstart method of detecting purity, as well as a method of partially purifying reagents.

A single machine has been added to each of the 4(5) maps - this lets people determine their purity based off the size of the green (pure portion) to the orange (impure portion) of a reagent's peak shown on the mas spectroscopy display. If a reagent is impure - it will be displayed as red.

In addition to this function, the HPLC can purify reagents by selecting a range of them and pressing the purify button. This will cost some time depending on the mass of the reagent and will purify it up it's default purity (in the tweaked reagent cases - 75%, for the reagents I've yet to get to - 100%). It will also reduce the volume accordingly (so in essence you are reducing the volume of the impure parts).

The sprite itself will indicate when it's running, so you don't need to be nearby it or use the UI to know when it's done

* Automatic changelog generation for PR #57858 [ci skip]

* Updating GBP from PR #57858 [ci skip]

* Partially revert reaction chamber (#57855)

* Automatic changelog generation for PR #57855 [ci skip]

* Updating GBP from PR #57855 [ci skip]

* Blobbernaut HUD improvements (#57922)

* Automatic changelog generation for PR #57922 [ci skip]

* Updating GBP from PR #57922 [ci skip]

* Crops the cached ID card icon so it is less obnoxious in tgui chat. (#57935)

* Automatic changelog generation for PR #57935 [ci skip]

* Updating GBP from PR #57935 [ci skip]

* Some minor atmos cleanup (#57933)

Fixes mining not making turfs active, I forgot to add a type arg when I added one to AfterChange(). This isn't the only source of the issue, but it's the most prevalent one

Cleans up total_moles_specific() slightly, there's no point iterating a list if you already have the gas id. Removes a null assignment and if check, they don't catch anything as things are now, and if someone passes null to the proc I want a runtime

Oh and I reordered a bit of atmospherics.dm to make a comment make sense. Don't worry about it

* Automatic changelog generation for PR #57933 [ci skip]

* Updating GBP from PR #57933 [ci skip]

* emissive blockers are now just an overlay (with kickass fucking graphs). FUCK YOU MAPTICK (#57934)

currently emissive blockers are objects added to the vis_contents of every item. however mutable appearances as overlays can serve this role perfectly well and according to my tests should cause less maptick per item. for mobs mutable appearances dont work for reasons i dont understand so instead this adds the em_block object to overlays instead of vis_contents. these both use atom/movable/update_icon() now

graphed test results in pr

* Updating GBP from PR #57934 [ci skip]

* Converts trait comments to doc comments (#57941)

This converts the existing comments traits had `#define TRAIT_BLA "bla" // yadda yadda` to proper doc comments so that they show with SDMM and the codedocs website.

People just reference old code when writing new code, and people not using doc-comments for traits is something that comes up often.

* Automatic changelog compile [ci skip]

* Gibs/Dead bodies no longer produce miasma (#57957)

* Gibs/Dead bodies no longer produce miasma

Miasma production as it is now is too little over too long a time span, and it just ends up spreading across the
station and having little effect. My goal here is to remove a source of uninteresting gas from the station's
air, and make corpses and gib piles more infectious.
I've placed the cap on disease payout at a strength of 7, so there's a slight chance of a positive disease, but
I think it's counteracted by the danger presented by just infecting yourself till you get what you want.

I've rewriten the rot component to just run a percent chance to infect someone with a disease based on the type
of rot, and moved almost all of its behavior to signals. There's one portion I can't rewrite without making
significant changes to how I handle atmos sensitivity, so that'll come later.

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

* Automatic changelog generation for PR #57957 [ci skip]

* Updating GBP from PR #57957 [ci skip]

* [Ready] Fermichem part 2.3 Adds a new reagent: Eigenstasium (#56918)

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

* Automatic changelog generation for PR #56918 [ci skip]

* Updating GBP from PR #56918 [ci skip]

* Bump pyyaml from 5.3.1 to 5.4 in /tools (#57956)

Bumps [pyyaml](https://github.com/yaml/pyyaml) from 5.3.1 to 5.4.
- [Release notes](https://github.com/yaml/pyyaml/releases)
- [Changelog](https://github.com/yaml/pyyaml/blob/master/CHANGES)
- [Commits](https://github.com/yaml/pyyaml/compare/5.3.1...5.4)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Syndicate Shuttle Console cannot be deconstructed via tools (#57962)

* Automatic changelog generation for PR #57962 [ci skip]

* Updating GBP from PR #57962 [ci skip]

* Metastation's Nanite lab RC is now named properly (#57952)

* Automatic changelog generation for PR #57952 [ci skip]

* Updating GBP from PR #57952 [ci skip]

* Sentience fun balloon QoL (#57928)

* Automatic changelog generation for PR #57928 [ci skip]

* Updating GBP from PR #57928 [ci skip]

* Examine atmos machinery will tell the piping layer (#57937)

* Automatic changelog generation for PR #57937 [ci skip]

* Updating GBP from PR #57937 [ci skip]

* fix (#57917)

move layer adaptors into another spot in engi and toxins to prevent distro and waste mixing

* Automatic changelog generation for PR #57917 [ci skip]

* Updating GBP from PR #57917 [ci skip]

* Thermomachine balance (#57921)

Changed how much internal heat_capacity the machine has, from 5000 to 7500, this to try and increase the speed of cooling/heating that was a bit slower than the old version
Added a check that stops the machine from cooling when set to heater and heating when set to cooler
Changed efficiency to be clamped between 0.65 and 1 (lessen the power spikes)
Power usage reduce on lower efficiency if above a certain amount
removed else if when checking to use enviroment heat (allow to use enviroment to cool even with the red port connected and with gas)

* Automatic changelog generation for PR #57921 [ci skip]

* Updating GBP from PR #57921 [ci skip]

* Moth eyes now have their own obj and mob sprites (#57893)

imageadd: Moth eyes now have a unique sprite that reflects on your mob.

* Automatic changelog generation for PR #57893 [ci skip]

* Updating GBP from PR #57893 [ci skip]

* Improves spoon in hand sprites (#57938)

fix: Spoons are consistently rendered in the correct hand on the player's sprite

* Automatic changelog generation for PR #57938 [ci skip]

* Updating GBP from PR #57938 [ci skip]

* Fixes the apocalypse rune alt appearance for humans. (#57965)

* Automatic changelog generation for PR #57965 [ci skip]

* Updating GBP from PR #57965 [ci skip]

* Cyborgs now use the same icon states for charge screen alerts as ethereals. (#57966)

* Automatic changelog generation for PR #57966 [ci skip]

* Updating GBP from PR #57966 [ci skip]

* lazy tramstation fix (#57843)

Fix an already fixed issue with xenos and other mid-round antags from spawning inside atmos chambers.
Copy-paste very bad

* Automatic changelog generation for PR #57843 [ci skip]

* Updating GBP from PR #57843 [ci skip]

* ai_behaviour cleanup ft. less chatty tourists (#57945)

Each of these lines is punctuated by an audio sting every 8 seconds without refrain.

So, this PR adds a new vocalisation limiter to tourist bots who can't find a seat. Instead of always vocalising every 8 seconds, they're now guaranteed to vocalise the first time and then have a 60% chance to have vocalised again each minute thereafter.

Tourists waiting for food now have an approx 40% chance to have vocalised in any given minute. This should be considered alongside the fact that multiple (up to 10) tourists can be present at any given point in time and with the difficulty in players killing them, they can create a lot of unnecessary audio spam. If the tourists are being served rapidly, they're also giving regular guaranted audio stings on top of that which compounds the chances any given bot will output an audio cue.

The AI controller now passes the larger value between the behaviour's `action_cooldown` in real seconds (as opposed to deciseconds) and delta_time when performing behaviours. This has no gameplay changes outside of those documented in this PR, since no AI behaviours with cooldowns greater than the AI controller's delta_time attempted to use delta_time.

Finally, customers now have 10 minutes of patience before leaving instead of 100 minutes of patience due to a minor oversight where their patience was in deciseconds while delta_time was subtracted in seconds.

* Automatic changelog generation for PR #57945 [ci skip]

* Updating GBP from PR #57945 [ci skip]

* Further updates the rounds tips (#57951)

Removes and/or updates some more tips that #57927 missed.

* Automatic changelog generation for PR #57951 [ci skip]

* Updating GBP from PR #57951 [ci skip]

* fixes jungle grass having wrong broken states (#57967)

* Automatic changelog generation for PR #57967 [ci skip]

* Updating GBP from PR #57967 [ci skip]

* Switch tgui tooltips to popper.js (#57992)

* Preliminary popper support

* Switch tooltips to popper.js

* Documentation, change DEFAULT_PLACEMENT

* Automatic changelog generation for PR #57992 [ci skip]

* Updating GBP from PR #57992 [ci skip]

* Quick-Create-Antagonist tweaks (#57913)

Gives admins control of how many antags they spawn, instead of assuming a maximum of (generally) 3.
image

* Automatic changelog generation for PR #57913 [ci skip]

* Automatic changelog compile [ci skip]

* Renames TRAIT_MONKEYLIKE to TRAIT_DISCOORDINATED_TOOL_USER and fixes an issu with jungle fever (#57897)

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

* Automatic changelog generation for PR #57897 [ci skip]

* Updating GBP from PR #57897 [ci skip]

* Corrects span and a typo with emagged pAIs (#57981)

* Automatic changelog generation for PR #57981 [ci skip]

* Updating GBP from PR #57981 [ci skip]

* Removes total_moles_specific, just use gaslists normally. I don't know how I missed this (#57973)

* Refactors pellet_cloud/create_cassing_pellets to not sleep (#57974)

Co-authored-by: MLGTASTICa <ak9bc01d@yahoo.com>

* Automatic changelog generation for PR #57974 [ci skip]

* Updating GBP from PR #57974 [ci skip]

* Fix Tooltip documentation (#58013)

* Remove SS_NO_TICK_CHECK (#57800)

## About The Pull Request
This is a whopper, will need @MrStonedOne to review.
In theory this flag shouldn't be needed and my own testing didn't find any issues, but I'd feel better with a lengthy test merge.

## Why It's Good For The Game
Might make nightshift subsystem lag less, MC loop has less stuff to check.

* Updating GBP from PR #57800 [ci skip]

* Reorder the list of items in more outfits. (#57801)

On my quest to make outfits easier to read and fix some small mistakes by applying a priority order.

ID > uniform > suit > backpack > other clothing in alphabetic order > pockets > hands > others

Moved the base/assistant plasmaman outfit from the middle of the standard file to the top of the plasmaman outfit file.
Reorganized the plasmaman outfit order to have jobs within a department close to each other.
Moved the Death Commando outfit into the ERT file together with a line that adds mindshields to CentCom outfits because I had to dig to find that a long time ago...

Also fixes detective plasmaman spawning with a worse headset and plasmamen prisoners spawning with a different shoe.
Like... how no one has seen that plasmaman spawn with the wrong headset? Do we have no plasmaman sec? Yes I know the answer...

* Automatic changelog generation for PR #57801 [ci skip]

* Updating GBP from PR #57801 [ci skip]

* Fix sql changelog (#57972)

Fixed bad SQL that I originally wrote in the changelog for 5.11, anyone trying to update their schema from < 5.11 up would notice this.

* Test newest version of gbp-action (#57980)

Read about it here: tgstation/gbp-action#28

TLDR: Less race conditions, and all logs are now pushed to a separate branch. The new location of gbp-balances.toml is in the gbp-balances branch. Will most likely be able to delete the one in master so people don't get confused.

This required a workflow update, and so was not directly pushed to master. This currently uses my PR branch directly so that I can make changes for anything that doesn't work. When it is solid, I will push it to master and we will go back to gbp-actions@master, or some pinned version.

* Fixes mech HUD's not being properly removed (#57964)

Fixes mech hud's not being removed when leaving the odysseus or clarke

* Automatic changelog generation for PR #57964 [ci skip]

* Resprites the fork! (#57490)

About The Pull Request

This PR resprites the fork.

image
Why It's Good For The Game

The old fork was really tall and black.

Forks are really hard to sprite but i think this is an improvement.
Changelog

cl
imageadd: The fork has a new sprite.
/cl

* Automatic changelog generation for PR #57490 [ci skip]

* rpds can now interact with the unwrench upgrade (#57959)

Adds the functionality to upgrade the RPD by 'slapping' the unwrench upgrade disk with the RPD itself

It doesn't exactly revolutionize gameplay and at most allows engineering cyborg players to at least upgrade their RPD to unwrench saving them a headache and a module slot when doing their thing I suppose

* Automatic changelog generation for PR #57959 [ci skip]

* *begins beatboxing like the friday night funkin dad*

pp pp ppkk pk pk pk pkpp pk pk ppk ppp p yeah

* this made a whole area dissapear

lole

* Wtf TGU is done???

i think

* my brain is so fucking large

i am smart

* Consider your unused variable SANITIZED

*in a very low tone of voice*
bitch

* fIXES ME BEING DUMB

Mirror bot fan VS TGU Enjoyers
*insert that one funny video of the british guy all angry staring at the camera with the greyscale chad flexing his muscles to the right*

* DEAD ATMOS WTF *dies of cringe*

* POTATO WHY

Lowers the disease chance for a bit
this is just so we don't instantly die from disease

* Does thingy

Adds cameras to drone area, adds a light so freezer room feels less dark

* light

yeah

* Gets the new fulp commits over here

yeah

* gets us updated with TG once more

should have the commit that makes TGUI not lag you for so long :)

* my life be like

ooh aaahh oooh

* ooh aaah oooh aah

fulp update

* e e  eo a o eo e e e e e ao e o eo o o o o

* m

* when the linter is failing..

* Annotate L-ints

* sickness for nothinggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg

* m

* sleep through self loaaaaaaaaaaaaaaaaaathing

what remains of my emotionnnnnnnnnnnnnnnnn
only serves to play this gameeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee

* 'cause you're the only one who'd understand (The meaning of this!)

Oh My God
I try and I try and I try to make you listen to me
I try to call you every day
I'm rehearsing what to say when the truth comes out (Of my very own mouth)
I've been working on a unified theory
If I make it through tonight everybody's gonna hear me out
'Cause I'm the right one
On my touch-tone, touch-tone telephone
I'm the only one, hey!
On your A.M., A.M. radio
Don't hang up yet, I'm not done
I'm an expert, I'm the one
The one who was right all along
Better to be laughed at than wrong
I'm an expert in my field
UFOlogy, yes, it's all real
Ancient aliens, it's all true
I'm an expert just like you
And like you, I'm a genius before my time
Disbelieving, that's the real crime
Pretty soon they'll discover me in the Super-Sargasso Sea

* why

* i swear to god

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
Co-authored-by: tgstation-server <tgstation-server@tgstation13.org>
Co-authored-by: Changelogs <action@github.com>
Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: MLGTASTICa <61350382+MLGTASTICa@users.noreply.github.com>
Co-authored-by: MLGTASTICa <ak9bc01d@yahoo.com>
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
Co-authored-by: TheVekter <TheVekter@users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: AnturK <AnturK@users.noreply.github.com>
Co-authored-by: Time-Green <timkoster1@hotmail.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Rob Bailey <actioninja@gmail.com>
Co-authored-by: actioninja <actioninja@criticalaction.net>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: ArcaneDefence <51932756+ArcaneDefence@users.noreply.github.com>
Co-authored-by: GuillaumePrata <55374212+GuillaumePrata@users.noreply.github.com>
Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
Co-authored-by: Horatio22 <69338705+Horatio22@users.noreply.github.com>
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
Co-authored-by: NamelessFairy <40036527+NamelessFairy@users.noreply.github.com>
Co-authored-by: Fox McCloud <Fox-McCloud@users.noreply.github.com>
Co-authored-by: Cyprex <35031555+Cyprex@users.noreply.github.com>
Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
Co-authored-by: Emmanuel S <mrdoomboyo@gmail.com>
Co-authored-by: cacogen <25089914+cacogen@users.noreply.github.com>
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: EOBGames <58124831+EOBGames@users.noreply.github.com>
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: Thalpy <33956696+Thalpy@users.noreply.github.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: bloons3 <bloons3@users.noreply.github.com>
Co-authored-by: dragomagol <66640614+dragomagol@users.noreply.github.com>
Co-authored-by: Seth Scherer <supernovaa41@protonmail.com>
Co-authored-by: Randomguy523 <55070076+Randomguy523@users.noreply.github.com>
Co-authored-by: spookydonut <github@spooksoftware.com>
Co-authored-by: Bobbahbrown <bobbahbrown@gmail.com>
Co-authored-by: Krysonism <49783092+Krysonism@users.noreply.github.com>
Co-authored-by: DuffCreeper <treyparn@yahoo.com.au>
2021-04-02 18:45:57 -06:00
GoldenAlpharex
2d3fe631e5 [READY] Misc Fulpstation Quality of Life Changes (#27)
* Re-adds the Fulpstation lobby screen and lobby music

* Adds "Welcome to Fulpstation" when you approach the station

* Adds the round-end music as well as moko's space ambience music back

* Makes round end clips code more modular, also ticks all the new files

* Adds the old (fixed) MOTD, as well as attempts to make the space_ambience addition not break

* Enabled random station name and fixed runtimes with the sound global lists overrides

* Temporary fix for the broken links + one new round restart track

anyways, I got banned on Fulpstation

* Fix a dumb typo in adding the new round-end track

* Tried to make the ticker change a bit more merge-friendly.

* fixes the missing whitespaces in comments

* Revert some config changes

Wind just has to do it himself instead.
2021-03-26 18:36:58 -06:00
windarkata
c1fa2e5f99 Tgupdate (#23)
* throw_at() will not quickstart a throw if the throw was triggered from the same stack as SSthrowing/fire() (#56004)

throw_at will not quickstart a throw if the throw was triggered from the same stack as SSthrowing/fire()

Infinite throwing loops are fine, as long as they don't loop at the stack level.

* what did he mean by this (#56042)

Potato goofed 7 months ago so here's a fix (Fridges were defaulting to a force of true, which was... jank)

* Automatic changelog generation for PR #56042 [ci skip]

* Banana & peel resprite. (#56015)

imageadd: Bananas & peels have been resprited.

* Automatic changelog generation for PR #56015 [ci skip]

* fixies (#56054)

You can now ride the banana glutton properly.

* Automatic changelog generation for PR #56054 [ci skip]

* Adds Rocket Backblast (#55681)

This PR adds the backblast element, which when attached to a gun, creates giant plumes of fire when said gun is fired. The PM9 rocket launcher that nuke ops can buy kinda sucks and even a direct hit with the standard rockets loaded isn't enough to guarantee a one-hit crit on a direct hit against an armored opponent, which sucks for how much you pay for it. In that vein, I've also buffed the standard rockets a bit, they now do 50 brute up from 30 on a direct hit, and they create flames on their explosion.

Also makes a tweak to /proc/get_turf_in_angle(), since tile coordinates start at 1,1 instead of 0,0 that proc is now clamped to min 1,1 rather than 0,0

* Automatic changelog generation for PR #55681 [ci skip]

* Sticky syndicate access (#56032)

Adds sticky access. Sticky access will be readded if removed in the identification console. Currently only used to fix #54429. Also converts some comments in card_ids.dm to DMdoc comments and adds some new ones.

* Automatic changelog generation for PR #56032 [ci skip]

* Fix wheel error for ci_suit workflow (#56053)

Adds wheel package since its required by some setup.py
Workflow run with this option added: https://github.com/Gamer025/tgstation/pull/1/checks?check_run_id=1672278250

Gets rid of all the
error: invalid command 'bdist_wheel'
errors in the ci_suite workflows

* Tweak the RD's suplexing ability into a skillchip (#55870)

Although this doesn't change the power level of the Research Director,
it's important to rework "job title" checks into traits or something
similar.

Moving job title specific behaviour out of checks by job name and into
traits means there's more flexibility to trigger behaviour. If an admin
feels the station really needs the ability, they can var edit it in, or
spawn the chip.

* Automatic changelog generation for PR #55870 [ci skip]

* tgui: List Input (#56065)

Ported over from https://gitlab.com/cmdevs/colonial-warfare/-/merge_requests/613 which provides an input box to select an option from a list.
Has a search bar to allow filtering for results and an onKeyDown event to replicate default behaviour from the default list input boxes that BYOND provides (where you are able to type the first letter of an element in the list and it'll jump to the first element that matches and then the next and so on)
Right now, it is only applied to the holopad and "Drop Bomb" verb for administrators.

Credits to bobbahbrown for the Loader element from AlertModal.js which allows for a timed input (was needed on the CM codebase for timed inputs) and for the majority of the DM code.

Co-authored-by: Watermelon914 <3052169-Watermelon914@users.noreply.gitlab.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>

* Automatic changelog generation for PR #56065 [ci skip]

* Sets the charset and collation for the SQL schema to utf8mb4 (#56060)

Changes the charset and collation in the SQL schema to utf8mb4 (which is default in ubuntu 20.04 and debian 10 for MariaDB). This solves all the problems with russian or other non-latin1 characters in many cases related to the use of the database, because surprisingly the rest is already ready for such use cases.

I am not adding any SQL script to migrate from latin1 to utf8mb4, as this is an extremely destructive action. It must be performed manually with the data of all tables backed up before doing so.
However, this can be done by using the following queries, one time for database:
ALTER DATABASE databse_name CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
and one for each table:
ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

* [READY] Nukes archeology component and icon_plating and environment_type in favor of base_icon_state. Dig behaviour code improvement (#55819)

* aa

* Removes archeology component. Nukes icon_plating and environment_type in favor of base_icon_state

* Actually maybe lets not use a proc for updating asteroid icon state when its dugged up

* Update plating.dm

* Automatic changelog generation for PR #55819 [ci skip]

* Correctly transfer skillchips when ahealing someone (#56064)

When ahealing someone via the player panel their skillchips weren't transfered correctly.
The actually skillchip object was left in the old brain and eventually hard deleted.
This caused a runtime when ahealing someone a second time (after the harddel).
This then caused the target to actually have 2 brains because of the runtime while ahealing

* Automatic changelog generation for PR #56064 [ci skip]

* Telekinesis can throw non items (vending machines, lockers) only 1 tile far (#56063)

Telekinesis users can now only throw items 10 tiles, everything else can only be thrown 1 tile

* Automatic changelog generation for PR #56063 [ci skip]

* Fixes 2 really annoying cytology virus bugs. (#56062)

This PR fixes the generate_sample proc so it properly uses virus_chance to determine when to generate a virus. Now most samples will be virus free as intended.

It also fixes the bug where virus penalty and spaceacillin consumption would be multiplied by the number of cell lines, rather than the number of viruses, as intended.

* Automatic changelog generation for PR #56062 [ci skip]

* Added a standardized json unit test results log and added my vscode test runner to recommendations (#56058)

Link to the test explorer: https://marketplace.visualstudio.com/items?itemName=Donkie.vscode-tgstation-test-adapter

The test explorer adapter lets you compile and run the code in one click of a button, with no messing about with defines necessary

The extension supports reading test results from the unit test logs, but its shitty having to parse logs for that, so this PR also adds support for a somewhat standardized method of logging unit test results to a json file instead.

* Automatic changelog generation for PR #56058 [ci skip]

* Xenomorph embryos now grow based on consistent timers instead of 100% RNG (3% chance every 2s) (#55755)

• Adds documentation to alien_embryo.dm
• Refactors how alien embryos increase their stage var, aka their cute ickle baby development stage. Now it increases stage every minute, which means 5 minutes to grow as opposed to taking 15 seconds to the end of time to grow.
• Growth time is now defined by a variable, so admins can var-edit it in game and future coders can easily change the variable to make it take more or less time to grow. It also means it's a simple one-line edit if any of TG's plentiful downstreams want to change this for their server.

* Automatic changelog generation for PR #55755 [ci skip]

* Removes the ANIMATION_PARALLEL flag from floating and fixes another issue with the refactor. (#55930)

Co-authored-by: Rohesie <rohesie@gmail.com>

* Automatic changelog generation for PR #55930 [ci skip]

* Automatic changelog compile [ci skip]

* Replaces 'Goebbles' random last name (#56074)

* Automatic changelog generation for PR #56074 [ci skip]

* Fixes removing AIs from mechs (#55986)

Basically the old code attempted to use locate(AI), but the AI in this case is a ref that is supposed to be provided by the card. Since the card is initially empty when removing AIs from the mech, it couldn't find the null in the occupants list and thus failed with a report that there was no AI in the mech.

Now it checks all occupants and makes a list of any AIs it finds, then gives the user the option to pick an AI (though since we don't have any multi-pilot mechs yet the most you can get is one AI, and input with one option just auto-chooses).

* Automatic changelog generation for PR #55986 [ci skip]

* Optimize mapmerge's DMM.generate_new_key method (#56068)

Tested on #55867, takes the merge driver's runtime from 148.1s to 4.8s

* stops code from seeping into ic chat (#56088)

changes the reference in the modular computer code from src to computer as src is a datum

* Automatic changelog generation for PR #56088 [ci skip]

* Flesh to stone no longer makes you immune to bleeding, refactors bleedsuppress into a trait (#56078)

Being hit by the Flesh to Stone makes you bleed immune to prevent you from getting petrified while bleeding, and bleeding out while turned into stone. However, it doesn't make you vulnerable when you get unpetrified. This is a bug. This also makes bleedsuppress into a trait, as both is broken and should be a trait.

* Automatic changelog generation for PR #56078 [ci skip]

* Fixes vehicles like skateboards and wheelys moving multiple times. (#56070)

 So wheelys would have 3 instances of the riding component attached on initialize with a different argument, causing them to move 3 tiles at once instead of 1. Skateboards will have 2 attached and move 2, etc.

* Automatic changelog generation for PR #56070 [ci skip]

* moves quirk stating from medhud to a button instead of being spammed on your chat (#56067)

 shift clicking people with medhud shouldnt fill your whole chat with stuff u dont want except when u press button to see it

* Automatic changelog generation for PR #56067 [ci skip]

* Move module creation up in Initialize (#56086)

This is caused by Initialize trying to link the Cyborg to an AI, when this is done successfully toggle_headlamp is called
Toggle_headlamp however calls update_icons which tries to set icon_state to module.cyborg_base_icon however module at this point is null because the default module is assigned later in Initialize.
This PR moves the module creation up inside Initialize to prevent this.

* Automatic changelog generation for PR #56086 [ci skip]

* Fixes #55670, AIs will be able to see clearly after getting un-pied (#56087)

Fixes #55670. There was a bug where AIs wouldn't have their blurriness lowered after getting cleaned up. This fixes it by enabling the system that allows living things to lower blurriness on AIs.

* Automatic changelog generation for PR #56087 [ci skip]

* Add nanite lab to Runtime Station (#56044)

Doing any testing of new nanite stuff involves spawning in a bunch of
machinery and equipment, so including it on Runtime helps with
development.

* Automatic changelog generation for PR #56044 [ci skip]

* 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

* Automatic changelog generation for PR #55965 [ci skip]

* Adds forgotten kit to armament beacon (#56016)

Adds the forgotten kit to the armament beacon, holding the same stats as knight armor and stone sentinel, But with the sprites for the old clockwork armor and helmet, as they are very nice looking sprites. Moves said sprites to the suit and hat file respectively. as-well as adding forgotten helmet/armour to the game, which are said armors.

Makes it easier to do any clockcult themed gimmick as the chaplain without wearing the god awful craftable armor, uses sprites that really shoulden't die on the same hill as clockcult. a few others have also told me they'd love to see the old clockcult armor and helmet sprites used for something, as they look nice.

* Automatic changelog generation for PR #56016 [ci skip]

* Rework job food/alchohol benefits into livers  (#55721)

By moving the "special behaviour" of something like security officers
eating donuts, or engineers losing radiation by drinking Screwdrivers,
into traits on the liver, this makes the "origin" of that behaviour more
clearly defined, rather than something that's attached to the mind of
the person. (For example, now if a wizard mindswaps into a Security
Officer, they too can now digest donuts good.)

Having this behaviour be partially visible to the more medically
inclined members of the station (like doctors, and the chaplain for
"entrails reading mystic" themes), means that a dismembered liver tells
a story to those who know how to read it.

Some jobs have more "benefits" than others, for example the only thing
that the liver of a Quartermaster gives them is a sense of inadequacy
when consuming royal carpet.

Clowns having livers that honk make them easier to identify, and plays
into the retconned "bike horns are clown livers lore"? Also, why not cut
out a clown's liver then honk them with it? You monster.

* Automatic changelog generation for PR #55721 [ci skip]

* Makes it possible to create an /obj/item/sharpener with multiple uses (#55958)

Whetstones will now become worn when at 0 uses instead of being either used or not used. All currently existing whetstones start at 1 use.

* Automatic changelog generation for PR #55958 [ci skip]

* Refactor caltrop component into element (#56020)

Refactors the nearly completely stateless component "caltrop" into an
element. The previous limit on "one message per caltrop per second" has
been changed to "one message (about caltrops) per mob per second".

This avoids a unique component for each shard of glass, and each cactus
in the world, so saves some much needed memory.

A message about "sliding over" caltrops has been removed, since it's
now intended that you only trigger caltrops if you're not lying down.

* Automatic changelog generation for PR #56020 [ci skip]

* Regular CTF no longer has wounding (#56093)

🆑 coiax
tweak: Regular Capture-The-Flag players can no longer be wounded.
Simulated participants in the Medieval Shuttle can still be violently
murdered with wounds however.
/🆑

CTF is very fast paced, and if you've taken damage without your shield,
you are nearly dead most of the time. However, if you do survive, you're
supposed to slowly heal, but wounds are untreatable on the battlefield.

People still being able to be bloodily stabbed in the Medieval Shuttle
is definitely a feature.

- Aliens (xenomorphs) are still immune to wounds, but that immunity is
  now done with a trait, rather than a typecheck.

* Automatic changelog generation for PR #56093 [ci skip]

* Automatic changelog compile [ci skip]

* [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.

* Automatic changelog generation for PR #55956 [ci skip]

* Fixing bugs about the worst simple_animal coded in and material tiles. (#54885)

Fixed floorbots applying floor tiles onto already tiled turfs.
Fixed floorbot issues with material tiles.
Fixed emagged floorbots spawning lattice when deconstructing floor into plating.

* Automatic changelog generation for PR #54885 [ci skip]

* Makes jaunting work properly again (#56028)

Fixes an if check that was checking the area flags of a turf. Prevents a runtime in phased_check, and makes the area noteleport flag work properly. These were introduced by #55973

* Gives CE an engineering skillchip. (#56082)

Literally gives CE an existing skillchip.

* Automatic changelog generation for PR #56082 [ci skip]

* HFR: Better observation of delta_time (#56009)

This changes HFR's fusion_process() to better observe delta_time.

* Automatic changelog generation for PR #56009 [ci skip]

* Fix moth aheal runtime (#56109)

Fixes misplaced square bracket to solve runtime issue.

* Automatic changelog generation for PR #56109 [ci skip]

* Removes the gen_turfs from icebox arrivals, they don't god damn do anything because they are literally just placeholders for areas, and they aren't in the right fucking area. Also gets rid of some dumb plating that makes the area looks worse imo (#56107)

* Automatic changelog generation for PR #56107 [ci skip]

* Upgrade extools version (#56104)

thanks willox. fixes the game not working on BYOND 513.1539
.dll is from appveyor for the v0.0.7 tag: https://ci.appveyor.com/project/MCHSL/extools/build/job/gbyo64ou0ny01g75/artifacts

* Removes the firealarm from the meta freezer, it activated at roundstart due to the cold. (#56106)

* Automatic changelog generation for PR #56106 [ci skip]

* Fix runtime in bolts hallucination (#56108)

Fixes requesting .len from null when the list was never initialized.

* Automatic changelog generation for PR #56108 [ci skip]

* [bounty code moment] Adds a way to view the 'Server's Last Round' (#55646)

* Adds "View Last Server Round Report" option.

* Automatic changelog generation for PR #55646 [ci skip]

* Now brain trauma paralysis works in arms as intended (#56105)

Fixing issue #56076 making arms affected by the corresponding brain trauma. Fixing brain trauma paralysis in non-human limbs is impossible without a partial or complete refactor of paralysis code or species code, and since this situation happens very rarely, I doubt someone want to waste time in this. But if someone wants to do it anyway feel free to ask me about how it can be done.

* Automatic changelog generation for PR #56105 [ci skip]

* Fixes double catwalks on Delta Station. (#56110)

Removes double and triple catwalks from DeltaStation map.

* Automatic changelog generation for PR #56110 [ci skip]

* Added autofocus for the first button in the TGUI list input. (#56114)

Ported over from https://gitlab.com/cmdevs/colonial-warfare/-/merge_requests/647
When you open the TGUI list input, it'll auto-focus the first element so that you can easily navigate with the arrow keys without having to click on the page beforehand.

Small QoL when opening the thing, don't have to click on it if you want to navigate via arrows keys, etc.

* Automatic changelog generation for PR #56114 [ci skip]

* Automatic changelog compile [ci skip]

* [READY] Changes MetaSec Offices Layout, lathe location, and adds walls to maintenance by upload. (Attempt 2) (#55971)

* Try 2

* Missed the edits by Upload

* Someone threw the sec couch out the airlock.

* Added a few officer spawns

* Junk commit for mergability testing

* Yet another junk commit

* lathe moved.

* That gosh darn sec lathe has been moved with prejudice. Tricksy lathe.

* Automatic changelog generation for PR #55971 [ci skip]

* Revert "Finishes the allocation refactor (#55965)" (#56137)

This reverts commit 87234f3fd8.

* Comms consoles now have a GPS signal. (#56121)

Helps solve the issue of hidden comms consoles delaying (or forcing) a round end.

* Automatic changelog generation for PR #56121 [ci skip]

* Fixes null-named painting issue (#56113)

There was an issue where you could name paintings nothing, which would cause issues with persistency. This was because the stripped_input didn't actually check that you put something in, so the PR adds that check. It now ensures, both when saved and loaded, that there is a title. If not, it sets them to the default 'Untitled Artwork'

* Automatic changelog generation for PR #56113 [ci skip]

* Prevents everything except carbons, PAIs and cats from resting to fix Ian paralysis (this time with bitflags). (#56089)

There is now a mobility flag that determines a mob's ability to rest. Only works with living mobs. Most living mobs shouldn't be able to rest, so it's only true for carbons, cats and PAIs. Fixes #56034. Fixes #55975 by making borgs unable to rest.

* Automatic changelog generation for PR #56089 [ci skip]

* Makes hulk more susceptible to cold damage (#56131)

cl Qustinnus
tweak: Hulks now get more damage from freeze damage, take it in brute, and get the damage at higher temps than normal
/cl

requested by oranges, makes the temp-gun better against hulkies

* Automatic changelog generation for PR #56131 [ci skip]

* Automatic changelog compile [ci skip]

* Add testing rule to contribution guidelines (#56147)

Adds a clause to the contributing guidelines that you are expected to have tested your code, which implicitly bans webedited larger PRs. Also updates the wording about changelogs.

* Fix elevators (#56117)

Currently elevators are broken since they try to use the z level of the assembly inside the button to determine how to move
The assemblies z level is however always 0 and instead the z level of the button containing the assembly must be used
This fixes this

* Automatic changelog generation for PR #56117 [ci skip]

* Fix briochecake icon, add tastes and foodtypes (#56125)

- Adds a missing `icon_state` to the full brioche cake
- Adds `SUGAR` to the brioche cake's and slice's `foodtypes`, as they're glazed (according to the description)
- Adds butter and cream to the `tastes` as well

* Automatic changelog generation for PR #56125 [ci skip]

* var/hacked now actually does something in vendor spawners (#56144)

Oversight made by @TiviPlus when making #55147
var/hacked wasn't actually used in code and instead, all spawner vendors were instantly hacked.
fixes #56101

* Automatic changelog generation for PR #56144 [ci skip]

* Common Build Tooling (#55373)

Add Common Build Tooling

## Information for Developers

On Windows, the build scripts will automatically install Node. Other 
platforms should use their package manager or download it from 
https://nodejs.org/en/download/

Pick one:

- VSCode: `Ctrl+Shift+B`
- VSCode: `F5` (build & run with debugger) or `Ctrl+F5` (build & run 
  without debugger)
- Windows: double-click root `Build.bat` (pause to see output) or 
  `tools/build/build.bat` (no pause)
- Git Bash and non-Windows: `tools/build/build`

## Information for Server Admins

- TGS scripts will automatically install the version of Node specified 
  in `dependencies.sh`
- Either use this build script, or compile tgui by running any script 
  in `tgui/bin` folder.

## Details

Both dm and tgui are now built with a single script. It's pretty easy 
to launch: just press `Ctrl+Shift+B` in VSCode, and tada! 🎉 

**It's smart.** It will skip certain steps if source files were 
untouched for that step. So, if you're only touching dm code, it will 
only rebuild dm code, and will skip tgui.

**Syntax is fairly readable and maintainable.**

```js
const { Task, runTasks, exec } = require('./cbt');

const taskTgui = new Task('tgui')
  .depends('tgui/yarn.lock')
  .depends('tgui/packages/**/*.js')
  .provides('tgui/public/*.bundle.*')
  .provides('tgui/public/*.chunk.*')
  .build(async () => {
    await exec('tgui/bin/tgui');
  });

runTasks([taskTgui]);
```

**This is a long term solution to the js bundle hell.** Now that we 
have a single script to build everything, bundles have been excluded 
from the repo, and they will no longer cause conflicts in PRs. This 
results in quicker PR turnaround time and less time wasted on 
rebuilding tgui for PRs.

**CI pipelines have been updated.** They're not coded in the most 
optimal way, just making them green for now.

## Possible future work

- Support compiling with DM defines by passing them as an argument, 
  like `-D LOWMEMORYMODE`.
- Instead of explicitly listing the task sequence in `runTasks()`, 
  support specifying tasks in `.depends()`, which in turn will allow 
  building a graph of dependencies and running things in parallel.

Co-authored-by: Tad Hardesty <tad@platymuus.com>

- Add root Build.bat
- Add trio of tools/bootstrap/ scripts for Node
- Add tools/build/README.md
- Ensure build script and VSC configuration works properly on Linux
- Update TGS4 PreCompile scripts

Co-authored-by: Jordan Brown <Cyberboss@users.noreply.github.com>

- Keep PreCompile scripts compatible with TGS3 as well
- Update LinuxOneShot PreCompile scripts
- Update TGS4 configuration

* Fixes checking a person's inventory requiring a do_after and causing a buckle notification. (#56153)

`/atom/movable/proc/mouse_buckle_handling(mob/living/M, mob/living/user)` has functionality that is too generic for `/mob/living/carbon/human/`

`/mob/living/carbon/human/MouseDrop_T(mob/living/target, mob/living/user)` contains code that is better suited for `mouse_buckle_handling()`

`/mob/living/carbon/human/MouseDrop_T()` results in a call stack that calls the generic `/atom/movable/proc/mouse_buckle_handling()` when the prerequisites for piggybacking or fireman carrying are not satisfied. But this makes no sense and means that when the game state is such that you should be inspecting the inventory, the game state is ALSO such that you are attempting to erroneously buckle a player to yourself.

In addition, `MouseDrop_T()` should really not be holding mouse buckling logic in this scenario. As a result, this proc override has been removed from /living/carbon/human entirely. All functionality has been shifted into an overriden `mouse_buckle_handling()` at the /living/carbon/human level.

Piggybacking and fireman carrying now actually return a value on success.

Finally, if we have successfully handled the MouseDrop_T event through a parent proc call chain, we no longer go on to show the mob's inventory.

All these tweaks combined mean that you can now click-drag to view inventories without a do_after and without attempting buckling, /mob/living/carbon/human buckling logic is now appropriately in `mouse_buckle_handling()` and no longer falls through to generic buckling checks, which is not relevant when trying to air quotes "buckle" a mob to a /mob/living/carbon/human. Successfully buckling a player to yourself (in this scenario through fireman carrying) no longer opens the inventory window.

I have tested the following behaviours and they work as intended.

- [x] Piggybacking
- [x] Fireman carrying
- [x] Inspecting inventory of /mob/living/carbon/human
- [x] Inspecting inventory of /mob/living/simple_animal/pet/dog/corgi/ian
- [x] Buckling /mob/living/carbon/human to a chair.
- [x] Buckling /mob/living/simple_animal/pet/dog/corgi/ian to a dog bed.

* Automatic changelog generation for PR #56153 [ci skip]

* Fixes ghost_roles spawning as transgenders. (#56151)

About The Pull Request

An oversight made in #51058. Almost every other source of changing gender was complete with changing body_type as well, but not the ghost_role spawners.

Right now ghost roles can spawn with one gender, but get the other body_type.
This results in looking at "her", while the person in question got a surprise.

For such things, we already added "Other" gender.


cl
fix: Ghost roles can no longer spawn as a male with female body_type and vice-versa.
/cl

* Automatic changelog generation for PR #56151 [ci skip]

* Automatic changelog compile [ci skip]

* ID Card access change logging, Part 2 (#56155)

I've condensed the logging into a single define, to allow ID card logging to be easily tweaked and to clean up some messy copy-pasted code.

There is no longer admin messaging for Head of Staff accesses, but it's all still logged as it was before.

There is a new option for the Investigate verb.

Which has the complete logging history for ID card changes that are currently tracked, all in one place.

Which admins can ALSO access from Get Current Logs and Get Server Logs for past rounds via id_card_changes.html

* Automatic changelog generation for PR #56155 [ci skip]

* Fixes comms console runtime that stops you paying off pirates (and reply to any other messages) (#56135)

This is because JS-side it does a string concat instead of integer addition at messageIndex + 1, as messageIndex is a string and nothing in JS is typed because it is an evil programming language that is a cross between Hitler and Skeletor, with piss of pure liquid malevolence.

We appropriately parse the messageIndex to an int radix 10 before adding 1, and everything just works.

Also removes two text2num conversions following a recent tgui change that made this no longer necessary.

* Automatic changelog generation for PR #56135 [ci skip]

* Icebox Xenobio maint fixes (#56139)

Fills in a hole in Icebox lower Xenobio maint causing active turfs and replaces a magic locker that I'm told is unintentional with a regular one.

* Automatic changelog generation for PR #56139 [ci skip]

* fixes grenades with prox sensors (landmines) not working (#56150)

* Automatic changelog generation for PR #56150 [ci skip]

* Improves Bleeding Feedback + Misc Wound/Organ Decay Tweaks (+ Removes Teeth) (#56056)

* Automatic changelog generation for PR #56056 [ci skip]

* Update build process in documentation (#56173)

Building tgstation is a bit different nowadays, so I've updated the 
docs a bit.

* Makes build all default task in vscode. (#56178)

* Update Dockerfile for CBT (#56175)

Follow-up to fix the failing Docker CI on master.

- Reorganize the entire Dockerfile to be more readable
- Inline the tgstation/byond Dockerfile into our own, so we can change the base distro at will
- Also allows us to trash the dependencies.sh<->Dockerfile hack
- Use 32-bit libs on a 64-bit distro so that we can download and run recent 64-bit Node binaries
- Call tools/build/build rather than DreamMaker directly

* Force UTF-8 encoding in tools/bootstrap/node_.ps1 (#56177)

* Try to not do anything after calling TgsReboot() (#56161)

We want to use the script TGS executes when calling this to do ops stuff

* Replaces iftrue for scope building with do while in compile overlays (#56159)

* Updates Contribution Guidelines regarding Prior Approval for Station Maps (#56166)

Updates the contribution guidelines to require the addition, removal or replacement of station maps to require prior approval before making the PR.

Ultimately shouldn't change much about how the PRs are handled, but gives an early warning that approval should be sought and should help cut down on lost time mapping if I would reject a PR outright. With how long station maps take to make, prior warning that it outright won't be merged is, in my opinion, good.

* Explosive lance icons update properly (#56164)

Fixes #56154. Spears were missing an update_icon on initialize, this adds one. Now, spears will show their grenade upon construction. Works just fine in testing.

* Automatic changelog generation for PR #56164 [ci skip]

* Wooden tables now obey The Law of Conservation of Mass (#56156)

## About The Pull Request
Fixes Issue https://github.com/tgstation/tgstation/issues/56152 making wood tables deconstruct at they should be.

Bug vivisection:
Okay, see here? This is the proc for creating a table, we can introduce three arguments. One of them is _buildstack. _buildstack overrides Buildstack on initialize, a variable used for storing the type of raw "ore" that the table is supposed to drop in deconstruction. Here is supposed to be null unless we want to override the buildstack with another ore.

```DM
/obj/structure/table_frame/proc/make_new_table(table_type, custom_materials, _buildstack) 
	var/obj/structure/table/T = new table_type(loc, _buildstack)
	T.frame = type
	T.framestack = framestack
	T.framestackamount = framestackamount
	if(custom_materials)
		T.set_custom_materials(custom_materials)
	qdel(src)
```

What happened? The proc for building a wood table from a wooden frame, shown below, passed the "type" variable, used for storing the type of table_frame, as a _buildstack argument to the make_new_table proc. This overrides the buildstack variable of the final wooden table, causing it to drop a wooden frame as it was an ore on deconstruction. 

```DM
/obj/structure/table_frame/wood/attackby(obj/item/I, mob/user, params)
[...]
		if (toConstruct)
			if(material.get_amount() < 1)
				to_chat(user, "<span class='warning'>You need one [material.name] sheet to do this!</span>")
				return
			to_chat(user, "<span class='notice'>You start adding [material] to [src]...</span>")
			if(do_after(user, 20, target = src) && material.use(1))
				make_new_table(toConstruct, null, type)
```
This is funnier (not very much, to be honest) when we consider that deconstructing with a screwdriver would drop a frame normally, causing it to drop two frames. We could repeat this ad nauseam, essentially cloning wood frames in place as we pleased.

So TL;DR: this is another of those simple but hard to hunt bugs that would be prevented with testing and a null on its right place.

* Automatic changelog generation for PR #56156 [ci skip]

* 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

* Automatic changelog generation for PR #56122 [ci skip]

* Makes excited breakdowns independent of adding new turfs. This prevents the dreaded stationwide firelock, at least mostly, and moves us away from being dependant on room size. As a downside, we're closer then ever to ZAS. This also allows us to raise the breakdown timer and decrease the amount of overtime experienced in each tick. (#56081)

## About The Pull Request

This prevents the dreaded station-wide firelock, at least mostly, and moves us away from being dependent on room size. As a downside, we're closer then ever to ZAS, and the transition between pre-breakdown and post-breakdown is a lot more visible. This also allows us to raise the breakdown timer and decrease the amount of overtime experienced in each tick.

See video, I'm not sure I'm happy with the current rate, it does look somewhat shit. I'm considering tweaking the alpha curve for gas visuals to try and make it look less not good. [Video](https://cdn.discordapp.com/attachments/326831214667235328/797766078389813298/2021-01-10_01-55-53.mp4)

Closes #56066

## Why It's Good For The Game

Station spanning excited groups are rarer, and will settle down more often. Cold things like space will cool down their group faster, preventing station spanning non updating excited groups.

* Automatic changelog generation for PR #56081 [ci skip]

* separates malf ai from traitor dynamic ruleset (#56090)

Separates malf ai from traitor so admins can treat it separately

* Automatic changelog generation for PR #56090 [ci skip]

* Redone Metastation Science (#55867)

* fixed conflicts

updated the branch and pasted in all the changes again, conflicts and all roundstart turf diffs should be gone now

* Update MetaStation.dmm

Opened up the cytology lab directly to xenobio, its all one room, with shutters to lockdown cytology in case of an emergency - Nari

* Update MetaStation.dmm

softened some internal walls on xenobio sat, they dont need to be reinforced, added a small weakpoint to xenobio sat, its not a secure area and doesnt need to be a roundstart gigafort, removed the windows the buttons were on for the slime pens, buttons directly on windows looks bad, replaced with a table - Nari

* Remove minor tweak

remove the biobag and labcoat tweak from this branch

* Update MetaStation.dmm

tile under a door had a random disposals pipe, but missing a wire. fixed - Nari

* Update MetaStation.dmm

fixed merge conflict

* Update MetaStation.dmm

why???

* Update MetaStation.dmm

fix?

* Update MetaStation.dmm

cant fix sorry

* Update MetaStation.dmm

trying a fix

* fixed conflicts?

i think this fixes it?? - Nari

* Update MetaStation.dmm

Added experimentor - Nari
re-tiled sec post -Nari
rearranged mech bay so it actually works - Nari
re-did the connection between xenobio and the cytology area - Nari
added a few requests consoles - Nari
added a sci drobe - Nari
removed one of the extra deliveries areas - Nari

* Update MetaStation.dmm

fixed the department request consoles departmentType and name - Nari

* Update MetaStation.dmm

fleshed out the support line for the bomb site - Nari

* Update MetaStation.dmm

removed lattices under catwalks, hopefully this fixes

* Update MetaStation.dmm

fix

* Automatic changelog generation for PR #55867 [ci skip]

* Makes the manifest always have a certain department order (#55917)

Makes the manifest always have a certain order to the departments in it.

* Automatic changelog generation for PR #55917 [ci skip]

* Infinite Gun Culling: Gun Kit Edition (#56133)

Every prototype firearm in the game now utilizes crafting to construct it, usually sacrificing a standard version of that firearm in order to produce the new one. The guns are made using gun part kits you print from the security protolathe (or buy, in the case of hellfire lasers).

* Automatic changelog generation for PR #56133 [ci skip]

* Use draft pull requests instead of the 'Work In Progress' and 'Needs Review' labels. (#56168)

* Automatic changelog compile [ci skip]

* 513.1536 is the stable BYOND version (#56182)

* 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.

* Makes wayfinding great again (#56055)

Interacting with the wayfinding pinpointer dispenser recently after leaving it untouched basically since I added it I realised it has a bunch of bad design decisions that make it unpleasant to interact with so while this can never solve the lack of desirability of the pinpointers themselves hopefully it prevents the machine from contributing to the problem.

* Automatic changelog generation for PR #56055 [ci skip]

* Fix Docker build failing on a clean checkout (#56190)

Follow-up to #56175 which turned out to be accidentally relying on Node already being downloaded.

* Makes the rest of large guns bulky (sans traitor objectives and a few others) (#56132)

## About The Pull Request

What it says on the tin.
Practically everything but pistols, SMGs, and traitor weapons can no longer be stashed into bags.

I had considered making some large guns that traitors can order (like the blast cannon) also bulky, but concealment is important for some of those things.
However, the bulldog shotgun and sniper rifle have been made bulky, because they're shotguns and sniper rifles!

Traitor objectives are still normal size and can fit in backpacks.

## Why It's Good For The Game

Makes previous changes to weapons and thus balance consistent across our full list of guns. Players can clearly understand what can fit in the bag based on the size of the weapon.

* Automatic changelog generation for PR #56132 [ci skip]

* Superior auto comment blocks VSCode extension (#56194)

* Adds toggling shower's refills (#55895)

Adds the ability to toggle showers water reclaimers with a multitool
Adds some delta_time handling to showers.

* Automatic changelog generation for PR #55895 [ci skip]

* Fixes parallax runtime when observing someone without client (#56092)

When observing someone without client (because they for example disconnected) a runtime happened:
This was because update_parallax didn't take a mob as parameter but instead always updated the parallax of the mob to which the HUD datum belonged (which was the HUD of the person who you tried to observe)
If that mob had no client this caused a runtime.
If you observe someone now the game updates parallax for your client and not the client of the person you tried to observe.

* Automatic changelog generation for PR #56092 [ci skip]

* [READY] Bespoke Datum Mats (#55296)

* Bespoke Material Backend

- Adds support for bespoke materials:
  - Reimplements [/datum/material/var/id]
  - Ports GetIdFromArguments from SSdcs
  - Adds a wrapper define for GetMaterialRef
  - Adds [MATERIAL_INIT_BESPOKE]
  - Adds [/datum/material/proc/Initialize]
- Does not actually add any bespoke materials

- [ ] TODO: Code docs
- [ ] TODO: Actually adding bespoke materials

* Some has_material procs and cleaning up some spaghetti

- Adds a pair of has_material procs for use in checking whether a given atom has a given material

* Adds meat

- Adds bespoke meat variants
  - Does not make them accessible
- Shuts up the linter

* Implements bespoke meat

- Makes the material container preserve bespoke materials
- Makes the sheetifier accept bespoke materials
- Makes the autolathe accept bespoke materials
- Makes the gibber produce bespoke meats

* Makes butchering produce bespoke meats

This is jank and really needs to be folded into a unified butchering and gibbing system

* Material documentation

- Adds, fixes, and touches up some documentation

* Material container insertion callback

- Changes the proc used to expand the material container's material list ot a proc used to check whether a material fits into a material container
- Instantiating new materials is no longer O(n) relative to the number of autolathes in existence.

* Makes processing meat conserve materials

- Makes bespoke meat carry over into meatballs

* Makes preserving custom materials an option

- Implements the ability to turn preserving custom materials _off_ for processor recipes

* Fixes all bespoke materials of the same type using the same singleton

- We use ids now, not just types.

* Makes the fat sucker produce bespoke meats

- Because consistency is good.

* Fixes autolathes merging bespoke stacks into normal stacks.

* Makes the callback to test materials for holdibility optional

- @Floyd

* GetMaterialRef -> GET_MATERIAL_REF

- We capitalize macros.

* Removes an extraneous callback

- Makes the sheetifier use functionality I didn't notice I implemented a few commits ago.

* Makes mob and species meat null compatible

* Fixes the ore silo

- The ore silo had really snowflake material handling that has been brought in line with the rest.
- The materials should show up in the correct order.

* Fixes minor lathe bugs

- Fixes stack_traces caused when lathes tried to fetch materials using reagent typepaths
- Fixed the selective reagent disposal topic. I have no idea how long this has been broken.

* Various documentation fixes

- Clarified a couple comments
- Removes an extraneous ?. operator
- Fixed mat floor tiles having bugged reagent temperatures

* More fixes

-/datum/material/meat/mob -> /datum/material/meat/mob_meat
- Adds atom typecheck to material containers.

* Fixes old typepaths

* Automatic changelog generation for PR #55296 [ci skip]

* Fixes showers overexposing washed targets (#55894)

Makes showers consistently expose washed atoms to 5u of their internal reagents
Makes showers effectively double the reagents targets are exposed to as per a comment by ArcaneMusic

Apparently there were balance concerns over synthflesh showers capable of instantly healing and de-husking anyone you put under them.

* Automatic changelog generation for PR #55894 [ci skip]

* Temperature Pump Sanity (#55926)

* fix temperature pump

* Cleanup and ui stuff

* Punctuation is important you know

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>

* tgui rebuild

Co-authored-by: Ghilker <minefap44@gmail.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>

* Add weakref support to qdel (#56171)

qdel() should allow usage of weakrefs to avoid harddels on long duration qdel_in usage

* invert an if statement in beefmen code

linter was complaining about returning inside a spawn call and this made enough sense to just flip

Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
Co-authored-by: spessbro <51048066+spessbro@users.noreply.github.com>
Co-authored-by: tgstation-server <tgstation-server@tgstation13.org>
Co-authored-by: Krysonism <49783092+Krysonism@users.noreply.github.com>
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
Co-authored-by: interestingusernam3 <51925758+interestingusernam3@users.noreply.github.com>
Co-authored-by: Gamer025 <33846895+Gamer025@users.noreply.github.com>
Co-authored-by: coiax <yellowbounder@gmail.com>
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@users.noreply.gitlab.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
Co-authored-by: Vladimir Veisman <v.veisman@fl45h13.me>
Co-authored-by: Azarak <azarak10@gmail.com>
Co-authored-by: Donkie <daniel.cf.hultgren@gmail.com>
Co-authored-by: KathrinBailey <53862927+KathrinBailey@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Changelogs <action@github.com>
Co-authored-by: Coffee <CoffeeDragon16@gmail.com>
Co-authored-by: zxaber <37497534+zxaber@users.noreply.github.com>
Co-authored-by: Tad Hardesty <tad@platymuus.com>
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Tlaltecuhtli <33834933+Tlaltecuhtli@users.noreply.github.com>
Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Coastfront <50342376+Coastfront@users.noreply.github.com>
Co-authored-by: coiax <jack@billbuddy.co.uk>
Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: EgorDinamit <53223414+EgorDinamit@users.noreply.github.com>
Co-authored-by: esainane <esainane+github@gmail.com>
Co-authored-by: Emmanuel S <mrdoomboyo@gmail.com>
Co-authored-by: Manybones <miguelbasket1@gmail.com>
Co-authored-by: Cartographer-D <63861499+Cartographer-D@users.noreply.github.com>
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Rob Bailey <actioninja@gmail.com>
Co-authored-by: Alex 'Avunia' Takiya <git@takiya.cloud>
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
Co-authored-by: dragomagol <66640614+dragomagol@users.noreply.github.com>
Co-authored-by: AnturK <AnturK@users.noreply.github.com>
Co-authored-by: Jordan Brown <Cyberboss@users.noreply.github.com>
Co-authored-by: EOBGames <58124831+EOBGames@users.noreply.github.com>
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: 小月猫 <alina.r.starkova@gmail.com>
Co-authored-by: Seris02 <49109742+Seris02@users.noreply.github.com>
Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: cacogen <25089914+cacogen@users.noreply.github.com>
Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
Co-authored-by: Ghilker <minefap44@gmail.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: spookydonut <github@spooksoftware.com>
Co-authored-by: windarkata <windarkata@users.noreply.github.com>
2021-01-16 21:14:33 -06:00
Jordan Brown
cd22f91ddf 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.
2021-01-10 00:04:58 -03:00
LemonInTheDark
6d1cb94ffb LINDA Reforged (#55604)
Speeds up gas movement significantly
Documents the intent and finer details of the atmos system (Thanks dunc)
Fixes excited groups constantly rebuilding, this broke 4 years ago
Fixes superconductors just straight up not working
Allows turfs to sleep while inside an excited group
Adds a new subprocess to SSAir to support rebuilding in this state
Most heat based behavior no longer relies on being inside a fire
Adds a new element to support doing this cleanly
Adds a new subprocess to SSAir to support doing this while a turf is asleep
Refactors air_update_turf to allow for finer control
Makes apcs take damage in heat to prevent infinite plasma fire diffs
Cleans up immutable gas mixtures to make them work properly when the mix has gas in it
Planetary turfs no longer create a new copy of themselves each time they process. We instead use a global
immutable mix
Cleans up a typed for loop in reactions
Canisters will take damage from outside heat now
Speeds up excited group dismantle
Increases the superconductor threshold by 200k
Cleans up some roundstart ATs on some ruins
Uses /turf/open/var/excited to track if a turf is actively processing, preventing a |=
Prevents openspace from trying to melt
Tweaks a canister examine line
Makes planetary turfs reset to base when broken down as part of an excited group
Makes it impossible for planetary turfs to rebuild, just like space tiles
Fixes closed turfs not activating their replacement when destroyed by moving closed -> open turf activation to
the adjacent air subsystem. They were activating and then going back to sleep before adjacent air got a chance
to tick.
Fire alarms will trigger when the area gets too cold for humans
2021-01-08 08:14:08 +01:00
TemporalOroboros
c7ab3a8907 Fixes NTNet logging runtime (#55892)
SSnetworks can log when it's passed a text network ID.
2021-01-03 22:52:44 -08:00
spookydonut
f9bb52e866 Add TIMER_DELETE_ME (#55803) 2020-12-31 13:20:08 -08:00
81Denton
1c3e18aa89 Merge pull request #55810 from NotRanged/democracy
Admins cancelling a vote now leaves a log and message
2020-12-31 01:49:56 +01:00