本帖最后由 请叫我铃百合 于 2019-2-7 22:25 编辑
更新!!!:
-更新至Version12 -现在来自Crash Fixes的错误或警告也将记录到文件了-默认启用。该文件是这个:Data/SKSE/Plugins/CrashFixPluginLog.txt
-新增自动的崩溃转储分析功能,默认禁用。本项会创建一个文件,该文件是这个:Data/SKSE/Plugins/CrashLog/crash_timestamp.txt
-如果用户的ENB设置挺糟糕的话,将在启动时向用户发出警告
-新增Enderal相关的崩溃修正
-新增magic effects list(魔法效果表单)相关的崩溃修正
-本帖内容同步
-等等
-联动SKSE插件预载:http://bbs.3dmgame.com/thread-5240915-1-1.html -我处理了一些原文中容易让人误会的语句,自己补充的和翻译的都是简洁易懂的,如果你还是看不懂和产生误会,可能我也救不了你了。。。 -坟帖不更,坟帖不更,坟帖不更,重要的话说三次。
常见问题: -UseOSAllocators=1,在碰到角色创建滑块或其它的时游戏崩溃了。解决方法:在CrashFixPlugin.ini中设置AlignHeapAllocate=1,缺点是增加加载时间和内存使用 -UseOSAllocators=1,在游戏启动或加载存档或不久之后崩溃了。解决方法:在enblocal.ini中设置ExpandSystemMemoryX64=false -游戏提示内存不足然后崩溃了。解决方法:在enblocal.ini里设置ReduceSystemMemoryUsage=true -地面纹理贴图闪烁怪异。解决方法:在enblocal.ini里设置ExpandSystemMemoryX64=false
以下翻译原作者的话及其他我自己的相关说明:
你可以把SKSE/Plugins/CrashFixPlugin.ini里的每一项修正分别激活|禁用,推荐保持默认设置,不过如果你在某些方面有问题并且你知道自己在做什么的话,你也可以更改默认设置。
如果你想看看本插件究竟修正了哪些崩溃问题(带寻址),以及一个对崩溃问题基于我最佳理解的短小精悍的解释,你可以去看看INI文件或是N网页面的readme那一栏。
本插件是为了修正一些常见的游戏崩溃问题,在已经遵循了教学指南的步骤以及合理的模组(mod)规则的基础上!本插件不能修正因胡乱安装mod或是mod间的恶性冲突所导致的游戏崩溃!
提高游戏稳定性的小贴士:
(这些是我注意到的一些方面,并不能保证绝对100%正确!)
如果你在你的INI中的下面没有一些被列举条目,这说明它们被设置为了默认值。
关于Data/SKSE/SKSE.ini(如果你已经在CrashFixPlugin.ini里设置了UseOSAllocators=1,那本项就不需要了): 设置DefaultHeapInitialAllocMB:Memory为768,如果你激活了一大堆mod或是uGrid值大于5,那么可以设置为1024,这将对防止存储数据和游戏加载期间的CTD起到很大的作用,尤其是你可以加载成功qasmoke空间加载单元里存的档的情况。最大值为1280。如果你有在使用ENB的话,在较高数值(大于768)时启动可能会造成CTD。 设置ScrapHeapSizeMB:Memory为256。更高的数值会让你在移动的时候更易CTD。
关于Skyrim.ini: uExterior Cell Buffer:General-本项设置得过高会更容易导致游戏崩溃,尤其是当游戏想要即刻卸除许多单元时。如果你设置为0或是直接删除它,那么游戏本身将会决定本项,并且这是最好的办法。
bPreemptivelyUnloadCells:General-设置本项为1将意味着游戏只要可行就将清除单元缓冲以及卸除单元。默认为0意味着让单元留在内存中直到我们需要为其它单元腾空间时。我觉得设置为0更好,因为没有理由即刻卸除单元,而缓冲的执行也是有相应的原因的。
fPostLoadUpdateTimeMS:Papyrus-调高本项设置将会导致加载时间变长。不过如果你设置得很低游戏也并不会崩溃(试了试设为5)。我设置的是500,自己感觉良好,你可以试试750甚至1000+,如果你激活了一大堆有重型脚本的mod。
bEnableLogging:Papyrus-设为0。没有理由去记录Papyrus语言然后写成日志记录,除非你正在开发一个mod。不断地写入文件会影响到性能表现,有时甚至是出乎大家意料的。Papyrus语言的日志记录对找到游戏崩溃的原因来说一点用都没有,虽然你可以用其来找到运行错误的mod脚本,在这方面会有用,但我还是建议在正常游戏时关掉它。
bEnableTrace:Papyrus-设为0,理由见上面。
任何其他的Papyrus语言设置-删掉。改变这些的默认状态只会导致游戏不稳定或是脚本执行滞后。
iPresentInterval:Display-开启垂直同步或是关闭。你应该不需要更改这个,因为默认为1(开启)这是很好的。
关于Safety Load(如果你已经在CrashFixPlugin.ini里设置了UseOSAllocators=1,那本项就不需要了): 如果你有无限加载或是游戏停止响应的情况的话,安装这个。它修复了一个内存分配方面会导致死锁的bug,即使你已经有了SKSE内存补丁你也依然需要这个。另外,它们所做的并不是相同的,SKSE内存补丁延长了死锁的问题,因为它分配了一个更大的内存块,如果你没有游戏停止响应或是无限加载的情况那你就不需要Safety Load。
关于Stable uGridsToLoad:
不要用这个。它会导致讹用内存,并且除非你常常去更改你INI里的uGridsToLoad设置,不然都是无用功。(我不明白为何你要这样)
关于ENB:
如果你要使用本模组的话,推荐在enblocal.ini里设置:
ExpandSystemMemoryX64=false
ReduceSystemMemoryUsage=true
关于Bashed Patch:
你应该制作这个,它可以帮助解决很多的mod间的冲突,特别是可能导致大问题的mod优先级列表相关。如果没有mod冲突,这个也不会有什么坏处,但是即使是一个比较少的mod列表通常也会有些这方面的问题。
关于LOOT:
LOOT是一个非常好的工具,可以帮你解决排序问题,但它并不是完美的,有时它会排错少数mod的顺序,这时就要按照你的最佳判断。LOOT也可以向你警示mod的其他潜在问题。
我的看法也是如此,因为有少数mod用LOOT直接排会导致功能不全甚至完全失效,新手前期可以用LOOT撑过难关,但后面就要学会自己手动排,如果你玩了很久还是只会依赖于自动排序工具和整合包这些的话,那你很可能会遇到很多无解的问题。
关于TES5Edit清洗:
@aimaozhai 告诉我,关于游戏原版的脏数据,ta专门问过uskp的制作团队中的Arthmoor大大,在加载uskp/usleep的情况下仍然需要清理。另外原作者meh321亦表示应该清理,我相信Arthmoor及meh321这两位大大,所以大家也最好是清理,不过目前我没干劲和动力通第四遍测试了,这里就期待大家的使用结果了~
关于游戏过程中:
我的看法是,游戏途中少添加些mod安装,最好不要卸载已安装激活的mod,没事不要去乱调mod排序,尤其是像安魂曲、非官方修正补丁一类的mod,你这是在作死你知道吗。。。当然大多数情况下单纯图形mod和纯SKSE插件是没有问题的。
重要提示: 如果你在使用本mod后发生崩溃情况,并且你使用了ENB,enblocal.ini里的ReduceSystemMemory设置为的true,那么你可能需要在本mod的INI文件里设置AlignHeapAllocate=1为AlignHeapAllocate=0。不幸的是,这是重要选项中的一项,关闭这项会让你不能最有效地利用本mod。(本条作废)
更新日志: -更新至Version11 -新增信息来帮助追查可能引起崩溃的损坏NIF文件
-为纹理贴图分配失败新增信息,此项通常是内存不足导致的
-其它修正
-------------------------------------------------下载地址----------------------------------------------------------
最后我再补几张图吧,免得大家说我老是码字没有图:
|