一、VMware虚拟机系统与基础环境准备
新建虚拟机选 Windows 7 / Windows 10 64位,分配内存 4GB 以上,硬盘 60GB 以上,网卡用 NAT 或仅主机模式,单机闭环不需要桥接外网。
系统装完后做三件事:
1. 控制面板区域语言改为英语(非必须,但避免部分老程序乱码)
2. 关闭 Windows Defender 与第三方杀软实时防护,把 D:\MirServer 加白名单,M2Server.exe、LoginGate.exe、DBServer.exe 常被误删
3. 安装 .NET Framework 4.0 以上、VC++ 运行库合集、Notepad++(严禁用 UTF-8 存脚本)
共享设定:虚拟机里建 D:\MirServer 作服务端根目录,客户端装 D:\LegendClient,路径全英文无空格,中文路径直接造成引擎读表失败
二、GOM引擎服务端目录结构核对
解压 GOM 单机版服务端到 D:\MirServer,必须包含以下核心目录与文件:
D:\MirServer
├─ GameOfMir引擎控制器.exe(GameCenter.exe)
├─ DBServer\(DBServer.exe 数据库服务)
├─ LoginSrv\(账号登录服务)
├─ LoginGate\(登录网关)
├─ RunGate\(游戏运行网关)
├─ SelGate\(角色网关)
├─ LogServer\(日志服务)
├─ Mir200\(M2Server.exe 主引擎、Envir 脚本、Castle 沙城、Notice 公告)
├─ Mud2\DB\(HeroDB 数据表目录)
├─ 登录器生成器\(GOM登录器配置器.exe)
└─ 补丁\(Data、Map、Pak、Graphics 等客户端资源)
缺任意一个目录,M2 启动必报“模块缺失”或“无法加载 DB”。
三、DBC2000 数据库配置(HeroDB 数据中枢)
GOM 老内核仍依赖 DBC2000 存角色、物品、魔法表:
1. 安装 DBC2000,默认路径 C:\Program Files\Borland
2. 控制面板 → 大图标 → BDE Administrator(蓝色小鱼)
3. Object → New → 类型 STANDARD → OK
4. 左侧 STANDARD1 重命名为 HeroDB(必须大写,区分大小写)
5. 右侧 PATH 指向 D:\MirServer\Mud2\DB(确认里面有 StdItems.DB、Magic.DB、Monster.DB)
6. Ctrl+S 保存,退出时选 Yes 保存变更
若 M2 启动报 Cannot open database,90% 是 PATH 指错或 DB 文件夹缺表。
新 GOM 内核若改用 Access(MirDB.mdb),跳过 DBC2000,在引擎配置器数据库页直接选 D:\MirServer\Mud2\DB\HeroDB.MDB 测连即可
四、引擎控制器配置向导(绑定 127.0.0.1)
双击 GameOfMir引擎控制器.exe → 配置向导:
• 游戏服务端目录:D:\MirServer\(末尾带反斜杠)
• 服务器名称:自定义,如 单机测试一区
- 游戏服务器外网IP:127.0.0.1(单机回环,绝不填公网)
• 数据库名称:HeroDB(与 BDE 内一致)
• 登录网关端口:默认 7000(冲突改 7001,记牢后面登录器要用)
- 游戏网关端口:默认 7100 / 7200,保持默认
• 勾选 Access 数据库或 DBC2000 按内核版本选
下一步直到保存,生成 !Setup.txt、Gate 配置、LoginSrv 配置
手动复核关键文件:
• Mir200\Envir\!Setup.txt → ServerIP=127.0.0.1、ServerName=单机测试一区
• LoginSrv\!ServerInfo.txt / !AddrTable.txt → IP 全改 127.0.0.1
- RunGate\Config.ini / LoginGate.ini → ListenAddr=127.0.0.1
五、服务端标准启动顺序(错序必红字报错)
不要直接双击 M2Server.exe,用控制器“启动所有服务”或手动按序:
1. DBServer.exe → 黑窗显示 DBServer Start Success
2. LogServer.exe → 日志服务无报错
3. LoginSrv.exe → Login Server Ready
4. LoginGate.exe → 网关监听 127.0.0.1:7000
5. RunGate.exe / SelGate.exe → 网关链入 M2
6. M2Server.exe(Mir200 主窗)→ 加载地图、NPC、怪物、脚本,底部状态栏显示“游戏服务器启动完成”且无红色报错
所有窗口常驻后台,关任一程序游戏直接断线。
六、客户端补丁与 PAK 适配
装 16 周年以上官方客户端到 D:\LegendClient:
1. 服务端“补丁”文件夹内 Data、Map、Resources、Graphics 整体复制到客户端根目录,覆盖合并
2. GOM 专用 Pak 补丁:打开登录器生成器 PAK 选项卡 → 客户端路径选 D:\LegendClient → 读取 Pak.txt,全部显示“密码正确”才算匹配,红色报错手动改 Pak.txt 路径
3. 若地图黑块、装备透明,先查 Map 目录 .map 文件名是否与 Mir200\Envir\MapInfo.txt 完全对应
七、登录器生成与本地列表
进 D:\MirServer\登录器生成器 → GameOfMir登录器配置器.exe:
- 基本设置:服务器名=单机测试一区,登录地址=127.0.0.1,端口=7000(与 LoginGate 一致)
• 列表地址:单机可写本地 txt,内容格式
[Server]
单机测试一区127.0.0.1 7000 0
1
或主列表填 http 公网 txt(单机无网就写本地路径)
• 客户端路径:D:\LegendClient
• 勾选单机模式(部分配置器叫“不加载外网模块”)
• 皮肤默认,点击生成登录器 → 得到 GameLogin.exe,复制到 D:\LegendClient 根目录
八、进游戏与 GM 权限验证
双击客户端内 GameLogin.exe → 输账号 test 密码 123456 → 注册 → 建角色进新手村。
验证清单:
• 地图加载正常、NPC 可见可对话
- 打稻草人有掉落、背包物品图标正常
• 输入 @GM 或 M2 控制台“用户权限”加管理员账号,权限等级设 10,回游戏输 @ReloadNpc、@Make 屠龙 1 能刷出物品即内核通了
九、MerChant.txt 与 Envir 脚本链路确认
进 D:\MirServer\Mir200\Envir:
• MerChant.txt → NPC 注册表(脚本名 地图号 X Y 名字 朝向 外观 …)
- Market_Def\ → 对应“脚本名-地图号.txt”对话逻辑
• MapInfo.txt → 地图号与 .map 文件绑定
• Monster.txt / MonsterSet.txt → 刷怪配置
- Setup.txt → 经验倍率 ExpRate、爆率 DropRate、刷新 MonRate 调参位置
改完任意脚本,M2 里 @ReloadNpc 或控制台“重新加载所有NPC”生效,不必重启整机
十、常见起不来硬排错
• M2 闪退:看 Mir200\Log\GomError.log,报数据库失败 → HeroDB PATH 错;报端口占用 → TCPView 查 7000/7100 释放
- 登录器连不上:LoginGate 没起、IP 不是 127.0.0.1、端口与登录器不一致
• 黑屏进图:客户端补丁没覆盖、Pak 密码错、MapInfo 里地图路径错
• NPC 不显示:MerChant.txt 字段错位、Market_Def 文件名没带“-地图号”、脚本存成 UTF-8
- 虚拟机宿主机互通:NAT 模式下登录器必须装虚拟机内部,或改桥接让宿主机连虚拟机 IP;纯单机直接在虚拟机里跑客户端最稳
基于VMware虚拟机与GOM引擎搭建单机传奇服务端全流程实操解析
来源:
作者:
点击:

