Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Airlock improvements, mainly external [MDB IGNORE] #62161

Merged
merged 7 commits into from Oct 18, 2021

Conversation

Cyberboss
Copy link
Member

@Cyberboss Cyberboss commented Oct 16, 2021

About The Pull Request

Improvements to cycle-linking operation, minuscule map fixes, default cleanups, public external airlocks (arrivals, escape, pods) now respond to the presence of shuttles, and airlocks closing when shuttles depart now crush mobs. See changelog for details.

!(Demo Vid Won't Embed)

Why It's Good For The Game

You're in space, unauthorized personnel should not be allowed to instantly jump ship, especially if doing so could vent parts of the station. At the same time, we allow self reentry in "man-overboard" scenarios. The aim is to reduce the potential for accidents without reducing crew safety as well as increase the significance of these exterior airlocks. Also makes antags think a bit as they can't simply yeet themselves into space super easily as a braindead getaway tactic.

Changelog

🆑
fix: Prying open one of a pair of cycle-linked airlocks will now always close the other (if it is powered).
expansion: Arrivals, escape, and pod airlocks now restrict those without access from exiting directly to space. Use is unrestricted when entering the station or a shuttle is docked.
tweak: Shuttle departures will now force exterior airlocks closed on both the shuttle and docking bay. The lives of your fellow crew members are more important than your tardiness and limbs, employee!
fix: Fixed the numbering of escape pods in certain maps.
/:cl:

  • External airlocks now have a base req_access of ACCESS_EXTERNAL_AIRLOCKS. This is a non-functional change.
  • Removed airlock's safety_mode var.
  • Added external airlock's space_dir var. Indicates the direction anyone can enter from, but only those with access can exit to (unless the other side is considered "safe" (breathable, dense, or shuttle docked)). Cyclelinked airlocks share this value.
  • Created proc/is_safe_turf from proc/find_safe_turf.
  • Cycle-link operations now happen in proc/open rather than proc/bumpopen which was causing several triggers to be missed (AI activation, prying, etc...).
  • proc/try_to_activate_door now takes an argument allowing for a bypass of access requirements.

Downstreams, to port this to your maps, check every public access external airlock has the safety_mode var override removed and the outermost airlock should have space_dir set to the hazardous direction number.

@Cyberboss Cyberboss added Map Edit Thank you for your tile-placing service. It's always appreciated. Content Expansion labels Oct 16, 2021
@tgstation-server tgstation-server added the Fix Rewrites a bug so it appears in different circumstances label Oct 16, 2021
@tralezab
Copy link
Contributor

🎉 great pr!

@GuillaumePrata
Copy link
Contributor

Paramedics should get external access by default with this change.
Don't ask me why they didn't have it already...

@Cyberboss Cyberboss changed the title Airlock improvements, mainly external [MDBIGNORE] Airlock improvements, mainly external [MDB IGNORE] Oct 16, 2021
@Colovorat
Copy link
Contributor

i might be wrong, but we don't have tweak tag anymore @Cyberboss 😢

@JohnFulpWillard
Copy link
Member

JohnFulpWillard commented Oct 16, 2021

Command, Security officers and Curators should get external airlock access for this PR.

  • Command all have hardsuits so they are fine to go out to space
  • Security Officers have to capture criminals running outside, which they have hardsuits in the Armory for
  • Curators because they're the designated explorer role, with a space suit in their heroic beacon, so like how they have mining access, they should have access to space as well.

I'm not 100% sold on Command having it myself, but Security/Curator are things I really feel should have it.

@DrDiasyl
Copy link
Contributor

Command, Security officers and Curators should get external airlock access for this PR.

  • Command all have hardsuits so they are fine to go out to space
  • Security Officers have to capture criminals running outside, which they have hardsuits in the Armory for
  • Curators because they're the designated explorer role, with a space suit in their heroic beacon, so like how they have mining access, they should have access to space as well.

I'm not 100% sold on Command having it myself, but Security/Curator are things I really feel should have it.

They don't have it already? Wow, i thought they thinked this one 🤔

@Cyberboss
Copy link
Member Author

Parroting what I said in Discord: The fact that anyone can get through these already without access is just a consequence of how crappily we handle access for public-use shuttles; A loophole that's now being closed. If you believe those jobs should get exterior access, open a balance PR. Ideally one for each job b/c atomicity.

@SuperNovaa41
Copy link
Contributor

Also makes antags think a bit as they can't simply yeet themselves into space super easily as a braindead getaway tactic.

This doesn't really make sense to me. Sprinting out of an airlock to dodge a sec chase/whatever it may be, is far more dangerous than continuing the chase inside. Unless you are equipped with a space suit (or space adaptation), finding another entrance that is safe from the initial danger will lead to pretty high amounts of damage.

@Fikou
Copy link
Member

Fikou commented Oct 18, 2021

unfun, this is how its implemented on paradise and its fucking miserable there, external access is fun and lets you do some cool stuff or do space getaways, we shouldnt restrict people from that

code/datums/helper_datums/teleport.dm Outdated Show resolved Hide resolved
code/datums/helper_datums/teleport.dm Outdated Show resolved Hide resolved
code/datums/helper_datums/teleport.dm Outdated Show resolved Hide resolved
code/modules/shuttle/on_move.dm Outdated Show resolved Hide resolved
code/modules/shuttle/on_move.dm Outdated Show resolved Hide resolved
Copy link
Member

@Watermelon914 Watermelon914 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks fine

@MrStonedOne
Copy link
Member

MrStonedOne commented Oct 21, 2021

Cycle-link operations now happen in proc/open rather than proc/bumpopen which was causing several triggers to be missed (AI activation, prying, etc...).

This was intentional. There is suppose to be a way to override cycle link operations, and clicking on them was that way. Just like how windoors work.

LemonInTheDark pushed a commit to LemonInTheDark/tgstation that referenced this pull request Dec 12, 2021
…n#1138)

* Airlock improvements, mainly external [MDB IGNORE] (tgstation#62161)

You're in space, unauthorized personnel should not be allowed to instantly jump ship, especially if doing so could vent parts of the station. At the same time, we allow self reentry in "man-overboard" scenarios. The aim is to reduce the potential for accidents without reducing crew safety as well as increase the significance of these exterior airlocks. Also makes antags think a bit as they can't simply yeet themselves into space super easily as a braindead getaway tactic.

External airlocks now have a base req_access of ACCESS_EXTERNAL_AIRLOCKS. This is a non-functional change.
Removed airlock's safety_mode var.
Added external airlock's space_dir var. Indicates the direction anyone can enter from, but only those with access can exit to (unless the other side is considered "safe" (breathable, dense, or shuttle docked)). Cyclelinked airlocks share this value.
Created proc/is_safe_turf from proc/find_safe_turf.
Cycle-link operations now happen in proc/open rather than proc/bumpopen which was causing several triggers to be missed (AI activation, prying, etc...).
proc/try_to_activate_door now takes an argument allowing for a bypass of access requirements.
Downstreams, to port this to your maps, check every public access external airlock has the safety_mode var override removed and the outermost airlock should have space_dir set to the hazardous direction number.

* Airlock improvements, mainly external [MDB IGNORE]

Co-authored-by: Jordan Brown <Cyberboss@users.noreply.github.com>
LemonInTheDark pushed a commit to LemonInTheDark/tgstation that referenced this pull request Dec 12, 2021
* External airlock access fixes [MDB IGNORE] (tgstation#62191)

Missed from tgstation#62161

Fixes lavaland airlock accesses
Fixes needing ACCESS_EXTERNAL_AIRLOCK for ruin airlocks

* External airlock access fixes [MDB IGNORE]

Co-authored-by: Jordan Brown <Cyberboss@users.noreply.github.com>
@Mothblocks Mothblocks added the Feature Exposes new bugs in interesting ways label Apr 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature Exposes new bugs in interesting ways Fix Rewrites a bug so it appears in different circumstances Map Edit Thank you for your tile-placing service. It's always appreciated.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet