你这个现象描述已经把根因范围缩得很准了:同样服务端、同样登录器、另一台机器能进,换你这台就卡“开门后认证失败”,差异只在 DBC2000 装完之后里面是空的,而能玩的机器 BDE Administrator 里自带几个 net 开头的系统数据源——这基本可以判定不是服务端坏了,是你这台机器的 Borland Database Engine(BDE / DBC2000)没把传奇需要的数据库别名建出来,或者建了但 PATH 没指到服务端 DB 目录,导致 DBServer 起得来、M2 也“开门”了,但 LoginSrv 回查账号/服务器认证数据时读不到表,直接返回认证失败。
先纠正一个误区:BDE 里那几个“net…”开头的数据源(常见如 net_svr、net_db、net_log,或系统自带的 NetDir、NetWare 相关项)并不是传奇服务端必须依赖的“认证库”,它们是 BDE 默认样例/网络驱动残留。传奇老引擎真正认的只有一个别名,默认叫 HeroDB(少数端叫 MirDB、LegendDB,看端内 !Setup.txt 或 DBServer 配置),只要这个别名存在、PATH 指向正确、DB 目录里有 StdItems.db / Monster.db / Account.db 等文件,就能玩。你机器“什么都没有”才是病根。
一、为什么另一台有、你这台没有
DBC2000 安装分两种情况:
1. 完整版安装包 + 首次打开 BDE Administrator 时自动注册了样例别名 → 能看到 net 开头几项
2. 精简版 / Win10-11 下没用管理员跑安装 → BDE 注册表项没写全,Databases 树下空白,只剩默认 STANDARD1 甚至空列表
传奇端不靠那几个 net 项,靠的是你手动建的 HeroDB。另一台机器只是恰好装得全、看起来“有东西”,你这台装完是裸 BDE,所以必须自己建。
二、实修步骤(按顺序做)
1. 卸干净重装 DBC2000
控制面板卸载 → 删 C:\Program Files (x86)\Borland 和 C:\Program Files\DBC2000 残留 → 重新右键“以管理员身份运行”安装完整版,全程默认路径,别放带中文/空格目录。
2. 打开 BDE Administrator 建 HeroDB
• 32位系统:控制面板 → BDE Administrator
• 64位系统:必须走 C:\Program Files (x86)\Borland\BDE\bdeadmin.exe 右键管理员打开
- 左侧 Databases 树 → 右键 New → 驱动选 STANDARD → OK
• 把新建的 STANDARD1 按 F2 重命名为 HeroDB(大小写严格一致,别写成 herodb 或 HeroDb)
- 右侧 PATH 栏点 … 选你服务端 DB 目录,通常是:
D:\MirServer\Mir200\Mud2\DB
或 D:\MirServer\Mud2\DB
或 D:\MirServer\DBServer\HeroDB
以你服务端里实际放 Account.db / StdItems.db 的文件夹为准,路径禁中文禁空格
• 切到 Language 驱动选 Paradox 中国语(部分端选 ANSI)
• Ctrl+A 保存 → 弹窗选 Yes → 关掉 BDE 再重开确认 PATH 没被重置
3. 核对服务端里写的库名和你建的别名一致
打开以下文件看数据库名:
• Mir200\!Setup.txt → DBName=HeroDB
• DBServer\!DBConfig.txt / DBService.ini → HeroDB
- 引擎控制器 GameCenter → 配置向导 → 数据库名称栏
以上所有地方必须和你 BDE 里建的别名一字不差,不然 M2 启动日志会刷 “Open HeroDB Error / 找不到数据库”,开门后认证必败。
4. 把正常机器上的 DB 文件物理拷过来(关键)
你这台就算建了 HeroDB,如果 Mud2\DB 目录里是空的,照样认证失败。从能玩的电脑把对应 DB 文件夹整体复制过来,确认内含:
Account.db、StdItems.db、Monster.db、Magic.db、MinMap.db 等(Paradox 表会有 .db/.px/.yg/.val 配套文件,别只拷单个 .db)
5. 64位系统补注册(常忽略)
管理员 CMD 执行:
regsvr32 "C:\Program Files (x86)\Borland\BDE\idapi32.dll"
提示注册成功后再开 BDE,否则 BDE 读表返回空,LoginSrv 拿不到认证数据。
6. 启动顺序别乱
DBServer(看日志“数据库加载成功”)→ LoginSrv → LoginGate → SelGate → RunGate → M2Server(看日志“数据库连接成功 / 加载角色数据 N 条”)→ 登录器进游戏。哪一步日志报 Connection refused / Read HumanDB failed,就是上一步没起来或被防火墙掐了,先把 Windows 防火墙关了测,再决定加白名单。
三、快速自检清单
• BDE 里别名是 HeroDB 且 PATH 指向有 .db 文件的目录 ✅
• 服务端 !Setup.txt / DBServer 配置写的库名 = HeroDB ✅
• 路径纯英文无空格 ✅
- DBC2000 以管理员装、BDE 以管理员开 ✅
• 64位系统用了 x86 BDE 且 idapi32.dll 注册成功 ✅
• 登录器列表 IP=127.0.0.1、端口=服务端 LoginSrv 端口(通常 7000)✅
全绿还认证失败,把 M2 和 LoginSrv 日志前 30 行贴出来,基本就是端口冲突或登录器不配套。
你看到的“net 开头三个库”只是正常机器 BDE 残留,不是救命药;真正缺的是 HeroDB 这个别名 + 背后那堆 .db 物理文件,补上就能过认证。
传奇架设开门后认证失败排查:DBC2000空库与HeroDB缺失实修步骤解析
来源:
作者:
点击:

