一、引擎选型与版本边界判定
HERO/HeroM2:走DBC2000+HeroDB,适配十周年/十三周年客户端,wil/wix原生资源为主,复古1.76、合击、单职业闭眼选,老版本在Win10/11需兼容模式或虚拟机;不支持原生微端,要微端需换新版HeroM2或转GOM/GEE。
GOM:兼容Win10/11,吃pak+Resources分层补丁,动态微端完整,十六周年以上客户端,中大型版本、新界面、单文件大补丁首选。
GEE:自带微端更新服务(UpdateServer+MirUpdateGate),Resources/Data/ResInfo.txt体系,官方新客户端兼容好,线路管理、外网分流比GOM细,新手联机推荐。
BLUE/LegendM2/3K:Hero系派生,脚本兼容好,插件多,但微端能力看具体分支。
引擎与登录器、补丁包必须同系,GOM登录器配GEE版本必黑屏,GEEPak.txt格式不兼容GOM密文。
二、目录规范与DBC2000/HeroDB绑定
服务端解压D:\MirServer(纯英文、无空格、无中文);客户端D:\MirClient(16-18周年完整客户端)。
DBC2000安装→控制面板BDEAdministrator→Object→New→STANDARD→重命名STANDARD1为HeroDB(大小写严格)→PATH指向D:\MirServer\Mud2\DB(内含StdItems.DB、Magic.DB、Monster.DB)→Ctrl+S保存。路径错、别名拼错、PDOXUSRS.NET占用→M2启动报DatabaseError。GOM/GEE新版若内嵌库环境,仍要核对Mud2\DB文件存在。
三、公网IP、动态IP与网关配置核心文件
引擎配置向导(GameCenter.exe):外网填公网IP;动态公网勾“动态IP地址”;数据库名HeroDB;端口7000(LoginGate)/7100(SelGate)/7200(RunGate)默认不动。
手写复核文件(漏改必“不开门”):
•Mir200\!Setup.txt→ServerIP/ExtIP/GateAddr/DBAddr(DBAddr留127.0.0.1别动)
-LoginSrv\!AddrTable.txt→格式:区名Line1内网IP公网IP公网IP:7100
•DBServer\!ServerInfo.txt/!AddrTable.txt→同公网IP对齐
-LoginGate\Config.ini/RunGate\Config.ini→GateAddr=0.0.0.0或内网IP,ServerAddr=内网IP,Port对应
•!ServerTable.txt→1内网IP7200公网IP7200(外网进图连谁全看这条)
四、端口矩阵与映射/安全组放行
必放行TCP:7000、7100、7200(多RunGate续7300/7400)、6000(DBServer)、8000(微端网关)、8008(UpdateServer)、80/8080(列表HTTP)。云服务器控制台安全组+Windows高级防火墙入站规则双处放行0.0.0.0/0。家用宽带进路由器→虚拟服务器/端口转发→外端口=内端口,内部IP绑服务端内网IP;WANIP是100.64.x/10.x是大内网,必须找运营商换公网或走DDNS/穿透。CMD验证:netstat-ano|findstr:7000查占用,telnet公网IP7000通否。
五、标准启动顺序与进程联动
DBServer→LoginSrv→LoginGate→SelGate→RunGate→LogServer→M2Server(GameCenter点启动)。先起M2后起网关→角色网关读不到在线列表、输账号回登录界面。M2日志“所有服务启动成功”“网关连接成功”才算通。带微端:M2启完再起UpdateServer(资源缓存完)→MirUpdateGate(小电脑灯亮)。
六、微端体系(GOM/GEE外网黑屏头号原因)
UpdateServer基本设置:客户端路径=完整客户端根目录;资源目录名=Resources/Patch(与登录器、Pak.txt完全一致);更新密码自定义(GOM默认gameofmir,GEE默认GEEM2)。
Pak.txt:从服务端“登录器”目录复制出来,记事本全文档替换原路径为D:\MirClient,拷回UpdateServer目录→查看→载入pak密码→状态全绿。密文自动生成,手改密文必黑。
MirUpdateGate:微端地址填UpdateServerIP,微端端口填UpdateServer网关连接端口,线路列表必须含“默认”。
登录器配置器:纯微端模式、更新密码同UpdateServer、Resources目录名同客户端、列表格式区名|公网IP:7000|公网IP:8000。生成exe放客户端根目录。三层名称(客户端补丁目录/UpdateServer资源目录/登录器Resources名/Pak.txt引用)不一致→进图黑屏、装备透明、NPC消失。
七、列表文件与登录器发布
list.txt(ANSI编码防乱码):
HERO:测试一区123.45.67.89
7000
GOM微端:测试一区123.45.67.897000123.45.67.8980001.0
传HTTP空间(MIMEtext/plain),浏览器直开可见文本。登录器配置器主列表填URL,网关密码填!Setup.txt的LoginGatePass,版本匹配。玩家客户端补丁(Data/Map/Resources/Sound)必须与服务端Envir、MapInfo、Pak.txt对应。
八、脚本调试与M2报错定位
进游戏后NPC不对话、任务不触发、捡物无反应→看M2红色ScriptError:
•Undefinedvariable→A..Z/G..变量前缀用错或未声明
-Scriptdeadloop→#IF后无#ACT/#ELSEACT,或WHILE无限
•Cannotfindlabel@xxx→[@xxx]标签拼错,改完M2→控制→重读NPC脚本
-Itemnotfound→CheckItem/GiveItem名与StdItems.DB不一致
•Mapnotfound/LoadMapFail→Mir200\Map\*.map缺文件或MapInfo.txt编号不匹配
-[@TakeOn17]/[@TakeOff18]不触发→装备Shape/StdMode没对齐、槽位越界
改Envir脚本不必重启全服,重读即可;改!Setup.txt/网关配置必须重启对应进程。
九、外网典型故障速查
•列表空白:list.txtMIME错、HTTP空间未生效、URL拼错
•输账号回登录界面:!AddrTable.txt/!ServerTable.txt未填公网、7100未映射、动态IP未勾
-卡“正在连接服务器”:7000未放行、网关绑死127.0.0.1、安全组漏规则
•进图黑屏能跑:Resources目录名错、Pak.txt路径未改、PAK密码错、Map缺文件
-M2闪退:VC++运行库缺、HeroDB指向错、Mir200授权dll缺失、路径含中文
•微端不更新:8000/8008未映射、登录器微端密码错、UpdateServer未起、线路无“默认”
-外网能进内网不能进或反之:网关未绑0.0.0.0、动态IP模式未开导致回包发内网
•攻城/沙城逻辑错:CastleMapList.txt与MapInfo不一致、SabukW.txt未重载
十、家用动态IP与DDNS处理
光猫重启公网IP变→列表写死IP次日失效。路由器挂DDNS(花生壳/阿里云解析),登录器列表填域名;或引擎勾动态IP模式+列表HTTP动态生成;纯好友联机用ZeroTier/内网穿透替代端口映射。DMZ主机仅临时测试,长期开着等于全端口裸奔给公网。
整套外网链路串起来:选引擎→D:\MirServer英文根+HeroDB指Mud2\DB→配置向导填公网/动态IP→手写复核!Setup.txt/!AddrTable.txt/!ServerTable.txt/Gateini→安全组放7000/7100/7200/8000→DBSrv→LoginSrv→Gate→M2顺序起→UpdateServer载Pak.txt(路径绝对、密码全绿)→MirUpdateGate绑微端→list.txt走HTTP→登录器密码/版本/Resources对齐。任一层IP、端口、路径、密码、目录名错位,表现层就是回登录、卡连接、黑屏三类表象,反查顺序:网关日志→M2日志→Pak.txt→列表文件→网卡NAT。
HERO/HeroM2:走DBC2000+HeroDB,适配十周年/十三周年客户端,wil/wix原生资源为主,复古1.76、合击、单职业闭眼选,老版本在Win10/11需兼容模式或虚拟机;不支持原生微端,要微端需换新版HeroM2或转GOM/GEE。
GOM:兼容Win10/11,吃pak+Resources分层补丁,动态微端完整,十六周年以上客户端,中大型版本、新界面、单文件大补丁首选。
GEE:自带微端更新服务(UpdateServer+MirUpdateGate),Resources/Data/ResInfo.txt体系,官方新客户端兼容好,线路管理、外网分流比GOM细,新手联机推荐。
BLUE/LegendM2/3K:Hero系派生,脚本兼容好,插件多,但微端能力看具体分支。
引擎与登录器、补丁包必须同系,GOM登录器配GEE版本必黑屏,GEEPak.txt格式不兼容GOM密文。
二、目录规范与DBC2000/HeroDB绑定
服务端解压D:\MirServer(纯英文、无空格、无中文);客户端D:\MirClient(16-18周年完整客户端)。
DBC2000安装→控制面板BDEAdministrator→Object→New→STANDARD→重命名STANDARD1为HeroDB(大小写严格)→PATH指向D:\MirServer\Mud2\DB(内含StdItems.DB、Magic.DB、Monster.DB)→Ctrl+S保存。路径错、别名拼错、PDOXUSRS.NET占用→M2启动报DatabaseError。GOM/GEE新版若内嵌库环境,仍要核对Mud2\DB文件存在。
三、公网IP、动态IP与网关配置核心文件
引擎配置向导(GameCenter.exe):外网填公网IP;动态公网勾“动态IP地址”;数据库名HeroDB;端口7000(LoginGate)/7100(SelGate)/7200(RunGate)默认不动。
手写复核文件(漏改必“不开门”):
•Mir200\!Setup.txt→ServerIP/ExtIP/GateAddr/DBAddr(DBAddr留127.0.0.1别动)
-LoginSrv\!AddrTable.txt→格式:区名Line1内网IP公网IP公网IP:7100
•DBServer\!ServerInfo.txt/!AddrTable.txt→同公网IP对齐
-LoginGate\Config.ini/RunGate\Config.ini→GateAddr=0.0.0.0或内网IP,ServerAddr=内网IP,Port对应
•!ServerTable.txt→1内网IP7200公网IP7200(外网进图连谁全看这条)
四、端口矩阵与映射/安全组放行
必放行TCP:7000、7100、7200(多RunGate续7300/7400)、6000(DBServer)、8000(微端网关)、8008(UpdateServer)、80/8080(列表HTTP)。云服务器控制台安全组+Windows高级防火墙入站规则双处放行0.0.0.0/0。家用宽带进路由器→虚拟服务器/端口转发→外端口=内端口,内部IP绑服务端内网IP;WANIP是100.64.x/10.x是大内网,必须找运营商换公网或走DDNS/穿透。CMD验证:netstat-ano|findstr:7000查占用,telnet公网IP7000通否。
五、标准启动顺序与进程联动
DBServer→LoginSrv→LoginGate→SelGate→RunGate→LogServer→M2Server(GameCenter点启动)。先起M2后起网关→角色网关读不到在线列表、输账号回登录界面。M2日志“所有服务启动成功”“网关连接成功”才算通。带微端:M2启完再起UpdateServer(资源缓存完)→MirUpdateGate(小电脑灯亮)。
六、微端体系(GOM/GEE外网黑屏头号原因)
UpdateServer基本设置:客户端路径=完整客户端根目录;资源目录名=Resources/Patch(与登录器、Pak.txt完全一致);更新密码自定义(GOM默认gameofmir,GEE默认GEEM2)。
Pak.txt:从服务端“登录器”目录复制出来,记事本全文档替换原路径为D:\MirClient,拷回UpdateServer目录→查看→载入pak密码→状态全绿。密文自动生成,手改密文必黑。
MirUpdateGate:微端地址填UpdateServerIP,微端端口填UpdateServer网关连接端口,线路列表必须含“默认”。
登录器配置器:纯微端模式、更新密码同UpdateServer、Resources目录名同客户端、列表格式区名|公网IP:7000|公网IP:8000。生成exe放客户端根目录。三层名称(客户端补丁目录/UpdateServer资源目录/登录器Resources名/Pak.txt引用)不一致→进图黑屏、装备透明、NPC消失。
七、列表文件与登录器发布
list.txt(ANSI编码防乱码):
HERO:测试一区123.45.67.89
7000
GOM微端:测试一区123.45.67.897000123.45.67.8980001.0
传HTTP空间(MIMEtext/plain),浏览器直开可见文本。登录器配置器主列表填URL,网关密码填!Setup.txt的LoginGatePass,版本匹配。玩家客户端补丁(Data/Map/Resources/Sound)必须与服务端Envir、MapInfo、Pak.txt对应。
八、脚本调试与M2报错定位
进游戏后NPC不对话、任务不触发、捡物无反应→看M2红色ScriptError:
•Undefinedvariable→A..Z/G..变量前缀用错或未声明
-Scriptdeadloop→#IF后无#ACT/#ELSEACT,或WHILE无限
•Cannotfindlabel@xxx→[@xxx]标签拼错,改完M2→控制→重读NPC脚本
-Itemnotfound→CheckItem/GiveItem名与StdItems.DB不一致
•Mapnotfound/LoadMapFail→Mir200\Map\*.map缺文件或MapInfo.txt编号不匹配
-[@TakeOn17]/[@TakeOff18]不触发→装备Shape/StdMode没对齐、槽位越界
改Envir脚本不必重启全服,重读即可;改!Setup.txt/网关配置必须重启对应进程。
九、外网典型故障速查
•列表空白:list.txtMIME错、HTTP空间未生效、URL拼错
•输账号回登录界面:!AddrTable.txt/!ServerTable.txt未填公网、7100未映射、动态IP未勾
-卡“正在连接服务器”:7000未放行、网关绑死127.0.0.1、安全组漏规则
•进图黑屏能跑:Resources目录名错、Pak.txt路径未改、PAK密码错、Map缺文件
-M2闪退:VC++运行库缺、HeroDB指向错、Mir200授权dll缺失、路径含中文
•微端不更新:8000/8008未映射、登录器微端密码错、UpdateServer未起、线路无“默认”
-外网能进内网不能进或反之:网关未绑0.0.0.0、动态IP模式未开导致回包发内网
•攻城/沙城逻辑错:CastleMapList.txt与MapInfo不一致、SabukW.txt未重载
十、家用动态IP与DDNS处理
光猫重启公网IP变→列表写死IP次日失效。路由器挂DDNS(花生壳/阿里云解析),登录器列表填域名;或引擎勾动态IP模式+列表HTTP动态生成;纯好友联机用ZeroTier/内网穿透替代端口映射。DMZ主机仅临时测试,长期开着等于全端口裸奔给公网。
整套外网链路串起来:选引擎→D:\MirServer英文根+HeroDB指Mud2\DB→配置向导填公网/动态IP→手写复核!Setup.txt/!AddrTable.txt/!ServerTable.txt/Gateini→安全组放7000/7100/7200/8000→DBSrv→LoginSrv→Gate→M2顺序起→UpdateServer载Pak.txt(路径绝对、密码全绿)→MirUpdateGate绑微端→list.txt走HTTP→登录器密码/版本/Resources对齐。任一层IP、端口、路径、密码、目录名错位,表现层就是回登录、卡连接、黑屏三类表象,反查顺序:网关日志→M2日志→Pak.txt→列表文件→网卡NAT。

