在传奇单机游戏中,**自动刷怪NPC**能为玩家提供持续的挑战,类似塔防的波次机制或无限刷怪模式。以下基于LEG引擎的脚本编写逻辑,分步骤实现两种主流需求:
**①进地图自动刷怪,打完一波后定时刷新下一波;
②点击NPC无限刷怪,自动补充死亡怪物数量。**
---
####**一、基础脚本配置**
1.**创建机器人脚本(定时触发)**
-打开路径`D:\MirServer\Mir200\Envir\Robot_def\AutoRunRobot.txt`
-添加定时任务,例如每30秒执行一次刷怪:
```
#AutoRunNPCSEC30@自动刷怪
```
此处`SEC30`表示30秒间隔,可改为分钟(MIN)、小时(HOUR)等。
2.**编写刷怪触发脚本**
-在`RobotManage.txt`中定义刷怪动作:
```
[@自动刷怪]
#IF
#ACT
Param1盟重省;刷怪地图
Param250;初始刷怪数量
Param3白野猪;怪物名称
MonGenParam1Param2Param3
SendMsg0[系统]盟重省已刷新50只白野猪!
```
此脚本会在盟重省地图生成50只白野猪,并发送全服公告。
---
####**二、两种刷怪模式实现**
**模式1:塔防式波次刷怪(进地图自动触发)**
1.**地图进入触发脚本**
-在`QManage.txt`中添加:
```
[@Login]
#IF
IsOnMap盟重省;判断玩家是否在盟重省
#ACT
StartTimers130@下一波怪;30秒后执行下一波
```
2.**波次刷怪逻辑**
```
[@下一波怪]
#IF
CheckRangeMonCount盟重省00100100<10;检测地图存活怪物是否少于10只
#ACT
MonGen盟重省50白野猪
SendMsg0[系统]第%s波怪物已刷新!
ResetTimers130@下一波怪;重置计时器,循环触发
```
此脚本会在当前波次怪物剩余少于10只时,自动生成新一波50只怪。
---
**模式2:点击NPC无限补怪(动态维持数量)**
1.**创建NPC交互脚本**
-在NPC脚本文件(如`Market_Def\盟重省-3.txt`)中添加:
```
[@main]
欢迎使用无限刷怪功能!\
点击开始刷怪,系统会自动补充死亡怪物。\
<开始刷怪/@刷怪>\
<关闭刷怪/@结束>
```
2.**动态补怪逻辑**
```
[@刷怪]
#ACT
SetOnTimer11;每秒检测一次怪物数量
SendMsg0[系统]无限刷怪已启动!
[@OnTimer1]
#IF
CheckRangeMonCount盟重省00100100<50;当前怪物少于50只时补满
#ACT
MonGen盟重省50白野猪
```
此脚本通过定时器每秒检测怪物数量,自动补充至50只。
---
####**三、注意事项**
1.**路径与语法**:不同引擎(如LEG、GEE)脚本路径可能不同,需参考引擎文档。
2.**刷怪频率**:避免设置过短间隔(如1秒),可能导致服务器卡顿。
3.**测试与调试**:修改脚本后需重启服务端,并在地图中实际测试怪物刷新逻辑。
4.**扩展功能**:可通过变量记录波次(如`INCGLOBAL波次数`),或添加奖励机制。
通过上述配置,玩家既可体验塔防式渐进挑战,也能通过NPC实现无限刷怪,提升游戏可玩性。
**①进地图自动刷怪,打完一波后定时刷新下一波;
②点击NPC无限刷怪,自动补充死亡怪物数量。**
---
####**一、基础脚本配置**
1.**创建机器人脚本(定时触发)**
-打开路径`D:\MirServer\Mir200\Envir\Robot_def\AutoRunRobot.txt`
-添加定时任务,例如每30秒执行一次刷怪:
```
#AutoRunNPCSEC30@自动刷怪
```
此处`SEC30`表示30秒间隔,可改为分钟(MIN)、小时(HOUR)等。
2.**编写刷怪触发脚本**
-在`RobotManage.txt`中定义刷怪动作:
```
[@自动刷怪]
#IF
#ACT
Param1盟重省;刷怪地图
Param250;初始刷怪数量
Param3白野猪;怪物名称
MonGenParam1Param2Param3
SendMsg0[系统]盟重省已刷新50只白野猪!
```
此脚本会在盟重省地图生成50只白野猪,并发送全服公告。
---
####**二、两种刷怪模式实现**
**模式1:塔防式波次刷怪(进地图自动触发)**
1.**地图进入触发脚本**
-在`QManage.txt`中添加:
```
[@Login]
#IF
IsOnMap盟重省;判断玩家是否在盟重省
#ACT
StartTimers130@下一波怪;30秒后执行下一波
```
2.**波次刷怪逻辑**
```
[@下一波怪]
#IF
CheckRangeMonCount盟重省00100100<10;检测地图存活怪物是否少于10只
#ACT
MonGen盟重省50白野猪
SendMsg0[系统]第%s波怪物已刷新!
ResetTimers130@下一波怪;重置计时器,循环触发
```
此脚本会在当前波次怪物剩余少于10只时,自动生成新一波50只怪。
---
**模式2:点击NPC无限补怪(动态维持数量)**
1.**创建NPC交互脚本**
-在NPC脚本文件(如`Market_Def\盟重省-3.txt`)中添加:
```
[@main]
欢迎使用无限刷怪功能!\
点击开始刷怪,系统会自动补充死亡怪物。\
<开始刷怪/@刷怪>\
<关闭刷怪/@结束>
```
2.**动态补怪逻辑**
```
[@刷怪]
#ACT
SetOnTimer11;每秒检测一次怪物数量
SendMsg0[系统]无限刷怪已启动!
[@OnTimer1]
#IF
CheckRangeMonCount盟重省00100100<50;当前怪物少于50只时补满
#ACT
MonGen盟重省50白野猪
```
此脚本通过定时器每秒检测怪物数量,自动补充至50只。
---
####**三、注意事项**
1.**路径与语法**:不同引擎(如LEG、GEE)脚本路径可能不同,需参考引擎文档。
2.**刷怪频率**:避免设置过短间隔(如1秒),可能导致服务器卡顿。
3.**测试与调试**:修改脚本后需重启服务端,并在地图中实际测试怪物刷新逻辑。
4.**扩展功能**:可通过变量记录波次(如`INCGLOBAL波次数`),或添加奖励机制。
通过上述配置,玩家既可体验塔防式渐进挑战,也能通过NPC实现无限刷怪,提升游戏可玩性。

