Skip to content

新锻造 LyGalaxyForge

MySQL 前置要求

启用 MySQL 存储时,必须安装 LyMySQLCore,并确认它已成功连接数据库。否则本插件的 MySQL 数据读取、保存、同步及相关记录功能不会生效。

LyGalaxyForge 是图纸驱动的锻造系统。玩家解锁图纸后,可从分类菜单进入对应锻造界面,提交必选材料、货币和可选材料,将任务加入制作队列。等待时间结束后,插件按图纸配置结算成功率,并发放成功或失败产物。

系统同时提供可扩展的词条计算机制。锻造结果与可选材料可以修改变量、成功率、物品 NBT 和最终产物,也可以通过指令对已有物品执行词条重铸。

插件信息

项目内容
插件名LyGalaxyForge
中文名新锻造
作者离渊
主命令/lgf
可选依赖PlaceholderAPIVaultPlayerPoints
MySQL 前置使用 MySQL 存储时必须安装并正确连接 LyMySQLCore
扩展接口提供服务端 API、客户端 API、锻造结果事件和可选材料应用事件

支持版本

项目中已包含以下服务端 NMS 适配模块:

NMS 版本对应 Minecraft 版本
v1_7_R41.7.10
v1_8_R31.8.8
v1_11_R11.11.2
v1_12_R11.12.2
v1_13_R21.13.2
v1_14_R11.14.4
v1_15_R11.15.2
v1_16_R31.16.5
v1_17_R11.17.1
v1_18_R21.18.2
v1_19_R11.19.2
v1_19_R31.19.4
v1_20_R11.20.1
v1_20_R21.20.2
v1_20_R31.20.4

这些是项目中能够确认存在专用 NMS 实现的版本,不代表未列出的中间版本可以直接使用。

玩法流程

  1. 玩家通过自动条件、使用指定物品、权限或变量条件解锁图纸。
  2. 图纸按照 forge-menu 配置显示在不同分类菜单中。
  3. 玩家打开图纸界面并提交物品、货币与可选材料。
  4. 插件检查基础条件、额外条件、材料数量和货币余额。
  5. 条件满足后扣除消耗,并将锻造任务加入制作队列。
  6. 制作时间结束后,根据最终成功率结算锻造结果。
  7. 插件执行对应词条与结果逻辑,发放成功产物或失败产物。

主要功能

功能说明
图纸系统每张图纸可以独立配置显示物品、锻造界面、材料、条件、制作时间、成功率和结果。
图纸解锁支持自动解锁、使用物品解锁、需要权限、禁止权限及变量条件判断。
分类菜单通过 forge-menu 将图纸分配到不同菜单,便于按装备、材料或玩法分类。
基础条件锻造前检查图纸定义的基础条件,条件不满足时阻止提交。
额外条件支持为锻造过程配置额外判断,与必选材料和可选材料共同参与结算。
必选材料支持检查并扣除玩家背包中的指定物品与数量。
多种货币支持金币、点券、LyShopReload 货币和 CX 变量货币。金币与点券功能依赖对应经济插件。
可选材料玩家可以额外提交材料,用于执行词条、修改变量、调整成功率或改变最终产物。
制作队列锻造任务可以设置制作时间,玩家可在队列界面查看和结算任务。
权限加速可以按权限缩短制作时间,并支持将 OP 配置为立即完成。
成功率控制基础成功率可被可选材料和锻造函数增加、减少或直接设置。
成功与失败产物图纸可以分别定义锻造成功和失败时发放的物品及处理逻辑。
物品库读取指令和锻造结果可通过 物品库@ID 格式读取已接入物品库中的物品。
词条系统支持变量、条件、随机数、权重、文本处理、数学处理、PAPI 变量、权限判断和锻造次数读取。
NBT 处理词条及锻造函数可以设置物品 NBT,并通过对应版本的 NMS 模块处理物品数据。
物品重铸可以对玩家手中物品重新执行指定词条。
调试输出管理员可以切换词条计算调试输出,用于排查变量与计算结果。
数据存储玩家图纸、锻造次数、制作队列等数据可由 YAML 或 MySQL 相关模块处理。
文件监听项目包含 YAML 监听与安全写入逻辑,用于处理配置和玩家数据文件。
开发接口提供 LyGalaxyForgeAPILyGalaxyForgeAPIServerForgeOptionalApplyEventForgeResultEvent

图纸解锁方式

类型说明
自动解锁满足图纸设定后自动加入玩家已解锁图纸。
使用物品玩家使用指定物品时尝试解锁对应图纸。
需要权限玩家拥有指定权限时满足解锁条件。
禁止权限玩家没有指定权限时满足解锁条件。
变量条件使用变量与表达式计算解锁结果。

图纸的具体字段、材料格式和条件写法见 图纸配置

材料与货币

锻造消耗分为必选材料、货币和可选材料。必选内容不满足时不能提交锻造;可选材料由玩家自行放入,并在任务创建或结果结算时影响词条和成功率。

类型用途前置要求
普通物品检查并扣除指定物品和数量无额外软依赖
金币扣除 Vault 经济账户余额需要 Vault 及可用的经济实现
点券扣除 PlayerPoints 点数需要 PlayerPoints
LyShopReload 货币使用 LyShopReload 的货币数据需要对应插件与货币配置
CX 变量货币通过变量形式检查和扣除货币需要对应变量环境可用
可选材料修改成功率、变量、词条或产物按图纸中的可选材料配置执行

制作队列

锻造任务提交后可以进入制作队列。队列记录玩家、图纸、制作时间及相关锻造数据,完成后再执行结果结算。

机制说明
制作时间每张图纸可以设置独立的等待时间。
权限加速根据玩家拥有的加速权限缩短等待时间。
OP 加速可配置 OP 玩家立即完成制作。
队列界面玩家可以打开自己的制作队列,管理员也可以查看指定玩家的队列。
结果结算时间结束后按最终成功率执行成功或失败结果。
数据恢复队列数据由插件的数据存储模块管理;使用 MySQL 时依赖 LyMySQLCore 的数据库连接。

词条与表达式

词条系统用于处理锻造变量、结果物品和可选材料效果。项目中能够确认的内置处理能力包括:

分类能力
数值处理整数与小数转换、向上取整、向下取整、四舍五入、平均值、最大值、最小值。
随机处理随机数、概率判断和权重选择。
条件处理条件选择、相等判断、包含判断、开头判断、结尾判断。
文本处理替换、裁剪、拼接、分割、重复、去除首尾空白、长度和索引读取。
变量处理获取变量、设置变量、条件选值及列表大小读取。
玩家数据读取 PAPI 变量、检查权限、读取指定图纸的锻造次数。
日期处理获取或处理日期相关值。
物品处理设置 NBT、匹配物品、统计物品、给予物品和扣除物品。
锻造处理增加成功率、降低成功率、直接设置成功率、发送消息、广播消息和执行命令。
音效处理在锻造逻辑中执行 Minecraft 音效函数。

完整语法与方法参数见 词条方法

指令

指令中的方括号表示参数位置,不要在实际输入时保留方括号。

指令使用者说明
/lgf reloadOP重载插件配置与相关数据。
/lgf give [玩家] [图纸ID]OP给予指定玩家一张图纸。
/lgf take [玩家] [图纸ID]OP移除指定玩家已经解锁的图纸。
/lgf making [玩家]玩家或 OP打开制作队列;省略玩家参数时打开自己的队列。
/lgf forge [图纸ID] [玩家]玩家或 OP打开指定图纸的锻造界面;省略玩家参数时为自己打开。
/lgf menu [分类ID] [玩家]玩家或 OP打开指定分类菜单;省略玩家参数时为自己打开。
/lgf try [玩家] [图纸ID]OP让指定玩家尝试制作指定图纸。
/lgf setcount [玩家] [图纸ID] [次数]OP设置玩家对指定图纸的已锻造次数。
/lgf givecount [玩家] [图纸ID] [次数]OP增加玩家对指定图纸的已锻造次数。
/lgf takecount [玩家] [图纸ID] [次数]OP扣除玩家对指定图纸的已锻造次数。
/lgf giveitem [玩家] [物品库@ID] [数量] [词条]OP给予物品库中的物品,并可对物品执行指定词条。
/lgf recast [词条]OP对手中物品执行指定词条重铸。
/lgf entry-debugOP切换词条计算调试输出。

权限说明

现有项目证据能够确认管理指令使用 OP 限制,图纸解锁与制作加速可以读取自定义权限。具体权限字符串由图纸和加速配置定义,没有能够确认的固定权限节点,因此本文不额外列出权限名称。

扩展能力

项目提供面向其他插件的 API 与事件类,可用于读取锻造数据或介入锻造流程。

接口或事件用途
LyGalaxyForgeAPI客户端插件侧的主要 API 入口。
LyGalaxyForgeAPIServer核心服务端 API 入口。
ForgeOptionalApplyEvent可选材料应用时触发的事件。
ForgeResultEvent锻造结果生成或结算时触发的事件。
EntryMethodRegistry管理和调用词条方法。
EntryMethodContext向词条方法传递本次计算所需的上下文。

文档索引

页面内容
配置说明数据存储、菜单、货币、队列、权限加速、音效和界面设置。
图纸配置图纸字段、解锁方式、条件、必选材料、成功失败产物和可选材料。
词条方法词条变量、表达式、内置方法和物品处理能力。
插件变量PlaceholderAPI 变量及返回内容。
常见问题图纸无法打开、材料不足、队列异常、数据库连接和词条计算排查。