1.76传奇小极品分解强化石脚本实操全解(HERO引擎)

来源: 作者: 点击:
本文脚本适配1.76复古传奇HERO引擎,实现小极品装备按附加属性分解为对应强化石,保留无附加属性装备主体。核心逻辑:检测装备附加属性类型与数值,扣除极品属性部分,生成对应强化石,留存基础装备。

以攻击+2装备分解为攻击强化石、魔法+3紫碧螺分解后留存基础紫碧螺并生成魔法强化石为例,脚本含NPC交互、属性检测、物品拆分全流程,可直接复制套用。

一、前期准备(脚本运行基础)

1. 物品与文件确认

先在服务端物品数据库(StditemDb.txt)添加两种强化石:攻击强化石、魔法强化石,设置基础属性(重量1、叠加数量99、不可交易可丢弃),记录物品名称与对应ID,确保脚本中物品名与数据库一致。

找到核心脚本文件路径:D:\MirServer\Mir200\Envir\NPCs(存放NPC脚本)、QFunction-0.txt(属性检测核心脚本),提前备份原文件,避免配置冲突。

2. NPC预设

新建NPC文件(命名为“小极品分解师.txt”),放入NPCs文件夹,设置刷新位置(推荐土城安全区,坐标230 320),NPC名称设为“小极品分解师”,用于承接玩家分解操作。

二、核心脚本编写(分NPC脚本与属性检测脚本)

1. NPC交互脚本(小极品分解师.txt)

实现玩家对话、装备提交、分解结果反馈,支持多属性装备分步分解,脚本如下:

// NPC对话主界面
[@main]
#SAY
欢迎使用小极品分解功能!\
仅分解装备附加极品属性,基础装备可留存。\
攻击+≥1 → 攻击强化石 | 魔法+≥1 → 魔法强化石\
<提交装备分解> @提交装备
#ELSEACT
BREAK

// 装备提交与关联
[@提交装备]
#ACT
LINKPICKUPITEM // 关联玩家提交的装备
#IF
CHECKITEM 0 // 检测是否提交装备
#SAY
已检测到装备,是否确认分解其附加极品属性?\
<确认分解> @检测属性
<取消操作> @main
#ELSEACT
SENDMSG 7 请先选择要分解的装备并提交! 250
GOTO @main
BREAK

// 分解结果反馈
[@分解成功]
#SAY
分解成功!\
获得【$STR(G1)】x1\
基础装备已返还至背包。\
<继续分解> @提交装备
<离开> @exit
BREAK

[@分解失败]
#SAY
分解失败!该装备无附加极品属性,或无法分解。\
<重新提交> @提交装备
<离开> @exit
BREAK

2. 属性检测与分解核心脚本(QFunction-0.txt)

添加至文件末尾,通过命令检测装备附加属性,实现精准分解,核心适配1.76版本小极品属性规则:

// 装备属性检测逻辑
[@检测属性]
#ACT
// 关联提交的装备,获取物品对象
SETLOCALITEM 0
// 检测附加攻击属性(type=1,position=2对应攻击属性)
GETITEMADDVALUE 0 1 2 G2 // G2存储附加攻击数值
// 检测附加魔法属性(type=1,position=3对应魔法属性)
GETITEMADDVALUE 0 1 3 G3 // G3存储附加魔法数值
// 优先检测攻击属性
#IF
large G2 0 // 附加攻击>0
#ACT
// 扣除装备附加攻击属性,保留基础攻击
SETITEMADDVALUE 0 1 2 0
// 给予攻击强化石,标记结果
GIVE 攻击强化石 1
SET G1 攻击强化石
SAVEVAR G1 ..\QuestDiary\分解变量.txt
GOTO @分解成功
#ELSEIF
large G3 0 // 附加魔法>0
#ACT
// 扣除装备附加魔法属性,保留基础魔法
SETITEMADDVALUE 0 1 3 0
// 给予魔法强化石,标记结果
GIVE 魔法强化石 1
SET G1 魔法强化石
SAVEVAR G1 ..\QuestDiary\分解变量.txt
GOTO @分解成功
#ELSE
// 无附加极品属性,提示失败
GOTO @分解失败
BREAK

// 多属性装备分步分解(可选,适配双属性极品)
[@多属性分解]
#ACT
SETLOCALITEM 0
GETITEMADDVALUE 0 1 2 G2
GETITEMADDVALUE 0 1 3 G3
#IF
large G2 0 AND large G3 0
#ACT
SETITEMADDVALUE 0 1 2 0
GIVE 攻击强化石 1
SET G1 攻击强化石
SENDMSG 7 已分解攻击附加属性,剩余魔法附加属性可继续分解! 250
SAVEVAR G1 ..\QuestDiary\分解变量.txt
GOTO @提交装备
#ELSE
GOTO @检测属性
BREAK

3. 关键命令解析(适配1.76 HERO引擎)

LINKPICKUPITEM:关联玩家提交的装备,确保脚本精准操作目标物品,为属性检测奠定基础;SETLOCALITEM 0:锁定关联的装备对象,避免操作其他物品。

GETITEMADDVALUE:核心属性检测命令,参数格式为“GETITEMADDVALUE 装备位置 属性类型 属性位置 变量”,1.76版本中type=1对应基础附加属性,position=2=攻击、3=魔法、4=道术。

SETITEMADDVALUE:清除装备附加属性,将对应属性数值设为0,保留装备基础属性与外观,实现“去极品留本体”效果;GIVE命令发放强化石,需与物品数据库名称完全一致。

三、变量初始化与脚本生效设置

1. 变量初始化

在服务端QuestDiary文件夹新建“分解变量.txt”,写入以下内容,避免属性检测时变量冲突:

G1= // 存储分解获得物品名称
G2=0 // 存储附加攻击数值
G3=0 // 存储附加魔法数值
G4=0 // 分解标记,0=未分解,1=分解中

2. 脚本生效步骤

1. 保存所有文件修改,将“分解变量.txt”放入QuestDiary文件夹;2. 重启传奇服务端,在控制台输入“reloadscript”重载脚本,确保属性检测命令生效;3. 登录游戏,在土城安全区找到“小极品分解师”,提交攻击+2装备测试,确认获得攻击强化石且装备保留;4. 测试魔法+3紫碧螺,验证分解后留存基础紫碧螺并生成魔法强化石。

四、1.76版本专属适配优化

1. 适配小极品属性规则

1.76版本小极品属性上限为+3,脚本中无需设置数值限制,仅检测是否大于0即可分解;若需限制最低分解数值(如+2及以上才可分解),可将“large G2 0”改为“large G2 1”,适配不同需求。

2. 补充道术属性分解(道士适配)

1.76版本道士装备附加道术属性,可在@检测属性脚本中补充道术检测逻辑,添加以下代码:

#ELSEIF
large G4 0 // G4存储附加道术数值(position=4)
#ACT
SETITEMADDVALUE 0 1 4 0
GIVE 道术强化石 1
SET G1 道术强化石
SAVEVAR G1 ..\QuestDiary\分解变量.txt
GOTO @分解成功

3. 防重复分解与背包检测

在@提交装备脚本中补充背包空格检测,避免分解后物品无法存放:

#IF
CHECKBAGSPACE < 2 // 需预留1格放强化石,1格放返还装备
#ACT
SENDMSG 7 背包空格不足2格,请清理后再分解! 250
GOTO @main
#ELSEACT
LINKPICKUPITEM

五、常见问题排查(1.76版本专属)

1. 属性检测无反应

检查QFunction-0.txt文件编码是否为ANSI,1.76版本脚本仅支持此编码;确认GETITEMADDVALUE命令参数正确,无多余空格,部分HERO引擎版本需替换为“GetNewItemAddValue 0 2 G2”,适配属性读取规则。

2. 分解后装备消失

核心原因是未添加SETLOCALITEM 0命令,导致脚本误删除基础装备,补充该命令后重启服务端即可;同时检查物品数据库,确保基础装备(如紫碧螺)未设置“丢弃消失”属性。

3. 强化石无法生成

确认物品数据库中强化石名称与脚本中GIVE命令一致,无错别字;检查背包是否有足够空格,补充背包检测脚本后可解决该问题;若仍无效,替换GIVE命令为“giveitem 攻击强化石 1”,适配部分旧版HERO引擎。

六、实操补充要点

1. 分解前提醒玩家备份重要极品装备,避免误操作导致属性丢失;2. 可在NPC对话中添加属性预览功能,通过GETITEMADDVALUE命令显示装备附加属性,方便玩家确认;3. 1.76版本部分特殊装备(如屠龙、裁决)附加属性不可分解,可在脚本中添加装备名称检测,跳过此类装备;4. 若需设置分解消耗(如金币),在@检测属性脚本#ACT段添加“take 金币 10000”,扣除对应金币后再执行分解。

综上,按上述脚本配置后,可实现1.76传奇小极品装备精准分解,完美匹配“去属性留本体、属性对应强化石”需求,适配三职业装备,脚本逻辑闭环,贴合复古版本特性,稳定性适配HERO引擎。