在传奇服务端中,限制特定地图内使用宠物(包括英雄、召唤兽、虎卫等)需通过地图进入事件检测角色状态,并强制收回或阻止进入。该功能依赖QFunction脚本系统,在玩家踏入地图瞬间触发判断逻辑。
一、确定目标地图编号
首先明确需限制的地图编号,例如“封魔谷”对应地图号201。该编号用于命名脚本文件及条件判断。
二、创建地图专属脚本文件
进入服务端目录Mir200EnvirQuestDiary,新建以地图编号命名的文本文件,如201.txt。所有限制逻辑必须写入此文件。
三、添加地图进入检测事件
在201.txt中编写角色进入时的处理流程:
[@MapEnter]
IF
CHECKHERO
ACT
SENDMSG0该地图禁止携带英雄,请先收回。
MAPMOVE001100100
BREAK
IF
CHECKPET
ACT
SENDMSG0该地图禁止携带宠物,请先收回。
MAPMOVE001100100
CHECKHERO检测是否拥有已召唤英雄,CHECKPET检测是否存在召唤类宠物(如虎卫、月灵)。任一条件成立即传送回城并中断后续操作。
四、支持自定义宠物类型检测
若需针对特定宠物(如“狐月”),可通过物品或技能判断。例如:
IF
HAVEBUFF1001
ACT
SENDMSG0禁止携带狐月进入。
MAPMOVE001100100
其中1001为狐月对应的Buff编号,需根据实际Skill.txt配置调整。
五、防止反复尝试进入
为避免玩家连续踏入,可设置冷却变量:
IF
EQUALA01
ACT
SENDMSG0冷却中,稍后再试。
MAPMOVE001100100
BREAK
ELSE
SETA01
TIMER5000@ResetCD
[@ResetCD]
ACT
SETA00
利用A0变量标记5秒内禁止再次进入。
六、全局脚本联动(可选)
若多个地图需统一限制,可在Human.txt中集中处理:
[@MapEnter_201]
[@MapEnter_202]
[@MapEnter_300]
CALL[QuestDiaryPetRestrict.txt]
将通用逻辑写入PetRestrict.txt,通过#CALL复用代码。
七、测试验证步骤
启动服务端,召唤英雄或宠物;
尝试进入地图201;
观察是否被自动传送并收到提示;
检查未携带宠物时能否正常进入。
若无效,确认:
脚本文件名与地图编号完全匹配;
CHECKHERO/CHECKPET指令被当前引擎支持;
文件保存为ANSI编码,无BOM头。
通过上述配置,可有效禁止玩家在指定传奇地图内携带任何类型宠物,适用于竞技场、特殊副本或平衡性场景。
一、确定目标地图编号
首先明确需限制的地图编号,例如“封魔谷”对应地图号201。该编号用于命名脚本文件及条件判断。
二、创建地图专属脚本文件
进入服务端目录Mir200EnvirQuestDiary,新建以地图编号命名的文本文件,如201.txt。所有限制逻辑必须写入此文件。
三、添加地图进入检测事件
在201.txt中编写角色进入时的处理流程:
[@MapEnter]
IF
CHECKHERO
ACT
SENDMSG0该地图禁止携带英雄,请先收回。
MAPMOVE001100100
BREAK
IF
CHECKPET
ACT
SENDMSG0该地图禁止携带宠物,请先收回。
MAPMOVE001100100
CHECKHERO检测是否拥有已召唤英雄,CHECKPET检测是否存在召唤类宠物(如虎卫、月灵)。任一条件成立即传送回城并中断后续操作。
四、支持自定义宠物类型检测
若需针对特定宠物(如“狐月”),可通过物品或技能判断。例如:
IF
HAVEBUFF1001
ACT
SENDMSG0禁止携带狐月进入。
MAPMOVE001100100
其中1001为狐月对应的Buff编号,需根据实际Skill.txt配置调整。
五、防止反复尝试进入
为避免玩家连续踏入,可设置冷却变量:
IF
EQUALA01
ACT
SENDMSG0冷却中,稍后再试。
MAPMOVE001100100
BREAK
ELSE
SETA01
TIMER5000@ResetCD
[@ResetCD]
ACT
SETA00
利用A0变量标记5秒内禁止再次进入。
六、全局脚本联动(可选)
若多个地图需统一限制,可在Human.txt中集中处理:
[@MapEnter_201]
[@MapEnter_202]
[@MapEnter_300]
CALL[QuestDiaryPetRestrict.txt]
将通用逻辑写入PetRestrict.txt,通过#CALL复用代码。
七、测试验证步骤
启动服务端,召唤英雄或宠物;
尝试进入地图201;
观察是否被自动传送并收到提示;
检查未携带宠物时能否正常进入。
若无效,确认:
脚本文件名与地图编号完全匹配;
CHECKHERO/CHECKPET指令被当前引擎支持;
文件保存为ANSI编码,无BOM头。
通过上述配置,可有效禁止玩家在指定传奇地图内携带任何类型宠物,适用于竞技场、特殊副本或平衡性场景。

