传奇服务端单机架设从零开始完整操作流程与配置详解

来源: 作者: 点击:
单机架设的核心是把数据库、服务端引擎、客户端三个独立模块串成一条能跑通的链路。中间任何一个环节的参数不一致,启动就会失败或者卡在某个界面进不去。下面按实际动手顺序把每一步拆开讲。

准备工作

系统建议Windows 7或Windows 10的64位版本。内存最低4GB,推荐8GB以上,服务端加客户端加补丁大约需要30GB硬盘空间。开始之前先把杀毒软件和Windows防火墙关闭,这两个东西会静默删除服务端里的网关程序和引擎文件,删除时不弹任何提示,等你发现启动失败时文件已经不在了。

安装运行库。下载微软常用运行库合集,把VC++ 2005到2022的全系列都装上。缺少运行库时服务端程序双击后直接闪退,不显示任何错误信息。

数据库配置

老版本服务端需要安装DBC2000。下载后双击安装包一直点下一步即可,安装路径保持默认。安装完成后打开控制面板,把查看方式改成大图标,找到BDE Administrator并打开。

在BDE Administrator界面中右键空白区域,选择New,弹出对话框中选择STANDARD类型,点击OK。左侧会出现一个名为STANDARD1的数据库别名,右键重命名为HeroDB,大小写不影响。然后点击HeroDB,在右侧的参数面板中找到PATH这一项,把路径改成服务端目录下Mud2文件夹里的DB文件夹,例如D:\MirServer\Mud2\DB。路径建议从文件夹地址栏复制粘贴,手动输入容易多敲空格或漏掉反斜杠。设置完成后点击Apply保存,关闭BDE Administrator。

如果服务端使用的是Access数据库而非DBC2000,跳过这一步,直接在引擎配置时选择对应的数据库文件即可。

服务端部署

把服务端压缩包解压到D盘根目录,文件夹命名为MirServer,完整路径为D:\MirServer。路径中不能包含中文、空格或特殊符号,这是导致引擎加载失败的头号原因。

解压完成后检查目录结构是否完整。正常应该包含以下几个核心文件夹:DBServer存放数据库服务程序,LoginGate是登录网关,LoginSrv是登录服务器,RunGate是游戏网关,SelGate是角色网关,Mir200是引擎主程序目录,以及根目录下的引擎控制器程序。缺少任何一个文件夹,服务端都无法正常启动。

右键MirServer文件夹,属性,安全,编辑,给当前登录的Windows账户勾选完全控制,避免数据库写入时被系统权限拦截。

引擎参数配置

双击服务端根目录下的引擎控制器,文件名可能是GameCenter.exe、GameOfMir引擎控制器.exe或类似名称。打开后进入配置向导,需要填写以下几项:

游戏服务端目录填写D:\MirServer。数据库名称填写HeroDB,必须与DBC2000中创建的别名完全一致。服务器名称自定义,比如“单机传奇”,注意名称中不能包含空格,否则会导致网关注册失败。外网IP地址填写127.0.0.1。如果引擎界面中有动态IP模式选项,填写127.0.0.1的情况下必须勾选,否则M2Server无法正确绑定端口。

配置完成后连续点击下一步,直到生成新的配置文件。然后点击启动游戏服务。正常启动会依次弹出多个黑色命令行窗口,包括DBServer、LoginGate、SelGate、RunGate和M2Server。

启动过程中重点观察M2Server窗口。如果日志中没有红色报错信息,并且显示“游戏服务启动成功”或加载地图完成的提示,说明服务端已经正常运行。如果某个窗口启动后立刻消失,先检查该程序是否被杀毒软件删除,再从压缩包重新解压一次。所有黑色窗口在游戏运行期间必须保持开启。

登录器生成

进入服务端目录下的登录器文件夹,找到登录器配置器程序。不同引擎的配置器名称不同:GOM引擎通常叫绿盟配置器或LM-gom配置器,HERO引擎叫LoginMaker.exe,GEE引擎叫GEE登录器配置器.exe。

打开配置器后按以下参数填写。服务器名称自定义,IP地址填127.0.0.1,登录端口填7000,游戏端口填7100。HERO引擎的配置器通常不需要填写列表地址,直接选择本地列表模式即可生成。GOM引擎的配置器如果强制要求填写列表地址,可以把列表类型切换为本地列表文件,然后在列表URL处填写本地txt文件的完整路径,例如D:\Legend\serverlist.txt。

配置完成后点击生成登录器,将生成的exe文件复制到客户端根目录,与Data、Map文件夹同级。

客户端准备

下载与服务端版本匹配的传奇客户端。服务端是1.76版本就配1.76客户端,是1.85版本就配1.85客户端,混用版本会导致引擎加载资源失败。

客户端解压到纯英文路径下,例如D:\LegendClient。把服务端附带的补丁文件解压覆盖到客户端根目录。补丁通常包含Data和Map两个文件夹,覆盖时选择全部替换。补丁覆盖不完整会导致进入游戏后黑屏、地图不显示、怪物看不见。

进入游戏

确认服务端所有黑色窗口都在运行状态,双击客户端根目录下的登录器,输入账号密码。首次使用如果没有账号,在登录界面点击注册,部分引擎的登录器自带注册功能,注册后直接登录即可。

创建角色进入游戏后测试基础功能:角色移动、打开背包、与NPC对话、释放技能。如果这些操作都正常,说明整个链路已经跑通。

GM权限设置

打开服务端Mir200\Envir目录,找到AdminList.txt文件。用记事本打开,按照“* 角色名”的格式添加一行,例如“* 测试角色”,保存后该角色重新登录即可获得GM权限。权限等级可以在同一目录下的AdminList.txt中调整,不同引擎的格式略有差异,部分引擎需要填写“* 角色名 权限等级”的格式。

常见启动故障排查

点击启动后没有任何窗口弹出。运行库没有装全是最常见的原因,重新运行运行库安装程序,把VC++和.NET Framework全部装一遍。另一个可能是解压过程中文件损坏,从压缩包重新解压。

M2Server窗口闪退。检查MirServer路径是否含中文,检查DBC2000的HeroDB路径是否指向了正确的DB文件夹。如果M2Server窗口中出现“脚本错误”或“未知命令”的提示,打开Mir200\PlugList.txt文件,把除IPLocal.dll以外的插件引用全部删除或前面加//注释掉,保存后重启M2Server。

登录器显示服务器列表但点击开始游戏没有反应。打开命令行执行netstat -ano | findstr :7000,检查7000端口是否处于LISTENING状态。如果没有返回结果,说明登录网关没有绑定端口,关闭所有服务端进程重新启动。如果端口被其他程序占用,在任务管理器中按PID找到占用进程并结束。

进入游戏后黑屏但能听到声音。补丁没有正确覆盖到客户端根目录。打开登录器配置器,查看补丁文件夹的名称,然后确认客户端根目录下存在一个完全同名的文件夹,名称差一个字符都会导致资源读取失败。

服务端全部启动正常但注册账号时提示连接失败。先确认DBServer窗口是否显示了数据库连接成功的提示。如果DBServer报错“Unknown database Alias: HeroDB”,回到BDE Administrator检查HeroDB别名是否存在以及PATH路径是否正确。