传奇报错is not a valid date and time系统时间格式修正

来源: 作者: 点击:
玩传奇(包括登录器进游戏、单机M2启动、HERO/GOM引擎加载)弹出“is not a valid date and time”,翻译过来就是“不是合法的日期时间”,引擎读到了它解析不了的时间字符串。九成情况出在Windows系统日期格式、服务端!setup.txt里的旧时间戳、或客户端缓存时间文件三者身上,按下面顺序改,不用重装游戏。

1. 改系统短日期和长时间格式(玩家和架设都先走这步)
Win10/Win11:控制面板→时钟和区域→区域→更改日期、时间或数字格式→其他设置→日期选项卡。
• 短日期改成 yyyy-M-d 或 yyyy-MM-dd(例:2026-7-28)

- 长时间改成 H:mm:ss 或 HH:mm:ss(24小时制,例:14:30:00)
• 长日期随便,带“年月日”也行

应用确定,重启电脑。Win7同理在“区域和语言→格式→自定义”里改。时区必须锁“(UTC+08:00)北京”,别选UTC或自动。

2. 同步系统时间
右下角时间→调整日期/时间→开“自动设置时间”和“自动设置时区”,或cmd管理员跑 w32tm /resync。主板电池没电导致时间被重置到1980年或2038年以后,引擎一样报这错。

3. 玩家端清客户端时间缓存
进传奇客户端根目录,删掉或改名备份这些文件:
• Data\TimeCache.dat

• Data\ClientTime.cfg(有就改里面时间格式为 yyyy-MM-dd HH:mm:ss)

- Login.ini、Config.dat、UserCache.dat 直接删,重启登录器会自动重建
路径别放中文,D:\Mir2 这种纯英文。

4. 架设端改 !setup.txt(HERO引擎必查)
服务端 Mir200 文件夹里打开 !setup.txt,Ctrl+F 搜 DayOfGuildFountain=,把等号后面那一串时间(比如 DayOfGuildFountain=2012-03-2022:45:30 这种错位串)全删,留 DayOfGuildFountain= 空着,引擎会自己取系统时间;或者手写标准格式 2026-07-28 12:00:00(注意中间空格,别用T别用斜杠)。保存,关掉M2Server、DBServer、网关全部重开。

5. GOM/GEE引擎查 mirserver.ini / ServerSetup.ini
搜 StartDate= EndDate= OpenServerTime= 这类键,格式锁死 YYYY-MM-DD HH:MM:SS,年份四位、月日补零、分隔符横杠、时间冒号。看到 2026/7/28 2026.07.28 26-7-28 全部改掉。

6. 注册表兜底(改了格式还弹)
Win+R 输 regedit,进 HKEY_CURRENT_USER\Control Panel\International,右侧改:
• sShortDate = yyyy-MM-dd

- sShortTime = HH:mm
• sLongTime = HH:mm:ss

不用重启,改完即时生效,再开游戏。

7. 数据库脏数据(单机老库)
Navicat/SQLite 连 HeroDB,查 tbl_char 或 UserData 表里 CreateTime、LastLoginTime,把 0000-00-00、2023-13-01、1970-01-01 00:00:00 之前的值 UPDATE 成当前合法时间。角色表里藏一条脏时间,M2一加载就崩这句。

玩家自己玩商业服/官服,只做第1、2、3步就够了;自己架单机或开服碰到 M2 启动卡这句,第4、5步是必改项。改完系统格式不重启电脑直接开游戏,有概率注册表没刷进去,重启一次最稳。