发电机:载具

发电机:载具

服务器端物理载具!创建你自己的怪物卡车、摩托车以及更多!

技术

DYNAMO

Dynamo 是一个 Minecraft 模组,使用 Jolt 物理引擎为游戏添加逼真的物理模拟载具。 你可以通过 JSON 配置文件定义自定义载具,将其放入 config/dynamo/vehicles/ 文件夹后会自动注册为实体类型。

之后你可以使用标准控制键来驾驶这些载具(WASD 用于油门和转向;跳跃键用于手刹;疾跑键用于加速)。

完全可配置的载具物理

每个载具 JSON 文件支持多种属性:

  • 尺寸和质量:半宽、半高、半长、质量、摩擦力、质心偏移。
  • 引擎:最小和最大 RPM、最大扭矩。
  • 传动系统:自动模式以及齿轮比列表。
  • 差速器:按车轴控制引擎扭矩比、差速器比和限滑比。
  • 车轮:半径、宽度、转向角、制动力矩、手刹力矩、惯性、角阻尼、悬挂(最小/最大长度、刚度、阻尼模式),以及每个车轮的自定义模型。
  • 防倾杆:可配置左/右车轮索引和刚度。
  • 倾斜:启用/禁用、最大倾斜角、刚度和阻尼、转向响应、两轮载具的速度因子。
  • 碰撞检测器:可选择射线、圆柱体或球体,并可配置半径。
  • 灯光:启用/禁用、常亮或可切换。
  • 更多内容:加速力、喇叭音效、重置冷却、抗火性等

Blockbench 模型

载具使用自定义 Blockbench 模型(.bbmodel),以及 .ajmodel 和 .ajblueprint 文件。

模组会自动从 config/dynamo/models/ 加载模型,并提供默认的汽车 Blockbench 模型和车轮物品模型。车轮模型可以按车轮单独指定。

服务器管理员命令

  • /dynamo reload – 从磁盘重新加载主模组配置和所有载具 JSON 文件,无需重启服务器。
  • /dynamo stats – 显示物理系统统计信息(总刚体数、活动刚体数)。
  • /dynamo clear – 移除当前世界中的所有动态物理元素。
  • /dynamo test-item 和 /dynamo test-block – 生成测试物理对象用于调试。

服务端设计

Dynamo 是为服务端使用而构建的。

玩家只需加入服务器,无需安装客户端模组。

该模组使用 Polymer 和 blockbench-import-library 处理实体视觉,并集成了在专用线程上运行的 Jolt 物理引擎。

所有载具行为均由服务端驱动。

快速开始

  1. 安装模组
  2. 启动一次服务器 – 将创建 config/dynamo/vehicles/ 文件夹,其中包含一个 default.json 示例。
  3. 编辑现有的 JSON 文件或添加新文件(每个文件定义一个载具类型)。id 字段(例如 "dynamo:my_car")将成为实体标识符。
  4. 运行 /dynamo reload 重新加载已加载的载具配置(不会注册不存在的配置)。
  5. 使用命令或生成物品(如果你的服务器设置提供了的话)生成载具。

对于摩托车,设置 "anti-roll-bars": [],设置 "motorcycle": true,启用 "leaning",使用两个车轮(前轮和后轮),并将 "collision-tester" 设置为 "Sphere"。 调整质心、悬挂阻尼和倾斜控制器参数以实现稳定的操控。