当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

基于VMware虚拟机与GOM引擎搭建单机传奇服务端全流程实操解析

热度:
一、VMware虚拟机系统与基础环境准备
新建虚拟机选Windows7/Windows1064位,分配内存4GB以上,硬盘60GB以上,网卡用NAT或仅主机模式,单机闭环不需要桥接外网。
系统装完后做三件事:
1.控制面板区域语言改为英语(非必须,但避免部分老程序乱码)
2.关闭WindowsDefender与第三方杀软实时防护,把D:\MirServer加白名单,M2Server.exe、LoginGate.exe、DBServer.exe常被误删
3.安装.NETFramework4.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:\ProgramFiles\Borland
2.控制面板→大图标→BDEAdministrator(蓝色小鱼)
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启动报Cannotopendatabase,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→黑窗显示DBServerStartSuccess
2.LogServer.exe→日志服务无报错
3.LoginSrv.exe→LoginServerReady
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.170000
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注册表(脚本名地图号XY名字朝向外观…)

-Market_Def\→对应“脚本名-地图号.txt”对话逻辑
•MapInfo.txt→地图号与.map文件绑定

•Monster.txt/MonsterSet.txt→刷怪配置

-Setup.txt→经验倍率ExpRate、爆率DropRate、刷新MonRate调参位置
改完任意脚本,M2里@ReloadNpc或控制台“重新加载所有NPC”生效,不必重启整机

十、常见起不来硬排错
•M2闪退:看Mir200\Log\GomError.log,报数据库失败→HeroDBPATH错;报端口占用→TCPView查7000/7100释放

-登录器连不上:LoginGate没起、IP不是127.0.0.1、端口与登录器不一致
•黑屏进图:客户端补丁没覆盖、Pak密码错、MapInfo里地图路径错

•NPC不显示:MerChant.txt字段错位、Market_Def文件名没带“-地图号”、脚本存成UTF-8

-虚拟机宿主机互通:NAT模式下登录器必须装虚拟机内部,或改桥接让宿主机连虚拟机IP;纯单机直接在虚拟机里跑客户端最稳
[顶部]