Hero引擎传奇外网架设全攻略:DBC2000到云服端口映射完整链路

来源: 作者: 点击:
一、版本包完整性核验
完整 Hero / HeroM2 服务端根目录 D:\MirServer 必须含:GameCenter.exe(引擎控制器)、DBServer、LoginGate、LoginSrv、SelGate、RunGate(或 GateServer)、LogServer、Mir200、Mud2、Envir 及配套补丁客户端。缺 DBServer 或 LoginSrv 会卡账号验证;缺 RunGate 进图即掉线;老 HeroM2 无微端模块,需换新版 HeroM2 引擎包才有微端服务程序。

二、系统与环境前置
云服务器选 Windows Server 2012R2 及以上,带宽按人数 3M 起配;装齐 VC++ 运行库(2005-2022 全系 x86+x64)、.NET Framework 3.5/4.8,缺库 M2Server.exe 直接闪退。服务端解压到 D:\MirServer,全英文、无空格、无中文;客户端装 E:\Legend of mir 或 E:\Mir 同级根目录,版本匹配(多用 1.76 / 16~17 周年客户端)。杀毒软件把 Mir200、Gate 目录加白名单,否则 M2/网关被误删。

三、DBC2000 与 HeroDB 绑定(Hero 系核心)
1. 装 DBC2000 → 控制面板打开 BDE Administrator(蓝色小鱼)
2. Object → New → 类型 STANDARD → OK
3. 左侧 STANDARD1 重命名为 HeroDB(严格大小写,禁写成 Herodb / HERODB)
4. 右侧 PATH 指向 D:\MirServer\Mud2\DB(确认内有 StdItems.DB、Magic.DB、Monster.DB)
5. Ctrl+S / Object → Apply 保存,关 BDE 时选 Yes 写盘
6. 打开 D:\MirServer\DBServer\DBConfig.ini 或 DBService.ini:数据库类型=DBC2000、数据库名称=HeroDB、连接地址=127.0.0.1,无账号密码。启动 DBServer.exe 显示“数据库启动成功”即通。

四、引擎配置向导与外网 IP 写入
运行 D:\MirServer\GameCenter.exe → 配置向导:
• 游戏目录:D:\MirServer

• 数据库名称:HeroDB

- 服务器名称:自定义区名
• 外网 IP:填云服务器公网 IP;家庭动态公网 IP 必须勾“动态 IP 地址”

• 端口页默认:登录 7000 / 角色选择 7100 / 游戏网关 7200(可改但全链路同步)

保存后引擎重写以下文件,仍需人工复核防漏:
• Mir200\!Setup.txt → ServerIP / ExternalIP / GateAddr

• LoginSrv\!AddrTable.txt(格式:区名 内网IP 公网IP:7000)

- DBServer\!ServerInfo.txt / !AddrTable.txt
• LoginGate\Config.ini / MirGate.ini → PublicIP=公网IP、Port=7000

- RunGate\Config.ini / SelGate\Config.ini → IP=0.0.0.0 或公网IP、Port 对应
• LoginSrv\!Setup.txt → LoginGatePass 记死,登录器配置器需一致

五、端口矩阵与云安全组 / 路由器映射
必须内外一致放行的 TCP 端口:
• 7000 LoginGate 登录网关

• 7100 SelGate 角色选择网关

• 7200 RunGate 游戏网关

- 6000/5600 DBServer 与 LoginSrv 通信(视版本)
• 若带微端:8000 微端网关 / 8008 UpdateServer(新 HeroM2 微端服务程序端口)

云控制台安全组加进站规则 7000-7300、8000-8010、5600、6000 允许 0.0.0.0/0;Windows 高级防火墙建入站规则同上;家用宽带进路由器 → 端口映射 / 虚拟服务器,外部=内部端口,内部 IP 绑服务端内网 IP,WAN IP 为 100.64.x / 10.x 是大内网,必须找运营商换公网或走穿透。

六、标准启动顺序(错序必报数据库/网关断连)
1. DBC2000 服务就绪 → 2. DBServer.exe(数据库服务) → 3. LoginSrv.exe(账号验证) → 4. LoginGate.exe → 5. SelGate.exe → 6. RunGate.exe → 7. LogServer.exe(可选) → 8. M2Server.exe(GameCenter 点启动游戏服务器)。M2 控制台显示“所有服务启动成功”“无错误提示”,GameGate 显示“连接到 M2 成功”即链路通。先起 M2 后起网关会出现角色网关读不到在线列表、输账号回登录界面。

七、列表文件与登录器生成
新建 list.txt:
格式一(通用):服务器名公网IP
7000
格式二(带微端):服务器名公网IP:7000 公网IP:8000
1
上传到 HTTP 空间或放本地列表服务器,浏览器直开 http://公网IP/list.txt 能看到纯文本。打开配套登录器配置器(Hero 用统一/万能登录器配置器):主列表填上述 URL、网关密码填 LoginSrv\!Setup.txt 的 LoginGatePass、勾纯微端(新 HeroM2 才有效)、客户端版本匹配,生成 GameLogin.exe 拷进客户端根目录。玩家本机补丁(Data / Resources / Map / Sound)必须与服务端 Envir、MapInfo、Pak.txt 对应,否则进图黑屏、装备红问号。

八、新 HeroM2 微端附加配置(老 Hero 无此模块)
1. 版本包替换为新 HeroM2 引擎(含 Server微端服务器.exe)
2. 微端服务程序 → 选项 → 基本设置:监听端口(如8008)、访问密码/更新密码(与登录器配置器一致)、传奇目录指向完整客户端根目录(Data/Map/Wav 均在)
3. 微端网关端口与 list.txt 微端端口一致
4. 启主服后再启微端服务,玩家登录器勾微端模式实时拉补丁

九、外网联调与高频故障速查
自测:服务端本机用 127.0.0.1 登录器进一次确认无脚本错;再用手机热点+公网IP登录器进游戏,能选角色进图即外网通。
故障表:
• M2 启动报 Cannot open database → HeroDB 路径错、Mud2\DB 缺 DB 文件、BDE 未 Apply

• 输账号回登录界面 → !AddrTable.txt / !ServerInfo.txt 未填公网、7100 未映射、LoginSrv 未起

- 卡“正在连接服务器” → 7000 未放行、网关绑死 127.0.0.1、云安全组漏端口
• 进图黑屏能跑 → 客户端补丁缺、Resources 目录名错、MapInfo 地图号与 Mir200\Map 不匹配

- 登录器列表空白 → list.txt MIME 非 text/plain、HTTP 空间未生效、URL 拼错
• 外网能进内网不能进 → 网关未绑 0.0.0.0、动态IP未勾导致回包发内网

- 家门宽带进不去 → WAN 是 100.64 大内网,需公网IP或穿透
• 微端不更新 → 老 HeroM2 无微端、密码不一致、微端目录未指完整客户端

十、数据落盘与备份点
每日冷备 D:\MirServer\Mud2\DBServer\FDB(Hum.DB / Mir.DB 角色数据)、LoginSrv\IDDB(ID.DB 账号)、Mir200\GuildBase(行会)、Mir200\Envir(脚本/爆率/NPC)。改 Envir 脚本后 M2 → 控制 → 重新加载脚本,不必全服重启;改 !Setup.txt / 网关配置必须重启对应进程。HeroDB 的 Mud2\DB 文件夹禁止放进同步盘实时读写,易锁库损坏。

整套外网链路串起来:云 Windows → 装运行库 → D:\MirServer 英文根目录 + HeroDB 指 Mud2\DB → 配置向导填公网IP/动态IP → 手写复核 !AddrTable / !ServerInfo / MirGate.ini → 安全组放 7000/7100/7200/8000 → 按 DBSrv→LoginSrv→Gate→M2 顺序起 → list.txt 走 HTTP → 登录器密码/版本对齐 → 新 HeroM2 补微端服务。任一层 IP、端口、路径、密码错位,表现层就是回登录、卡连接、黑屏三类表象。