- 打卡等级:魔龙套勇士
- 打卡总天数:112
- 打卡月天数:5
- 打卡总奖励:13503
- 最近打卡:2025-08-05 00:19:04
管理员
本站站长
- 积分
- 7907
|
在 GEE 引擎中确保物品回收预设规则(ITEMRECYCLESET)的参数设置正确,需要从参数合法性校验、配置文件匹配、测试验证三个维度入手,结合引擎特性和工具进行多环节检查。以下是具体方法:
一、参数合法性基础校验(逐个参数检查)
1. 规则 ID:确保唯一性与范围有效
范围校验:规则 ID 必须在 1~9999 之间(超出范围会被引擎忽略)。
唯一性校验:通过 “全局搜索” 检查所有脚本(如 QuestDiary 目录下的 .txt 文件),确保同一 ID 未被重复定义(重复会覆盖旧规则)。
工具:使用 Notepad++ 的 “在文件中查找” 功能,搜索 ITEMRECYCLESET 目标ID,确认仅存在一次定义。
2. 物品名称:与Item.txt完全匹配
物品名称是最容易出错的参数,需严格匹配 Data/Item.txt 中的定义:
精确匹配检查:
打开 Item.txt,查找目标物品(如 “裁决之杖”),确认名称大小写、空格、特殊符号完全一致(如 裁决之杖(+7) 不能写成 裁决之杖+7)。
若包含特殊符号(如 [、]、(),需在脚本中使用转义符 \(如 ITEMRECYCLESET 10 屠龙\[+9\] ...)。
多物品分隔符检查:多个物品用 | 分隔(如 屠龙|裁决之杖),不能使用逗号或空格。
3. 最小强化等级:与物品强化属性匹配
取值范围校验:必须为非负整数(0~引擎配置的强化上限,通常为 9 或 15),负数会被引擎自动修正为 0。
与物品属性匹配:
强化等级对应 Item.txt 中的 UpgradeCount 字段(如 UpgradeCount=5 表示该物品可强化至 + 5)。若规则中 “最小强化等级 = 7”,但物品最大强化仅为 5,则该规则永远无法触发,需降低等级或修改物品配置。
4. 品质要求:与Item.txt的Quality字段对应
取值范围校验:必须为 0~5(0 = 不限制,1 = 普通,2 = 优秀,3 = 精良,4 = 史诗,5 = 神器),超出范围会被修正为 0。
与物品品质匹配:
打开 Item.txt 查看目标物品的 Quality 字段(如 Quality=4 表示史诗品质)。若规则要求 “品质≥5”,但物品最高品质为 4,则规则无效,需降低品质要求。
5. 奖励类型与奖励值:逻辑对应且有效
奖励类型(1~5)与奖励值必须一一对应,否则奖励无效:
奖励类型 奖励值合法性检查要点
1(金币) 数值为非负整数(支持 0,最大不超过引擎金币上限,通常为 21 亿)
2(经验) 支持正负整数(正数增加经验,负数扣除),数值范围需在引擎经验配置内
3(材料) 奖励值必须是 Item.txt 中存在的材料 ID(如 102 对应 “金刚石”),且该物品类型为 “材料”(非装备 / 消耗品)
4(元宝) 非负整数,需确保引擎已开启元宝系统(Envir/Config.ini 中 EnableGold=1)
5(声望) 非负整数,需确保引擎已配置声望系统(Envir/Settings.txt 中 EnableReputation=1)
检查方法:
奖励类型 = 3 时,打开 Item.txt,确认奖励值对应的 ID 存在(如奖励值 = 102,检查 Item.txt 第 102 行是否为有效材料)。
奖励类型 = 4/5 时,通过引擎配置文件确认对应系统已启用。
二、配置文件关联校验(确保规则与引擎配置兼容)
1. 关联Item.txt全量检查
ITEMRECYCLESET 的核心依赖 Item.txt,需确保:
目标物品在 Item.txt 中存在(未被注释或删除)。
物品的 CanRecycle 字段为 1(部分引擎支持该字段控制是否允许回收,默认为 1,若为 0 则无法回收)。
材料类物品(奖励类型 = 3 时)的 IsMaterial 字段为 1(确保被识别为材料)。
2. 引擎参数兼容性检查
部分引擎配置会影响回收规则生效,需在 Envir/Config.ini 中确认:
EnableItemRecycle=1(开启物品回收功能,默认为 1,若为 0 则所有回收命令无效)。
MaxRecycleLevel=9(强化等级上限,需≥规则中的 “最小强化等级”)。
MaxRecycleQuality=5(品质上限,需≥规则中的 “品质要求”)。
三、测试验证(通过实际调用确认规则生效)
1. 编写测试脚本
创建一个简单的 NPC 测试脚本(如 QuestDiary/回收测试.txt),调用目标规则:
plaintext
#IF
TRUE // 无条件执行
#ACT
ITEMRECYCLEEX <$USERNAME> 规则ID=目标ID // 调用预设规则
SENDMSG 6 回收测试:规则ID=目标ID 执行完成 // 发送提示信息
2. 模拟玩家操作验证
准备测试物品:在游戏中获取符合规则条件的物品(如规则要求 “强化≥5、品质 4 的裁决之杖”,则准备对应的物品放入背包)。
触发回收:与测试 NPC 对话,执行回收命令。
检查结果:
物品是否从背包中消失(符合条件则被回收)。
奖励是否正确发放(金币 / 经验 / 材料是否到账)。
3. 查看引擎日志定位问题
若回收失败,通过引擎日志排查具体原因:
回收日志:Log/Recycle.log 记录所有回收操作,包含 “玩家名、物品名称、是否符合条件、奖励发放结果”。
示例日志:2023-10-01 12:00:00 玩家[测试] 回收[裁决之杖] 失败:强化等级不足(当前3 < 要求5)
错误日志:Log/Error.log 记录参数错误(如 “物品名称不存在”“奖励类型无效”)。
四、常见错误案例与解决方案
问题现象 可能原因 解决方法
规则调用后无任何反应 规则 ID 不存在或被覆盖 重新检查规则 ID 是否正确定义,确保唯一
物品未被回收 物品名称与Item.txt不匹配 严格对照Item.txt修正物品名称,处理特殊符号
符合条件的物品未回收 强化等级 / 品质要求高于物品实际属性 降低规则中的 “最小强化等级” 或 “品质要求”
奖励未发放 奖励类型与奖励值不匹配(如类型 3 对应无效 ID) 检查Item.txt中的材料 ID,修正奖励值
多物品仅部分被回收 未被回收的物品不符合条件(如品质不足) 单独测试未回收物品,调整规则或物品属性
五、总结:预设规则检查清单
为确保参数正确,建议按以下清单逐项检查:
规则 ID 在 1~9999 范围内且唯一。
物品名称与Item.txt完全一致(含特殊符号和大小写)。
最小强化等级≤物品最大可强化等级(Item.txt的UpgradeCount)。
品质要求≤物品实际品质(Item.txt的Quality)。
奖励类型与奖励值逻辑对应(如类型 3 对应有效材料 ID)。
引擎配置中开启物品回收功能(EnableItemRecycle=1)。
通过测试脚本验证回收和奖励是否正常,并查看日志确认无错误。
通过以上步骤,可系统性验证预设规则的参数正确性,避免因配置失误导致回收功能失效。
|
|