搜索

自然灾害与龙卷风

十三种持续灾害、移动云雾龙卷风、无损模型、避险与中文配置。

当前版本 1.0.81,共有 13 种持续灾害:龙卷风、热浪、寒潮、暴风雪、雷暴、冰雹、沙尘暴、冻雨,以及地震、蘑菇云、天坑、海啸、尸潮。

1.0.80 动态层次与音景

这轮完善现有四种大型粒子,不新增灾害种类、不改变伤害/卷吸范围、不增加陨石数量或奖励。1.0.79 的大体积和移动效果继续保留。

灾害 新变化
龙卷风 三股低空进气带旋入移动风柱,漏斗随阵风呼吸起伏,碎屑盘旋抬升;低频风声只发给触发玩家
雷暴 预警先出现暗云和蓝色蓄电;正式开始后按间歇脉冲连闪,主干数量随周期变化,不再持续亮满屏
蘑菇云 预警地面蓄能环;前6秒扩散冲击环;云帽翻卷上升,后段逐渐转为灰烟飘散,不倒缩回地面
火流星 每颗大小轻微变化、亮核脉动;飞行中后段分出两股火星,接近燃尽增加烟尾;火星不生成额外实体或奖励

雷暴/蘑菇云预警仅用原每帧预算的15%,没有提前伤害。次级细节从当前帧预算划分;包括灰云间歇帧在内仍有全服上限。闪电动画的强弱变化不改变原有雷暴伤害时间。

四处新增 atmosphere:

  • climate-survival.yml -> disasters.TORNADO.vortex.appearance.mist.atmosphere
  • climate-survival.yml -> disasters.THUNDERSTORM_SEASON.particle-scene.atmosphere
  • climate-survival.yml -> disasters.NUCLEAR_BLAST.particle-scene.atmosphere
  • season-events.yml -> meteor-shower.appearance.fireball.atmosphere
字段 默认 范围 / 用途
enabled true 动态层次总开关;false恢复1.0.79基础形态,也停止新增音景
detail-share 0.25 0.1–0.4;细节分配比例,不追加粒子数量
sound-enabled true 新增音景开关;不关闭旧版其他独立事件音效
sound-volume 风0.30、雷0.35、云0.28、流星0.25 0–1;同时按距离和阶段衰减,0静音
sound-interval-seconds 4 2–20秒;整场共用冷却,流星雨不会每颗同时叠音

定向音景使用原版风翼、雷声、低频环境和烟火声音,不附带音频资源包;不在全服广播。离场/结束/重载时会话回收,音轨没有独立的长期玩家缓存。旧配置只补缺,新参数在新场次生效。真人画面、听感与帧率仍需实测。

1.0.79 大型粒子展示(当前默认)

以参考截图的形态和规模为目标,使用原版粒子,不需要客户端模组或专用资源包。这不是模组特效的逐像素复刻;画面受客户端粒子设置、视距和光影影响。原生模式开启后,不叠加龙卷风、雷暴、流星、蘑菇云的旧 ME 模型,其余模型功能保留。

展示 默认规模 主要配置
移动龙卷风 约64格高、顶部直径32格,云盘略宽;576颗/帧 disasters.TORNADO.vortex.appearance.mist
雷暴 高72格、分布半径32格、6道折线/分叉,合计768颗/帧 disasters.THUNDERSTORM_SEASON.particle-scene
蘑菇云 高56格、帽盖半径22格、地面尘环;1024颗/帧 disasters.NUCLEAR_BLAST.particle-scene
火流星 火球半径1.8格、完整尾迹48格;144颗/流星帧 season-events.yml -> meteor-shower.appearance.fireball

前三种配置在 climate-survival.yml。龙卷风 height-scale、width-scale 为1–6的整数倍率,density-multiplier 为1–16,观看距离默认128格。雷暴/蘑菇云 height 为16–100格、radius 为4–48格、particles-per-frame 为64–2048、view-distance 为48–192格;雷暴 bolts 为1–12,数量增加不倍增粒子预算。

火流星 radius 为0.5–4格、tail-length 为8–96格、particles-per-frame 为32–384。新默认发射间隔2–8tick、飞行时长32–48tick,让多颗长尾同时出现;每场数量8–13、坠地概率与奖励不变。旧配置不会自动覆盖既有值,可按本页手动调整。

默认全服发送预算:龙卷风16384颗/秒、雷暴与蘑菇云共享16384颗/秒、火流星24576颗/秒,按250毫秒窗口限制。总预算按三组相加,人数多时会削减画面;每5tick轮转最多24位场景玩家。大型粒子启用远距发送,仍受世界高度裁剪、观看距离和客户端性能影响。

视觉变大不代表伤害变大:龙卷风仍用原卷吸半径与最大抬升高度,蘑菇云不调用真实爆炸,雷暴粒子不伤人/点火,流星不产生真实火球实体。原有生存伤害与领地保护保留。

创造模式预览与测试

1.0.78 及之前会把免疫玩家的灾害展示一并跳过。1.0.79 创造、旁观、无敌或拥有 liseasons.climate.bypass 的玩家手动触发可进入纯展示预览:不施加本场伤害、温差、卷吸或生物生成,不受屋顶/个人晴天的视觉屏蔽;自然触发仍跳过免疫玩家。预览创建时会明确提示。即使预览中切回生存,这一场仍保持安全预览。

使用 /seasons event trigger tornado、/seasons event trigger thunderstorm-season、/seasons event trigger meteor-night、/seasons event trigger nuke。持续灾害默认等待10秒预警,再逐步形成。/mm m s 只召唤旧独立模型,不是这些新粒子的入口。粒子只发给触发玩家,周围其他玩家不会共享该画面。

测试会替换该玩家正在发生的持续灾害;不要连续触发后误把被替换的场次当成消失故障。关闭各原生节点 enabled 可恢复旧展示,不需要删除原蓝图。

1.0.78 原生云雾龙卷风(历史参数)

龙卷风默认改用原生 CLOUD/SMOKE 粒子,按三维空间填充弯曲漏斗,并随时间上升、旋转;顶部有云盘,底部有少量尘埃与树叶碎屑。本轮只调整龙卷风,雷暴、流星、蘑菇云没有一起改成新粒子方案。树叶是破碎粒子,不会拔树、搬方块或产生掉落物。

配置入口:climate-survival.yml -> disasters.TORNADO.vortex.appearance.mist。

风柱移动

预警结束后整股风柱行进,云雾、尘屑、卷吸、温差和伤害范围共用同一个移动中心;不是只有粒子绕原地旋转。起点与方向由触发时的位置确定,不会追随玩家瞬移。

climate-survival.yml -> disasters.TORNADO.vortex 下的 travel-speed 是向前速度(0–1 格/秒,新默认 0.65);0 会同时停止前进和横向弯行。旧服原有速度不会被自动覆盖。

移动配置 默认 范围 / 用途
movement.path wander straight 直线;wander 前进并缓慢左右弯行
movement.sway-amplitude 2 横向偏移 0–6 格,不增加卷吸半径
movement.sway-period-seconds 24 完整摆动周期 8–120 秒
movement.follow-ground true 每半秒在地表所属区域读取已加载区块高度,以每秒最多 4 格平滑贴地;关闭则保持出生高度

不会为了龙卷风加载新区块;高山/悬崖处高度会逐步跟随,不是瞬间贴合地形。重载后新场次采用新参数。测试指令为 /seasons event trigger tornado,默认预警 10 秒,结束后开始行进。

配置 默认 范围 / 用途
enabled true 原生云雾模式;开启后不创建 ME 龙卷风,已有场次模型会回收
density-multiplier 3 1–4;乘以原有每帧预算,默认 48×3=144 颗/帧
max-particles-per-second 4096 256–16384;全服按 250 毫秒窗口共享,默认每窗最多 1024 颗
leaf-debris true 显示纯视觉树叶碎屑;关闭后仅尘埃

每 5 tick 更新一次,预警只显示约六分之一预算的高空云团;渐入/消散时减少粒子。预算不足只减少显示,不取消伤害、保护或风力。显示仅发送给触发玩家,48 格外不发送,不是全服共享天气。普通玩家的粒子设置会影响实际可见密度,建议测试时设为“全部”。

云雾模式不依赖 MM、ME 或资源包;其他类型的模型仍遵循原配置。旧 r2 蓝图可以保留,但本模式不会调用它。若要恢复旧模型,关闭 mist.enabled 并确认 model-display.yml -> models.TORNADO.enabled 开启。新版 Jar 需要正常重启加载;/seasons reload 只重载已有代码的配置。

原生粒子近似参考中的云雾形态,不复制模组专用贴图或无限粒子量。服务端 API、预算与回收测试不能代替真人客户端观感和帧率验收。

1.0.77 新增灾害与安全边界

当前为 13 种持续灾害、25 种季节事件、15 个模型(13 种灾害 + 流星 + 尸潮僵尸)。以下命令均由具有 liseasons.admin 的玩家在启用季节的世界执行,支持 Tab 补全和跨季节手动测试。

灾害 触发命令 默认行为
地震 /seasons event trigger earthquake 10 秒预警、60 秒总时长;固定起点 10 格范围,裂缝与碎石模型,最高每 3 秒 2 点伤害
雷暴 /seasons event trigger thunderstorm-season 每批 4 道原生闪电效果,全服最多 16 道/秒;不会点火,原有个人脉冲负责伤害
流星 /seasons event trigger meteor-night 细化岩核、熔岩裂隙、分叉火尾;继续使用夜空轨迹与独立奖励结算
蘑菇云 /seasons event trigger nuke 10 秒预警、45 秒总时长;前方 20 格形成烟柱与爆闪,12 格范围最多一次 6 点脉冲,不调用真实爆炸
天坑 /seasons event trigger sinkhole 10 秒预警、70 秒总时长;前方 4 格的暗色凹陷模型,4 格范围缓慢与最高每 3 秒 2 点伤害
龙卷风 /seasons event trigger tornado 1.0.78 默认改为移动云雾风柱;可卷起少量自然敌对怪,不搬走真实方块
海啸 /seasons event trigger tsunami 10 秒预警、70 秒总时长;浪墙由前方 18 格以每秒 0.65 格向起点移动,9 格范围模拟淹没、缓慢与最高每 3 秒 3 点伤害
尸潮 /seasons event trigger zombie-apocalypse 10 秒预警、90 秒总时长;墓地模型与 MM/ME 腐尸,默认每波 3、每人 8、全服 32,只攻击触发玩家

默认不破坏方块,而且本版没有真实地形破坏接口:裂缝是贴地模型、天坑是表面深度错觉,不会真的挖洞,也不会让玩家掉入真实洞穴;海啸不生成水,不改变氧气值,以范围脉冲模拟淹没。模型地面基准取触发位置,不是沿不规则山地自动贴合的地形网格。蘑菇云是幻想灾害效果,不模拟真实核辐射。

地震、天坑、海啸自然检查概率默认 1%、个人冷却 1200 秒;蘑菇云与尸潮默认概率 0(仅手动),管理员可在 season-events.yml 调整。所有新灾害保留屋顶、个人晴天、权限免疫、事件结束与非致死规则;新范围脉冲不会扩大成全服伤害。

附加行为在 disaster-behavior.yml:可关闪电、卷怪或真实尸潮。Residence/Dominion 领地内不执行新增闪电/尸潮/卷怪及范围脉冲;领地接口查询失败采用拒绝策略并提示。模型本身不修改领地。没有 MM/ME 时,尸潮不生成真实僵尸,其余原有业务保留;新模型也需要前置与客户端资源包。

尸潮无经验、无掉落、不拾取物品、不破门、不增援;单只默认 45 秒回收。事件结束、屋顶避险、离线、死亡、切世界或重载会提前回收。模型展示配额与尸潮配额独立计算,排队生成也计入上限。龙卷风每次最多卷 4 只、每人至少间隔 2 秒,全服最多扫描 32 区块/秒;只处理未命名、无插件数据的自然敌对怪,跳过宠物、凋灵/监守者及已识别的插件实体,非致死模式关闭卷怪以避免摔死。

新蓝图 ID:liseasons_earthquake、liseasons_nuke、liseasons_sinkhole、liseasons_tsunami、liseasons_zombie_apocalypse、liseasons_zombie_minion。对应展示 Mob 为 LISeasons_ 加大写后缀;真实战斗僵尸单独使用 LISeasons_WAVE_ZOMBIE(LISeasonsWave.yml),不与无 AI 展示载体混用。

1.0.77 也重新细化了原有九个模型:分段连续风柱、岩核裂隙与多条火尾、冰晶、雪花、沙带与分叉闪电。每模型 2–14 个渲染骨骼,细节共享骨骼,避免一个碎片一个实体。模型均为原创方块艺术,静态几何预览不等于真人客户端画面。

MythicMobs + ModelEngine 三维模型(1.0.77)

本版提供十五个原创 .bbmodel(十三种灾害 + 流星 + 尸潮僵尸)、内嵌像素贴图、idle 循环动画,以及配套 MM Mob 定义。不需要客户端模组,但需要合法安装 MythicMobs、ModelEngine 和对应客户端资源包。没有前置时保留原有粒子与灾害业务,不会下载或内置商业插件。

展示 MM Mob ID ME 蓝图 ID
龙卷风 LISeasons_TORNADO liseasons_tornado
流星 LISeasons_METEOR liseasons_meteor
冰雹 LISeasons_HAIL liseasons_hail
沙尘暴 LISeasons_SANDSTORM liseasons_sandstorm
冻雨 LISeasons_FREEZING_RAIN liseasons_freezing_rain
暴雪 LISeasons_BLIZZARD liseasons_blizzard
热浪 LISeasons_HEATWAVE liseasons_heatwave
寒潮 LISeasons_COLDWAVE liseasons_coldwave
雷暴 LISeasons_THUNDERSTORM liseasons_thunderstorm

安装时将交付包 ModelEngine/blueprints/ 的十五个模型放入对应插件目录,将 MythicMobs/Mobs/LISeasonsWeather.yml 及 LISeasonsWave.yml 放入 MM 的 Mobs 目录。重启加载并使用正式服务器自己的 ME 生成资源包,合并到现用资源包后再让玩家加载。不要拿隔离测试服的完整资源包覆盖正式服资源包,不同服务器的模型 ID 缓存及其他插件资源并不相同。ME 官方导入说明。

plugins/LISeasons/model-display.yml 包含完整中文注释,总开关 enabled、各类 enabled、mob-id、model-id、animation 和 scale 均可配置,/seasons reload 重载 LISeasons 配置。修改 MM 定义或 ME 蓝图还需要对应插件重载或正常重启。

默认每人 4 个、全服 64 个载体(包括排队生成任务),最远 192 格,不主动加载区块。粒子和模型独立开关;缺失模型或达到上限只停止该模型展示,不重复生成陨石奖励。纯展示载体不存档、无重力、不碰撞、不可破坏、无掉落;战斗僵尸有 AI、重力与碰撞但无奖励;不要给展示 Mob 增加战斗技能或额外掉落。

载体由 MM 创建,ME 挂载模型与动画,LISeasons 负责事件绑定、移动和回收。Folia 在位置区域创建,在载体自己的实体调度器上更新并异步跨区移动;事件结束、离线、死亡、切世界和重载会撤销排队生成并回收已生成对象。5 秒无更新也会释放,防止失联载体常驻。

ME 模型对附近玩家可见;灾害伤害、温度和风力仍按触发玩家个人事件判定。不是全服共享灾害,也不破坏建筑。热浪、寒潮采用游戏化气候标记,不代表现实中有实体。

新增的三种灾害

灾害 / 命令 ID 自然季节 总时长 / 预警 满强度效果
冰雹 hailstorm 春 90 / 8 秒 冰屑粒子、-5℃;每至少 3 秒以 70% 概率造成 1.5 点基础伤害
沙尘暴 sandstorm 秋 120 / 10 秒 棕色风沙粒子、+4℃;每至少 4 秒给予虚弱 I,持续 60 tick;默认不直接扣血
冻雨 freezing-rain 冬 120 / 10 秒 下落水滴、-10℃;每至少 4 秒给予缓慢 I(80 tick)和 60 tick 冻屏;冻伤取决于温度暴露

三者默认每次满足事件检查条件时有 2% 概率、1200 秒个人冷却,还受全局冷却/优先级限制。沙尘暴不额外限制沙漠群系;这是个人季节事件,不是共享气象模拟。预警期间没有新灾害粒子、温差、药水或伤害;默认 8 秒增强、12 秒消散。屋顶下和个人晴天完全跳过三者的粒子、温差和脉冲,但不会主动移除已经给予的短时药水,以免删除其他插件的效果。

只使用原生粒子,无需额外资源包,不产生真实冰雹实体、不放置水/沙/冰;无方块损坏和冰面物理。冰雹伤害走 Bukkit 事件,可由保护插件取消;冻屏限制在原版冻结伤害阈值以下。非致死开关继续限制基础伤害。

管理员在启用季节的世界执行以下命令,允许跨季节手动测试:

/seasons event trigger hailstorm
/seasons event trigger sandstorm
/seasons event trigger freezing-rain

入口在 season-events.yml 对应季节分组;持续配置为 climate-survival.yml -> disasters.HAILSTORM / SANDSTORM / FREEZING_RAIN。visual 控制显示开关、粒子数(1–128)、半径、高度和最短更新间隔,实际帧率不快于温度检测周期;视觉节流独立于伤害概率,卡顿不补帧。要完全禁用请关闭事件入口,单独关闭 visual.enabled 只关粒子。

龙卷风模型

1.0.74 的原生立体粒子仍作为独立粒子层保留,无需 ModelEngine 或资源包。1.0.76 新增的真实 ME 模型见上节;粒子仅向触发玩家发送,ME 模型可被附近玩家看到。触发玩家受到个人卷吸和伤害;1.0.77 另外可卷起有配额限制的自然敌对怪,不卷走其他玩家、被动动物、宠物或掉落物,不改变地形和建筑。

表现参考 Weather2 的分层风柱参数设计,Bukkit 代码独立实现,不包含该模组的代码、贴图或模型资产。

如何触发

默认夏季每次满足事件检查条件时有 2% 概率,单人本事件冷却 1200 秒,同时受全局事件冷却和优先级选择限制。不是“每秒 2%”。

管理员站在启用季节的世界,用:

/seasons event trigger tornado

该命令需要 liseasons.admin,只能由玩家执行。Tab 可补全 tornado 及新增灾害 ID;日历季节告示板列出 25 种默认事件。手动触发可用于非夏季测试。

默认表现与避险

设置 默认行为
预警 / 总时长 10 秒 / 90 秒,总时长包含预警
风柱 高 16 格,底部半径 0.6 格,顶部半径 4 格;弯曲漏斗、云盘、棕色尘屑环
演变 预警显示云盘,随后 8 秒逐步成形,最后 12 秒消散;风力、基础伤害与温差同步变化
路径 从触发时朝向前方 5 格出现,以 0.25 格/秒向初始玩家方向直线移动,不跟随玩家平移
作用范围 水平半径 7 格,垂直为起点下 2 格至风柱顶部
范围效果 -3℃ 空气温差、向心卷吸、旋转和抬升,每至少 3 秒造成 2 点基础伤害
速度限制 水平合成速度最多 0.65 格/tick,主动抬升约至起点上 6 格后停止向上推
潜行 自身受到的风力降至 35%,不免疫范围伤害

预警期只有高空云盘,没有落地漏斗、卷吸、温差或脉冲伤害。跑出作用范围可以躲开本场温差、卷吸和脉冲;屋顶下跳过卷吸、粒子及脉冲,默认温差也归零。Residence 等插件给予的个人晴天 WeatherType.CLEAR 同样可屏蔽这些影响。

风柱路径高度固定,不追踪途经地形;这避免了在 Folia 上跨区域加载或读取风柱附近区块。玩家只在自己所属线程接受速度变更,移动碰撞仍由原版处理。骑乘、飞行、鞘翅飞行不受卷吸,但并不因此免疫范围伤害。

默认允许致死,腾空后仍可能摔伤;不修改玩家摔落距离、不豁免其他来源伤害。allow-lethal-damage: false 会关闭龙卷风位移,仅保留视觉及保底脉冲伤害,避免卷吸把玩家推出悬崖。创造、旁观、无敌、无季节世界与 liseasons.climate.bypass 权限保持免疫。

配置入口

  • season-events.yml -> summer-events.tornado:事件开关、自然概率、冷却、优先级、菜单介绍。
  • climate-survival.yml -> disasters.TORNADO:持续开关、时长、预警、温差、伤害、声音和消息。
  • climate-survival.yml -> disasters.TORNADO.vortex:高度、半径、移动速度、粒子预算、卷吸、抬升上限和潜行减力。
  • climate-survival.yml -> disasters.TORNADO.vortex.appearance:立体模型开关、预警云、尘屑、底部半径、弯曲幅度、旋转速度、粒子尺寸。layered: false 回退旧版单条云螺旋。
  • climate-survival.yml -> disasters.<类型>.evolution:八种灾害的渐入和消散时间,范围 0–120 秒;0 关闭对应过渡。两段过渡各不超过有效时长的一半,确保短灾害能达到满强度。

完整范围和中文说明在 YAML 中。想完全禁用龙卷风,请将 summer-events.tornado.enabled 设为 false,然后 /seasons reload。重载会清理现有风柱;替换 Jar 则必须完整重启服务器。

每 5 tick 更新一帧,默认每帧最多 48 个粒子(云盘、漏斗、尘屑合计),预警云仅约 8 个;每轮最多处理 24 人。更多风柱按玩家轮转,卡顿时不积压同一个玩家的帧任务。48 格外不发送风柱粒子。灰色尘埃始终携带 DustOptions,避免数据型粒子缺参数错误。旧配置仅补新节点和中文注释,保留已有配置选择。

演变只缩放温差、基础脉冲伤害和风力,不缩放 effects 的药水等级/持续时间。风柱摆动是视觉表现,不扩大伤害半径;地面尘屑为棕色粒子,不代表真实方块被破坏。

插件联动与验证边界

脉冲伤害使用 Bukkit 伤害事件链。新增 com.liseasons.api.event.TornadoWindEvent,其他插件可取消每次卷吸;它在玩家所属线程触发,只读 getVelocity() 返回拟施加速度的副本,取消卷吸不等于取消独立脉冲伤害。屋顶和个人晴天屏蔽已在隔离服探针检查,但不承诺所有领地插件会自动识别新增事件。

死亡、重生、离线、换世界、换季、免疫状态、另一场灾害替换、重载和停服均清理风柱。服务代理检查可以验证粒子 API 参数、预警、强度和保护路径,但不等于真实在线玩家的受力、反作弊兼容与客户端视觉验收。

返回季节事件 · 体温系统