《上古卷轴5:天际》CTD问题解法详述

整理:游戏232
2020-08-27 12:30:54

上古卷轴5天际出了CTD问题怎么办

你好,我是梦梦,根据CTD不同有各种不一样的解决方法,如下
1、打开游戏出现LOGO界面直接跳出。
用0.61.0以上的NMM版本查看插件列表中是否有显示红色的ESP或者ESM,如果有,去掉就可以了,打开游戏前请关闭NMM
2、载入游戏时CTD
MOD装的比较多的话很容易出现,安装精简字库和内存释放可以减少几率,同时存档尽量在室内,如果依旧跳出,可以采用二次读档法,先读取一个稳定的存档或者直接点新游戏,当可以弹出菜单的时候再读取你想读取的存档。
3、脱衣服CTD
骨骼MOD没有安装,安装并覆盖骨骼MOD可以解决
4、啪啪啪CTD(仅对实验室)
啪啪啪时候不要按太多下空格,并且不要经常啪啪啪
5、玩着玩着突然CTD
安装精简字库和内存释放可以有效解决问题,如果还不行,请删减MOD
6、突然花屏CTD(出现几率很低)
显存数据爆了,换显卡吧
7、固定位置或者固定动作CTD
查看该位置你是否安装了什么MOD,比如你安装的随从,马或者房子之类的存在于你即将看见的地方时你跳出了,那么直接去掉这个MOD就能解决。
8、穿某件装备或武器或释放某个魔法时跳出
直接删了那个装备,武器,魔法的MOD就能解决,或者放着别用。

上古卷轴5:天际sosCTD

CTD基本都是MOD间冲突,这一类的MOD要使用的话最好少装一些MOD

《上古卷轴5》防跳出方法及原因解析 怎么防跳出

1.首先,要开启papyrus的log记录功能,否则你的老滚不会生成日志文件。

上面红色箭头表示文件目录以及文件叫什么。
下面紫色箭头和框体表示:找到[papyrus](若没有,则在底部新建一个),然后寻找框体内的三个参数(若没有,在papyrus下新建),然后把它们三个改成1)
如果你使用的是MO,你起效果的skyrim.ini在这个目录:ModOrganizer\profiles\你的配置文件
2.找到你的日志文件
当你做完第一步之后,无论你的游戏过程是否ctd,是否bug,只要你进入了游戏,就会生成日志文件。
文件在这个位置:Users\你的用户名\Documents(这玩意是我的文档)\MyGames\Skyrim\Logs
同一时间,最多记录4个log文件。最近一次游戏的日志是Papyrus.0.log,上一次的是1,再上一次是2,最多到3,每一次是指你开启tesv.exe,到tesv.exe结束。
分析log的基础就是让log存在,上面的步骤是让log存在的教程。
下面开始讲一讲如何分析
3.根据LOG内容出现的时间,我把LOG内容分为三种。
运行游戏,读档,出现的LOG:这个所谓的档,最好是在吸烟室,并且保证吸烟室只有你自己,没有其他NPC,尸体,以及多余的物品。这部分LOG内容中的ERROR,建议大家弄懂它们的意思。如果明确知道这些error是无所谓的,或者有所谓,但是你可以无视它,那么就可以不解决,放着它。如果明确知道它会造成未来的某个严重问题,建议立即解决。
游戏过程中,不会引起CTD的LOG:这些log多造成逻辑问题。比如一个给冰怨灵绑定摇尾巴动作的函数找不到object,只会造成冰怨灵没摇尾巴,而不能ctd。这些error也是一样,如果你觉得它无所谓,那么不解决也是可以的。
引起CTD的LOG:这些error出现在papyrus0.log的后部,也就是你发生CTD时间戳的地方。在这里必须多说几句,ctd的原因有三种:文件缺失或者错误,当前游戏环境超过你的计算机处理能力,脚本严重错误。而你ctd之后查看log,ctd时间戳上的脚本错误,不一定是这次ctd的罪魁祸首,因为还可能是第二种原因引起的ctd....分辨的方法就是多次试验,100%跳的就是脚本原因。如果知道是脚本原因了,就要排查这个错误。时刻记住,找到发生错误的mod,就卸掉它,这是不可取的,至于原因,我后面会说,当然也可能忘掉了....
warning:警告。如果你不蛋疼,警告可以无视,因为它任何时候都不会引起ctd。但是你分析error的时候可能会借鉴一下这些警告。关于warning的解决方法,我在以前的帖子有所介绍。
tieba.baidu.com/p/3873900066这篇帖子讲的是warning:脚本不存在某属性的解决方法。相当的基础。
补充:我们买游戏,是为了玩游戏。虽然玩游戏的动机可能有很多,但是以编程和修改游戏内容为乐趣的人并不多,绝大多数人玩游戏还是纯粹为了游戏。我也是。所以说技术和游戏要平衡好....虽然我很尊敬DK大,但是她那样研究技术会占用很多时间(她的每一个mod的每一个文件都知道作用--).....我个人不会选择这样做。每个人都有每个人的看法,你们想怎么玩,怎么做,都是你们自己的选择。
4.如果CTD了,并且你已经确定某一条error或者某一堆error是引起这次ctd的原因,那么怎么办呢?
我随便找个脚本错误的例子....
[11/02/2014-12:21:22AM]Error:(000C6984):cannotfindvariablenamedfToggleBlend.
stack:
[(000C6984)].FXSetBlendVariableScript.SetAnimationVariableFloat()-""Line?
[(000C6984)].FXSetBlendVariableScript.OnLoad()-"FXSetBlendVariableScript.psc"Line38
[11/02/2014-12:21:22AM]:时间戳,你可以通过ctd发生的时间找到对应的脚本错误区域。一般引起ctd的error就是ctd时间戳,也就是最后的那个时间点上的错误。有时候也和稍微靠前的error有关。
Error:(000C6984):cannotfindvariablenamedfToggleBlend.:错误,括号里如果不是00或者uskp,smpc的序号,那么可以明确知道是哪个mod出现的错误。如果是00或者uskp,smpc的错误,就比较蛋疼,你不知道哪个mod出问题了。就算你知道哪个mod出问题,直接删掉是完全不可取的,因为删mod会坏档呀,好吧也可以用savetool或者pdt清一下存档,但是不一定能完全清理干净....后面是说究竟发生什么错误了,比如不能找到object,object的类型不对呀等等等.....
[(000C6984)]:这是发生错误的referenceID。关于referenceID的相关知识,我在后面会讲一下。
FXSetBlendVariableScript:这是发生错误的脚本。在data/scripts(或者某bsa下)一定会有一个同名的PEX文件,开源的mod或者原版(要安装ck),会有psc源码文件。
SetAnimationVariableFloat():这是发生错误的函数指令。这个函数可以是native类型(也就是不需要在psc中中定义的函数,这些函数是游戏本身就识别的),也可以是psc内定义的新函数,也可以是skse扩展的函数。
""Line?:这是被编译的psc内,发生错误的函数的行数。注意,反编译之后的psc不能用这个行数找到函数。
OnLoad()-"FXSetBlendVariableScript.psc"Line38:这里,分别是发生错误的event,以及发生错误的文件,以及event所在的行数。所谓事件,就是告诉游戏什么时候执行事件下面的语句。
5.分析和解决思路
首先分两个路径,都要去做。一个是脚本,一个是入口。
第一路径,通过psc文件的指示,去寻找起作用的那个psc文件。
要知道,如果原版有A.psc文件,uskp也有A.psc文件,Xmod也有A.psc文件,那么起作用的一定是Xmod的。怎么才会起作用呢?排在相对后面,并且入口中要挂载这个脚本文件。
找到psc文件之后,打开看,看懂它在做什么。
看的第一遍,看一下每个event和function下的主要函数指令都在做什么。
看的第二遍,针对出错的位置,进行分析。
这需要papyrus语言的知识,我已经说过了。
如果没有psc文件,那就只能找到pex文件,然后用TESVTranslator反编译。这个软件绝大多数时候是用来做汉化的。我这种懒比肯定不会去做汉化的。
方法:首先打开软件,然后点击文件,loadpapyrusPEX,然后在下面的pexdata下就会有反编译的脚本内容。

如果是一个20行以内的小脚本,用这个方法还稍微可以。但是1200行的脚本,就算你看懂,想修改也需要重写成正常的papyrus语法,否则无法通过ck编译。
第二路径:根据出错的referenceID,寻找出错的入口。
需要注意的是,referenceID是baseID实例化之后的id,在ck和edit下可能会找不到。
什么时候能找到?这个reference在文件制作的时候就已经被实例化了,例如所有有名字的npc,放在某箱子里的钥匙等等。还有就是这个东西不需要实例化。
什么时候找不到?这个reference是在游戏过程中实例化的。例如无名字的龙。
那么对于找不到入口的referenceID怎么办呢?
打开savetool最新版本,搜索这个ID,可能会找到这个reference的相关信息,你可以通过这些信息推断出它是什么入口实例化的。你还可以通过直接搜索出错的脚本,在所得的信息中推断入口是什么。
不过有些时候依然找不到入口,为什么呢?
因为实例化这个过程,在你上次存档到这次ctd之间......那就只能gg了。
知道脚本内容和出错入口,大概就可以知道mod这个部分究竟在做什么。

知道这些信息,如何解决呢?
你要通过这些信息去想,为什么这个脚本会出错?
然后针对原因,进行入口的修改/脚本的修改并且重新编译。之后再处理存档(一般来说是删掉出错脚本的相关内容,或者修改其中的value)。
我说这么少的内容,是有原因的。因为错误有无数个,每个错误的解决方法都不一样,我怎么写呢?
6.bug
bug区别于ctd,它不会引起闪退,你的游戏还可以继续。
不过bug也分为良性bug和恶性bug。
良性bug只是类似武器架E不动了,冰怨灵卡着不动了等等.....这些bug你能忍的话就不需要去解决。
恶性bug会让你的游戏无法继续,例如某任务卡住,某音乐播放不停止。
解决bug的思路和ctd差不多。只是把ctd时间戳改成bug嘛。
不过建议尝试看log之前,先读靠前的存档,多次试验,如果bug没了,就不用累死累活了....
7.log的局限性
很多时候,log给出的信息,只是xxx不能xxx,因为xxx不能作用在一个noneobject上.....
none是啥?
为啥那玩意变成none了?
这些log都不会给出。你需要自己分析,这个难度非常大....甚至modder都不一定能分析出来....毕竟游戏底层的东西只有b社员工知道。
所以嘛,错误能避免尽量避免。说到底,还是一个mod使用习惯好坏的问题。

上古卷轴5知识之路详细解法

滚五的这个dlc bug出了名的多,死活触发不了可以考虑控制台输入一个什么代码传送到一个有龙裔全物品,可以学习龙裔全技能龙吼的地方,该学学该拿东西拿东西,然后再控制台完成任务。具体代码忘了,可以百度。

1、简介

《上古卷轴5:天际》是Bethesda在2011年11月11日出品的史诗性奇幻风格RPG《上古卷轴》系列的第五部作品,属于单机游戏。《天际》的概念设计在2006年开始构筑,也是《上古卷轴4》发布的时期。随后《辐射3》的关注,它的开发暂时放置一旁,在2008年10月这款后启示录RPG发售,再次开始重塑这款作品。而关于新一代家用主机(ps4、Xbox One)的有关发售据说会在2015、2016年或者不发出。

2、游戏

《上古卷轴5:天际》  拥有高自由度,游戏设定在《上古卷轴4》的200年之后,随着天际省之王的暗杀,诺德内部出现了内战。大部分诺德人意图让天际省脱离帝国。诺德内战是上古卷轴的终极预兆,古诺德毁灭之神Alduin的回归,现已呈现为龙的形态。Alduin拥有一支苍龙军团,名为Jill。

3、特色

游戏设定在《上古卷轴4》的200年之后,帝国因为《白金协议》,允许梭墨人去天际抓捕、杀害祭祀塔洛斯的诺德人。因此,许多诺德人纷纷反抗帝国。天际省的至高王在与反抗军首领Ulfric的决斗中被杀死,从此,诺德内战全面爆发。诺德内战是上古卷轴的终极预兆,在ME纪元被上古卷轴放逐的世界吞噬者Alduin再现于天际。Alduin拥有一支苍龙军团,名为Jillmi。而主角dragonborn(龙裔,外号抓根宝)怀着龙神赋予的使命,踏上将奥杜因驱逐至时间尽头的艰难任务。

上古卷轴5知识之路详细解法?

滚五的这个dlc bug出了名的多,死活触发不了可以考虑控制台输入一个什么代码传送到一个有龙裔全物品,可以学习龙裔全技能龙吼的地方,该学学该拿东西拿东西,然后再控制台完成任务。具体代码忘了,可以百度。

1、简介

《上古卷轴5:天际》是Bethesda在2011年11月11日出品的史诗性奇幻风格RPG《上古卷轴》系列的第五部作品,属于单机游戏。《天际》的概念设计在2006年开始构筑,也是《上古卷轴4》发布的时期。随后《辐射3》的关注,它的开发暂时放置一旁,在2008年10月这款后启示录RPG发售,再次开始重塑这款作品。而关于新一代家用主机(ps4、Xbox One)的有关发售据说会在2015、2016年或者不发出。

2、游戏

《上古卷轴5:天际》  拥有高自由度,游戏设定在《上古卷轴4》的200年之后,随着天际省之王的暗杀,诺德内部出现了内战。大部分诺德人意图让天际省脱离帝国。诺德内战是上古卷轴的终极预兆,古诺德毁灭之神Alduin的回归,现已呈现为龙的形态。Alduin拥有一支苍龙军团,名为Jill。

3、特色

游戏设定在《上古卷轴4》的200年之后,帝国因为《白金协议》,允许梭墨人去天际抓捕、杀害祭祀塔洛斯的诺德人。因此,许多诺德人纷纷反抗帝国。天际省的至高王在与反抗军首领Ulfric的决斗中被杀死,从此,诺德内战全面爆发。诺德内战是上古卷轴的终极预兆,在ME纪元被上古卷轴放逐的世界吞噬者Alduin再现于天际。Alduin拥有一支苍龙军团,名为Jillmi。而主角dragonborn(龙裔,外号抓根宝)怀着龙神赋予的使命,踏上将奥杜因驱逐至时间尽头的艰难任务。

推荐阅读: