先检查 DBServer 程序界面上方的菜单,点“管理”选“基本设置”,确认“允许建立新人物”处于勾选状态,有时误操作或脚本调用会取消该勾选,导致后续建号全部失败。接着打开 DBServer 目录下的 DBSrc.ini 或 DBConfig.ini,查找 LimitNewRole、AllowNewChar 之类参数,确保数值为 1 或 True,部分版本有内置的建号数量或时间窗口限制,达到阈值便停止响应建号请求。
去 Mud2\DBServer\FDB 和 Mud2\Logsrv\IdDB 目录,查看里面的 .db 数据库文件及同名 .idx 索引文件是否大小异常或为 0KB,长时间读写可能导致索引损坏,无法写入新记录。在关闭所有服务端程序后,打开 DBServer.exe 点“管理”选“人物数据管理”点“重建数据库”,或直接用备份的同名文件覆盖损坏的 db 和 idx 文件,再启动服务。
若使用了脚本控制建号,比如 QuestDiary 或 Market_Def 里的创建角色相关脚本,检查是否设定了全服角色总数上限、单账号角色数上限或建号时间间隔。打开对应脚本文件查找 RoleCount、CreateLimit、MaxChar 等变量,看数值是否被写死且已过临界值,修改后执行 @reloadquest 或重读脚本。
查看系统任务管理器中 DBServer.exe 的内存与句柄占用,若长时间运行后内存不释放或句柄数飙高,会造成死锁或拒绝新连接,结束 DBServer 进程并重新启动,或在出现规律卡顿时设置定时重启该服务。同时确认服务端所在磁盘剩余空间充足,数据库目录所在盘满盘会导致无法追加人物数据。
最后核对登录网关与 DBServer 之间的通信配置,在 DBSrc.ini 或 !Setup.txt 中检查 DBAddr、DBPort 以及人物服务监听地址是否指向正确内网 IP,且端口未被其他程序占用。任何一处指向错误或端口冲突,都会在运行一段时间后因连接池耗尽而表现为无法建号,改动后重启 DBServer 与网关即可。
开服正常运行数小时后无法建立人物的数据库与配置排查笔记
来源:
作者:
点击:

