真实的TNT物理效果

真实的TNT物理效果

为TNT添加真实的爆炸效果,包括可扩展的冲击波、碎片物理、连锁爆炸以及远程引爆功能。

技术

真实TNT物理

真实TNT物理将原版TNT爆炸转变为大规模、物理启发的爆炸事件,具有扩展冲击波、碎片、热量、烟雾、火焰、基于距离的伤害以及真实的爆炸交互。

该模组还包含专用爆炸武器、防爆装备、远程引爆系统,以及一架完全可控的容克斯Ju 88 A-4轰炸机。

主要特性

  • 将每个TNT方块视为约1,600公斤的爆炸物质量。
  • 用可扩展的、物理启发的爆炸取代普通TNT爆炸。
  • 支持链接的TNT组,最大组合当量为65,536吨。
  • 包含单体TNT链接器,用于手动选择TNT方块。
  • 包含区域TNT链接器,可通过选择点1和点2连接长方体区域内的所有TNT方块。
  • 生成扩展的气压冲击波穹顶。
  • 生成带有尘土和碎片的独立地面冲击波。
  • 施加基于距离的爆炸伤害、击退和暂时性耳聋。
  • 根据爆炸与玩家之间的距离延迟爆炸声音。
  • 在爆炸初期产生明亮炽热的烟雾,之后产生较暗的烟雾。
  • 点燃附近的可燃区域。
  • 根据估计的阻力、质量、距离和爆炸能量破坏并抛射方块。
  • 飞行碎片可伤害实体并在撞击时破坏较弱的方块。
  • 支持在未加载或遥远地区的大规模爆炸。
  • 包含远程触发方块和手持式引爆器。
  • 远程触发方块在被远程激活时向所有方向输出红石信号。
  • 包含防爆方块、门、玻璃、玻璃板、盔甲、工具和武器。
  • 包含一架完全可控的容克斯Ju 88 A-4轰炸机,具有燃料、飞行物理、炸弹装载、损伤和物理残骸。

TNT链接器

  1. 潜行右键点击第一个TNT方块。
  2. 右键点击其他TNT方块以添加它们。
  3. 潜行右键点击空气或其他方块以确认链接组。
  4. 点燃其中一个TNT方块,将链接组作为一个组合爆炸引爆。

组合爆炸质量由链接组中的每个TNT方块计算得出。

区域TNT链接器

  1. 右键点击一个方块以选择点1。
  2. 右键点击另一个方块以选择点2。
  3. 所选长方体区域内的每个TNT方块将被自动链接。
  4. 潜行右键点击空气以清除当前选择。

区域TNT链接器旨在快速连接大型TNT结构,无需逐个选择每个TNT方块。

远程引爆

  1. 将远程触发方块放置在TNT或红石电路旁边。
  2. 使用引爆器潜行右键点击远程触发方块以将其链接。
  3. 右键点击引爆器以打开其界面。
  4. 按下红色引爆按钮。

激活时,远程触发方块会向所有方向产生红石信号。

防爆装备

该模组包含旨在提供更好防护以抵御强大爆炸的装备。

可用装备包括:

  • 防爆方块
  • 防爆门
  • 防爆玻璃块
  • 防爆玻璃板
  • 防爆盔甲

防爆材料比标准Minecraft材料具有更高的抗爆压力、碎片冲击和破坏性冲击波能力。

爆炸武器

该模组包含几种专用爆炸武器和弹药类型。

可用武器包括:

  • 战术火箭发射器
  • 高爆战术火箭
  • 航空炸弹
  • 附着炸弹

这些爆炸物使用模组的自定义爆炸系统,而非标准原版爆炸行为。

容克斯Ju 88 A-4

容克斯Ju 88 A-4是一架大型可控轰炸机,具有自定义飞行物理、燃料消耗、炸弹装载、精细碰撞区域、损伤和物理摧毁效果。

飞机特性

  • 最大载客量:2
  • 前座:飞行员
  • 后座:乘客
  • 只有前座飞行员可以控制飞机。
  • 后座乘客无法控制飞机。
  • 支持地面移动、起飞、飞行、滑翔、失速、降落和坠毁。
  • 使用飞机的俯仰角和方向来确定其移动方向。
  • 包含重力、升力、空气动力阻力、动量以及低速时升力降低。
  • 保持向前移动,而不是在半空中悬停或倒退。
  • 当发动机输出降低时,速度和高度下降。
  • 当速度和升力不足时,在重力作用下下落。
  • 包含可收放起落架。
  • 使用煤炭作为燃料。
  • 最多可挂载2枚航空炸弹。
  • 包含机身、机翼、发动机、驾驶舱和尾翼的精细碰撞区域。
  • 会因撞击、坠毁、弹射物和爆炸而受到损伤。
  • 显示飞机速度、油门、耐久度、燃料和高度。
  • 高度相对于飞机下方的地形测量。
  • 支持驾驶舱内两个同步的乘客位置。
  • 即使在乘客乘坐时也可能被摧毁。

控制

  • W:增加发动机输出
  • S:减少发动机输出
  • A:左转
  • D:右转
  • 空格:抬起机头
  • Ctrl:降低机头
  • G:放下或收起起落架
  • 回车:投放已挂载的航空炸弹
  • E:打开飞机储物和燃料界面
  • Shift:离开飞机

燃料系统

飞机需要其储物界面中的煤炭才能运行。

飞机运行时,发动机输出会消耗燃料。当燃料耗尽时:

  • 发动机动力停止。
  • 飞机不再获得发动机推力。
  • 剩余动量得以保留。
  • 空气阻力逐渐降低速度。
  • 随着空速下降,升力降低。
  • 重力导致飞机下降。
  • 如果速度过低,飞机可能会失速。

挂载航空炸弹

只有在以下情况下才能挂载航空炸弹:

  • 飞机在地面上。
  • 没有玩家乘坐飞机。
  • 玩家手持航空炸弹。

手持航空炸弹右键点击未占用的飞机以挂载。

右键点击飞机会将炸弹直接装载到飞机中,不会将炸弹放置或掉落到世界中。

已挂载的炸弹保持附着在飞机上,直到飞行员按下回车键。

投放航空炸弹

当飞行员按下回车键时:

  • 一枚已挂载的炸弹从其实际挂载位置分离。
  • 炸弹继承飞机的位置、方向、旋转和运动。
  • 炸弹在重力作用下自然下落。
  • 炸弹在撞击后爆炸,或根据其配置的引爆行为爆炸。

不会在机翼上方生成新炸弹。可见的已挂载炸弹本身从飞机上释放。

飞机损伤与摧毁

飞机拥有自己的耐久度值,可因以下原因受到损伤:

  • 爆炸
  • 冲击波
  • 弹射物
  • 直接攻击
  • 地形碰撞
  • 硬着陆
  • 高速撞击

当耐久度降至零时:

  1. 所有乘坐的乘客被强制脱离。
  2. 飞机不会转换为掉落物品。
  3. 每个单独的模型对象变为独立的残骸实体。
  4. 每个残骸碎片继承飞机现有的动量。
  5. 额外的破坏力施加于残骸。
  6. 残骸受重力和地形碰撞影响。
  7. 残骸碎片独立旋转和坠落。
  8. 所有残骸实体在20秒后被移除。

机身、机翼、发动机、驾驶舱部分、起落架和尾翼面等大型组件会分离成可见的物理碎片,而不是飞机简单地消失。

爆炸效果

自定义爆炸可根据爆炸质量和距离产生几种不同效果。

这些效果可包括:

  • 初始定向闪光
  • 扩展气压冲击波
  • 地面尘土冲击波
  • 炽热发光烟雾
  • 黑烟
  • 火焰
  • 飞行方块碎片
  • 实体击退
  • 爆炸伤害
  • 听力损伤
  • 延迟爆炸声音
  • 对载具和飞机的伤害

爆炸强度根据爆炸当量和距离进行缩放。

碎片物理

被摧毁的方块可能变为移动的碎片实体,而不是立即消失。

碎片行为可包括:

  • 基于爆炸方向的初始速度
  • 重力
  • 空气阻力
  • 与方块的碰撞
  • 对实体的碰撞伤害
  • 撞击时摧毁较弱的方块
  • 在寿命到期后自动移除

非常大的爆炸可产生大量碎片实体。

支持的语言

  • 韩语
  • 英语
  • 英式英语
  • 俄语
  • 乌克兰语
  • 德语
  • 法语
  • 意大利语
  • 阿拉伯语
  • 简体中文
  • 繁体中文
  • 日语
  • 西班牙语
  • 巴西葡萄牙语

要求

  • Minecraft 1.20.1
  • Minecraft Forge 47.4.10 或兼容的 Forge 47.x 版本
  • Java 17

性能警告

大规模爆炸可能修改数千个方块并产生许多移动的碎片实体。

非常大的链接引爆可能暂时降低客户端FPS或服务器TPS。飞机摧毁也可能产生许多独立的残骸实体。

始终在复制的世界中测试高当量爆炸,并分配足够的内存。

请勿在重要建筑附近测试超大爆炸,除非事先进行了备份。

作者

由 NerivoOne 创作。