传奇架设常见故障排查新手入门解决手册

来源: 作者: 点击:
架设传奇过程中碰到报错弹窗、启动闪退或者进游戏黑屏,绝大部分问题都能归到几个固定的故障类型里。把这些典型状况的成因和对应处理办法理清楚,架设过程会顺畅很多。

**启动服务端时提示“数据库连接失败”**

这个报错出现频率最高。原因是一键端自带的环境配置没能正确注册数据库组件。先检查服务端文件夹里的`DBSvr`子目录,看是否存在`HeroDB`或`Mir3DB`这类数据库文件。如果存在,手动运行目录里的`DBC_Setup.exe`或`数据库注册.bat`,执行过程中不要打断。

注册完成后,打开服务端根目录的`!Setup.txt`或`Config.ini`,找到数据库路径配置项,确认`DBPath`指向的目录与实际存放数据库文件的文件夹一致。有些版本需要把数据库文件路径写完整,比如`D:\MirServer\Mud2\DB`,路径里不能含中文。

如果使用的是绿色版DBC,没有安装系统服务,可以尝试以管理员身份运行启动器。右键点击启动程序,选择“以管理员身份运行”,这个操作能解决大部分数据库权限类报错。

**点启动按钮后服务窗口闪退**

闪退通常出现在启动“M2Server”或“游戏引擎”程序时。打开该程序所在目录,查看是否生成了`ErrLog.txt`或`Debug.txt`文件。里面会记录崩溃前的最后操作,常见记录是“地图文件加载失败”或“脚本函数未找到”。

地图加载失败的情况,去`Map`文件夹检查是否缺失了报错中提到的地图编号文件。从完整端里复制缺失的地图文件补进去就能解决。脚本函数未找到,则打开`QuestDiary`或`Market_Def`目录,用记事本打开报错行对应的脚本文件,把调用到的函数名改成实际存在的函数名,或者直接注释掉那一行。

还有一种闪退是因为启动器重复运行。打开任务管理器,结束掉所有名称里带`Server`、`M2`、`Gate`的进程,再重新启动。

**登录器点开始进不去游戏,一直卡在开门画面**

开门画面卡住不动,是网关端口不匹配的典型表现。服务端启动后会有多个网关窗口,分别是“登录网关”“角色网关”“游戏网关”。这三个窗口标题上会显示各自监听的端口号,默认是登录网关7000、角色网关7001、游戏网关7002。

打开客户端目录下的`Config.ini`或登录器生成的`ServerList.txt`,检查里面的端口号是否和服务端网关窗口显示的一致。如果服务端改过端口,客户端的端口值要跟着改。

另一个可能原因是“游戏网关”没有成功连接到“M2Server”。查看游戏网关窗口,如果一直显示“正在连接主服务”没有变成“已连接”,把游戏网关重启一次。重启后仍然连不上,检查`!Setup.txt`里`GateIP`那一项,确保填的是`127.0.0.1`。

**角色建好了但进地图黑屏**

进入游戏后地图全黑,只能看到角色名字和UI界面,这是补丁没打全或者补丁路径不对。服务端生成的地图数据在`Map`文件夹,客户端需要对应的地图文件才能显示。把服务端`Map`文件夹里的所有`.map`文件复制到客户端的`Map`目录下覆盖。

如果补丁复制之后还是黑屏,检查客户端根目录是否存在`Data`文件夹,以及该文件夹里是否有`Tiles.wil`、`SmTiles.wil`、`Objects.wil`这几个基础图库文件。这些文件体积较大,一键端往往不包含完整图库。从完整客户端安装包中提取这些文件放进`Data`目录,就能正常显示地图画面。

**怪物不移动或者打怪不掉血**

进入游戏后发现怪物站在原地不动,攻击后怪物不掉血也不反击,这是“游戏引擎”与“运行网关”之间数据不同步。把服务端的所有网关窗口按顺序重启一次:先关游戏网关,再关角色网关,最后关登录网关。然后逆序重新启动,等每个网关都显示连接成功后,再进游戏测试。

如果怪物可以移动但攻击不掉血,检查服务端`Config`目录下的`怪物属性.ini`,看怪物血量数值是否设置过高,或者防御值超出了角色攻击力的上限。把测试用怪物的血量临时改成10,攻击改成0,进游戏打一下看是否正常掉血,确认引擎本身运作正常后再调回原数值。

**架设好后只能单机,想局域网联机时别人连不上**

局域网连不上,核心是IP地址设置问题。服务端`!Setup.txt`里所有IP项不能填`127.0.0.1`,要改成运行服务端那台电脑的局域网IP地址,比如`192.168.1.100`。同时,网关程序里的IP监听地址也要改成这个局域网IP。

客户端电脑的登录器配置里,服务器地址填同一个局域网IP,端口保持不变。还要确认服务端电脑的防火墙是否放行了这几个端口,在防火墙高级设置里新建入站规则,允许7000、7001、7002端口的TCP连接。

**每次重启电脑后服务端就不能用了**

重启后服务端失效,是因为数据库注册信息没有持久化到系统。每次开机后,先运行服务端文件夹里的“安装数据库服务.bat”或“注册数据源.bat”这类脚本,再启动游戏服务。也可以把这两个操作写到一个批处理文件里,设置成开机自动运行。

如果用了绿色版SQL服务,重启后需要手动启动数据库进程。找到服务端自带的`启动数据库.exe`或`RunDB.exe`,每次开机后先运行它,等窗口提示“数据库服务已运行”再启动游戏引擎。

**GM命令用不了或者刷不出物品**

GM命令无效,先检查角色是否获得了GM权限。在服务端`AdminList.txt`文件里,把角色名字写进去,格式是“角色名 *”,保存后重新进入游戏。刷不出物品时,查看`StdItems.DB`里物品的名称是否与输入的命令完全一致,包括标点符号和空格。有些版本刷物品命令是`@制造 物品名 数量`,有些是`@生产 物品名 数量`,查看服务端`Command.ini`里实际定义的是哪个命令词。

**服务端启动没有报错,但客户端总提示版本不对**

客户端提示版本不匹配,是登录器与服务端加密算法不一致。使用服务端自带的配套登录器生成器重新生成一个登录器,不要从别处下载登录器来用。生成时注意选择与服务端引擎版本对应的登录器模板,常见引擎有火鸟、彩虹、3K,不同引擎的登录协议不通用。

如果重新生成后还提示版本不对,把服务端`LoginSrv`目录下的`LoginGate.exe`和客户端的登录器同时换成配套文件包里的版本,确保两端程序出自同一个打包来源。