传奇僵尸自动复活设置教程:MonsterDB改Race96、MonGen定时重刷与脚本尸潮补怪方法

来源: 作者: 点击:
僵尸在传奇里“复活”分两种需求。一种是怪物被打死后自动站起继续打,靠怪物数据库行动代码实现,典型就是Race 96自动复活类;另一种是打死按间隔重新刷出,靠MonGen.txt刷怪配置、M2怪物刷新开关或定时脚本实现。想做尸潮、矿区无限僵尸、副本轮回,把下面四块按自己引擎对一遍就能用。

一、Monster.DB改自动复活(真·打死再站起来)

DBC2000打开MirServer\Mud2\DB\Monster.DB,找到要设成复活僵尸的行,重点改三个字段:Name、Race、RaceImg,其余HP、DC、AC、Exp按普通僵尸填。

通用行动代码里,Race 95表示进入范围从地底爬出,类似石墓尸王;Race 96表示自动复活,资料定义为类似僵尸、死亡后自动站起,部分实现每次复活经验减半。 无度站的Race对照也把96标成“自动复活(僵尸)”、95标成地底钻出。 想让普通僵尸会原地复活,直接把目标行Race填96;想让它带闪电/雷电特效,RaceImg按攻击表现填,电僵类常用40,沃玛类闪电可用21,牛魔祭司做复活样本时可Race 96加RaceImg 40。

示例行思路(字段顺序按你DB列对齐,缺列补空):

僵尸复活A;僵尸复活A;96;40;外观值;等级;1;反隐值;经验;HP;MP;ACmin;ACmax;MACmin;MACmax;DCmin;DCmax;MCmin;MCmax;SCmin;SCmax;速度;命中;步长参数;攻击间隔参数

其中第三列Race=96,第四列RaceImg=40表示雷电特效;若只要普通抓人,RaceImg可填0或近战特效值。Undead字段按僵尸设1,代表不死系,会影响道士召唤、某些技能判定。 Appr按你客户端资源填,别用不存在的外观编号,否则地图显示透明或默认怪模。

改完在M2菜单“数据库-重载怪物数据库”重读;已刷在地图上的老怪不会热更,需要手动杀掉等MonGen重刷,或KILLMON后重刷。 若改了Race但不复活,先确认没有别的脚本在死亡后即时清除怪物,再确认M2怪物设置里没有关闭特殊Race行为。

二、MonGen.txt做死亡后定时重刷(假复活、最稳)

路径MirServer\Mir200\Envir\MonGen.txt,单行格式各地引擎大同小异:

地图编号 X坐标 Y坐标 怪物名称 范围 数量 刷新时间 预留 颜色

部分Hero、GOM、GEE资料把刷新时间按秒理解,部分老单机教程按分钟理解,动手前先用原文件现有行判断单位。 例如原文件写“3 330 320 白野猪 0 1 600”且实际10分钟一刷,就按分钟改;若实际10分钟一刷却写600且引擎说明为秒,则按秒改。不要盲目套数字。

矿区僵尸定点每1分钟重刷示例(按秒):

0 100 100 僵尸 0 5 60 0 0

含义:0号地图100,100固定点,范围0只刷精确坐标,5只僵尸,死亡后60秒重刷,预留0,颜色0。范围0是定点,范围10就是在以坐标为中心10步内随机。

矿区僵尸范围刷、按分钟示例:

0 100 100 僵尸 10 8 1 0 0

若本服MonGen单位为分钟,上面即1分钟重刷;若本服为秒,则1秒过于频繁,应改60以上。普通小怪建议120到300秒或2到5分钟,精英僵尸600到1800秒,BOSS级僵尸王按7200秒以上做稀缺。

保存后处理方式分三种:M2“控制-重新加载-怪物刷新配置”若能 reload 就在线重载;改了怪物名或地图编号建议重启M2;DBC改了Monster.DB要先重载怪物库再重启刷怪。自动刷新开关在M2“选项-怪物设置”或“游戏参数-允许怪物刷新”里确认勾上,刷怪倍数设1以上,否则改MonGen也不出怪。

三、定时尸潮与存活检测补怪(脚本方案)

不想改MonGen固定点,用全局定时刷僵尸。QManage或机器人按引擎放定时器,逻辑是:到时间检测目标地图指定范围僵尸数量,数量低于阈值就补,数量够就不补;玩家全清后下一周期再刷,形成“复活不停”的尸潮。

Hero类可用全局变量记录锁状态,配合CHECKMONCOUNT检测数量,定时器到后判断;资料示例用G_MonsterAlive、G_SpawnAllowed记录存活和允许刷新,CHECKMONCOUNT返回0再执行刷怪。 未击杀不刷的小时级示例用锁定变量,怪物死亡触发解锁,整点再检测。

通用伪逻辑:

定时器每60秒触发@ZombieCheck
@ZombieCheck
IF

CHECKMONCOUNT 地图号 僵尸 0 > 0
ACT

;已有僵尸,不补
BREAK
IF

CHECKMONMAP 地图号 范围X 范围Y 半径 僵尸 < 10
ACT

MonGen 地图号 X Y 僵尸 0 10
SENDMSG 7 矿区尸潮重现,僵尸重新涌出
BREAK

CHECKMONCOUNT、CHECKMONMAP、MonGen具体参数名随引擎变;GOM/GEE可用QManage定时器加MONSTER/MonGen,Hero可用Quest机器人,Max按自带刷怪函数替换。若引擎支持死亡触发,在QFunction或地图死亡脚本里写:指定地图击杀僵尸后,延迟N秒回到刷怪函数,实现“打死即排期复活”。

四、特殊僵尸类型组合

普通复活僵尸:Race 96,RaceImg按近战填0或小特效,HP中等,经验设低,避免无限刷经验崩经济。
雷电僵尸:Race 96,RaceImg 40,DC/MC按法师型填,ShoutRate、ShoutColor按需要设;电僵资料常用RaceImg 40做三格雷电。
地底僵尸:Race 95,进范围从地底爬出,不算自动站起但视觉像复活,适合尸王殿入口、矿区陷阱;配合MonGen短间隔,玩家清完马上再钻出来。
牛魔/祭司型复活:资料样本把牛魔祭司Race设96、RaceImg设40,Appr 179,牛魔法师Appr 178;套用到自定义僵尸时只抄Race逻辑,不强制用牛魔外观。
不死系控制:Undead=1的僵尸道士正常技能难以招募,部分版本圣言、特定技能可处理;做复活怪时别同时把Exp设太高,Race 96部分实现复活后经验递减,设太高也没意义。

五、常见不复活、不重刷排错

改Race 96不站起来:确认MonGen不是“刷一次不重刷”且死亡后被脚本ClearMon清掉;确认M2没有禁用特殊Race;确认地图该怪名唯一,避免脚本按名字清怪。
MonGen改完没反应:看地图编号、坐标是否在该地图可用范围;怪物名称必须与Monster.DB完全一致,多一个空格都不刷;分隔符用空格不用逗号;文件编码用ANSI或引擎要求编码。
刚改完老怪不变:已存在地图上的怪读旧Race,KILLMON或等它死完,重新进地图观察;DBC改库后M2重载怪物数据库,再重启DBServer/M2更保险。
刷得太快卡服:范围0+数量大+时间短会堆叠,僵尸尸潮建议范围3到5、单点不超过10只、全局同图总控50到100只;自动刷新倍数1,别开倍数补怪。
定时脚本不触发:定时器未在QManage/机器人启用,或变量未初始化;先手动GM命令刷一只僵尸验证怪物名有效,再接定时器。Hero可用@MonGen类名数量临时测,GOM用对应GM刷怪命令临时测。
想“角色死亡原地复活”不是僵尸复活:那是[@PlayDie]加Setreborn/GMEXECUTE复活,GEE有Setreborn次数和时长,Legend有QUERYVALUE窗口;和怪物僵尸复活是两套,别混写。

六、单机最小可抄配置

Monster.DB新增一行:
僵尸·回魂;僵尸·回魂;96;40;对应Appr;20;1;0;800;5000;0;0;0;0;0;0;20;40;0;0;0;0;1000;10;默认步行;默认攻击间隔
其中Race 96自动复活,RaceImg 40雷电,Undead 1,经验800、HP5000按自己版本调。

MonGen.txt加:
0 100 100 僵尸·回魂 0 3 60 0 0
按秒单位即60秒重刷;若本服单位为分钟,改1更合适。

QManage若做尸潮,每小时补:
定时器60秒进@Zcheck,Zcheck检测0号地图“僵尸·回魂”数量小于10则用MonGen补到10只。首次用手动GM命令刷3只验证Race 96能站起,再开定时。

按上面改,矿区、尸王殿、自定义副本都能出“打死再起”的僵尸;只用MonGen不做Race 96就是固定间隔重刷,做Race 96不做MonGen短间隔就是单只反复站起。两者叠加最像盛大原版僵尸房,但经验、爆率要把控,避免玩家挂机刷经验。