高级天气

高级天气

🌦️ ⁕ 为所有维度添加了大量原版友好的天气类型和一套完整的大气系统!

技术

Logo

Minecraft 的物理天气大修:覆盖全部三个维度的 28 种天气类型、真实的大气模拟,以及完整的可合成气象仪器进阶流程。

Minecraft Loader License


什么是 Advanced Weather?

原版 Minecraft 只有三种天气状态:晴天、雨天和雷暴。Advanced Weather 用一个生动的大气系统取而代之。气压、温度、露点和风持续进行模拟,并驱动28 种不同的天气类型,每种都有各自的粒子、雾、天空、声音和游戏效果。天气不会在不同状态间瞬间切换:它会根据当前的大气条件进行过渡,而且你可以通过自己建造的游戏内科学仪器来读取、预测和记录天气。

你可以让它程序化地运行,将其同步到地球上任何位置的现实世界天气,或者完全手动控制。


特性

🌍 真实的大气模拟

运行一个连续模型:

  • 气压由分层的 Simplex 噪声驱动,具有真实的速度、阻尼和阵风特性。
  • 温度由天气类型、太阳昼夜循环、绝热气压效应以及(可选)当前季节推导得出。
  • 湿度使用 Magnus 相对湿度公式根据温度和露点计算。
  • 风具有基于天气类型的基础强度、气压梯度贡献和随机阵风。
  • 概率化过渡 - 下一个天气是从一个由实时大气条件加权的过渡图中选择的,因此气压计下降确实意味着暴风雨即将来临。
  • 预报 - 引擎将大气状态向未来投影,以预测下一个天气并给出置信度评分。
  • 云层 - 一个自定义云渲染器,会对天气、湿度、风速和风向做出反应。

所有内容都是按维度独立计算并随世界保存的。


🌦️ 覆盖三个维度的 28 种天气类型

主世界 (17 种):

晴朗 · 阳光 · 多云 · 阴天 · 薄雾 · 雾 · 浓雾 · 毛毛雨 · 小雨 · 大雨 · 冻雨 · 雷暴 · 降雪 · 暴风雪 · 冰雹 · 大风 · 沙尘暴

下界 (6 种):

下界晴 · 灰烬风暴 · 硫磺风暴 · 熔岩雨 · 下界风暴 · 地狱火

末地 (5 种):

末地晴 · 末地雾 · 虚空风暴 · 紫颂狂风 · 末影风暴

一个可配置的 HUD 会显示当前激活的天气类型以及一天中的时间(可在配置中禁用):

天气 HUD

✨ 大气效果

每种天气都带有手工调校的视觉效果和音频:

  • 体积化的风线和定向风声,会随强度和阵风变化。
  • 天气专属粒子:暴风雪雪花、沙子、灰烬、地面积雾、冻雨飞溅、冰雹、余烬/虚空粒子。
  • 彩虹可能在雨后放晴或毛毛雨期间出现,极端高温下的热浪扭曲、水和熔岩的波纹、被风吹动的风滚草和飘荡的紫颂植株。
  • 动态的雾、天空、云、太阳、星星和闪电渲染,会随当前天气变化。

⚡ 影响游戏玩法的天气

  • 冰雹可以损坏作物、伤害暴露的实体并打碎玻璃(每项均可开关)。
  • 大雨会减缓作物生长。
  • 暴风雪会加深积雪累积。
  • 生物会寻找庇护所躲避危险天气。
  • 闪电行为针对风暴进行了重做。

(所有游戏影响均可单独配置。)

🔬 仪器与进阶

Advanced Weather 也是一个科技进阶模组。你不能直接读取天气,必须自己建造工具。

  • 新矿石与材料:朱砂(→ 淘洗成粉末 → 蒸馏成 水银)和铝土矿(→ 氧化铝 → 碳热还原 → 铝,包括锭、粒和板)。一个锤子可以让你手动粉碎和压制(或者使用 Create 的粉碎轮)。
  • 四种核心仪器,每种都由一个经过校准的核心部件构建:温度计(水银管)、气压计(弹簧)、湿度计(敏感纤维)、风速计(杯式转子)。
  • 校准台和校准工具 - 组件在组装前必须校准,传感器需要链接到气象站。
  • 每种仪器都有便携式版本,可在移动中读数。

📟 气象站网络

建造一个可工作的气象站:

  • 气象站 - 显示实时读数;链接传感器以解锁各项测量。用纸右键点击可打印一份天气报告。
  • 传感器(温度计 / 气压计 / 湿度计 / 风速计)具有现实的放置规则 - 温度计必须避开直接天空且通风良好;风速计需要开阔的天空和空旷的周围环境;等等。放置不当会得到错误的读数。
  • 天气档案库 - 存储报告和年鉴;它会研究你的测量历史来预报下一个天气,拒绝重复的以及超出其记忆时间的报告。
  • 自动采样器 - 按可配置的时间间隔自动将气象站数据输入档案库。
  • 天气探测器 - 根据天气发出红石信号(雨、雪、风暴、雷暴、冰雹,或 0–15 的模拟风力信号)。
  • 天气年鉴 - 一份可携带的存档天气趋势记录。

🌐 现实世界天气模式 (可选)

在配置中启用后,Advanced Weather 将获取地球上任意经纬度的实时天气(通过 Open-Meteo),并反向地理编码获取地名(通过 OpenStreetMap Nominatim),将现实条件映射到 Minecraft 的天气系统上。

隐私说明:此模式默认禁用。启用后,你在配置中设置的坐标将发送给 Open-Meteo 和 OpenStreetMap Nominatim 以获取天气和地点名称。除非你打开此功能,否则不会有任何数据离开你的游戏。


配置

配置文件在你的 config/ 文件夹中生成(advancedweather-common.json 和客户端配置)。重点内容包括:

  • 天气开关 - 启用/禁用每个维度(主世界、下界、末地)的任何天气类型。
  • 游戏玩法 - hailDamageCrops、hailDamageEntities、hailBreakGlass、heavyRainSlowCrops。
  • 仪器 - stationRequiresSensors、sensorLinkMaxDistance。
  • 档案库/预报 - 记录容量、预报所需的最少记录数、置信度曲线、预报时限、数据老化阈值。
  • 现实天气 - realWeatherEnabled、latitude、longitude、syncIntervalMinutes、realWeatherOverridesCommands。
  • Create 兼容 - enableCreateWindmillCompat、windmillWindThreshold、windmillDirectionAffectsOutput、windmillSpeedScaleFactor。

提供了 YACL 配置界面用于游戏内编辑。


兼容性

模组 类型 提供的功能
YetAnotherConfigLib (YACL) 必需(客户端) 游戏内配置界面
Create 可选 风车会对真实的风作出反应(速度和方向);在显示板上显示天气数据
Create: Aeronautics / Simulated 可选 风推动模拟的载具
Serene Seasons 可选 季节感知的天气类型、温度和露点
JEI 可选(客户端) 在配方查看器中显示校准台配方
Iris Shaders 不兼容 部分光影可能与 AW 渲染雾的方式不兼容

需求

  • Minecraft 1.21.1
  • NeoForge 21.1.230+
  • YetAnotherConfigLib 3.6+

许可证

基于 MIT 许可证发布。参见 LICENSE。

第三方软件声明:

本软件通过 JarJar 嵌入了以下第三方库:

  1. Registrate

  2. Veil

  3. Ponder

  4. Flywheel

这些库各自的许可证和版权声明均适用。 适用时请参阅随附文件中的完整许可证文本。

鸣谢

由 Antopfr 创作。

现实世界天气数据 © Open-Meteo。地点名称 © OpenStreetMap 贡献者,通过 Nominatim 提供。