尼龙

尼龙

用于通过Animated-Java创建服务器端内容的库,支持自定义模型和动画。

工具

Nylon

这是一个用于使用自定义模型和动画创建服务端内容的库,无需客户端模组。\

Nylon 是使用 Animated Java 创建的模型与使用 Polymer 编写的服务端内容(如实体和方块)之间的桥梁,让你能够将 Blockbench 中制作的精美自定义模型、纹理和动画与完全自定义的方块 / 生物逻辑结合起来。

配置

repositories {
    maven { url "https://api.modrinth.com/maven" }
}

dependencies {
    modImplementation "maven.modrinth:nylon:[TAG]"
}

特性

  • 平滑且准确的动画,使用带有可配置旋转插值的挂载展示实体,而不是盔甲架,以确保旋转平滑且所有模型部件的位置保持同步。

  • 对服务器性能的影响极小。Nylon 经过高度优化,模型会异步更新。Nylon 还充分利用了原版的封包刷新挂起机制,以减少网络负载和延迟峰值。

  • 支持大多数 Animated Java 特性:

    • 变体:能够在不同模型和纹理之间即时切换。
    • 定位器:可用于监听模型特定部位的姿势更新。这些监听器可用于向模型添加额外的动画对象,例如粒子和其他实体。
    • 动画帧效果:某些可以有条件地在动画特定帧上应用的效果。例如,运行命令、播放声音或更改变体。
    • 许多其他功能,如骨骼黑名单、动画循环模式、起始和循环延迟等。

  • 开箱即用地支持许多原版生物特性:
    • 与原版一致的碰撞箱,在 F3+B 中可见,使用交互实体实现。
    • 能够骑在生物顶部,且不会在视觉上滞后。
    • 可用的隐身、发光、着火动画以及大多数粒子(如药水效果、暴击和死亡)。
    • 正确渲染拴绳、死亡动画以及与玩家的平滑客户端碰撞。
    • 动态碰撞箱和动态生物缩放(一个示例用例是小生物)。
    • 如果实体未被 tick,模型也不会 tick,从而减少服务器和网络负载。
    • 使用展示实体的剔除箱来减少客户端卡顿。

命令

  • /nylon model create id|filepath <model> - 根据生物标识符或模型 json 文件的文件路径(从服务器根文件夹开始)在游戏中生成一个模型。这些模型不会被保存,主要用于测试。

  • /nylon model <targets> animation|variant|scale <args> - 修改在 <targets> 中选择的、拥有自定义模型的任何实体的模型。允许你临时更改模型的缩放、更新变体以及播放 / 暂停 / 停止动画。这也主要用于测试和把玩模型。