当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

传奇地图禁带宠物脚本触发方法皇宫杀宠脚本实操

热度:
一、核心触发逻辑:地图进入即清除宠物

脚本核心依赖地图进入事件触发,通过命令强制清除玩家携带的宠物(含道士召唤兽、英雄宝宝等),同时可限制进入后无法召唤宠物。适配主流HERO、3K、GOM引擎,皇宫地图需先确认地图编号(默认皇宫地图编号为3,可通过MapInfo.txt文件核对),脚本文件统一放在服务器Envir目录下,无需修改客户端文件。

触发优先级:地图进入触发>NPC对话触发,皇宫场景优先采用进入触发,确保玩家踏入地图瞬间清除宠物,避免宠物跟随进入引发异常,同时搭配后续限制召唤脚本,形成完整禁宠机制。

二、通用杀宠脚本(适配所有引擎,皇宫专用)

1.地图进入自动杀宠脚本(核心脚本)

脚本路径:D:\Mirserver\Mir200\Envir\MapQuest_def\QManage.txt(全局触发脚本文件),添加以下代码实现踏入皇宫自动清除宠物,无需额外触发条件。

代码示例:

(@OnEnterMap3)

#IF

IsOnMap3//3为皇宫地图编号,需按实际编号修改

#ACT

KillPet//清除玩家自身召唤的宠物(道士骷髅、神兽等)

KillHero//清除英雄宝宝,无英雄系统可删除此句

SendMsg5进入皇宫禁止携带宠物,已自动清除!//发送系统提示

SetPetBan13//在编号3的地图禁止召唤宠物,持续生效

#ELSEACT

SetPetBan0//离开皇宫地图后解除召唤限制

补充说明:代码中@OnEnterMap后数字需与皇宫地图编号一致,若皇宫地图编号为其他数值(如100),则改为@OnEnterMap100,MapInfo.txt文件可查询所有地图编号及对应名称。

2.防绕过补充脚本(禁止召唤+宠物拦截)

为避免玩家进入后通过技能重新召唤宠物,在QManage.txt文件添加定时器脚本,持续检测皇宫内宠物并清除,同时屏蔽召唤技能生效。

代码示例:

(@OnTimer9)

#IF

IsOnMap3

CheckPetExist//检测是否存在宠物

#ACT

KillPet

KillHero

SendMsg5皇宫内禁止召唤宠物,已强制清除!

SetTimer92000//每2秒检测一次,循环执行

//同时在技能数据库禁止皇宫内召唤技能生效,路径:D:\Mirserver\Mir200\Envir\Skill.txt

//找到召唤骷髅、召唤神兽等技能,添加条件:!IsOnMap3

操作:技能参数后补充“!IsOnMap3”,表示在地图3(皇宫)内无法释放该技能,从源头阻止召唤。

三、分引擎适配脚本(解决兼容问题)

1.HERO/3K引擎专属优化

此类引擎支持KillPetEx命令,可精准清除所有类型宠物,包括自定义召唤物,补充脚本如下,替换通用脚本中#ACT部分内容:

#ACT

KillPetEx0//0表示清除所有宠物类型,1为仅清除自身召唤物

BanSkill1113//11为召唤神兽技能ID,禁止在地图3生效,持续1分钟

BanSkill1213//12为召唤骷髅技能ID,按实际技能ID修改

提示:技能ID可在Skill.txt文件中查询,每个技能对应唯一ID,BanSkill命令可临时屏蔽技能,避免永久修改影响其他地图使用。

2.GOM引擎专属调整

GOM引擎需使用DelPet命令替代KillPet,同时通过MapConfig.txt文件设置地图属性,脚本与配置结合实现禁宠:

1.QManage.txt添加脚本:

(@OnEnterMap3)

#IF

IsOnMap3

#ACT

DelPet//GOM引擎清除宠物命令

SendMsg5皇宫内禁止携带宠物,违规宠物已清除!

2.地图配置修改:打开D:\Mirserver\Mir200\Envir\MapConfig.txt,找到皇宫地图编号,添加“PetBan=1”,设置该地图为禁止宠物进入模式,双重保障。

四、脚本部署与测试步骤

1.备份原文件:修改QManage.txt、Skill.txt前,复制文件备份,避免脚本错误导致服务器异常,备份文件命名为“文件名_备份”。

2.填写正确参数:核对皇宫地图编号、技能ID,确保与服务器实际配置一致,地图编号错误会导致脚本无法触发,技能ID错误则无法屏蔽召唤。

3.重启服务器:脚本修改后需重启传奇服务器,使配置生效,部分引擎支持热重载,但为确保稳定性,优先重启服务器。

4.测试验证:用道士角色携带宠物进入皇宫,查看是否自动清除,尝试召唤宠物是否失效;切换有英雄的角色测试,确认英雄宝宝也被清除,无遗漏场景。

五、常见问题排查(脚本失效/异常解决)

1.脚本不触发:优先核对地图编号是否正确,MapInfo.txt中确认皇宫对应编号;检查QManage.txt文件格式,确保代码行首无空格,符号为英文半角,中文符号会导致脚本失效。

2.宠物清除不彻底:补充KillHero、DelPet命令,部分引擎KillPet仅清除自身召唤物,无法清除英雄宝宝,需多命令组合使用。

3.其他地图无法召唤:检查SetPetBan、BanSkill命令是否添加地图限制,避免未指定地图导致全局禁宠,确保命令后携带正确地图编号。

4.引擎报错:删除新增脚本后重启服务器,逐步添加代码排查错误行;GOM引擎需确认DelPet命令是否支持,旧版GOM可能需升级引擎核心文件。

六、拓展场景:NPC触发式杀宠脚本(备呀案)

若无需自动触发,可在皇宫门口设置NPC,玩家对话后清除宠物方可进入,脚本路径:D:\Mirserver\Mir200\Envir\NPCs\,新建NPC文件(如皇宫守卫.txt),代码如下:

[@Main]

#IF

CheckPetExist

#ACT

KillPet

KillHero

SendMsg5已为你清除宠物,可进入皇宫!

MapMove3330350//传送至皇宫内坐标

#ELSEACT

SendMsg5你未携带宠物,可直接进入!

MapMove3330350

适用场景:需人工验证的场景,搭配NPC对话提升交互感,坐标需按皇宫实际传送点修改,确保玩家传送至安全区域。
[顶部]