Atmos Delta-Pressure Window Shattering (#39238)

This PR adds delta-pressure damage. In short, airtight structures can now take damage proportional to the difference in pressures between the sides of the structure.
This commit is contained in:
ArtisticRoomba
2025-09-03 16:58:48 -07:00
committed by GitHub
parent f63eb2e97a
commit 20f2cb920b
22 changed files with 1685 additions and 1 deletions

View File

@@ -163,6 +163,10 @@
noAirWhenFullyAirBlocked: false
airBlockedDirection:
- South
- type: DeltaPressure
minPressure: 250
minPressureDelta: 187.5
scalingType: Threshold
- type: Construction
graph: Windoor
node: windoor
@@ -235,6 +239,10 @@
- type: Construction
graph: Windoor
node: windoorSecure
- type: DeltaPressure
minPressure: 3750
minPressureDelta: 2500
scalingType: Threshold
- type: StaticPrice
price: 350
- type: Tag
@@ -304,6 +312,10 @@
- type: Construction
graph: Windoor
node: pwindoor
- type: DeltaPressure
minPressure: 18750
minPressureDelta: 12500
scalingType: Threshold
- type: StaticPrice
price: 500
- type: RadiationBlocker
@@ -370,6 +382,10 @@
- type: Construction
graph: Windoor
node: pwindoorSecure
- type: DeltaPressure
minPressure: 37500
minPressureDelta: 25000
scalingType: Threshold
- type: StaticPrice
price: 500
- type: RadiationBlocker
@@ -438,6 +454,10 @@
max: 2
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: DeltaPressure
minPressure: 18750
minPressureDelta: 12500
scalingType: Threshold
- type: Construction
graph: Windoor
node: uwindoor
@@ -504,6 +524,10 @@
max: 2
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: DeltaPressure
minPressure: 37500
minPressureDelta: 25000
scalingType: Threshold
- type: Construction
graph: Windoor
node: uwindoorSecure

View File

@@ -48,6 +48,11 @@
trackAllDamage: true
damageOverlay:
sprite: Structures/Windows/cracks.rsi
- type: DeltaPressure
minPressure: 75000
minPressureDelta: 50000
scalingType: Linear
scalingPower: 0.0005
- type: StaticPrice
price: 100
- type: RadiationBlocker
@@ -104,6 +109,10 @@
max: 1
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: DeltaPressure
minPressure: 18750
minPressureDelta: 12500
scalingType: Threshold
- type: StaticPrice
price: 50
- type: RadiationBlocker

View File

@@ -55,6 +55,10 @@
trackAllDamage: true
damageOverlay:
sprite: Structures/Windows/cracks.rsi
- type: DeltaPressure
minPressure: 15000
minPressureDelta: 10000
scalingType: Threshold
- type: entity
id: WindowReinforcedDirectional
@@ -113,6 +117,9 @@
max: 1
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: DeltaPressure
minPressure: 3750
minPressureDelta: 2500
- type: StaticPrice
price: 22.5

View File

@@ -53,6 +53,11 @@
trackAllDamage: true
damageOverlay:
sprite: Structures/Windows/cracks.rsi
- type: DeltaPressure
minPressure: 150000
minPressureDelta: 100000
scalingType: Linear
scalingPower: 0.0001
- type: StaticPrice
price: 132
@@ -111,6 +116,10 @@
max: 1
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: DeltaPressure
minPressure: 37500
minPressureDelta: 25000
scalingType: Threshold
- type: StaticPrice
price: 66

View File

@@ -48,6 +48,11 @@
trackAllDamage: true
damageOverlay:
sprite: Structures/Windows/cracks.rsi
- type: DeltaPressure
minPressure: 150000
minPressureDelta: 100000
scalingType: Linear
scalingPower: 0.0001
- type: StaticPrice
price: 215
- type: RadiationBlocker
@@ -106,6 +111,10 @@
max: 2
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: DeltaPressure
minPressure: 37500
minPressureDelta: 25000
scalingType: Threshold
- type: StaticPrice
price: 110
- type: RadiationBlocker

View File

@@ -51,6 +51,11 @@
trackAllDamage: true
damageOverlay:
sprite: Structures/Windows/cracks.rsi
- type: DeltaPressure
minPressure: 15000
minPressureDelta: 10000
scalingType: Linear
scalingPower: 0.0005
- type: StaticPrice
price: 150

View File

@@ -46,6 +46,11 @@
trackAllDamage: true
damageOverlay:
sprite: Structures/Windows/cracks.rsi
- type: DeltaPressure
minPressure: 75000
minPressureDelta: 50000
scalingType: Linear
scalingPower: 0.0005
- type: StaticPrice
price: 200
- type: RadiationBlocker
@@ -99,6 +104,10 @@
max: 1
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: DeltaPressure
minPressure: 18750
minPressureDelta: 12500
scalingType: Threshold
- type: StaticPrice
price: 100
- type: RadiationBlocker

View File

@@ -75,6 +75,11 @@
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: Airtight
- type: DeltaPressure
minPressure: 1000
minPressureDelta: 750
scalingType: Linear
scalingPower: 0.0005
- type: IconSmooth
key: windows
base: window
@@ -206,6 +211,10 @@
noAirWhenFullyAirBlocked: false
airBlockedDirection:
- South
- type: DeltaPressure
minPressure: 250
minPressureDelta: 187.5
scalingType: Threshold
- type: Construction
graph: WindowDirectional
node: windowDirectional