架设单机传奇时M2server启动到一半突然卡住,弹出一堆红字报错“物品数据库加载失败”或者“魔法数据读取错误”,引擎直接罢工。这种情况十有八九是数据库文件没配置好,或者路径指向出了问题。下面直接列出导致这些报错的具体原因和对应的修复步骤。
重新安装配置DBC2000数据库
传奇单机版依赖Borland Database Engine这个数据库引擎来读取物品和魔法数据。如果启动时报错“An error occurred while attempting to initialize the Borland Database Engine”或者“error $210D”这类信息,说明DBC2000没装好或者配置错了。先彻底卸载现有的DBC2000,重启电脑后重新安装。安装完成后打开控制面板里的BDE Administrator,右键Databases新建一个数据库,名称必须与版本要求的一致,通常是HeroDB。在右边的PATH选项里,浏览到服务端数据库文件夹,路径一般是D:\MirServer\Mud2\DB,确认后点击Apply保存。设置好后重启电脑让配置生效。
核对数据库文件是否完整
如果DBC配置没问题但M2还是报错,打开服务端数据库文件夹检查一下关键文件是否存在。物品数据文件是StdItems.DB,魔法数据文件是Magic.DB,怪物数据文件是Monster.DB。这三个文件缺一不可。有时候下载的版本解压过程中被杀毒软件误删了,或者文件损坏,就会导致加载失败。可以去隔离区恢复文件,或者重新下载版本,解压前关闭所有杀毒软件。如果文件都在但报错依旧,可能是文件本身有损坏,用官方原版文件覆盖替换试试。
用DBC排序器修复数据库排序错误
物品数据库和魔法数据库对数据排序有严格要求,如果排序错乱,引擎加载时会因为读取不到正确位置的数据而报错。下载一个DBC排序器工具,打开后选择数据库所在路径,对StdItems.DB和Magic.DB进行排序修复。排序完成后重新启动M2,看报错是否消失。这个步骤能解决大部分数据加载异常的问题。
检查引擎与数据库的版本匹配
有些传奇版本是用特定引擎写的,比如HERO引擎、GOM引擎、BLUE引擎等,它们对数据库格式的要求不一样。如果用的是HERO引擎的版本,却用GOM引擎的M2去启动,就会出现物品数据魔法数据错误。确认版本配套的引擎类型,下载对应的引擎包覆盖原文件。另外引擎版本太旧也可能导致兼容性问题,比如0328、0538这些老版本容易出现脚本错误和数据读取异常,更新到较新的引擎包能解决很多问题。
排查登录器配置与PAK密码问题
物品魔法数据显示错误,有时不是因为服务端没加载,而是登录器读取不到正确的文件。打开登录器文件夹里的pak.txt,查看里面列出的PAK文件路径和密码是否与服务端一致。特别是NewopUI.Pak这个文件,密码不对或者文件不存在都会导致界面素材加载失败,间接表现为物品数据显示异常。把服务端登录器目录下的NewopUI.Pak复制到客户端根目录,确保密码正确。配置登录器时PAK文件全部读取成功后重新生成登录器。
检查!Setup.txt里的数据库路径
打开服务端Mir200文件夹下的!Setup.txt,搜索[Setup]段落,找到ItemDB、MagicDB、MonsterDB这三项的路径设置。确认它们指向的数据库名称和BDE里设置的名称一致,比如都是HeroDB。如果路径写错了,比如指向了别的数据库名,引擎启动时就找不到数据。修改正确后保存文件,重启M2。
删除配置文件重新生成
网关或者引擎的一些配置文件损坏也会导致启动异常。进入D:\MirServer\登录器网关目录,把Config.ini这类配置文件删除,然后重新启动引擎,让它自动生成新的配置文件。同时检查所有引擎窗口是否都正常启动,总共应该有七个窗口,少了任何一个都会导致功能不全。每个窗口鼠标放上去看看有没有报错信息,比如端口被占用等。
排查杀毒软件隔离和插件干扰
很多启动异常是因为杀毒软件把引擎文件或者插件删除了。打开杀毒软件的隔离区,恢复被隔离的文件,并把整个服务端文件夹加入白名单。另外如果版本里带了第三方插件,但引擎不支持,也会导致启动时报错。打开D:\MirServer\Mir200\PlugList.txt,把里面除了IPLocal.dll之外的所有插件都删掉,然后重启M2。
完成上述所有检查修改后,重新启动整个服务端。观察M2启动信息,直到物品数据和魔法数据加载成功的提示出现,不再有红字报错,就代表问题解决了。进游戏测试一下,装备能正常显示,技能可以释放,说明数据库恢复正常。

