在Hero内挂版里做终极锻造NPC,文件放Mir200\Envir\Market_Def,交易型NPC走merchant.txt,脚本文件名和NPC名对应;对话型NPC走npcs.txt并放npc_def,改完通常重启M2,交易型可用@reloadnpc热载。 文本全部ANSI保存,中文用记事本另存为ANSI,避免UTF-8导致乱码、标签读不到。
一、merchant.txt注册
Market_Def同级配置在Mir200\Envir\merchant.txt,行格式按所用Hero版本写,常见:
终极锻造师 3 330 330 终极锻造师 0 8 0 0 1 1
字段含义按本服merchant说明核对,通常包含NPC名、地图号、X、Y、脚本文件名(不带.txt)、范围、图标、是否交易、刷新参数。地图号写土城或盟重安全区,坐标取无人站位。脚本文件建Market_Def\终极锻造师.txt,首标签[@main]。
二、主菜单与配方展示
[@main]
终极装备锻造中心\ \
1. 魂之面具锻造 /@forge_mask\ \
2. 皇者指环锻造 /@forge_ring\ \
3. 火龙神剑进阶 /@forge_dragon\ \
4. 查看锻造规则 /@forge_help\ \
[@forge_help]
IF
SAY
终极锻造成功消耗主材、辅材、金币、声望、活跃\ \
失败按规则扣材或不扣,具体看每个配方\ \
内挂自动拾取可在ItemFilter.Itm把锻造材料设自动入包\ \
菜单只做跳转,不要把数值写死在#SAY里;税率、声望、活跃、金币标准改在对应执行段,避免以后调参数还要改说明。
三、材料检测与硬性条件
Hero检测物品用CHECKITEM 物品名 数量,检测金币用CHECKGOLD 数值或CHECK金相关命令,检测元宝用CHECKGAMEGOLD,声望用CHECKCREDITPOINT,活跃/点券/游戏点按本服变量名检测。参考内挂版魂装样例,多材料+多货币这样写:
[@forge_mask]
IF
CHECKITEM 圣灵啸天盔 1
CHECKITEM 火云至尊盔 1
CHECKITEM 逍遥清风盔 1
CHECKITEM 神灵石 10
CHECKITEM 经验[一百万] 2
CHECKCREDITPOINT >999
CHECKGOLD 20000000
CHECKGAMEPOINT >19999
ACT
GIVE 魂之面具 1
SENDMSG 6 炼造神装成功,获得魂之面具
ELSEACT
SAY
需要圣灵啸天盔、火云至尊盔、逍遥清风盔各1,神灵石10,经验[一百万]2\ \
声望1000,活跃20000,金币2000万\ \
上面是先发成品再提示的简化版;正式服必须把扣材放#ACT,且建议先扣后发,防止并发重复发装。改成交互扣除:
[@forge_mask_ok]
IF
CHECKITEM 圣灵啸天盔 1
CHECKITEM 火云至尊盔 1
CHECKITEM 逍遥清风盔 1
CHECKITEM 神灵石 10
CHECKITEM 经验[一百万] 2
CHECKCREDITPOINT >999
CHECKGOLD 20000000
CHECKGAMEPOINT >19999
ACT
TAKE 圣灵啸天盔 1
TAKE 火云至尊盔 1
TAKE 逍遥清风盔 1
TAKE 神灵石 10
TAKE 经验[一百万] 2
CREDITPOINT -1000
TAKE 金币 20000000
GAMEPOINT -20000
GIVE 魂之面具 1
SENDMSG 6 炼造成功:魂之面具已入包
ELSEACT
SAY
材料或货币不足,请核对圣灵/火云/逍遥三盔、神灵石、经验卷、声望、活跃、金币\ \
声望、活跃命令名随Hero小版本不同,老版可能用CREDITPOINT、GAMEPOINT,新版若改自定义变量就换成CALCVAR HUMAN或CHECKVAR HUMAN再减。所有货币命令以本服M2命令表为准,不要混用GOM的GAMEGOLD +写法。
四、概率成功失败处理
纯必成不适合终极产线,用RANDOM做概率。Hero里RANDOM 2可作二分概率,复杂区间用RANDOM 100再比较。基础合成材料不足、成功、失败三段结构可套用:
[@forge_dragon]
IF
CHECKITEM 霸天鬼斩 5
CHECKGAMEGOLD >199
ACT
TAKE 霸天鬼斩 5
GAMEGOLD -200
RANDOM 2
IF
CHECKITEM 火龙神剑 0
ACT
GIVE 火龙神剑 1
SENDMSG 6 火龙神剑锻造成功
GOTO @forge_dragon
ELSEACT
SAY
霸天鬼斩5把+200元宝可锻火龙神剑,概率成功\ \
上面RANDOM 2仅为示例,按成品价值改RANDOM 100并用small/large判断区间\ \
更稳的写法是先判材料,再随机,再分成功失败分别扣材:
[@forge_dragon_run]
IF
CHECKITEM 霸天鬼斩 5
CHECKGAMEGOLD >199
ACT
TAKE 霸天鬼斩 5
GAMEGOLD -200
RANDOM 100
IF
SMALL D0 50
ACT
GIVE 火龙神剑 1
SENDMSG 6 锻造成功,获得火龙神剑
GOTO @forge_dragon
ELSEACT
SAY
锻造失败,材料已消耗;若需保底请放入保底符后走单独标签\ \
若D0不是RANDOM返回值,按本服随机变量规则改;部分Hero用RANDOM后直接接#IF RANDOM 50成功、#ELSEACT失败更简单。失败返还策略三种:全扣、扣主材留辅材、用保底符全返。终极武器建议失败只扣辅材、返还主材,避免玩家流失;普通终极散件可全扣提高稀缺度。
五、皇者指环完整示例
[@forge_ring]
IF
CHECKITEM 圣灵啸天戒 1
CHECKITEM 火云至尊戒 1
CHECKITEM 逍遥清风戒 1
CHECKITEM 神灵石 10
CHECKITEM 经验[一百万] 2
CHECKCREDITPOINT >999
CHECKGOLD 20000000
CHECKGAMEPOINT >19999
ACT
TAKE 圣灵啸天戒 1
TAKE 火云至尊戒 1
TAKE 逍遥清风戒 1
TAKE 神灵石 10
TAKE 经验[一百万] 2
CREDITPOINT -1000
TAKE 金币 20000000
GAMEPOINT -20000
GIVE 皇者指环 1
SENDMSG 6 炼造成功:皇者指环,攻魔道60-100
ELSEACT
SAY
圣灵/火云/逍遥三戒各1,神灵石10,经验[一百万]2,声望1000,活跃20000,金币2000万\ \
攻魔道60-100这种数值不在NPC脚本里写,改在StdItems.db把皇者指环的攻击、魔法、道术上下限配好;NPC只负责发物品。若要做“基础皇者指环+后期注入属性”,NPC发基础装,再用属性段加附加值。
六、锻造后注入新属性
Hero专用登录器支持SetNewItemValue给位置装备写新属性,格式示例:
SetNewItemValue 位置(0-12) 属性(0-5) 操作符(+,-,=) 值
属性示例0致命一击、1攻击伤害增加、2物理伤害减少、3魔法伤害减少、4攻击伤害反弹、5人物体质增加。 给武器位置1加5点攻击伤害增加:
[@add_weapon_new]
IF
CHECKUSEITEM 1
CHECKITEM 强化精华 1
CHECKGOLD 10000
ACT
TAKE 强化精华 1
TAKE 金币 10000
SetNewItemValue 1 1 +5
SENDMSG 6 武器已注入攻击伤害增加5点
ELSEACT
SAY
需身穿武器并携带强化精华1、金币1万\ \
CHECKUSEITEM 1检测身上武器位是否有装;若玩家背包装武器不穿,先引导穿装再注入。新属性依赖专用登录器,未用对应内挂/专用端可能不显示,发布前在客户端实际穿装看属性面板。
七、绑定与防刷
终极装直接GIVE可被小号反复建号薅材料,加三层限制:
1. 等级限制:#IF CHECKLEVELEX >60,低于等级不进锻造。
2. 次数限制:用个人变量记录,HUMAN FORGE_MASK 0先声明,锻造后CALCVAR HUMAN FORGE_MASK +1,再次进入#IF CHECKVAR HUMAN FORGE_MASK <1才允许;全服限总量用G变量,G10控制已锻总数,LARGE后关闭菜单。
3. 绑定发放:Hero绑定物品命令按版本用GiveBind、TakeBind或数据库Bind字段;若StdItems设拾取绑定/获得绑定,GIVE后自动绑定。未支持绑定命令就不要把高价值成品做无冷却多次锻。
冷却示例:
[@forge_mask]
IF
CHECKVAR HUMAN MASK_CD >0
ACT
SAY
魂之面具锻造冷却中,请稍后\ \
ELSEACT
IF
(材料条件)
ACT
(扣材发装)
MOV HUMAN MASK_CD 1
(用Timer或每日0点脚本清0)
变量名和Timer清CD按本服机器人或QuestDiary写,别只靠NPC标签判断,重登后内存变量会丢,重要次数用HUMAN保存并放在人物数据文件。
八、内挂版联动配置
Hero新内挂在M2选项-功能设置-专用登录器-内挂设置开启;内挂物品过滤文件ItemFilter.Itm每行“物品名 类型 极品提示 自动拣取 显示名字”,把神灵石、经验[一百万]、霸天鬼斩、各类终极坯子设自动入包,玩家打材料后直接找NPC锻,减少手动整理。 默认内挂配置放HERO_Config,把调好的人物.Itm改名为Default.Itm随登录器发,首次进游戏自动套用过滤;已建人物同名.Itm优先,不改老号。
内挂只做自动捡、自动用药、自动回城,不写自动找NPC锻造;NPC锻造必须人工点击或用机器人条件触发,避免脚本外挂性质。若要做“材料够自动提示”,NPC不加自动提交,只在主菜单用#IF CHECKITEM判断并高亮可锻项。
九、完整可改模板
Market_Def\终极锻造师.txt
[@main]
终极锻造师\ \
1. 魂之面具(三盔+神灵石+经验卷) /@forge_mask\ \
2. 皇者指环(三戒+神灵石+经验卷) /@forge_ring\ \
3. 火龙神剑(霸天鬼斩5+元宝,概率) /@forge_dragon\ \
4. 武器新属性注入(强化精华) /@add_weapon_new\ \
[@forge_mask]
IF
CHECKLEVELEX >60
CHECKITEM 圣灵啸天盔 1
CHECKITEM 火云至尊盔 1
CHECKITEM 逍遥清风盔 1
CHECKITEM 神灵石 10
CHECKITEM 经验[一百万] 2
CHECKCREDITPOINT >999
CHECKGOLD 20000000
CHECKGAMEPOINT >19999
ACT
TAKE 圣灵啸天盔 1
TAKE 火云至尊盔 1
TAKE 逍遥清风盔 1
TAKE 神灵石 10
TAKE 经验[一百万] 2
CREDITPOINT -1000
TAKE 金币 20000000
GAMEPOINT -20000
GIVE 魂之面具 1
SENDMSG 6 魂之面具锻造完成
GOTO @main
ELSEACT
SAY
60级起,三盔各1、神灵石10、经验[一百万]2、声望1000、活跃20000、金币2000万\ \
GOTO @main
[@forge_ring]
IF
CHECKLEVELEX >60
CHECKITEM 圣灵啸天戒 1
CHECKITEM 火云至尊戒 1
CHECKITEM 逍遥清风戒 1
CHECKITEM 神灵石 10
CHECKITEM 经验[一百万] 2
CHECKCREDITPOINT >999
CHECKGOLD 20000000
CHECKGAMEPOINT >19999
ACT
TAKE 圣灵啸天戒 1
TAKE 火云至尊戒 1
TAKE 逍遥清风戒 1
TAKE 神灵石 10
TAKE 经验[一百万] 2
CREDITPOINT -1000
TAKE 金币 20000000
GAMEPOINT -20000
GIVE 皇者指环 1
SENDMSG 6 皇者指环锻造完成
GOTO @main
ELSEACT
SAY
60级起,三戒各1、神灵石10、经验[一百万]2、声望1000、活跃20000、金币2000万\ \
GOTO @main
[@forge_dragon]
IF
CHECKLEVELEX >60
CHECKITEM 霸天鬼斩 5
CHECKGAMEGOLD >199
ACT
TAKE 霸天鬼斩 5
GAMEGOLD -200
RANDOM 2
IF
CHECKITEM 火龙神剑 0
ACT
GIVE 火龙神剑 1
SENDMSG 6 火龙神剑锻造成功
GOTO @main
ELSEACT
SAY
霸天鬼斩5+200元宝,RANDOM 2示例概率;按版本改RANDOM 100并设成功区间\ \
GOTO @main
[@add_weapon_new]
IF
CHECKLEVELEX >60
CHECKUSEITEM 1
CHECKITEM 强化精华 1
CHECKGOLD 10000
ACT
TAKE 强化精华 1
TAKE 金币 10000
SetNewItemValue 1 1 +5
SENDMSG 6 武器注入攻击伤害增加5
GOTO @main
ELSEACT
SAY
需身穿武器,携带强化精华1、金币1万;新属性需专用登录器\ \
GOTO @main
RANDOM 2仅示例,正式服把火龙段改成先ROLL再判断:材料足就TAKE,再RANDOM 100,SMALL比较成功阈值发装,否则按失败规则处理;不用CHECKITEM 火龙神剑 0反查背包,直接发成品更清晰。
十、排错顺序
NPC点开空白:看merchant路径、脚本名、[@main]是否存在,文件是否ANSI,M2是否重载。
材料够了不扣:命令写成CHECKITEM但没TAKE,或TAKE物品名和数据库StdItems名字不完全一致,包括空格、括号、全半角。
声望活跃不扣:CREDITPOINT、GAMEPOINT在本服被改名,查M2命令别名;用变量体系就改CHECKVAR/CALCVAR。
发装后属性不显示:StdItems数值配错,或新属性没用专用登录器/SetNewItemValue位置错;武器位置一般是1,衣服0,戒指2/3按引擎。
概率总是成功/失败:RANDOM写法错,RANDOM 2和RANDOM 100不要混用;用区间判断就统一用RANDOM 100加SMALL/LARGE。
内挂捡了材料仍不锻:ItemFilter.Itm类型填错导致不自动入包,或玩家包满、材料名和过滤名不一致。
多小号刷:加CHECKVAR次数、CHECKLEVELEX、冷却Timer、G全局产量上限,重要数据用HUMAN持久化。
按上面分材料检测、货币检测、等级/次数检测、扣材、随机、发装、属性注入、内挂过滤八步写,Hero内挂版终极锻造可做到不卡对话、不重复发装、不因为编码或命令名差异整段失效。
传奇Hero引擎内挂版终极装备锻造NPC全套脚本材料校验概率成功失败属性注入防刷教程
来源:
作者:
点击:

