传奇M2启动异常物品数据库加载失败与网络初始化错误解决方法

来源: 作者: 点击:
一、错误定性:权限与路径双重异常

报错“StartTimer exception: Network initialization failed. File or directory does not exist. File: C:\PDOXUSRS.NET Permission denied.” 核心问题是数据库组件无法在C盘根目录创建临时文件。同时“物品数据库加载错误”和“魔法数据库加载错误”表明DBC2000连接失败,StdItems.DB和Magic.DB文件无法读取。这是由服务端安装路径不当和权限不足共同导致的连锁反应。

二、解决网络初始化失败 (C:\PDOXUSRS.NET 权限)

这是Paradox数据库引擎的临时锁文件,必须在C盘根目录生成。Windows 10/11的UAC(用户账户控制)和系统目录权限限制导致创建失败。

• 手动创建文件并赋权:在C盘根目录(C:\)空白处右键 -> 新建 -> 文本文档,重命名为 PDOXUSRS.NET(注意是文件,不是文件夹)。右键此文件 -> 属性 -> 安全,给 Everyone 用户组添加“完全控制”权限。右键属性,取消“只读”属性。

• 关闭UAC虚拟化:按 Win+R 输入 regedit 打开注册表,导航到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System。在右侧找到 EnableVirtualization,将其值从 1 改为 0。修改后重启电脑,此操作允许老程序直接在C盘写入文件。

• 以管理员身份运行:找到引擎控制器(如GameCenter.exe)和M2Server.exe,右键属性 -> 兼容性,勾选“以管理员身份运行此程序”,应用后重新启动。

三、修复物品/魔法数据库加载错误 (DBC2000配置)

临时文件问题解决后,需确保数据库能正确读取。

• 重新配置DBC2000别名:打开控制面板的BDE Administrator(Borland Database Engine)。点击左侧的 HeroDB,在右侧 PATH 中检查路径是否指向你服务端数据库的真实位置,如 D:\MirServer\Mud2\DB。路径必须为绝对路径,且使用英文反斜杠。修改后必须点击菜单 Object -> Apply 保存,关闭时选Yes。

• 检查数据库文件完整性:确认 Mud2\DB 目录下的 StdItems.DB 和 Magic.DB 文件存在且不为0KB。若文件丢失,从服务端压缩包中重新解压覆盖。注意:服务端整体路径不能包含中文或空格,建议放在盘符根目录,如 D:\MirServer。

• 重置数据库连接:某些引擎(如翎风、GOM)需在引擎控制器中重新配置数据库类型。如果使用Access数据库(.mdb),确保已安装32位Access驱动。在控制器设置中,将数据库类型从“Access”改为“Sqlite”或反之尝试。

四、检查配套文件与依赖

• 运行库缺失:安装VC++ 2015-2022 Redistributable的x86版本,以及DirectX 9.0c运行库。老引擎可能还需要安装.NET Framework 3.5。

• 防火墙/杀毒软件拦截:临时关闭Windows Defender实时防护和第三方杀毒软件,将整个 MirServer 目录加入白名单。防火墙需放行7000、7100、7200、7300、8888等端口。

• 服务端文件权限:右键 MirServer 文件夹 -> 属性 -> 安全,为当前登录用户添加“完全控制”权限。对 Mud2\DB 和 Mir200 文件夹做相同操作。

五、修改配置文件路径

检查并修正服务端内关键配置文件中的绝对路径。

• 修改 !Setup.txt:打开 Mir200\!Setup.txt,搜索 DatabasePath,将其值改为与BDE中一致的路径,如 DatabasePath=D:\MirServer\Mud2\DB。

• 修改 DBSrc.ini:打开 DBServer\DBSrc.ini,确认 DBPath= 后的路径同样指向 Mud2\DB 目录。

六、启动顺序与最终测试

1. 完成以上修改后,重启电脑以释放被占用的文件句柄。
2. 手动创建 C:\PDOXUSRS.NET 文件并赋权。
3. 以管理员身份运行引擎控制器,按顺序启动:LoginSrv -> DBServer -> LogServer -> M2Server。
4. 观察M2启动日志,确认“正在加载物品数据库...成功”和“正在加载魔法数据库...成功”,无红色错误提示即可进入游戏测试。