氧气
Contents
说明
- 氧气是玩家在生存中呼吸所需的重要资源,没有氧气,无论是通过他们的宇航服还是大气,他们都会死亡。
Vital Statistics
Game version 1.196
Player oxygen consumption rate | 0.063 L/s | This is a flat rate regardless of activity. |
Oxygen Farm max production rate | 0.03 L/s 30 mL/s 3.0e-5 m³/s 1.8 L/min |
Requires sunlight. |
Large grid O2/H2 Generator max production rate | 250 L/s | 10 L/kg of ice |
Small grid O2/H2 Generator max production rate | 50 L/s | 10 L/kg of ice |
Internal suit oxygen tank capacity | 60 L | 15 minutes and 52 seconds worth of breathing. |
Oxygen Bottle item | 100 L | 26 minutes and 27 seconds worth of breathing. |
Large grid Oxygen Tank | 100,000 L | 18 days, 8 hours, 55 minutes and 1 second worth of breathing. |
Small grid Oxygen Tank | 50,000 L | 9 days, 4 hours, 27 minutes and 30 seconds worth of breathing. |
1m3 of 100% room pressure | 1 L O2 | About 16 seconds worth of breathing. |
Large grid block of air | 15.625 L | 4 minutes and 8 seconds worth of breathing. |
Small grid block of air | 0.125 L | About 2 seconds worth of breathing. |
Large grid O2/H2 Generator (4,000 L 4 m³ Ice)
400 hL |
108,108 L | 19 days, 20 hours, 40 minutes and 1 second of breathing. |
Small grid O2/H2 Generator (1,000 L 1 m³ Ice)
100 hL |
27,027 L | 4 days, 23 hours, 10 minutes and 0 seconds of breathing. |
Production
氧气是在氧气发生器处理冰时产生的。在一些小行星和行星上发现了冰,就像其他种类的矿石一样。氧气农场也只从阳光中产生少量的氧气,但只需要电力而不需要冰。
氧气也可以通过通风口从行星的大气中获取,地球和外星行星的大气中都有不同程度的氧气。而冰本身也可以直接从行星上以可见的水体的形式收集,这些水体实际上就是冰,可以被加工成氧气和氢。特别是地球富含氧气,这些行星有无限的氧气可用。
Storage
氧气可以储存在氧气罐(在飞船和空间站上)、氧气瓶(物品)和太空工程师的宇航服里。
当玩家戴着头盔时,游戏服中的氧气就会耗尽。剩余的氧气容量显示在玩家HUD的左侧状态面板中[%],以及头盔的当前状态(无论是否佩戴)。宇航服储存的氧气从医疗室、驾驶舱或战斗机驾驶舱补充,这些氧气连接到传送带系统,带有氧气罐或氧气源(发电机或农场)。如果在玩家的库存中有一个氧气瓶,当宇航服的氧气水平下降到30%以下时,氧气将从瓶中转移到宇航服的氧气储存中。
Consumption
Space Engineer
玩家消耗氧气的速率为0.063 O2 /s。这些氧气是在玩家戴着头盔时从他们的宇航服中获取的,或者是在他们摘下头盔时从他们所在的加压房间中获取的。如果玩家在驾驶舱中没有戴头盔,并且有氧气输送通道,那么氧气就会从输送系统中消耗掉(假设有一个可用的氧气罐)。
如果他们的宇航服中的氧气耗尽,那么当他们戴着头盔时,角色就会慢慢窒息。一个没有戴头盔的球员,而不是在一个加压的房间或一个有传送带进入氧气的驾驶舱也会窒息。如果不立即恢复氧气供应,窒息会导致死亡。
- 玩家甚至可以窒息在他们的西装,而站在一个加压的房间,如果他们不脱下他们的头盔在西装的内部O2罐耗尽!
Atmosphere
小型船舶,大型船舶或车站的密闭室(大于单个块)可以通过带传送带的通风口向氧气加压。通风口也可以减压这样一个房间,带氧出来,并返回到输送系统(如果存储可用)。使用图遍历/洪水填充算法将封闭空间填满氧气。该算法遍历体积网格并检查封闭和开放区域。1个氧气储存单位为1米3,有空气块(无论形状)1个大]块空气需要15.625个单位的氧气,而一个小块则需要0.125个单位的氧气。
角色脱下头盔呼吸的最小安全压力是50%,如果角色在一个有氧气的房间里,但没有达到50%的压力,他们将每秒受到1点生命值的伤害;即使这个房间的压力很小任何高于0%的压力都可以。如果角色在一个没有氧气的房间里(或者一个由于空间泄漏而无法加压的房间),或者在一个开放的空间,比如外部——他们将每秒受到7点生命值的伤害。一名玩家在没有氧气的情况下将会受到7点/秒的伤害,并且有14秒的时间去寻找氧气,否则他们将会死亡。
假设你在一个完全充满氧气的密闭、加压的房间里:
- 将一个气密块焊接到最后的构建阶段会破坏其块中的空气。
- 将一个密封块从最后的构建阶段磨到它下面的任何地方,将使房间扩大一个块,降低房间压力。
- 关上一扇门会消灭门块内的空气。
- 焊接一个砖块或关闭一扇门创造一个1块的“房间”/空间会破坏该空间中的空气。
- 失去一个完全加压的大栅格空气块会破坏15.625单位的氧气。
Notes on Oxygen Mechanics
- 氧气在生产者(农场、发电机)和消费者(储罐、通风口、驾驶舱、医务室)之间的传播是由传送带规则决定的,但传送带本身不储存、包含或以其他方式破坏氧气。氧气在这两个端点之间迅速流动。
- 氧气从所有非储罐中均匀排出。
- 消费者按优先级排序,如果有氧气生产,其余的将均匀分布在氧气罐中。氧气消耗优先级由块类型定义,但目前所有消耗块的优先级似乎都为0。
- 非储存罐随着时间的推移不断重新平衡,从一些储存罐中减少氧气,并向其他储存罐中添加等量的氧气。
- 有这样一种“含氧房间”对象,它包含含氧块结构,所有这些结构在功能(和体积!)上都是相同的,无论实际的块占据网格坐标。
- 氧气含量的权威是房间物体,而不是积木。房间作为一个整体是加压和减压的,砖块跟踪房间的氧气水平,并随着时间的推移进行调整。氧气一旦释放到环境中,就变成了“空气”,因为没有更好的词了——一个完全不同的实体,在代码中仍然被称为“氧气”——在房间完全重新计算之前,单个块的状态不会影响房间的状态。通风口直接影响房间的氧气量,而不是它们所在的单个块位置;它们产生“空气”并消耗“氧气”,反之亦然。医务室通过消耗储罐中的氧气,并向宇航服储存库中添加等量的氧气,直接填充宇航服。
- 块确实有单独的空气水平值,并根据它的大小和总空气水平不断调整此值为整个房间的平均值。整个房间的压力应该在1.5秒内相等——这是一个常数。请注意,这是由每个块单独完成的,即空气不会在块之间移动——当一个块添加或移除空气时,它不会考虑任何东西,除了它当前的空气水平和房间的总水平以及其中的块数量。
- 角色通过直接从房间数量中减去空气来消耗空气,而不是他们当前所在的区域。他们在哪个房间是通过寻找最近的氧气块结构来确定的,这个结构是加压(即封闭)的一部分。“房间”。代码着眼于角色的位置(即你脚边的一个点),并试图通过确定角色点最接近的方块中心来找到要考虑的网格中的哪个方块;应该选择第一个封闭的房间,但考虑方块的顺序取决于网格的方向,这就是为什么站在一个氧气充足的房间里,旁边的门通向真空,仍然可能窒息。
- 房间是通过在所有基本方向上传播块邻居来定义的,有点像2D绘画程序中的洪水填充算法,但在3D中具有特殊性。彼此对角线的街区不是邻居,房间也不会通过角落传播。这里有一些有趣的观点:
- 房间是临时结构,当方块被添加到网格中,从中移除或门状态改变时,它们会定期重新计算。
- 通风口的存在与否并不影响一个东西是否被认为是一个房间。分裂逻辑适用于整个网格,从一个特定的角落开始,并尝试在其他房间结束时创建新房间,直到网格完成。
- 被加压的状态,代码用这个词来表示封闭的房间,实际上与实际的氧气量完全不同。
- 存在两种类型的气密块-那些作为一个整体是气密的,所以他们的所有墙壁都是气密的,和其他。该算法在确定块是否密闭以封闭房间时考虑到达块的方向,并使用了一些基于挂载点(块上可以连接到其他块的点)的复杂逻辑。无论如何,具有构建阶段的块只有在最后一个构建阶段时才是密封的。
- 当重新计算房间时,如果先前存在的房间被关闭的门分成两部分,则压力将保留在两个新房间中,来自先前占用网格中相同块的房间。这是通过将新创建的房间包含的每个单独块中的空气总量相加来完成的,如果先前存在于相同网格块坐标中的房间。只有在这种情况下,单个块内的空气量才会对任何事情产生影响。如果总数量最终大于房间所能容纳的数量,那么它将被丢弃,所以建造一个块会破坏空气,而不是取代它。
- 请注意,关闭的门从两个方向都是密封的。当门关闭时,任何可能包含的空气都被丢弃了,因为它不再是它分开的任何一个房间的一部分——所以是的,每次关门都会破坏那个房间里的空气。如果房间内所有街区的压力都不均匀,那么关上一扇门有时会导致空气不被破坏。
- 只有大于一个街区的房间才会被认为存在。如果房间大小的计算结果是一个房间正好有一个块大,那么它将被丢弃,其中的每个氧原子块也将被丢弃。如果你最终在一个完全封闭的1x1x1的房间里,有一个通风口,你还是会窒息的。
- 将房间填满100%所需的氧气量取决于房间的网格大小,它是网格大小的一个立方体。网格大小本身虽然不是一个明显的值,取决于很多代码,与氧气无关,但评论似乎表明米是指单位,所以一个单位的氧气应该导致恰好一立方米的空气,一个大块应该包含恰好(2.5米)3 = 15.625米3的空气。
- 没有关于加压或减压的效率值。通风口的效率是100%,产生的氧气单位和它们刚刚从房间空气中吸出的氧气单位完全相同。但由于“空气”的记录不像库存氧气那样干净,它最终可能仍不是100%有效。“空气”的产生和破坏非常频繁,特别是当你打开或关闭任何门时,方块的压力不均匀。在压力不均匀的环境中,如果你在1.5秒之前关闭和打开门,会比关门破坏更多的空气。
- 没有证据表明在房间里研磨或焊接会直接改变房间的空气含量,但它会改变砌块本身,从而迫使房间重新计算,所以它确实间接影响空气。焊接和研磨导致1x1x1块区域的分离将破坏其中的空气。焊接一个气密块会破坏它所占据的空气。磨块会增大房间面积,降低房间压力。
- 当一个新创建的房间检测到它不再是封闭的,而以前占用相同空间的房间是封闭的,它会找到洞,并在洞上创建减压推和粒子效应。除了距离孔洞5米范围内的石块外,该效应影响所有物体,施加的力的大小取决于与孔洞的距离。强制降压不会在被降压后的缸体中产生空气。
List of Airtight blocks
- 参见密封块列表- 这里