HERO清红名核心用CHANGEPKPOINT改PK点,检测用CHECKPKPOINT,声望清红用CHECKCREDITPOINT和CREDITPOINT,元宝清红用CHECKGAMEGOLD和GAMEGOLD,金币清红用CHECKGOULD和TAKE金币。PK点单位先在本服用红名玩家实测,CHECKPKPOINT后面数字和实际PK值换算按M2命令表核定,不要直接套用其他版本的倍数。
一、NPC手动洗红基础版
Market_Def新建清红名使者.txt,脚本如下。按PK点分档,低红用金币、中红用元宝按比例、高红直接清零或大额降。
[@main]
清红名服务\ \
金币清洗少量PK/@goldclear\ \
元宝清洗中量PK/@gamegoldclear\ \
声望清洗/@creditclear\ \
直接全部清零/@fullclear\ \
[@goldclear]
IF
CHECKPKPOINT 1
ACT
CHECKGOULD > 100000
TAKE 金币 100000
CHANGEPKPOINT - 100
SENDMSG 6 消耗10万金币清除100点PK值
ELSEACT
SENDMSG 6 金币不足或当前PK值过低,无法金币清洗
[@gamegoldclear]
IF
CHECKPKPOINT 1
ACT
CHECKGAMEGOLD > 5
GAMEGOLD - 5
CHANGEPKPOINT - 500
SENDMSG 6 消耗5元宝清除500点PK值
ELSEACT
SENDMSG 6 元宝不足或PK值过低,无法元宝清洗
[@creditclear]
IF
CHECKPKPOINT 1
ACT
CHECKCREDITPOINT > 3
CREDITPOINT - 3
CHANGEPKPOINT - 100
SENDMSG 6 消耗3点声望清除100点PK值
ELSEACT
SENDMSG 6 声望不足或PK值过低,无法声望清洗
[@fullclear]
IF
CHECKPKPOINT 1
ACT
CHECKGAMEGOLD > 20
GAMEGOLD - 20
CHANGEPKPOINT = 0
SENDMSG 6 消耗20元宝直接清零全部PK值,红名已洗白
ELSEACT
SENDMSG 6 元宝不足,无法执行全清红名
CHECKPKPOINT 1只做是否红名判断;若本服红名阈值不同,用CHECKPKPOINT按实际档位写多个段。CHANGEPKPOINT = 0直接归白名,减号按点数下减,加号增加PK。
二、按PK档自动选清洗方式
红名越高扣费越高,避免低费洗全红。先测本服CHECKPKPOINT参数,假设1对应低红、3对应中红、12对应超高红,仅示例,实际按命令表换数字。
[@main]
红名智能清洗\ \
开始智能判定清洗/@autoclear\ \
[@autoclear]
IF
CHECKPKPOINT 12
ACT
GOTO @superclear
IF
CHECKPKPOINT 3
ACT
GOTO @midclear
IF
CHECKPKPOINT 1
ACT
GOTO @lowclear
ELSEACT
SENDMSG 6 你当前不是红名,无需清洗
[@superclear]
IF
CHECKGAMEGOLD > 50
ACT
GAMEGOLD - 50
CHANGEPKPOINT = 0
SENDMSG 6 超高红名已用50元宝强制清零
ELSEACT
SENDMSG 6 元宝不足50,无法强制清超高红名
[@midclear]
IF
CHECKGAMEGOLD > 10
ACT
GAMEGOLD - 10
CHANGEPKPOINT - 500
SENDMSG 6 中红名已用10元宝降低500点PK
ELSEACT
SENDMSG 6 元宝不足10,可改用金币清洗或积累元宝
[@lowclear]
IF
CHECKGOULD > 50000
ACT
TAKE 金币 50000
CHANGEPKPOINT - 100
SENDMSG 6 低红名已用5万金币降低100点PK
ELSEACT
SENDMSG 6 金币不足5万,无法低档清洗
多层#IF连续写,HERO按从上到下匹配;命中GOTO后不再跑后面。若引擎不支持同一段多个独立#IF顺序执行,拆成主菜单三个按钮分别进低中高段更稳。
三、在线安全区自动降红
玩家站在安全区时按周期自动减PK,不点NPC也能慢慢洗白。放QFunction-0,用进入安全区或定时触发;HERO安全区条件按本服命令名核对,示例用通用InSafeZone思路,若命令名不同替换为CHECKSAFE或M2安全区宏。
QFunction-0.txt增加:
[@SafeZoneAutoClearPK]
IF
InSafeZone
CHECKPKPOINT 1
ACT
CHANGEPKPOINT - 50
SENDMSG 6 安全区在线自动清除50点PK值,停留继续降低
ELSEACT
SENDMSG 7 当前不在安全区或无红名,不触发自动清红
进入安全区触发标签名按所用HERO版本改,例如[@IntoSafe]、[@InSafeZone]或地图QF段;若只做机器人全服扫描,不依赖进入事件,用下面Robot方案。
自动降红别每次进安全区都减太多,避免玩家反复进出刷白名。配合M2安全区停留规则,进图只减一次可用自定义HUMAN变量记录本次进安全区已洗,离开再进才再次洗。
[@SafeZoneOnce]
IF
InSafeZone
CHECKPKPOINT 1
CHECKVAR HUMAN 安全区洗红标记 < 1
ACT
CHANGEPKPOINT - 100
CALCVAR HUMAN 安全区洗红标记 = 1
SENDMSG 6 本次进入安全区已自动降100点PK
ELSEACT
SENDMSG 7 无红名或本次进入已自动清洗
离开安全区在QF对应段把标记归0,重新进入再洗。
四、Robot定时全服降红
HERO机器人走Envir\Robot.txt和Envir\Robot_def。配置定时执行,对所有触发角色降红,适合挂机红名缓慢恢复。
Robot.txt:
AutoRunRobot
AutoRun NPC SEC 60 @AutoClearRedPK
Robot_def\AutoClearRedPK.txt:
[@AutoClearRedPK]
IF
CHECKPKPOINT 1
ACT
CHANGEPKPOINT - 30
SENDMSG 6 系统每分钟为在线红名降低30点PK值
ELSEACT
SENDMSG 7 你当前无PK值,不执行自动清红
SEC 60表示每60秒一次;红名不多改MIN 10按十分钟降一次。机器人是对当前执行对象生效,若需要全在线逐个处理,按HERO机器人遍历配置写,不用人写循环踢人。机器人只降不清零,避免红名惩罚失效;想每天零点归零另写DAY或HOUR任务,执行CHANGEPKPOINT = 0前先确认只针对自愿参与活动者,不要全服强制白名。
五、会员免费洗红
用会员命令或会员名单判断。HERO会员命令以本服M2为准,示例用名单法最通用。
建立Envir\会员洗红名单.txt,空文件。NPC段:
[@vipclear]
IF
CHECKPKPOINT 1
ACT
checknamelist ..\Envir\会员洗红名单.txt
CHANGEPKPOINT = 0
SENDMSG 6 会员免费清红,PK值已归零
ELSEACT
SENDMSG 6 你不在会员洗红名单,使用元宝或金币清洗
IF
CHECKPKPOINT 1
ACT
CHECKGAMEGOLD > 10
GAMEGOLD - 10
CHANGEPKPOINT - 500
SENDMSG 6 非会员消耗10元宝降低500点PK
ELSEACT
SENDMSG 6 非会员元宝不足,可改用金币清洗
会员用CheckMember、CheckVip或自定义变量也行;名单法不依赖会员系统命令,换引擎最稳。新加会员用addnamelist写名,取消会员用delnamelist。
六、道具洗红
给红名洗剂、清心丹,使用道具触发QF。QFunction-0写:
[@StdModeFuncXX]
IF
CHECKPKPOINT 1
ACT
CHANGEPKPOINT - 200
SENDMSG 6 使用清心丹降低200点PK值
ELSEACT
SENDMSG 6 当前无红名,无需使用清心丹
StdModeFunc后编号按道具StdMode和引擎触发号配置;若用普通使用物品触发,在QF物品使用段按物品名检测,CHECKITEM后TAKE道具再CHANGEPKPOINT。批量洗剂可设小丹降100、大丹降500、至尊丹清零,分别绑定不同StdMode或使用脚本。
七、英雄红名扩展
HERO英雄红名用英雄PK命令,命令名以本服手册为准。参考其他引擎写法可替换为CHECKHEROPKPOINT、CHANGEHEROPKPOINT。
[@heroclear]
IF
CHECKHEROONLINE
ACT
CHECKHEROPKPOINT 1
CHANGEHEROPKPOINT - 200
SENDMSG 6 英雄红名已降低200点PK
ELSEACT
SENDMSG 6 英雄不在线或无红名,不执行清洗
英雄全清:
[@herofullclear]
IF
CHECKHEROONLINE
ACT
CHECKHEROPKPOINT 1
CHANGEHEROPKPOINT = 0
SENDMSG 6 英雄PK值已清零
ELSEACT
SENDMSG 6 英雄不在线,无法清红
若所用HERO英雄命令名不同,在M2命令列表搜Hero PK、英雄红名、ChangeHeroPKPoint,替换后再上线。
八、红名进地图限制与清红联动
红名禁止进某些图,清红后才能进。NPC传送前检测:
[@entermap]
IF
CHECKPKPOINT 1
ACT
SENDMSG 6 你处于红名状态,先清洗PK再进入该地图
ELSEACT
MAPMOVE 地图编号 坐标X 坐标Y
SENDMSG 6 已传送进入目标地图
自动清红后再次点进入,CHECKPKPOINT不达标即通过。若PK点单位特殊,用CHECKPKPOINT具体档位判断,例如中红以上禁止、轻红可进。
九、常用排错
点NPC不洗红:CHECKPKPOINT参数和本服PK单位不匹配,先用红名小号打不同档位测试;命令不识别就查M2命令列表,HERO支持CHANGEPKPOINT加减等于。
洗完仍红:CHANGEPKPOINT减点小于当前PK,或机器人周期太长;手动全清用=0,自动降红调大每次减量或缩短Robot间隔。
金币元宝不扣:CHECKGOULD/TAKE金币、CHECKGAMEGOLD/GAMEGOLD命令名拼错;HERO元宝变量可能是GAMEGOLD,也可能是其他点券变量,按M2实际改。
声望洗红无效:CHECKCREDITPOINT和CREDITPOINT命令未开声望系统;不用声望就删声望段,只保留元宝金币。
安全区自动洗重复刷:进入事件每次触发都减,加HUMAN洗红标记,离开安全区清标记;或用Robot按分钟统一降,不绑进入事件。
机器人不执行:Robot.txt未开AutoRunRobot,Robot_def文件名和段名不一致,M2未重载机器人;改完在M2重载Robot,用SENDMSG测试空段先跑通再加速度清红。
会员白名单冲突:checknamelist路径错误会导致始终非会员;名单放Envir根或QuestDiary根要和下文路径一致,NPC加名、删名用addnamelist/delnamelist。
英雄不洗:CHECKHEROONLINE不通或英雄PK命令名错误;先手动召英雄、制造英雄红名,单句CHANGEHEROPKPOINT = 0测试,再嵌进NPC。
按NPC分档洗、安全区自动降、Robot定时降、会员名单免单、道具使用洗、英雄独立清六块组合,HERO在线清红可覆盖手动和挂机全场景。PK单位、元宝变量、安全区命令以本机M2命令表为准,先用一个红名小号逐段测CHECKPKPOINT档位再放量。
传奇HERO引擎在线清除红名脚本NPC洗红安全区自动降PK值机器人定时清红完整教程
来源:
作者:
点击:

