2026-01-02
成功=艰苦劳动+正确的方法+少说空话。——爱因斯坦
🚂 Locomotion:把《我的世界》玩家动作“卷到飞起”的实时动画系统
(曾用名:Trainguy’s Animation Overhaul)
Locomotion 是一个为《我的世界》Java 版打造的强力 Mod,目标非常直接:给“实体”和“方块”带来复杂、由玩法驱动的动画,用一个实时动画系统把角色的一举一动都变得更自然、更有张力。它的灵感来源于 Unreal Engine 的 Animation Blueprint——没错,就是那套在游戏里非常好用的“状态机 + 混合空间 + 蒙太奇轨道”的组合拳。
注意:项目仍在“重开发”阶段!你可以自行编译体验,但会看到缺失的动画、占位内容、以及一些用于调试的可视化元素。把它当作“提前试吃”,别把它当作“稳定发售版”。
这货到底想做什么?(一句话版本)
- 实时、玩法驱动的动画系统。
- 给玩家的一举一动加上“懂你的”细节:走、跑、跳、攻击、转身、切换装备……都能按“状态”进行自然过渡。
- 不只是角色,还包括“方块 / 方块实体”动画(后续计划中)。
一句话:这是让动作“像游戏里应有的样子”的一条路,让原本“静态/生硬”的体验变得柔滑、连贯、可调、可扩展。
规划与进度(README 里的官方说法)
状态标记:
- 🟩 完成
- 🟨 高优先级
- 🟥 低优先级
- ❌ 暂不考虑
核心条目(节选):
- 🟩 Pose Function System:状态机、混合空间、蒙太奇轨道都要安排上
- 🟩 PyQT Maya Exporter:Maya 导出工具已支持新格式与比例缩放
- 🟨 第一人称玩家动画:系统的首个“大强度压测”场景
- 🟩 游戏内配置界面:在 Mod 中直接调各种关节动画参数
- 🟥 方块/方块实体动画:后续希望回归(参考早期与 Pollen 的实现)
- 🟥 第三人称玩家动画:是否在发布版中提供,待定
- 🟥 回溯支持(Back-porting):视需求而定(考虑到“偏原版”的使用场景)
- ❌ 同步音效(Synchronised Sound):暂不考虑(避免与其它声音 Mod 互相打架)
- 🟥 对外开放 API(Open API):先把设计锁死,再考虑开放
- ❌ 实体动画(广泛覆盖):太大了,一个人短期搞不完;系统会支持,但需要更多资源与角色骨骼
- ❌ 数据驱动的关节动画器:等设计更稳定再谈
怎么下?怎么装?怎么配?(FAQ 精华)
- 目前不在 Modrinth / Curseforge 上架。你可以自行编译体验(下文有命令示例)。
- 面向最新的《我的世界》Java 版进行开发。Bedrock 版不会支持。
- 回溯到 1.20 / 1.21.1 等旧版本暂不计划:1.21.x 的渲染系统改动太多,先专心稳定新体系。
- Mod Loader:支持 Fabric 与 NeoForge。
- 依赖:
- Fabric 版本:需要 Fabric API
- 可选:Mod Menu / YACL(用于配置界面)
- 兼容性:与“偏外观类、贴近原版”的 Mod(如 Essential、3D Skin Layers 等)通常相处融洽;重内容型 Mod 若有自己的玩家交互动画,需看实现情况。
- 资源包:像 Fresh Animations 这类“改动画”的资源包原则上可以;但“同一动作由两边都改”的情况不能同时生效。
如果 FAQ 有遗漏,去 Discord 上问作者就好!
作者与团队(来自 README)
- 开发 / 骨骼 / 动画:James Pelter(Trainguy9512)
- 动画协作:
- Scott Smoker(Trident 动画)
- Micah Preciado(剑攻击动画)
- Austan Todd(斧攻击动画)
- 贡献者:
- Marvin Schürz(时间线与缓动系统)
- The Panda Oliver(Multi-loader 模板)
- TomB-134、AlphaKR93、LizIsTired、CaioMGT、Superpowers04
- 特别感谢 Moonflower 团队的支持!
社交与社区:
- Discord:
https://discord.gg/KxqCSGhaFZ - 作者 X/Twitter:
https://x.com/Trainguy9512 - Moonflower:
https://moonflower.gg/(站点 / Twitter / Discord 链接都在 README)
许可与发布(别踩线)
- 你可以贡献代码,作者非常希望把它做成一个可用的、可扩展的动画 API。
- 你不能把编译版、Fork、移植版发布到公共平台(Curseforge/Modrinth 等)——除非获得书面许可。
- 许可证链接(在早期仓库):代码部分为 GPLv3,所有资源/非代码资产为 All Rights Reserved。
License(链接见 README):https://github.com/Trainguy9512/trainguys-animation-overhaul/blob/master/LICENSE
“开盖即食”的体验:自行编译(示例命令)
项目支持自行编译,下面给一套“标准流程”(实际目录与脚本以仓库为准):
1 | |
对于 Fabric 版本,记得准备 Fabric API。配置界面可选装 Mod Menu / YACL。
动画系统怎么用?来点“态机 + 过渡”的示意代码(不是仓库源码,仅作概念展示)
这段代码演示“状态机 + 自然过渡”的基本套路:根据玩家速度、地面状态、手上动作,实时切换与混合动画。该示例仅为概念演示,帮助你理解“Locomotion 想做的事”。
1 | |
如果你做第一人称动画,就可以在玩家的视角里把手臂、武器、身躯的关节做更细的插值,做“蒙太奇轨道”去叠加攻击、交互动作;在第三人称则需要兼顾“外观与同步”。
再来一段“配置驱动”的关节示意(非仓库源码,仅为演示)
Locomotion 支持“游戏内配置”,用于调试不同关节动画器的参数。下面用一个简单的 JSON(概念)展示如何调节关节(如手臂)的摆动频率、幅度与相位:
1 | |
在 Mod 的配置界面里,你可以把这类参数“拨一拨”,就能立刻看到手臂摆动更自然、更有节奏;不同动作(走/跑/攻击)也可以对应不同的配置快照。
“方块 / 方块实体动画”:让世界也动起来(计划项)
README 里已经把这一项列入计划(🟥 低优先级)。想象一下:
- 熔炉开合门、箱子弹跳反馈、红石机械部件做“弹性”过渡
- 某些复杂方块实体(比如带运动的装置)可以有富有表现力的动画
这部分需要“系统成熟后再回归”,但从概念上讲,Locomotion 的实时动画系统天然适合做这类玩法反馈。
适配 & 兼容的现实
- 目标是“原版风格”(vanilla-ish)为主,不与重改内容的生态硬碰硬。
- 与外观类 Mod(Essential、3D Skin Layers 等)一般兼容。
- 资源包如 Fresh Animations 可搭配,但同一动作不要“你我都改”,否则冲突。
- 配置系统会成为“你自己的手术刀”,根据不同玩法微调关节表现。
想参与?欢迎!
- Pull Request 欢迎!作者非常重视“把它做成对其它 Mod 友好的动画 API”,任何关于 API 设计的建议都很有价值。
- 交流:Discord(
https://discord.gg/KxqCSGhaFZ)最好用,作者也在上面。
总结:把动作“变得对劲”,是件很酷的事
Locomotion 想做的是“把玩家动作、方块动画做得更像游戏应该有的样子”,兼顾实时性、可配置、与原版风格。它还在路上,但方向很清楚,成果也在一点点成形。如果你关心“动起来的感觉”,这就是你该关注的 Mod。
- 仓库主页:Trainguy9512/locomotion
- 社区:Discord(
https://discord.gg/KxqCSGhaFZ) - 许可与规则:代码 GPLv3、资源 All Rights Reserved;未经书面许可,不要发布编译版/移植/Fork 到公共平台
- 支持:Fabric / NeoForge;Fabric 版本需要 Fabric API,配置界面可选 Mod Menu / YACL
开一局,走两步,摆摆手——你会发现,“动作对了”,游戏就真的更有味了。