当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

传奇练攻房刺杀训练人物卡住弹出当前页脚本错误行2字符1语法错误排查

热度:
这个弹窗提示当前页的脚本发生错误,行:2字符:1错误语法错误,代码0,附带url,属于登录器内置网页组件报错,并不是M2引擎的NPC脚本报错,故障只会在练攻房刺杀训练人物卡死、大退重登之后触发,重装游戏客户端依旧反复弹出,说明问题根源不在本地游戏资源文件。登录器内嵌网页模块依赖系统内置网页解析组件,加载登录器的公告、活动、功能面板网页代码,代码第二行存在语法缺陷,人物在练攻房卡死强制退出之后,网页组件状态异常,再次启动游戏加载页面就触发报错弹窗,点击是或者否关闭弹窗,再次进入游戏依旧重复出现提示。

区分两种不同类型的脚本报错,M2引擎服务端脚本错误会在M2黑色日志窗口输出,提示LOADVAR、NPC命令、找不到txt文件这类信息,而当前弹窗标题是当前页的脚本发生错误,附带url地址,属于登录器内嵌浏览器组件解析网页代码时抛出的JavaScript语法报错。练攻房刺杀时人物卡住,是游戏逻辑执行异常导致角色状态锁死,强制关闭游戏进程之后,登录器网页缓存状态没有正常释放,下次打开登录器加载内置页面,直接读取损坏的页面缓存,触发第二行代码语法报错。重装游戏程序无法修复,因为重装只会替换传奇客户端资源,不会清理系统内网页组件缓存、登录器保存的网页临时文件,网页代码本身缺陷也不会随客户端重装修复。

网页代码本身存在语法缺陷是根本诱因,登录器内置网页页面第二行代码缺少符号、引号不闭合、换行符错乱,只要网页组件异常重启,读取这段代码就会判定语法错误。平时游戏正常运行是因为页面缓存加载成功,不会触发代码解析校验,一旦出现角色卡死、强制关闭游戏,登录器网页模块异常退出,下次加载页面会重新完整解析源码,直接触发报错弹窗。报错弹窗的是或者否按钮,只是选择是否继续执行这段网页脚本,无论选择哪一个,网页源码的语法错误没有修复,再次启动游戏加载页面依旧弹出同样提示,无法根除故障。

系统网页组件异常也会放大这类报错,Windows系统自带网页解析组件文件损坏、版本老旧,安全软件拦截登录器网页组件的脚本运行权限,都会让原本有缺陷的页面代码更容易抛出语法错误。系统Internet选项安全设置过高,阻止脚本和ActiveX运行,同样会造成网页代码解析中断,弹出脚本错误提示。部分安全软件会隔离登录器网页模块的临时缓存文件,每次打开登录器都会重新拉取网页,反复触发代码解析报错。

练攻房人物卡住的独立故障,和网页弹窗报错属于两个关联但分开的问题。练攻房刺杀训练人物卡死,是地图内刺杀判定逻辑、人物移动锁定机制异常,持续刺杀训练时人物坐标、攻击状态变量锁死,角色无法移动和操作,玩家误以为掉线直接大退关闭游戏。强制终止游戏进程,登录器内嵌网页组件没有正常关闭,缓存标记异常,下次启动登录器加载内置网页页面,就触发网页脚本报错弹窗。单纯解决网页报错,不能修复练攻房人物卡死,进入练攻房持续刺杀依旧会出现角色锁死,再次大退之后重复弹出脚本错误弹窗。

本地环境层面的排查处理,打开控制面板,找到Internet选项,进入高级选项卡,找到禁用脚本调试相关选项,勾选禁用脚本调试,取消脚本错误提示弹窗。删除系统临时互联网缓存文件,清理登录器目录下面的web缓存文件夹,删除网页相关临时缓存,清除损坏的页面缓存记录。关闭安全软件对登录器程序的脚本拦截、网页防护功能,把登录器主程序加入信任列表,避免安全软件拦截网页组件执行代码。修复系统网页组件依赖库,更新系统相关运行组件,修复损坏的系统网页解析文件。

登录器网页源码层面的修复,需要修改登录器对应的网页文件,打开报错弹窗内对应的url网页源码,定位第二行代码,检查语法结构,修正缺少符号、引号、换行错乱这类语法问题,保存修改后的网页文件,替换原有网页资源,重新发布登录器网页资源。网页代码修复完成之后,无论是否强制关闭游戏进程,再次打开登录器加载页面,不会再触发行2字符1语法错误弹窗。

练攻房人物卡死的底层排查,打开服务端MapQuest_def目录,查找练攻房地图对应的NPC脚本、刺杀训练逻辑代码,检查人物状态锁定、攻击判定、坐标移动变量逻辑。刺杀训练脚本缺少状态重置代码,人物持续刺杀循环时,人物移动标记、攻击变量无法重置,长时间训练造成变量锁死,人物卡在地图无法操作。增加脚本状态重置命令,角色退出练攻房、断开连接的时候强制清空刺杀训练相关变量,解除人物锁定状态,避免角色卡死。核对练攻房地图的人物移动限制参数,修正刺杀攻击判定逻辑,消除持续刺杀造成的角色坐标锁死。

网络层面的影响,网络波动导致登录器拉取网页资源不完整,下载的网页源码残缺,第二行代码直接丢失字符,本地网页组件解析残缺页面,抛出语法错误。网络不稳定情况下,每次启动登录器拉取到的网页代码片段不完整,报错随机出现,网络稳定之后网页资源完整下载,部分情况下临时不再弹窗,一旦再次出现角色卡死强制退出,故障复现。切换稳定网络,重新拉取登录器网页资源,获取完整网页源码,临时缓解报错现象。

测试验证流程,修改网页源码之后,清理本地全部网页缓存,完全关闭登录器和游戏,重启登录器,确认脚本错误弹窗不再弹出。进入练攻房开启刺杀训练,长时间持续测试,观察人物是否出现卡住不动的情况,出现卡死之后强制关闭游戏,再次打开登录器,检验是否重复弹出脚本错误提示。同时检查M2引擎日志,确认练攻房脚本运行没有变量报错、脚本中断记录,刺杀训练结束或者角色离开地图,相关变量正常清空,不再锁死人物状态。
[顶部]