Restores Mining access to the maintenance door leading to Mining bay
Adds Service access to a maintenance door to the right of abandoned bar and kitchen
Adds a regular maintenance door in Abandoned kitchen/bar maintenance to prevent Service personnel from reaching the Engineering deliveries windoor
Adds more cables and pipes around Arrivals to make it slightly more robust to being sabotaged
Moves the Iron pill in the upload down one tile
Adds a windoor to the ORM
While playing on Tramstation, I have noticed several errors with the various pipes and utilities. This PR contains the following fixes:
Moved a fire alarm floating above a door one tile lower
Connected fore operation room to plumbing ducts, and connected both surgery rooms to disposals, distro and waste
Connected medbay distro and waste to starboard maintenance
The apothecary had a duplicate medbay sorter instead of chemistry sorter, this is now fixed
Rotated a disposal pipe under the medbay equipment storage room
Fixed two disposals errors in lower port maintenance, so the maintenance loop can once again be traversed
Security Meeting Area and HoS disposals were in a one way area, they can once again flush down trash
Having omni layer adapters everywhere is sin and a pain in the ass to work around. Moving them backward into the windows gives a little more room, too, without sacrificing functionality.
Any other changes are just for freeing up space, really. There's no functionality really lost or gained here.
There is certainly more to be done with this IMO but I'm not the best mapper and it's a start.
* Gives Service access to Cold Room Maint, adds enzyme to kitchen, adds Brig access restrictions to Courtroom Holding Cell
* Deletes extra wires in prison
* Removes recharger tablet parts
Removes 'advanced' tablet subtypes that we used before PDAs were added, in some jobs.
Replaces Roboticist's advanced tablet mail with a laptop
Moves the notepad's note var from the tablet, to the note app
Moves modular computer's defines into their own file
Machine computers now directly use power from the machine they're in, while the rest uses power cells.
Silicon tablets don't use power at all.
Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Removes an anchored device lying on the ground which you would constantly trip over while trying to use the cargo console.
You can't even unwrench it and sell it because fax machines are shuttle banned.
Removes a duplicate newscaster in the delta kitchen. In order to keep the symmetry looking nice I also moved the APC from the back wall of the kitchen into the storage area to the north.
* Duplicate Mass Driver Controls
* Things near the station are now near the station
* Incinerator is now air-tight because part of it is not in space.
* The Kilo fix-athon continues.
fix: A duplicate mass driver controller on Kilo has been deleted, you can no longer operate the toxins mass driver from maintenance.
fix: Kilo's north escape pod now correctly has its catwalk in the nearstation area.
fix: Kilo no longer has a random incinerator area in space.
fix: removed a random decal from arrivals on Kilo.
Moves an air vent out from underneath a disposals bin in the Meta incinerator.
Replaces a regular intercom with a prisoner intercom in the Icebox prisoner transfer.
Replaces the window spawners in Meta departures (the ones in the middle of the room) with plain windows so you can see the flowers.
About The Pull Request
Every single part of maintenance has been segmented into modules with multiple variants with different themes. As it stands, there are currently 80 modular parts that come together to form the entire maintenance layout for both levels. Part 1 of a 2 part PR set, requires #69486 to have full effect.
Why It's Good For The Game
Maintenance as it stands is a bit barren, not much reason to explore it with boring same-same rooms despite current randomized modules. With these issues in mind, I completely scrapped maintenance as it was and rebuilt it in mind with full modular segments with proper documentation on what each piece is and where it is located. These changes were also designed to make maintenance more friendly for our dark-dwelling antags and xenos alike, as each major module now has an air vent and scrubber.
Fixes#68320
Main Event:
Every single part of maintenance was turned into module chunks. Sections of the map that originally had maintenance was traced out with checkered flooring so mappers can still see the general layout of the tunnels when making larger edits.
Every module has been documented with proper nodes with descriptions of where each module is located on the map.
Each main module has a regular variant and an abandoned variant. Abandoned variants have blocked access routes and look more like unfinished carved out tunnels than regular maintenance.
Each module has 2 attachment points barring 2. Each attachment has 3 potential layouts that are chosen each round. A storage room with construction supplies one round might be a carved out room with minerals the next.
QoL/General Fixes:
Maintenance should have much more xeno/antag spawns to give various mid-round antags better chances at starting.
Camera network has been given a once-over with duplicate/floating cameras fixed.
The helpful bots in the lower tunnel should now actually do full rotations instead of whatever the hell they were doing before.
I still need to do some testing with disposals and final touch ups to make sure there aren't any weird overlaps, but as of right now the actual mapping quality is ready for review.
1: The bookshelf in the chapel was in the funeral area despite being in a different room. Its area has now been corrected to Chapel
2: The door between the Chapel and Funeral Parlor has been made public, I checked with EOB if this was intended and they've confirmed that it should be public.
* adds Layer 4 between engine and engine break
connects upper engineering and engineering breakroom
* adds a missing cable to starbord aft solars
adds a missing cable under the smes in starboard aft solars
Properly makes the crab on the holodeck beach into a holocrab
RUDE people were butchering the poor crab for infinite crab meat
leave him alone hes nice :(
A general cleanup and QoL changes to the Icebox security camera network, brought to you by a floating camera in front of Brig Access Checkpoint.
Full list of changes
groups up Solars Maintenance cameras, as well as change them to use cardinal directions instead of ship directions (North-South etc.)
fixes a floating camera in Fore Hallway
replaces several autoname cameras that were ambiguous with their numeration (HFR Room and the connected rooms are the main villain here)
since I'm here, removes a stray light fixture in HFR Room
replaces numeration/ship directions in cameras with cardinal directions (i.e. Starboard Hallway 1-5 -> West - East)
groups up a bunch of rooms that were disconnected from their department camera blob (Medbay & Pharmacy, Atmospherics & Incinerator Room, RnD & Circuits Lab)
bunch of Service cameras changes, mainly for spacing; Botany and Service Hallway changed from Top/Bottom to Upper/Lower
groups up Research Division to actually use a single group instead of being all over the place with Research, RnD or no group
adds a Cargo Bay South camera to plug empty space + have a counterpart to Cargo Bay North camera
Atmospherics main room cameras now have a - before cardinal directions identificators to bunch them up together
AI Upload To Uppercase Because ai_upload Is Just Bad
removes several excessive cameras (i.e. Courtroom)
fixes Permabrig having two of Chapel and Meditation cameras (although having a Cold Room camera named Chapel is funny, it makes the console ignore the actual Permabrig Chapel)
adds several missing c_tag values to several cameras
adds an Interrogation Monitor outside of Interrogation so you can access the sole camera there
tweaks several cameras' network values for more coherent console listings (why was Public Mining Storage in the minisat network?)
changes some instances of Entrance to Access
QoL, fixing things that aren't supposed to float, easier camera console management. Preventing excessive loss of sanity during camera console use.
Fixes pirate ships
I changed the dock ID from pirateship to pirate, but I forgot to change shuttle IDs for the ship's docking ports so they would work. The change was made so pirate ships loading in would replace eachother like it now does for emergency/arrival/cargo shuttles, as per https://github.com/tgstation/tgstation/pull/69516
* Revert "Fixes some access issues in the Lavaland base (#69738)"
This reverts commit a2682d1089.
* renames mining and mining eva
Mining is now Mining Dock
Mining EVA is now Mining Outpost
* Improves sleeper code and makes syndie sleepers deconstructable
* Improves regular Sleeper code by a lot considering last time they were touched was years ago, removes the entirely unused sleep_console, and lets Syndicate sleepers get deconstructed regardless of mapload.
* Also finally lowercases the dm file.
* watch this swag
* no clue if this will work but I'm gonna try before renaming
* rename, and removal of syndie sleepers
Removes syndicate sleepers from non-syndicate maps. Now they only exist in the infiltrator, battlecruiser, and syndicate lavaland base.
* small mistake on snowdin
* re-replaces sleepers with proper ones
* review comments
* i mixed it up with chem_buttons
* Update code/game/machinery/sleepers.dm
Co-authored-by: Seth Scherer <supernovaa41@gmx.com>
* Update code/game/machinery/sleepers.dm
Co-authored-by: Seth Scherer <supernovaa41@gmx.com>
Co-authored-by: Seth Scherer <supernovaa41@gmx.com>
An overview of the Metastation's security camera network has led me to going around and fixing several issues with camera tags and networks, removing a few excess cameras as well as changing some c_tags for more consistent grouping of certain cameras.
Fixes 2 lanterns with a bad varedit that cause bizarre lighting behavior for those specific lanterns. They should've used the "on" var but they used "light_on" instead which seems like it's meant to be an internal var not set directly.
This is the modular maps portion of the 2-part PR to remodel Tramstation's maintenance into a modular layout. #69000 is required with this to actually be seen in-game.
Basically every single airlock in this image were using mining_station access, for those that don't know is that despite the name, it shouldn't be used all around the mining station as its real dumb name is Mining EVA which isn't reflected by the access helper.
tgstation/code/controllers/subsystem/id_access.dm
Line 300 in 259c72a
desc_by_access["[ACCESS_MINING_STATION]"] = "Mining EVA"
So even if you got mining access you wouldn't actually be able to access the proper mining station which is quite bad, this PR replaces all Mining EVA accesses with regular Mining access minus for the one airlock that actually leads to Mining EVA.
* A lot of shuttle code improvements
* Makes use of ``as anything`` in many places
* Adds mapload to connect_to_shuttle()
* Renames many vars, including shuttle 'id' var to 'shuttle_id' and engine 'state' to 'engine_state'.
* Engines now weakref their attached ship, and disconnect when unwrenched from it.
* Removes check for force when deleting a mobile docking port, being deleted should still clear your stuff, regardless of being forced.
Because of all the above, I was able to remove a few pointless checks scattered around, like engine's alter_engine_power()
* better comment for port_id
* Fixes Cargo, Arrivals, and Pirate ships.
* Merge branch 'master' into shuttlecode-oh-no
* last few
* fixes the CI
* fixes
* Fixes infinite engines
* Revert "Merge branch 'master' into shuttlecode-oh-no"
This reverts commit 94eba37de9fe3f4a01dc40bb064771b764f379e3.
* trammies
* whiteship tram
* Makes use of ?. instead
apparently this is what weakrefs use, so 🤷
* i hate supernovaa41
Co-authored-by: Seth Scherer <supernovaa41@gmx.com>
* removes lateinit that I never implemented
* adds _ref to weakref var name
* small change to weld time define
Co-authored-by: Seth Scherer <supernovaa41@gmx.com>
* Fixes police hats covering your hair.
Makes police hats a subtype of Warden's hats, so they still are security-level armor, without covering your hair like helmets do.
This was gone unnoticed because the item is very limited in-game.
I also renamed the gravity generator updatepaths because it's been inconsistent with the rest of the updatepaths for a while now.
* renames updatepaths
* Update tools/UpdatePaths/Scripts/69643_police_hat.txt
Co-authored-by: san7890 <the@san7890.com>
* moves the hat to warden's, removes icon state
Turns out the icon state is shared between both hats, so the only real difference is name and description...
Co-authored-by: san7890 <the@san7890.com>
* Optimizes away /obj/Initialize
We were spending like 0.15 seconds just checking for blueprints, obj
flags and network ids
All these things can just be applied where they're wanted, saves time
Oh and I replaced object flags with an emag injector. I'll give it a
sprite and name later I promise
* Requires a GenerateTag() call to set DF_USE_TAG, rather then doing a check in atom New
This is technically harder to use, but I don't really want people using
tags, and it saves 0.15 seconds
* Moves generatetag to /datum
* I am dumb
* Saves 0.5 seconds, makes init emissive blockers actually work
Ok so background. If an overlay is added with add_overlay, and not
"managed" somehow, it will effectively never be removed, because
nothing's tracking it.
Update_overlays uses the managed_overlays list/var (one of those) to do
this.
I'm gonna piggyback off this to make emissive overlays actually like,
respect overlay updates.
Oh and uh, I've saved maybe 0.5 seconds by caching the new emissive, and
not using add_overlay. There's a chance this will lead to overlay
corruption, but since we never readd the flattened, I think we'll be
safe
* Fixes plane not being set right, changes color logic too, since alpha will override past color sets
* Makes it actually work. also makes rand posters update appearance to clear away the overlay, since it shows on right click and looks bad
* Fixes blockers showing as emissives. It turns out alpha sets override the color list we use. Not sure why we pretend to support them
* Makes the injector support traits, adds an amazing sprite
Wires engineering to the grid from the maintenance door.
Wires the library apc correctly
Nudges some wall mounts in the sec hallway
Fixes missing cameras in the armory
Moved the engineering fax machine
Splits bridge and crew quarters areas, the central room is under bridge area and there's an APC in the cap's quarters
It names all the doors appropriately, except for the front module one (I have no idea what to call that).
Adds lattices so the thindows don't vanish into thin fucking air, alongside the railings.
Replaces the large engines with 4 regular engines to avoid shuttle rotation fuckery, keep those things on the Starfury people
Removes the large firelocks from inter-module doors and all windows to prevent THIS from happening every round
Now, when facing North, when you place the left end of a corporate sofa, it's going to point left as expected. Same for the right.
I had to scratch the UpdatePaths script, because it was a circular script and that was apparently not something that's supported. So, instead, I used the following RegEx manually, and just took the like minute it took to manually replace all of the lefts with rights and vice-versa that came up from that search:
/obj/structure/chair/sofa/corp/(left|right)\{
dir = 1
\},
For downstreams, just keep in mind that you'll have to make sure you only apply the change to map files that are your own, and not to the maps that are made by /tg/ (unless you added some north sofas directly to the files yourself). If you're not sure whether you've done it right or not, just open the map in SDMM, after compiling the PR locally, and you'll be able to see whether it worked or not.
Replaces the intercom in the Kilo Research Department Server Room with an Air Alarm and adds a vent and scrubber. Also removes the air alarm from the server/cold side of the room which was going off constantly and making atmos techs mad.
Also, I shifted the tcommsat air alarm on metastation 2 pixels to the left because it didn't match the rest of the air alarms. Yes, really.
About The Pull Request
Reorganizes the entire icons/mob folder.
Added the following new subfolders:
nonhuman-player (this was initially just called "antag", but then I realized guardians aren't technically antags)
simplemob
silicon
effects (for bloodstains, fire, etc)
simplemob/held-pets (for exactly that -- I wasn't sure if this should go in inhands instead)
species/monkey
Moves the following stuff:
All human parts moved into species, with moth, lizard, monkey, etc parts moved to corresponding subfolders. Previously, there were some moth parts in mob/species/moth, and others just loose in mob. Other species were similar.
icemoon, lavaland, and jungle folders made into subfolders of simplemob
All AI and silicon stuff, as well as Beepsky et al. into the silicon folder, simplemobs into the simplemob folder, aliens into the nonhuman-player folder, etc.
Split up animal_parts.dmi into two bodyparts.dmi which were put in their respective folders (species/alien and species/monkey)
Code changes:
Filepath changes to account for all of this
Adds a check when performing surgery on monkeys and xenos, because we can no longer assume their limbs are in the same file
Turns some hardcoded statues and showcases that were built into maps into objects instead
Things I'd like to do in the future but cant be assed right now:
Remove primarily-antag sprites from simplemob/mob.dmi (Revenant, Morph, etc.) and put them in the nonhuman-player folder
Split up mutant_bodyparts.dmi into different files for Tizirans, Felinids, monkeys, etc and put them in their own folders. Those may have once been meant primarily for mutated humans but that's now how they're being used right now.
About The Pull Request
bgug fix stuff
APC controller UI has its elements section'ed off. The backend has been redone to make the behaviour of the APC controller a bit less janky. The console should be more stable, and all the soul has been removed from the code and the UI.
before this PR stales out from nobody wanting to review my pr, I should probably outline what exactly changed:
APC controller consoles have had their APC code almost entirely reworked. They no longer have to hold a reference to the person using the controller currently, and APCs themselves no longer hold a reference to the controller, instead to the person directly. A lot of code was moved to APC themselves to make it a lot more stable.
APC controller used to call toggle_breaker without passing args, causing a runtime. Fixed in
Fixes the power flow control console not actually being able to toggle breakers #69343
APC controller UI has had the Window.Content tags moved up to the top component, and a lot has been sectioned off to make the UI more sane.
AmpCheck used to look for a wire on it's turf, or as a fallback look for the Area APC. A check to see if the APC has a terminal did so on a weakref, causing a runtime and preventing the program from ever finding a valid APC in it's area, making it show nothing. This has been fixed. On the other hand, the power monitor console did not store the ground wire or APC terminal as a weakref, this has been updated. As a fallback, if there are still no APCs in the powernet, the UI will show a dimmer popup.
There was a "secret" power monitor variation in code so PDAs could not access monitors in hidden places. With the removal of PDAs, this control console is useless.
Why It's Good For The Game
Tiny bit of (much needed) polish on some useful tools in the engineering department.
Changelog
cl
fix: Fixed runtime when using AmpCheck without connecting the console with a wire.
fix: Fixed a few runtimes that could occur when using APC controller consoles.
qol: Sucked soul out of APC controller code and UI.
del: Removed "secret" power monitor console.
/cl