深色模式
SealAttributes 联动
SealItems 保存“装备上有哪些属性贡献”,SealAttributes 负责定义属性、聚合来源并把结果应用到玩家。两者职责不要混淆。
何时需要
只做展示物品、材料或掉落,不一定需要 SealAttributes。只要希望装备、词条、宝石或共鸣真正改变攻击、生命等属性,就需要可写的 SealAttributes API。
启动检查
- 把兼容版本 SealAttributes JAR 放入
plugins/。 - 先确保 SealAttributes 自己启动成功。
- 再看 SealItems 启动日志。
/si health中确认 equipment integration writable。
SealItems 找不到或无法写入联动时会避免把运行态误报为完整 READY。可选玩法配置失败与核心配置失败会分别报告。
属性配置例子
装备固定/随机基础贡献:
yaml
equipment:
attributes:
sealattributes:physical_attack:
add: { min: 18, max: 24 }
sealattributes:max_health:
add: 20
total-percent: 0.05词条贡献:
yaml
attributes:
sealattributes:physical_attack:
add:
algorithm: uniform
pity-direction: higher
min: 8
max: 18
step: 1宝石贡献:
yaml
effects:
default:
sealattributes:max_health: { add: 20 }
contexts:
weapon:
sealattributes:physical_attack: { add: 12, total-percent: 0.10 }共鸣贡献:
yaml
thresholds:
3:
sealattributes:physical_attack: { add: 5 }operation 语义
add:加法值。total-percent:总百分比,0.10表示 10%。
属性 ID 与允许 operation 以你的 SealAttributes 定义为准。示例 ID 只有在 SealAttributes 中存在才可用。
装备同步
玩家装备变化时,SealItems 读取完整装备与宝石/共鸣状态,生成稳定来源快照发布给 SealAttributes。损坏、未知 schema、缺定义或全身限制超额的部分不会被冒险计入。装备频繁切换应更新来源而不是永久叠加。
“Lore 有属性但玩家没变强”的检查
/si inspect确认物品 READY,不是 PROTECTED。/si health确认联动 writable。- 检查 SealAttributes 控制台是否认识该属性 ID/operation。
- 确认物品在受支持装备槽,而不是只放背包。
- 检查宝石是否因 per-item/equipped 限制被停用。
- 检查未鉴定限制。
- 让玩家重新装备一次,再查看 SealAttributes 自身诊断。
开发边界
SealItems 只 compileOnly 依赖 SealAttributes API,不把其类打进 JAR。第三方插件也不要反射 SealItems 私有 integration 实现;如果需要新的公开能力,应先设计并加入 sealitems-api。