Skip to content

宝石重置版 LyGemReload

LyGemReload 是装备宝石镶嵌系统。玩家可以在专用界面中放入装备、宝石和额外道具,插件根据装备宝石槽、宝石匹配规则、镶嵌条件、金币消耗和成功率处理镶嵌。已镶嵌宝石会记录在装备 NBT 中,并可通过拆卸工具或免工具模式移除。

插件同时支持开孔道具、动态成功率、随机属性、镶嵌数量限制、隐藏属性加载、自定义指令与全服消息,可用于制作装备成长、宝石强化和属性构筑玩法。

插件信息

项目内容
插件名LyGemReload
中文名宝石重置版
插件版本1.1.0
作者离渊
主命令/lgr
Java 版本基础模块使用 Java 8;Minecraft 1.17 及以上适配模块使用 Java 17
数据存储宝石数据、镶嵌数量和开孔次数记录在物品 NBT 中

支持版本

项目中包含以下 Minecraft 服务端版本的 NMS 适配模块:

Minecraft 版本NMS 版本
1.7.10v1_7_R4
1.8.8v1_8_R3
1.11.2v1_11_R1
1.12.2v1_12_R1
1.13.2v1_13_R2
1.14.4v1_14_R1
1.15.2v1_15_R1
1.16.5v1_16_R3
1.17.1v1_17_R1
1.18.2v1_18_R2
1.19.2v1_19_R1
1.19.4v1_19_R3
1.20.1v1_20_R1
1.20.2v1_20_R2
1.20.3v1_20_R3

未在表中列出的服务端版本没有对应的项目适配模块。

依赖与兼容

插件或系统类型用途
PlaceholderAPI功能依赖解析镶嵌条件、成功率公式、随机属性公式、消息和指令中的变量,并提供 %lgr_message_配置键% 变量。
Vault按需依赖宝石配置的 eco 大于 0 时,通过 Vault 经济服务检测并扣除金币。还需要服务器存在可用的 Vault 经济实现。
ProtocolLib兼容依赖用于序列化和还原镶嵌时保存的宝石物品。
属性插件可选依赖将宝石隐藏属性加载到玩家属性中。
装备槽插件可选兼容从第三方背包或装备槽读取需要加载隐藏属性的装备。
GermPlugin可选兼容支持萌芽槽位,并可通过 germ-message-dos 将插件消息转换为萌芽 DOS。

可在 attribute-plugin 中选择的属性插件标识如下:

  • AttributePlus
  • SX-Attribute2
  • SX-Attribute3
  • AttributeSystem
  • ItemLoreOrigin

隐藏属性槽位支持原版主手、副手、护甲栏和背包槽位,也包含 DragonCore、GermPlugin、APInventory、LyInventory、LyInventoryReload 与 PXRPG 的槽位读取格式。具体写法见配置说明

玩法流程

  1. 装备需要存在与宝石 slot 配置完全对应的 Lore,例如 &7<绿宝石槽位>
  2. 宝石通过显示名称和指定 Lore 识别,两项同时配置时必须同时匹配。
  3. 玩家打开镶嵌界面,放入装备、宝石和可选的额外道具。
  4. 插件检查禁止镶嵌 Lore、宝石槽位、镶嵌数量、宝石条件和金币余额。
  5. 插件计算宝石基础成功率,并叠加额外道具提供的成功率。
  6. 镶嵌成功后,原宝石槽 Lore 会替换为宝石展示名称和展示 Lore,宝石原物品、宝石 ID、原槽位和隐藏属性会写入装备 NBT。
  7. 镶嵌失败时仍会消耗本次宝石;放入有效额外道具时也会消耗该道具。
  8. 可拆卸宝石能够使用匹配的拆卸工具移除,也可以由服务器开启免拆卸工具模式。

主要功能

功能说明
宝石镶嵌根据装备槽位 Lore、宝石名称、宝石 Lore、镶嵌条件、金币和成功率处理镶嵌。
多宝石配置自动递归加载 plugins/LyGemReload/gem 目录内的 YAML 文件,每个宝石 ID 必须全局唯一。
动态成功率chance 支持数值、PlaceholderAPI 变量以及 +-*/ 和括号公式。
镶嵌条件支持权限、无权限、PAPI 表达式和装备内指定宝石数量检测。
宝石数量限制可按顺序匹配权限或 PAPI 条件,为不同玩家设置每件装备的最大宝石数量。
唯一宝石可使用 gem-amount 条件限制指定宝石在同一件装备中的数量。
金币消耗每种宝石可以设置固定金币消耗,通过 Vault 经济服务检查和扣款。
宝石拆卸拆卸工具可配置成功率、适用宝石、成功后返还宝石概率和成功指令。
免工具拆卸开启 force-out-gem-enable 后,点击界面内的已镶嵌宝石即可直接拆卸并返还宝石。
不可拆卸宝石宝石可通过 can-disassembled: false 禁止任何拆卸操作。
开孔道具在生存背包中拿起开孔器点击装备,按权重随机增加一个或多个宝石槽 Lore。
开孔限制可限制开孔器适用的装备名称、前置 Lore 和每件装备的最大使用次数。
额外道具镶嵌时可以增加成功率、追加随机属性或发送自定义消息。
随机数值宝石展示 Lore、隐藏属性和额外道具结果支持 {最小值-最大值-格式} 随机区间。
显示属性show-lore 会直接写入装备可见 Lore,可由基于 Lore 的属性插件自行读取。
隐藏属性attribute 保存在装备宝石数据中,不必直接显示在装备 Lore 上。
宝石原 Lore 加载可以把镶嵌前宝石物品的全部 Lore作为属性来源加载。
多槽位属性读取可从原版装备栏、背包槽位及多个第三方装备槽读取镶嵌装备。
属性刷新玩家进入服务器、关闭背包、切换手持栏和交换主副手时会刷新隐藏属性;相同属性列表会跳过重复刷新。
成功与失败动作宝石可分别配置成功指令、失败指令和镶嵌成功后的全服消息。
禁止镶嵌 Lore可分别设置装备和宝石的禁止 Lore,命中后拒绝镶嵌。
快捷界面模式点击玩家背包物品时自动识别装备、宝石和额外道具并放入对应槽位,再次点击界面槽位可自动放回背包。
旧版手动模式可关闭快捷模式,恢复手动拿起和放入物品的界面交互。
关闭界面返还关闭镶嵌界面时会返还装备、宝石和额外道具;背包已满时物品会掉落在玩家脚下。
宝石查询 APIJava API 可以读取一件装备中保存的全部宝石 ID,单次最多返回 27 个。

镶嵌界面

镶嵌界面为 54 格容器。主要槽位固定如下:

槽位用途
026展示装备中已经镶嵌的宝石,最多显示 27 个。
37装备槽。
39待镶嵌宝石槽。
41额外道具槽。
43镶嵌按钮,Lore 可显示金币消耗和成功率。

默认启用快捷模式:

  • 点击玩家背包中的宝石,会自动交换到 39 槽。
  • 点击玩家背包中的额外道具,会自动交换到 41 槽。
  • 其他物品默认交换到 37 装备槽。
  • 拆卸工具不会自动进入界面槽位,需要拿在鼠标上点击已镶嵌宝石。
  • 空手点击 373941 槽,会尝试把物品放回玩家背包。

宝石规则概览

每个宝石配置包含一个全局唯一 ID。插件会按以下规则识别和处理宝石:

规则说明
槽位匹配装备必须存在 slot 列表中的至少一行 Lore,并且为忽略大小写的完整行匹配。
名称匹配gem-name 不为空时,宝石显示名称必须完整匹配。
Lore 匹配gem-lore 不为空时,宝石至少有一行 Lore 包含该配置内容。
展示内容镶嵌成功后使用 show-nameshow-lore 替换命中的宝石槽 Lore。
成功率chance 使用 01 的概率值,也可以填写变量公式。
金币eco 为固定整数金额;设置为 0 时不检查经济。
拆卸can-disassembled 决定宝石是否允许拆卸。
属性attribute 生成隐藏属性,load-item-lore-attribute 决定是否加载这些属性。
原宝石 Loreload-item-lore 决定是否把镶嵌前宝石物品的全部 Lore 加载为属性。

完整配置格式、条件语法和随机数值格式见宝石规则

指令

指令使用者权限要求说明
/lgr inlay玩家打开镶嵌与拆卸界面。
/lgr reload管理员仅 OP重载主配置、宝石、额外道具、拆卸工具、开孔道具和变量镶嵌限制。
/lgr管理员仅 OP显示插件指令提示。

插件没有在 plugin.yml 中声明独立权限节点。宝石配置与镶嵌上限配置中的权限名称由服务器自行填写,不属于插件固定权限。

内置变量

安装 PlaceholderAPI 后,插件注册 lgr 变量扩展:

变量返回内容
%lgr_message_消息键%返回 config.ymlmessage.消息键 的文本,并转换 & 颜色代码。

例如 %lgr_message_inlay-success% 对应 message.inlay-success。完整变量和可使用变量的位置见插件变量

配置文件

插件首次加载或重载时会准备以下配置:

文件内容
config.yml属性槽位、属性插件、禁止镶嵌 Lore、镶嵌数量限制、拆卸模式、界面和消息。
gem/*.yml宝石识别、槽位、概率、金币、条件、属性、指令和消息。支持递归加载多个 YAML 文件。
开孔道具.yml开孔器名称、适用装备、前置 Lore、使用次数和权重结果。
拆卸工具.yml拆卸工具名称、成功率、返还规则、适用宝石和成功指令。
额外道具.yml镶嵌额外道具名称及成功率、属性、Lore 和消息效果。

文档索引

页面内容
配置说明主配置、界面配置、消息、隐藏属性槽位和镶嵌数量限制。
宝石规则宝石、条件、概率公式、随机属性、开孔器、拆卸工具和额外道具。
插件变量PlaceholderAPI 变量、变量表达式和可用位置。
APIJava API 提供的装备宝石 ID 查询能力。
常见问题宝石无法识别、槽位不匹配、经济扣款、拆卸和隐藏属性排查。