传奇里弹“脚本错误”分两条线:玩家侧是登录器/客户端内嵌网页脚本崩了,GM侧是 M2 加载 Envir 下 TXT 脚本解析失败。两边成因不同,处理路径完全分开,别混着搞。
玩家进游戏前弹窗“当前页面脚本发生错误/Line xx 字符 xxx”
先点“是”或取消把窗关掉,能进游戏就别管它,多数是登录器 WebBrowser 控件加载商城或动态公告时的 IE 内核告警。
关完还频繁弹,做四件事:
1. 控制面板→Internet 选项→高级,勾“禁用脚本调试(Internet Explorer)”和“禁用脚本调试(其他)”,取消“显示每个脚本错误的通知”,确定后重开登录器。
2. 临时关掉 360、电脑管家、火绒,传奇登录器常被误拦脚本执行;Win10/Win11 的“基于声誉的保护”也关掉。
3. 登录器右键“以管理员身份运行”,客户端别放 Program Files,挪到 D 盘纯英文目录。
4. 删掉当前登录器,用服务端同引擎(GOM/GEE/HERO/V8)配套登录器覆盖,别拿 A 服登录器进 B 服。
还弹就是服端 NPC/活动页脚本本身有错,玩家改不了,等 GM 修。
玩家进游戏后点 NPC 才弹“脚本错误”
看弹窗里有没有文件名+行号(如 屠龙商人-3.txt 第 18 行)。有文件名就是服端问题,自己清缓存没用;没文件名纯代码报错,试删客户端的 Data 里临时缓存或重下补丁包。部分版本把登录器配置里的“清除缓存”点一遍能绕开旧 JS 残留。
GM 侧 M2 启动或运行中报脚本错误
M2 控制台红字或 MirServer\Mir200\Log\ScriptError.log、GEE 的 GeeLog\Script.log 会写清“哪个文件第几行什么错”,先抄下来再动。
最常见五类:
• 全角符号:中文逗号、中文括号、中文引号混进脚本,传奇只认英文半角,Notepad++ 全局替换。
• 编码不对:TXT 存成 UTF-8 或带 BOM,引擎读乱码。记事本打开→另存为→编码选 ANSI(GBK)覆盖。
• 结构残缺:#IF 后没条件直接 #IF,或 #SAY/#ACT 前少标签 [@xxx],标签名和 GOTO/@CALL 对不上。
• 命令不兼容:GOM 的 MapMove 在 HERO 里得写 ChangeMap,跨引擎抄脚本必炸,按本服引擎命令手册改。
- 路径/文件缺失:#CALL [\功能\奖励.txt] 但实际在 Market_Def\功能\ 下,或 MapQuest.txt 指向的地图脚本不存在,补文件或改相对路径。
改之前先备份:把 Envir 整个夹子复制一份,再改单个文件;改完重启 M2Server 看还报不报,别热加载完不测试就开服。
定位不到行就用分段注释法,把报错脚本一半用 ; 注掉看还崩不崩,逐步缩小到具体段。
服务端资源连带错误
脚本里 $IMG(10) 但 Pak 里没 10 号图、微端补丁下到一半、DBC2000 的 HeroDB 路径指错、物品 ID 和 Item.DB 对不上,都会表现成“脚本错误”或功能点了没反应。 这种先核对数据库再核 Pak 索引,最后才回头看脚本。
系统环境类(登录器一直弹同一句错)
管理员命令行跑 regsvr32 vbscript.dll 和 regsvr32 jscript.dll 注册脚本引擎;区域设置改中文简体(非 Unicode 程序语言设中文);IE 重置高级设置;缩放回 100%。 这套做完还错,基本锁定是登录器本身或服端脚本,不是你系统的事。
一句兜底:玩家能做的到“换配套登录器+关杀软+禁脚本调试通知”为止,再弹就找 GM;GM 侧永远先看 M2 日志的行号再改文件,盲改 Envir 只会越改越多。

