Commit Graph

2 Commits

Author SHA1 Message Date
FabianK3 068352fa46 Powerless airlocks - Closed by default and the emergency override (#21649)
# Summary

This PR updates the default behavior of airlocks on powerloss and adds a
manual override for them.
By default airlocks now keep closed (and close if opened) on powerloss.
Additionally a new mechanic has been added allowing people to manually
open unpowered, unbolted and unsecure airlocks without power by
utilizing a manual override.

## Mechanics

- On power loss doors will stay closed.
- On power loss opened doors will now close.
- Manual override mechanic:
If a door is functional but unpowered and features an override handle
(previously called "insecure" by default, false for vaults and similar)
the user can now engage the manual override. It works by cranking a
hydraulic lever multiple times to force open the door without a crowbar,
this process takes around 15 seconds. The process is divided into
3-second steps each given a ratchet sound. When user waits long enough
the door will open. Doors that have been opened with the manual override
will automatically close again after the door receives power again, just
like the old behavior. While waiting the user will be informed about the
length of the process by seeing a small oil gauge fill up (via chat
message).

Process:
- User clicked unpowered door
- 3 second action (including a ratchet sound) x 5
- Every action feedback is given:
<img width="784" height="169" alt="image"
src="https://github.com/user-attachments/assets/4cf940bb-458b-4bce-8893-3cd96b5b2455"
/>

<hr>

Idea originated from: [Forum
thread](https://forums.aurorastation.org/topic/22728-airlocks-opening-on-powerloss/#findComment-182862)

## Changes

- Renamed `insecure` airlock feature to
`features_powerloss_manual_override`.
- Adjusted default powerloss behavior to close instead to open, if not
already closed.
- Added manual override feature.
- Update all `insecure = FALSE` references to
`features_powerloss_manual_override = FALSE` (vaults and similar
locations).
- Fixed a CI issue with a `RegisterSignal`.
2025-12-19 20:21:16 +00:00
Matt Atlas 94d92803b4 Replaces our lighting system with CM's. (#21465)
Depends on #21458.

Ports https://github.com/cmss13-devs/cmss13/pull/4229, with the original
authors as:

- https://github.com/tgstation/TerraGov-Marine-Corps/pull/1964 for the
lighting controller (A-lexa)
- https://github.com/tgstation/TerraGov-Marine-Corps/pull/4747 and
https://github.com/tgstation/TerraGov-Marine-Corps/pull/7263 for the
lighting (TiviPlus)
- https://github.com/tgstation/tgstation/pull/54520 for the dir lighting
component
- https://github.com/tgstation/tgstation/pull/75018 for the out of
bounds fix in lighting
- https://github.com/tgstation/TerraGov-Marine-Corps/pull/6678 for the
emissives (TiviPlus)

The main driving reason behind this is that current lighting consumes
way too much processing power, especially for things like odysseys/away
sites where a billion light sources are processing/moving at once and
the game slows down to a crawl. Hopefully this improves the situation by
a good margin, but we will need some testmerging to confirm that.
<img width="1349" height="1349" alt="image"
src="https://github.com/user-attachments/assets/1059ba2b-c0c5-495a-9c76-2d75d0c42bf2"
/>
<img width="1349" height="1349" alt="image"
src="https://github.com/user-attachments/assets/9704b0f6-4cf6-4dfd-a6cb-5702ad07d677"
/>


- [x] Resolve todos
- [x] Look into open space fuckery (border objects)

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
Co-authored-by: JohnWildkins <john.wildkins@gmail.com>
2025-11-04 21:27:42 +00:00