暗物质经济坐骑

暗物质经济坐骑

受《上古卷轴OL》启发的坐骑系统

实用

Hytale Dark Matter Economy Mounts

用永生马匹和飞行巨龙扩展你的冒险,具备持久化的坐骑归属、由 Ecotale 驱动的商人、坐骑任务、耐力、成长进度以及可配置的能力。

专为 Hytale 0.6.8 构建,包含独立的玩家菜单和管理员菜单、可选的 HyCitizens 集成以及公开的 Java API。

当前版本:1.2.4

这是什么?

Dark Matter Mounts 为你的 Hytale 服务器添加了一套坐骑收集系统。玩家可以从 NPC 商人处购买坐骑、通过配置的任务获得坐骑,或从配置的 NPC 掉落中获取坐骑。

召唤一匹马踏上陆地旅程,或骑乘烈焰巨龙或寒霜巨龙飞上天空。你的坐骑收藏会在跨会话和服务器重启后保存,因此解散坐骑会保留你的所有权、成长进度和所选外观。

服务器所有者可以围绕自己的经济和玩法来塑造该系统。通过配置文件、管理员命令或游戏内设置菜单,自定义价格、掉落率、耐力、成长进度、能力、冷却时间、商人报价和任务奖励。

核心特性

  • 马匹与飞行巨龙: 骑乘马匹穿越陆地,或使用原版 Hytale 模型骑乘烈焰巨龙和寒霜巨龙探索天空。

  • 永生坐骑: 坐骑无敌且免受伤害。坐骑保护不会使骑手无敌。

  • 持久化收藏: 跨会话保存坐骑所有权、所选皮肤、成长进度、耐力和加速冷却时间。

  • Ecotale 集成: 通过服务器现有的 Ecotale 经济购买坐骑并领取货币任务奖励。

  • NPC 坐骑商人: 在世界中放置商人并配置其坐骑报价。玩家必须访问附近实际存在的商人才能购买。

  • 坐骑任务: 配置目标,并以货币、坐骑或两者兼有的方式奖励玩家。可重复任务需要新的完成周期。

  • 可配置的坐骑掉落: 为归属于玩家的匹配 NPC 死亡添加获取几率。在配置之前,掉落默认禁用。

  • 耐力与冲刺: 地面冲刺消耗坐骑耐力,而休息可恢复耐力。力竭的坐骑只能行走,直至恢复。

  • 地形效果: 自定义泥地减速以及上坡行进时的额外冲刺耐力消耗。

  • 100 级成长进度: 获得骑乘经验、培养每只坐骑并解锁可配置的能力。每只坐骑的最高等级为 100。

  • RuneScape 风格经验: 默认使用 RuneScape 经验曲线,或通过管理员菜单选择自定义等级需求。

  • 可配置能力: 调整速度加成的强度、持续时间、消耗、冷却时间和解锁等级。解锁一项可消除泥地减速的被动能力。

  • 骑乘耐力 HUD: 骑乘时显示坐骑剩余耐力,尺寸和位置可配置。

  • 原版外观选项: 使用可用的原版模型资源以及可选的加速粒子效果配置皮肤。

  • 玩家菜单: 查看你的收藏、召唤和骑乘坐骑、购买商人报价以及接受或领取任务。

  • 独立的管理员设置菜单: 在受权限检查保护的专用管理员菜单中编辑设置。

  • HyCitizens 兼容性: 将现有的 HyCitizens NPC 连接到坐骑商人和任务菜单。

  • 公开 Java API: 将坐骑所有权、商人、任务、自定义进度事件、公民绑定和设置与其他插件集成。

马匹仅限陆地。 进入水中会解散召唤的马匹,同时保留所有权。没有携带系统。

巨龙飞行与力竭

巨龙在每个等级都保持 100 点耐力池。升级增加的是可用飞行时间,而非总耐力。

默认情况下,耐力全满的巨龙在1 级时有 60 秒飞行时间,每级增加 1 秒。这使得 100 级巨龙的基础飞行时长为 159 秒。悬停会消耗飞行耐力,加速会花费额外耐力。

管理员可以在两种飞行成长模式之间选择:

  • 每级秒数: 每级增加可配置的秒数。

  • 每级百分比: 每级按可配置的百分比复合增加飞行时长。

当飞行耐力降至零时,骑手保持骑乘状态,而巨龙向地面滑翔。巨龙无法再获得高度,但仍保留降低后的水平转向能力。滑翔下降和转向速度可配置。

飞行或滑翔期间耐力不会恢复。着陆后,耐力恢复。奔跑在 10% 容量时解锁,玩家可以手动再次启用飞行。

巨龙在行走、飞行和滑翔时会与固体地形碰撞。普通障碍物碰撞会让骑手保持骑乘并保留召唤的坐骑。

配置与控制

使用 /dmemount admin 打开专用的管理员设置菜单。

自定义体验以适合你的服务器:

  • 坐骑价格和商人报价。

  • 掉落概率和 NPC 过滤器。

  • 每米获得的骑乘经验。

  • RuneScape 或自定义经验进度。

  • 自定义进度模式下的各等级需求。

  • 马匹初始耐力和 100 级时的总耐力。

  • 巨龙初始飞行时长和每级增长。

  • 基于秒数或基于百分比的飞行进度。

  • 耐力恢复、冲刺消耗和地形消耗。

  • 地面速度、飞行速度、跳跃力和滑翔行为。

  • 加速强度、持续时间、消耗、冷却时间和解锁等级。

  • 任务目标、奖励、坐骑过滤器和可重复性。

  • 原版模型选择、骑手座位偏移和加速粒子。

  • 耐力 HUD 可见性、尺寸和位置。

  • 命令别名、收藏上限和保存间隔。

插件会在其数据目录中创建 config.json 和 players.json。重要的所有权和交易变更会立即保存;旅行进度和耐力会定期保存。

配置更改在保存和应用之前会经过验证。坐骑外观选择会在相关的生成或骑乘时生效。

一旦相关坐骑模式激活,转向、冲刺、跳跃和飞行上升/下降均使用你正常的 Hytale 控制。模组内可配置的控制更改的是命令别名。物理键盘绑定仍保留在 Hytale 的客户端设置中。

命令与权限

玩家命令无需专用模组权限。

所有管理员命令和设置菜单操作需要:

darkmatter.mounts.admin

通过服务器的权限系统分配此权限。拥有通配符权限的操作员也可访问。

玩家命令

命令 描述
/dmemount 或 /dmemount list 打开你的坐骑收藏菜单。
/dmemount catalog 列出可用的坐骑定义 ID。
/dmemount status 查看已拥有坐骑的 UUID、等级、经验、耐力和冷却时间。
/dmemount summon <UUID> 在附近召唤一只已拥有的坐骑。
/dmemount ride 骑乘附近已召唤的坐骑。
/dmemount dismount 下马,同时保持坐骑处于召唤状态。
/dmemount dismiss 下马并解散坐骑。
/dmemount boost 激活坐骑可用的速度加成。
/dmemount fly 切换巨龙飞行。力竭滑翔期间无法进行动力飞行。
/dmemount skin <UUID> <skin> 为已拥有的坐骑应用已配置的皮肤。
/dmemount shop <vendor> 打开附近商人的商店。
/dmemount buy <vendor> <mount> 购买可用的商人报价。
/dmemount quests 查看可用任务和已接受的进度。
/dmemount accept <quest> 接受一个任务。
/dmemount claim <quest> 领取已完成任务的奖励。

这些是默认命令别名。管理员可以自定义玩家子命令。

管理员命令

所需权限: darkmatter.mounts.admin

命令 描述
/dmemount admin 打开独立的管理员设置菜单。
/dmemount admin get <path> 读取配置值。
/dmemount admin set <path> <JSON> 验证、保存并应用设置。
/dmemount admin reload 重新加载配置文件。
/dmemount admin grant <mount> [player UUID] 将坐骑授予自己或其他玩家。
/dmemount admin vendor add <vendor> 在你附近放置已配置的商人。
/dmemount admin vendor list 列出已保存的商人放置位置。
/dmemount admin vendor remove <placement UUID> 移除商人放置位置。
/dmemount admin flightdebug 显示当前坐骑和飞行诊断信息。
/dmemount admin transactions 检查货币交易日志。
/dmemount admin resolve <transaction ID> delivered 在 Ecotale 中核实付款或入账后,完成不确定的交易。
/dmemount admin resolve <transaction ID> not_charged 在核实付款或入账未发生后,关闭不确定的交易。

配置示例

/dmemount admin set mounts.horse.price 500
/dmemount admin set mounts.horse.xpPerMetre 2
/dmemount admin set mounts.horse.staminaAtLevel100 600
/dmemount admin set mounts.horse.boostCooldown 15
/dmemount admin set mounts.fire_dragon.flightSecondsAtLevel1 60
/dmemount admin set mounts.fire_dragon.flightGrowthMode "seconds"
/dmemount admin set mounts.fire_dragon.flightSecondsPerLevel 1
/dmemount admin set mounts.fire_dragon.glideDescentSpeed 2

自定义经验需求:

/dmemount admin set mounts.horse.xpCurve "custom"
/dmemount admin set mounts.horse.xpPerLevel 500
/dmemount admin set mounts.horse.xpRequiredByLevel {"2":100,"3":250,"100":5000}

单独的 EXP 条目指定达到指定目标等级所需的开销。未指定的等级使用配置的默认开销。RuneScape 模式会忽略自定义等级开销。

管理员设置菜单提供了无需玩家离开游戏即可编辑配置的功能。

HyCitizens 集成

安装 HyCitizens 后,将现有的公民绑定到坐骑商人、任务菜单或两者。与已绑定的公民交互会打开相应的菜单。玩家仍然可以自行选择是否接受任务或领取奖励。

所需权限: darkmatter.mounts.admin

命令 描述
/dmemount admin citizen bind <citizen ID> <vendor> [quest] 将公民绑定到商人,并可选预选一个任务。
/dmemount admin citizen quest <citizen ID> <quest> 将公民绑定到任务菜单。
/dmemount admin citizen unbind <citizen ID> 移除公民绑定。
/dmemount admin citizen list 查看连接状态和已配置的绑定。

HyCitizens 是可选的。Dark Matter Mounts 也提供自己的商人放置功能。

多人游戏与货币处理

Dark Matter Mounts 使用 Hytale 的移动和实体同步。坐骑移动会在服务器端检查移动限制、障碍物碰撞、水域限制和允许的飞行。普通的巨龙障碍物碰撞会保留骑乘会话。

货币操作会记录在交易日志中。如果付款结果不确定,该账户的进一步购买和领取会被阻止,直到管理员核实 Ecotale 账本并核对交易。核对可以在不进行另一次货币调用的情况下发放记录的奖励。

开发者集成

公开的 MountAPI、VendorAPI、QuestAPI 和 CitizenAPI 服务允许其他插件:

  • 授予坐骑并请求坐骑操作。

  • 注册商人和任务。

  • 打开商人菜单。

  • 提交经过验证的自定义任务进度事件。

  • 读取和编辑配置。

  • 管理 HyCitizens 商人和任务绑定。

API 文档、配置示例、源代码和可复现的测试脚本包含在源代码包中。

安装与要求

  • Hytale: 0.6.8。

  • Java: 25。

  • 必需的经济插件: Ecotale。验证使用 Ecotale 1.1.2。

  • 可选的 NPC 集成: HyCitizens。验证使用 HyCitizens 2.0。

停止服务器,将 DarkMatterMounts-1.2.4.jar 与 Ecotale 一起放入其 mods 目录,然后重启。

升级时,移除之前的模组 JAR 并保留现有的配置和玩家数据。该 JAR 包含模组的 UI 和资源资源,并使用原版游戏模型。

要创建你的第一个商人,站在空旷干燥的地面上并运行:

/dmemount admin vendor add stable

然后玩家可以访问马厩购买坐骑,并打开 /dmemount 来管理他们的收藏并开始骑乘。