GOM引擎的假人系统本质是在服务端用程序模拟出和真实玩家外观、属性、行为一致的角色,用来填充在线人数、带动地图活跃度、陪练打怪、模拟攻沙氛围。整套逻辑不依赖客户端,全部在服务端 MirServer 目录内完成,核心涉及 M2功能开关、DummyNameList.txt 名称池、DummyConfig 独立配置、QManage.txt 登录触发、Robot_def 定时调度、QuestDiary 行为脚本六个层面。下面按真实架设顺序拆开讲。
一、部署前环境核对
GOM引擎需使用1108或更新版本,DBServer、LoginGate、M2Server、GameGate 正常启动,HeroDB 可写,Mir200\Envir 结构完整。假人不是外挂进程,是M2内部对象,引擎版本过低会导致 DUMMYLOGON、ISDUMMY、SETDUMMYCONFIGFILENAME 等命令无效。确认 M2 → 选项 → 功能设置 → 假人系统 模块存在,再继续。
二、假人名称池与英雄名称池
路径:Mir200\Envir\DummyNameList.txt(人物假人)
路径:Mir200\Envir\DummyHeroNameList.txt(英雄假人,可选)
每行一个名字,不支持空格与特殊符号,可带参数写法:
陪练战士01 1 35 0
(1=战士,35=等级,0=性别,具体解析依赖版本脚本)
名字不要和玩家可注册名冲突,正式服把这批名同步写进 DBServer\DenyChrName.txt,防止真人抢名。英雄假人需配合 GETDUMMYNAME、SETDUMMYHERONAME、RECALLHERO 使用。
三、独立配置文件 DummyConfig
路径:Mir200\Envir\DummyConfig\假人名称.txt
不写则引擎按默认模板生成,写了就完全接管属性。标准字段示例:
[Info]
Job=2
Gender=1
Hair=1
Level=60
AutoPickUpItem=1
AttatckMode=0
SayRate=10
ItemAddValueRate=10
ItemNewAddValueRate=10
DropUseItem=0
DropUseItemRate=15
DropBagItem=1
NeedMagicItem=1
UseSkill=灵魂火符,施毒术,召唤神兽,治愈术,幽灵盾,神圣战甲术
BagItems=护身符,黄色药粉(大量),灰色药粉(大量)
[灵魂火符]
Level=3
NewLevel=0
[UseItems]
UseItems0=天师长袍
UseItems1=逍遥扇
UseItems3=天尊项链
UseItems4=天尊头盔
UseItems5=天尊手镯
UseItems6=天尊手镯
UseItems7=天尊戒指
UseItems8=天尊戒指
UseItems9=护身符
[Say]
0=这把装备换吗
1=刚爆了个戒指
2=谁卖强效金创药
装备名必须与 StdItems.txt 的 Name 字段完全一致,自定义物品先入库再引用,否则穿不上。文件编码用 ANSI,UTF-8 会乱码。
四、M2开关与手动登录验证
M2 → 选项 → 功能设置 → 假人系统:
启用假人系统:勾选
最大假人数量:单地图建议 ≤20,全服按机器配置 5~50
登录间隔:5~10秒,避免瞬时并发卡顿
行走速度:500~600
攻击速度:战士 700 / 法师 1000 / 道士 1100
自动修理:若脚本已写延迟修理,此处关掉,避免持久永远满值露馅
点“登录选定”“全部登录”做首次验证,能在比奇安全区看到角色落地即说明底层通了。
五、QManage.txt 登录触发(核心绑定)
路径:Mir200\Envir\MapQuest_Def\QManage.txt
在 [@Login] 段写:
IF
ISDUMMY
ACT
SETDUMMYCONFIGFILENAME ..\Envir\DummyConfig\战士陪练.txt
LOADDUMMYCONFIGFILE
ChangeAttatckMode 0
DUMMYSTART
ISDUMMY 判定为假人登录才执行,真人走正常 [@Login] 逻辑。LOADDUMMYCONFIGFILE 必须调用,否则配置不生效;DUMMYSTART 让假人进入自动寻路打怪,不写就站桩。英雄登录走 [@HeroLogin],用 H.ISDUMMY、H.SETDUMMYCONFIGFILENAME、H.LOADDUMMYCONFIGFILE。
六、Robot_def 定时保活(开服自动补人)
路径:Mir200\Envir\Robot_def\AutoRunRobot.txt
SETONTIMER 60 AutoDummy
路径:Mir200\Envir\Robot_def\RobotManage.txt
[@AutoDummy]
IF
CHECKDUMMYCOUNT < 10
ACT
DUMMYLOGON 0 330 330 5
含义:每60秒检测,全服假人少于10个就在比奇(0,330,330)补5个。DUMMYLOGON 格式:
DUMMYLOGON 地图号 X Y 数量
地图0=比奇省,3=盟重省,自定义地图填实际 MapInfo 编号。坐标必须可站立,放障碍或墙里会卡死。
七、QuestDiary 行为脚本进阶
目录:Mir200\Envir\QuestDiary\假人系统\假人行为.txt
基础指令:
DUMMYSTART 开始挂机打怪
DUMMYSTOP 停止挂机
DUMMYAUTOTARGET 1 锁定单体目标
AutoUseMagic 技能ID 间隔秒 无目标时练功
SHOPSTALL / CREATEMYSHOP 假人摆摊
MOV 随机游走范围
分职业差异写法:
战士:近身追击、半月弯刀、刺杀、切全体模式
法师:火墙+冰咆哮+魔法盾、保持8~10格距离、低血撤回安全区
道士:施毒+符+召唤神兽/月灵、自动补毒粉
死亡复活模拟:
在 QFunction-0.txt 写 [@DummyDie] 或 [@RobotDie],记录死亡坐标,随机5~15分钟清尸,安全区复活,爆出的装备不立即补齐,延迟10~30分钟自检修复,模仿真人损失感。
八、行会、攻沙、喊话整合
行会:自己小号先建行会,把假人用 GM 命令或脚本加入,单会控制在15~20人,禁止入会列表写过滤;有行会后 ChangeAttatckMode 5 切行会模式。
攻沙:M2假人系统填沙巴克地图ID与皇宫坐标,开“同步攻城”开关,按服务器攻城时间表自动进场,可限制等级与是否需行会。
喊话:Mir200\Envir\QuestDiary\假人发言.txt 分 [私聊][黄字][世界] 三段维护语料池,SpeakTimer 设600秒随机抽一条,避免所有假人同秒刷屏。
九、掉归属与性能边界
假人击杀怪物掉落归属按 M2 默认归属规则走,一般归最后一次伤害来源;若需归“真人队长”或“所在行会”,在 [@KillMonster] 里用 ISDUMMY 判断改写归属变量。
单地图假人 ≤20,刷新间隔 ≥30秒,Robot定时器别写1秒级,AutoRunRobot 最小建议5~10秒一轮,否则 M2 CPU 随人数平方上涨。
十、常用排错清单
假人不显示:DummyNameList.txt 空、M2开关没勾、引擎版本不支持
站桩不动:漏写 DUMMYSTART 或 LOADDUMMYCONFIGFILE
装备空白:StdItems 名称不一致、编码非ANSI、UseItems 槽位写错
卡墙不复活:DUMMYLOGON 坐标是障碍、PathFailRetry 未设上限
乱码:RobotManage / DummyConfig 存成 UTF-8,改回 ANSI
变量冲突:假人系统自带 A50~A66、G50~G73、I90~I96,版本原有赌博/泡点脚本若用同号全局变量会互踩,逐一改掉
至此从文件部署、配置绑定、登录触发、定时保活到职业分化、行会攻沙、喊话死亡模拟全部跑通,直接按对应路径改文件重启 M2 即可生效。
GOM引擎传奇假人脚本实战:安装部署到高级行为配置全流程
来源:
作者:
点击:

