本帖最后由 ldfxf 于 2013-5-30 12:21 编辑
带有问题脚本的存档可能会让你的游戏突然卡顿或者随机跳出,而在“PCB”(见下文)和通过等待31天清理存档这种小把戏都无法解决问题的时候,你可以尝试使用以下办法挽救存档。
脚本(Script)是什么:它们是MOD作者自己编写并利用SKSE以及游戏制定的规则运行的【游戏外挂】(当然原版游戏也有很多脚本),能实现原版游戏没有的功能和特效(比如一键换装),通常都存在于Plugin或Script文件夹或者.BSA文件里
如何完整的从存档中移除脚本-教程-解决CTD问题Second Edition第二版(文字描述很多,实际操作大概10分钟)
作者:flexcreator 需要的工具: 2) PapyrusDataTransfer(已包括) 首先,请在使用本方法前先尝试在控制台输入SKSE的新命令:ClearInvalidRegistrations,这个方法也可以清理你的存档中的脚本。
这个命令是干嘛的: SKSE 1.6.7更新: - 增加了新的控制台指令ClearInvalidRegistrations,可移除无效的OnUpdate()事件注册(即无效脚本的持续运行)
这个命令能阻止失去宿主MOD的脚本制造OnUpdate()事件,以及因此导致的卸载MOD时损坏存档以及存档文件臃肿问题 当对一个已经臃肿的存档使用这个命令时,该命令会阻止存档继续变大,同时通过游戏逐步处理完成所有队列中的事件而压缩存档大小。这一过程可能需要数个小时的时间,取决于存档的大小程度 。
如果需要在每次重新读取时自动处理,将以下内容添加到 \Data\SKSE\skse.ini(没有请自己建一个文本文档保存并改称.ini):
[General]
ClearInvalidRegistrations=1
请使用第二版的PapyrusDataTransfer(附件压缩包已包括) 新的PapyrusDataTransfer工具能让下面的操作更加更加安全,但是注意它仍然是一个实验项目,不保证没有问题。
介绍 众所周知,天际游戏中任何运行的脚本都是嵌入在.ess(存档文件)中的。不像湮灭或辐射3,在天际中你不能靠删除MOD来停止脚本的运作。这导致了很多问题,包括处理事件时脚本的延迟(游戏卡顿)和随机的游戏跳出。你只能对已装的MOD不爽,但你又不敢卸载它(否则读取存档时会跳出) 我遇到的情况是SerananSecret瑟拉娜的秘密这个MOD,这个MOD会在不正确的更新后破坏存档。“PCB”和31天等待这种小把戏对我都没用了,因为它们不会清理脚本。只要我想移除这个MOD游戏就会跳出。
这种时候许多玩家都会放弃记录然后从海尔根从头开始,浪费了无数个小时的游戏时间,珍藏的装备以及在天际世界中留下的足迹。但是请等一等!还有一种解决办法…… 你需要的是彻底将所有嵌入的脚本从你的存档中移除。
免责申明 备份你的旧存档!对任何因遵循此教程操作而导致的问题我概不负责。只有在遇到很严重的问题后再照这个说明操作。不要靠这个方法提高游戏性能。不要只是因为好玩这么做! 移除脚本你不会失去: 1)体验(任务目前进行的阶段和标记) 2)你背包里的物品 3)所有其他游戏中的物品(包括你扔掉的东西,死尸,等等)还有它们的位置信息 4)你在派系中的等级。你的贵族头衔 5)你的结婚对象 6)和NPC的关系 7)以前记录的可以招募的随从 8)等等其他……和没执行操作前几乎差不过 你会失去: 1)你会失去一些物品的状态(基本都会恢复到默认状态,比如给武器的附魔会消失) 2)领主和配偶都不知道你有房子 3)你房子里的装饰品可能会有点显示问题(可以手动修正) 4)你对一些MOD做的设置 但是,几乎所有东西的状态都能被PapyrusDataTransfer记录下来
工作进程:
准备工作 1.1)如果你已经无法读取你的存档了,请跳过这一段内容到下一节的清理环节。 1.2)通过在MOD管理器里逐个取消MOD的激活并运行游戏来确定问题MOD。强烈建议先知道你的游戏是因为哪个MOD出问题的(运行或未安装的)。
注意:某些MOD将脚本文件压缩在了BSA文件里,请使用解包程序BSAOpt(论坛搜索下载)来解压BSA文件确认它们是否包含脚本。
1.3)读取记录。等脚本运行比较多的场景完成(比如说你正在做某些任务的途中) 1.4) RELEASE ALL FOLLOWERS!解散所有的随从! 1.5)某些MOD需要用反安装方法才能卸载。照做! 1.6)变回人类形态(狼人和吸血鬼形态是基于脚本产生的!) 1.7)脱下所有带有魔法效果(乌木锁甲是有脚本信息的)武器装备 1.8)打开控制台并输入:save dirtysave 1.9)退出游戏
清理 2.2)打开dirtysave.ess(或你已无法打开的坏存档,记得备份),位置在”My Games\Skyrim\Saves”文件夹 2.3) 找到 "Global data table 3" -> Papyrus -> Data 如图,你现在看到的就是你存档中记录的脚本信息。 2.4)点击左边上面的dirtysave.ess(以后每次导出前请先点击一下),然后点击下面中间的Export导出,命名为PapyrusSource.bin,把文件放到tutorial文件夹所在目录(就是你解压后的PapyrusDataTransfer.exe所在的文件夹) 2.5)将PapyrusSource.bin先备份一下,然后改名为PapyrusBlank.bin 2.6)运行批处理文件zero.bat,如果系统要你确认的的话请输入”understand” 2.7) 现在刚才看到的那些脚本动态数值都已经被这个批处理文件改成0了。不要移除PapyrusSource.bin,稍后还要用的! 2.8)再次打开dirtysave.ess,到Papyrus -> Data,点击Import并选择PapyrusBlank.bin。在TESVESS中先选择任何一个其他的序列(改变光标位置,这样可以重置一下显示)再点击回到Papyrus -> Data。确保他的值都是0。之后将保存修改的ess文件(可以起名叫blanksave.ess)存到你的存档所在的文件夹"MyGames\Skyrim\Saves" 。 2.9)关闭TESVESS编辑器,再次打开并重新读取blanksave.ess来确认一下Data区域全部都变成了0(其实是因为有时候这东西会导入数据失败)。如果你看到旧的脚本数值,就回到2.2全部再做一次。 2.10)打开天际然后试试读取blanksave.ess来确认它没有问题(比如不会跳出)。如果有什么问题就再会2.2重新操作。 2.11)如果一切都正常,就不要存档退出游戏。 2.12)现在你有一个没有任何脚本信息的干净存档了!是时候决定把不想要的MOD扔掉了。别急,想想清楚,如果你在1.2时找到了问题MOD,现在做决定就很简单了! 2.13)不要删除MOD的文件。暂时把它们移动到一个备份文件夹。最后再删除。 2.14)整理好你想要的MOD,开始游戏并读取blanksave存档,打开控制台输入save cleansave.游戏会将所有的已安装脚本再次记录到你的存档中。 2.15)现在我们需要恢复动态数值。备份cleansave.ess 2.16)在TESVESS中打开Cleansave.ess并导出Papyrus Data部分的内容("Global data table 3" -> Papyrus -> Data)取名为PapyrusClean.bin文件 2.17)备份PapyrusClean.bin 2.18)将PapyrusClean.bin复制到tutorial所在文件夹(PapyrusDataTransfer.exe文件所在的文件夹) 2.19)复制PapyrusSource.bin到tutorial所在文件夹 2.20)会跳出一个CMD的DOS批处理窗口。等它自己完成(请耐心等待,运行可能需要很长时间,大概30分钟或更长;这全依赖于你装的MOD的数量) 2.21) CMD窗口在运行完成后会自动关闭。现在你的PapyrusClean.bin有一个更新过的版本了(这里面都是新的脚本,但它们还有以前从PapyrusSource.bin中提取出来的旧存档里的数值)你会看到tutorial所在文件夹里有一个RestoreReport.txt。如果你愿意可以测试一下。 2.22)接下来,我们要确保这次操作没有什么差错。将RestoreReport.txt移除或者删除。再次打开恢复的文件。 2.23)等一切完成后打开新的RestoreReport。到文件最下面,可以看到”Found 0 differences invariable values” 2.24)在TESVESS中打开cleansave.ess 2.25)将新的PapyrusClean.bin导入到”Global data table 3”->Papyrus -> Data 2.26)随便点一下其他区域,然后再次选择"Global data table 3" -> Papyrus -> Data 2.27)把获得的存档保存为“MyGames\Skyrim\Saves\restoredsave.ess” 2.28)现在打开游戏读取restoredsave。然后检查是不是一切都正常了。如果你上面操作正确,就不需要再用控制台读取那些特定的任务变量了(一切都已就位)。
收尾工作 3.1)修复显示问题。武器架上显示的武器的变化数值都是储存在脚本变化中的。所以在移除脚本后,你会无法从架子上拿起以前放的武器。要修正这个问题,只需把其他武器放在原来那个架子上。然后拿走所有武器后问题就解决了。 3.2)你的个人住宅里不会显示之前放的东西。只要把东西拿下来再放回去就行了。
请保留你的旧存档以防万一
必备文件分流(请尽量去原地址下载半小时以后点击Endorsment支持以下作者):tutorial压缩包
TESVESS editor
中文教程WORD2010版本
|