工作台与符文镶嵌
工作台与符文镶嵌
/sgem embed 打开内置双槽宝石镶嵌台;/sgem open 符文镶嵌台 打开按颜色分槽的符文台;/sgem open 符文分解台 分解未镶嵌的示例符文。装备中已镶嵌的宝石使用 /sgem dismantle 拆卸,详见查看与拆卸。
玩家操作
- 顶部中央放入 1 件装备,按颜色将符文放入对应槽位。可以只放一种符文,不必填满。
- 把鼠标移到下方铁砧,查看目标、每颗符文的成功率、消耗数量及不匹配原因。预览不会扣物品或执行奖励。
- 点击铁砧确认。也可以直接右键装备槽中的装备确认;左键装备仍然只是取回。每个非空符文槽按格子顺序各尝试 1 颗,每颗独立判定成功率;结果装备留在装备槽,可继续镶嵌。
- 左键点击装备可以取回。关闭、切换菜单、执行
/sgem reload或正常停用插件时,投入的剩余物品会返还,背包放不下的会掉落在玩家身边;关闭本身不会自动镶嵌。
Shift 点击背包物品会自动放入一件到符合限制的槽位。光标拿着符文点击装备会将一颗符文暂存到匹配槽位,仍需点击铁砧或右键装备确认。普通左键取出装备不会触发镶嵌。
输入有不匹配项时整次操作不会开始。开始后,各槽位按顺序执行,前面的成功会影响后续的装备状态;达到属性或附魔上限而未产生效果的宝石会保留。概率失败通常消耗该颗宝石,已成功的前序效果不会因后续失败而回滚。
内置符文
以下定义来自 gems/RuneGem.yml,可通过 /sgem rune 消耗碎片合成,也可由管理员在游戏内用 /sgem view 领取,或执行 /sgem give <玩家> <ID> [数量]。
| ID | 槽位 | 效果与要求 |
|---|---|---|
红色符文I | 红色 | 添加 Lore 标记「强攻 I」,实际属性由其他插件读取 |
蓝色符文I | 蓝色 | 添加 Lore 标记「坚韧 I」,实际属性由其他插件读取 |
绿色符文I | 绿色 | 添加 Lore 标记「耐久强化 I」,实际效果由其他插件读取 |
技能符文I | 技能 | 添加 Lore 标记「技能符文 I」,实际技能由其他插件读取 |
示例成功率均为 100%。调整 Success 可引入失败概率。所有示例符文都设置了 Gui: [符文镶嵌台],在通用 /sgem embed 中会提示正确的工作台。
符文分解台只接收上述四种未镶嵌的一级符文。一次分解消耗一颗,产出 10 个 符文碎片。碎片可通过 /sgem rune 合成一级符文或参与升级,二级符文也在该界面回收。详见符文锻造与升级。
文件与字段
菜单在 plugins/SnowyGems/gui/ 下,支持 .yml、.yaml。一个文件可以定义多个菜单,顶层键名就是 /sgem open 的参数。
| 字段 | 含义 |
|---|---|
Title | 标题,支持颜色码,缺省使用菜单名 |
Slots | 1~6 行,每行必须恰好 9 个字符 |
Items | 字符到槽位定义的映射,每个键必须恰好一个字符 |
Items.<字符>.Material / Texture | 图标材质;有 Texture 时使用玩家头颅 |
Display / Tips / Glow | 图标名称、Lore、光效;确认按钮名称和预览由程序动态生成 |
Amount | 静态图标数量;宝石槽接收上限,范围 1~64,同时受物品堆叠上限限制;装备槽始终最多 1 件 |
Require | 动态槽位接收规则,接受单个字符串或列表 |
Gem | USE_GEM 按钮引用的宝石 ID |
Gui | PAGE_JUMP 要打开的菜单名 |
非空白字符缺少 Items 定义、非法行列、无效类型或数量时,菜单会被跳过并打印错误。文件按名称排序加载,重复菜单名保留先加载的定义并报告冲突。
槽位类型
| Type | 行为 |
|---|---|
EQUIP_SLOT | 玩家输入槽,最多 1 件;确认和配方使用第一个装备槽 |
RUNE_FORGE | 打开符文合成、升级和二级回收界面,需要 snowygems.rune |
GEM_SLOT | 符文/宝石输入槽,接受镶嵌类宝石,并检查 Gui 和 Require |
CONFIRM_EMBED | 实时预览并确认各宝石槽的镶嵌 |
USE_GEM | 执行 Gem 引用的奖励配方;成功后消耗装备槽输入物,不是通用的保留装备强化按钮 |
PAGE_JUMP | 打开 Gui 指定的其他菜单,原菜单输入会返还 |
CLOSE | 关闭并返还输入 |
TIP / EMPTY | 装饰,不接收玩家物品 |
PAGE_PREV / PAGE_NEXT / PAGE_TIP | 兼容旧配置的静态图标,没有自定义工作台分页逻辑 |
USE_GEM 并不扣除玩家背包里同 ID 的“配方券”。若存在装备槽,必须先放入目标;配方的 Require 也会检查目标。普通概率失败或奖励全部无效果时保留输入;执行出现异常、无法确定外部奖励是否已经发放时,可能消耗输入以避免重复发奖,请查看日志。多条奖励是顺序执行,不提供跨经济插件的整体事务回滚;不要仅靠前一条 ItemTake 的失败阻断后续发奖。
Page 不控制分页,Locations 不绑定方块。需要实体入口时,/sgem mark 可以把允许的方块标记为内置宝石台入口;它不绑定任意自定义菜单。自定义菜单可由 NPC/其他插件让玩家执行 /sgem open,此命令不支持控制台代开。
Require 规则
宝石槽规则之间是“或”:GEM:红色符文I 精确匹配宝石 ID,CATEGORY:RuneGem 匹配来源文件分类,ALL / GEM:ALL 接受任意有效镶嵌类宝石。普通文本如 红色符文 会匹配 ID、名称、显示名或 Tips。Gui 限制独立生效。
装备槽通常用 [WEAPON, TOOL, ARMOR] 等物品要求,留空接受普通物品。需要让宝石本身成为分解材料时,必须显式列出 GEM:<ID> 或 GEM:ALL;普通装备槽不会误把宝石作为装备。
鼠标放入、Shift 移入、数字键、副手交换和拖拽都会检查槽位规则与数量上限。双击收集不能把装饰图标带走。
可直接使用的示例
下面取自当前插件内置的默认工作台,保存为一个不与现有菜单重名的定义后执行 /sgem reload。
default:
Title: '&8宝石工作台'
Slots:
- TETBTATTT
- TITGTCTXT
- TTTTTTTTT
Items:
T:
Type: TIP
Material: BLACK_STAINED_GLASS_PANE
Display: ' '
E:
Type: TIP
Material: IRON_CHESTPLATE
Display: '&a↓ 放入一件装备'
Tips: ['&7普通点击取出;Shift 点击快速放入一件']
B:
Type: TIP
Material: DIAMOND
Display: '&b↓ 放入一颗宝石'
A:
Type: TIP
Material: BOOK
Display: '&e↓ 查看预览并确认'
I:
Type: EQUIP_SLOT
G:
Type: GEM_SLOT
Amount: 1
C:
Type: CONFIRM_EMBED
Material: ANVIL
Tips: ['&7检查下方材料与成功率后,点击执行一次']
X:
Type: CLOSE
Material: BARRIER
Display: '&c关闭并取回物品'
升级已有服务器
- 备份
plugins/SnowyGems/与测试用装备。用新 JAR 启动后,新文件gems/RuneGem.yml会释放。 - 已有的
gui/gui.yml、gui/rune.yml不会自动覆盖或合并。从新 JAR 的对应资源复制需要的菜单定义,合并确认、关闭和跳转按钮,不要创建重复的顶层菜单名。 - 使用旧菜单且未添加
CONFIRM_EMBED时,空光标 Shift+右键装备 可以触发各宝石槽的镶嵌;推荐升级到有明确预览按钮的布局。 - 执行
/sgem reload后重新打开菜单。重载会关闭投入物品的工作台并返还物品;查看/拆卸等旧页面需重新打开后操作。 - 分别测试单颗符文、四槽组合、背包满时关闭、重复强化后拆一颗,以及分解出 10 个碎片。