架设单机传奇后创建角色时持续提示“角色名已存在”或“账号角色重复”,即使使用全新名称仍无法解决,通常由数据库锁定、配置路径错误或服务端未正确读取账号数据导致。
首先确认账号是否真实创建成功。进入服务端目录 MirServerShare,打开 Account.mdb(需通过 Access 或 MDB 查看工具),检查 Accounts 表中是否存在刚注册的账号。若无记录,说明账号创建环节失败,角色自然无法关联,系统误判为重复。
其次检查 DBC2000 数据源配置。ODBC 中 Account 数据源必须指向 ShareAccount.mdb,HeroDB 指向 GuildBaseGuildBase.mdb。若路径错误或文件被占用,服务端无法写入新角色信息,每次尝试都会因查不到有效账号而回退到默认判断逻辑,触发重复提示。
第三,查看 HeroInfo.txt 与 UserCmd.ini 配置。MirServerMir200EnvirHeroInfo.txt 定义角色创建规则,若其中 AllowCreate 被设为 0,则禁止新建角色。UserCmd.ini 中若存在重复的角色名校验脚本(如 CHECKHERONAME),且未正确返回结果,也会导致死循环判断。
第四,清理客户端缓存。客户端 User 目录下存储本地角色缓存,若该目录存在同名角色记录,即使服务端无此角色,客户端仍会阻止提交。删除 User 文件夹(或重命名)后重新登录可强制刷新。
第五,验证 DBSrc 服务状态。DBSrc.exe 负责处理角色创建请求,若未启动或崩溃,所有写库操作失效。观察 MirServer 主窗口,若 DBSrc 进程消失或日志报错“Can't open database”,需重启服务端并确保 mdb 文件未被其他程序(如 Access)打开。
第六,检查角色名过滤规则。某些版本在 EnvirQuestDiarySystemQFunction-0.txt 中设置角色名黑名单或正则校验,若脚本逻辑错误(如始终返回 @Fail),会强制判定为无效或重复。临时清空相关脚本段可测试是否为此原因。
最后,确认服务端与客户端版本匹配。精简版客户端可能省略角色唯一性校验字段,导致协议不一致,服务端收不到完整创建包,反复拒绝请求。使用配套的完整客户端可排除协议偏差问题。
单机传奇创建角色提示重复问题排查方法
来源:
作者:
点击:

