更新后弹“脚本错误”,先分是客户端玩家端还是服务端M2/引擎端。两边都不是真“中簿”,大多是更新包没完整、旧脚本和新引擎对不上、缓存冲突、杀毒把脚本删了。
一、客户端玩家端弹窗
表现:进游戏或点某个界面/活动按钮,弹“脚本错误/运行时错误/对象不支持”,点确定又来。
先临时关弹窗:
•登录器或客户端“系统设置—基础设置”里找脚本错误提示/运行时错误提示,关掉或勾“不再显示该类错误”。
•没这选项就清缓存:关游戏,进安装目录删ScriptCache、Temp里文件;玩家端缓存目录在%localappdata%下LegendWorld类文件夹也清掉。
•登录器有“验证文件/修复游戏/重新更新”就点一次,让它把缺的脚本、UI、Data文件补回来。
根治:
1.关杀软再更新,杀软常把Market_Def、QuestDiary、插件dll当风险件删了。
2.用登录器“全面验证”,别手动乱改Script文件夹。
3.还不行就卸客户端,删干净Script、Data残留,官网完整包重装。
4.装VC++运行库、开.NETFramework3.5/4.5+,纯英文安装路径,别放“桌面\传奇世界\新版\”这种中文空格路径。
二、服务端M2弹“脚本错误”
表现:M2控制台红字,或点NPC弹错误框,提示Envir\Market_Def\xxx.txt第N行未知命令/语法错误/找不到脚本。
更新后最常见原因:
•更新包只覆盖了客户端,没覆盖服务端Mir200\Envir下脚本。
•引擎升了,老脚本里命令被淘汰(GiveItemEx、MapMove参数、变量<$STR()>写法不对)。
•QuestDiary、Market_Def、MapQuest、QFunction-0.txt里中文标点、UTF-8BOM、隐藏空格。
•插件没写进PlugList.txt,脚本调了插件命令但引擎没加载。
临时屏蔽弹窗(仅测试用):
M2→选项→脚本设置/参数设置,关掉脚本错误弹窗提示/显示运行时错误信息,保存重启。这只会藏错误,NPC功能该失效还是失效,别当修好。
真修法:
1.看M2日志/Log\下文件,抄“文件名+行号+错误描述”。
2.用Notepad++打开对应txt,编码转ANSI/GBK,别用记事本另存UTF-8BOM。
3.核对#IF#ACT#SAY是否单独成行,中文逗号句号全换英文,变量名按新引擎来。
4.报错行用了老命令,就去新引擎QuestCommandList.txt搜;搜不到就是不支持,删掉或换原生命令。
5.文件被删就从同版本备份把Market_Def、QuestDiary对应文件贴回来,不是全服重做。
6.插件类报错:把dll加进PlugList.txt,M2里启对应插件,再重启。
7.清脚本缓存:关M2,删Mir200\Log\ScriptCache.dat(有就删),重启加载新脚本。
三、更新包不完整的最稳处理
•备Mir200\Envir、Mir200\Map、Mir200\Envir\Market_Def再动。
•客户端:登录器验证>清缓存>重装。
•服务端:同版本完整Envir覆盖>按M2日志改老命令>插件补齐>重启。
•杀软把Envir加白名单,不然下次更新又被删。
四、别做这几件事
•别信“万能去脚本错误器”,玩家端和M2端都别下来路不明修复exe。
•别只关弹窗不修NPC,关了之后装备回收、元宝商城、转生、合击、火龙合成会悄悄不干活。
•别把老清风/老GOM脚本原样塞进新翎风/新GEE当“更新”,命令集不是同一套。
•别用Windows记事本改中文脚本,BOM和换行能让你改到凌晨三点还红。
弹窗本身不是病,是引擎在喊“这段脚本我读不懂”。玩家端靠验证+清缓存,服务端靠日志行号改脚本或补文件。关弹窗只要勾个设置,去掉病根才叫修完。
如果弹的是“连接失败/资源不存在/地图不存在”,那就不是脚本语法,是IP端口、DBC数据库、MapInfo、StdItems没跟更新包对齐,别在#IF#ACT里死磕。
一、客户端玩家端弹窗
表现:进游戏或点某个界面/活动按钮,弹“脚本错误/运行时错误/对象不支持”,点确定又来。
先临时关弹窗:
•登录器或客户端“系统设置—基础设置”里找脚本错误提示/运行时错误提示,关掉或勾“不再显示该类错误”。
•没这选项就清缓存:关游戏,进安装目录删ScriptCache、Temp里文件;玩家端缓存目录在%localappdata%下LegendWorld类文件夹也清掉。
•登录器有“验证文件/修复游戏/重新更新”就点一次,让它把缺的脚本、UI、Data文件补回来。
根治:
1.关杀软再更新,杀软常把Market_Def、QuestDiary、插件dll当风险件删了。
2.用登录器“全面验证”,别手动乱改Script文件夹。
3.还不行就卸客户端,删干净Script、Data残留,官网完整包重装。
4.装VC++运行库、开.NETFramework3.5/4.5+,纯英文安装路径,别放“桌面\传奇世界\新版\”这种中文空格路径。
二、服务端M2弹“脚本错误”
表现:M2控制台红字,或点NPC弹错误框,提示Envir\Market_Def\xxx.txt第N行未知命令/语法错误/找不到脚本。
更新后最常见原因:
•更新包只覆盖了客户端,没覆盖服务端Mir200\Envir下脚本。
•引擎升了,老脚本里命令被淘汰(GiveItemEx、MapMove参数、变量<$STR()>写法不对)。
•QuestDiary、Market_Def、MapQuest、QFunction-0.txt里中文标点、UTF-8BOM、隐藏空格。
•插件没写进PlugList.txt,脚本调了插件命令但引擎没加载。
临时屏蔽弹窗(仅测试用):
M2→选项→脚本设置/参数设置,关掉脚本错误弹窗提示/显示运行时错误信息,保存重启。这只会藏错误,NPC功能该失效还是失效,别当修好。
真修法:
1.看M2日志/Log\下文件,抄“文件名+行号+错误描述”。
2.用Notepad++打开对应txt,编码转ANSI/GBK,别用记事本另存UTF-8BOM。
3.核对#IF#ACT#SAY是否单独成行,中文逗号句号全换英文,变量名按新引擎来。
4.报错行用了老命令,就去新引擎QuestCommandList.txt搜;搜不到就是不支持,删掉或换原生命令。
5.文件被删就从同版本备份把Market_Def、QuestDiary对应文件贴回来,不是全服重做。
6.插件类报错:把dll加进PlugList.txt,M2里启对应插件,再重启。
7.清脚本缓存:关M2,删Mir200\Log\ScriptCache.dat(有就删),重启加载新脚本。
三、更新包不完整的最稳处理
•备Mir200\Envir、Mir200\Map、Mir200\Envir\Market_Def再动。
•客户端:登录器验证>清缓存>重装。
•服务端:同版本完整Envir覆盖>按M2日志改老命令>插件补齐>重启。
•杀软把Envir加白名单,不然下次更新又被删。
四、别做这几件事
•别信“万能去脚本错误器”,玩家端和M2端都别下来路不明修复exe。
•别只关弹窗不修NPC,关了之后装备回收、元宝商城、转生、合击、火龙合成会悄悄不干活。
•别把老清风/老GOM脚本原样塞进新翎风/新GEE当“更新”,命令集不是同一套。
•别用Windows记事本改中文脚本,BOM和换行能让你改到凌晨三点还红。
弹窗本身不是病,是引擎在喊“这段脚本我读不懂”。玩家端靠验证+清缓存,服务端靠日志行号改脚本或补文件。关弹窗只要勾个设置,去掉病根才叫修完。
如果弹的是“连接失败/资源不存在/地图不存在”,那就不是脚本语法,是IP端口、DBC数据库、MapInfo、StdItems没跟更新包对齐,别在#IF#ACT里死磕。

