真实地形移动

真实地形移动

移动速度因地形方块而异,船只在海洋中会损坏,在山峰高处,高空气流会推动玩家。旨在鼓励使用外部交通运输模组,尤其是Create Aeronautics。

冒险

Realistic Terrain Movement 改变了 Minecraft 中的移动机制,让地形、海拔和环境条件同时影响玩家与生物。道路让你移动更快,泥泞和积雪会拖慢你的速度,山风成为一项挑战,而开阔的海洋不再是小型船只的安全之地。

该模组旨在鼓励玩家使用交通类模组或其他环境机制。

所有机制均完全可配置,并可独立启用或禁用: .../config/realisticterrainmovement-common.toml

特性

不同地表影响移动速度:

  • 路径、木板、砖块、石头及类似的人造地表提供速度加成。
  • 沙子、砂砾、泥泞、积雪、灵魂沙、细雪及其他崎岖地形会拖慢移动速度。

surfaces movement speed

靴子减少地形惩罚:

  • 穿戴在脚部槽位的任意靴子默认可减少地形惩罚(50%)。穿越崎岖地形变得更加轻松,同时保留道路与路径带来的所有正面加成。

生物也会受到影响:

  • 地形效果不仅作用于玩家,也作用于世界中的大多数生物。
  • 默认排除水生生物、飞行实体以及某些无腿生物,以维持自然行为。

高海拔风系统:

在 Y=120 以上,强风开始影响移动。风力随高度增强,最高至 Y=250

  • 风会将玩家和生物向侧面推动。
  • 逆风行走会降低移动速度。
  • 风力随海拔升高而增强。
  • 仅在开阔天空下生效(洞穴/建筑内受到遮蔽)。
  • 正常的攀爬跳跃不受影响。
  • 更新日志(版本 1.1.0)

船只与开阔海洋:

小型船只不适合远洋航行。原版船只本质上是一艘小型沿岸船只,现实中无法承受开阔海洋的恶劣条件。这鼓励玩家使用其他模组建造真正的航海船只,以探索遥远的岛屿和大陆。

  • 在海洋生物群系中新放置的船只会立即破碎并作为物品掉落,鼓励玩家寻找其他交通方式。

更新(从 1.0.0 到 1.1.1):

  • 新增 EASY、NORMAL 和 HARDCORE 地形预设,同时保持每个方块修正值可配置。
  • 平滑了地形过渡并改进了跳跃保护;植被减速默认禁用,但可在 blockSpeedModifiers 中重新启用。
  • 扩展了对 Biomes O' Plenty、Regions Unexplored、Nature's Spirit 和 Unearthed 的地形支持。
  • 在 windStartY 以上的开阔空气中,风始终处于活动状态;原版降雨和雷暴会使其强度增加 30%。
  • 新增独立的过程式风声:下落时平滑淡出,在 Y=90/120/180/250 时音量分别为 5%/30%/60%/100%。
  • 改进了海洋船只检测:标准原版风格的船只(包括模组木材变种)现在会正确破碎。
  • 大型船只及其他非标准水上交通工具默认受到保护,不会在海洋中破碎。
  • 新增 oceanBoatWhitelist 和 oceanBoatBlacklist,用于自定义 Boat 实体和实体类型标签;黑名单优先于白名单。

兼容性

默认配置包含对以下内容的支持:

可能与修改 MOVEMENT_SPEED 属性、应用自定义移动机制或改变原版船只行为的模组发生冲突。

推荐

由于本模组主要作为其他模组的补充而创建,我推荐以下模组以完全释放其 100% 的潜力:

技术说明:

Spoiler
  • 所有移动逻辑仅在服务端运行,通过 EntityTickEvent.Post 实现。
  • 地形 + 靴子使用组合的 MOVEMENT_SPEED 属性修饰符 (ADD_MULTIPLIED_TOTAL)。在空中时,保留最后一次着地时的值(粘滞),而不是重置为中性值。
  • 风会追踪每个实体最后一次在地面上的 Y 位置,以检测“这是否为正常跳跃”,并在跳跃低于配置的上升阈值时跳过推动/减速。
  • 生物群系模组的方块条目使用普通的 modid:block 或 #modid:tag 语法——如果该模组未安装,注册表查找将找不到任何内容,该条目即为无操作。
  • 配置列表会被缓存,仅在配置实际更改时才会重新解析。