Исправление вылетов при пересечении ячеек мира (и не только) 2
Это исправление явилось результатом продолжительных тестов и попыток, сначала определить причины, а позже - найти решение проблемы. Все началось с того, что я поставил мод Путешествующие повозки и обнаружил систематические вылеты. Сначала подозрения пали на сборку, но после тестов на чистой игре все подтвердилось. Были перепробованы все известные "исправления" памяти и прочее, ничего не помогало. Манипуляции с ресурсами так же не дали ничего. Блочное отключение квестов, событий, нпс пр. тоже не дали результат. Оставалось, что ошибка либо в движке игры, либо в основных ее файлах. В ходе тестирования было выявлено, что перегрузка скриптового движка (в особенности модами с эффектом плаща) повышает частоту вылетов.
Речь пойдет о главных мастер файлах игры и частности о их пересборке. Т.к. именно это помогает исправить, или снизить частоту вылетов, неизвестный общий сбой, происходящий во время перемещения по миру. Оговорюсь наперед: я понятие не имею, что именно там не так и боюсь на этот вопрос никто не сможет дать ответа, т.к. вариативность слишком большая и процесс выявления чего либо в самом файле Skyrim.esm нереалистичен. Т.к. дело идет по всей видимости о скрытых данных, ведь одного байта не там достаточно чтобы вызвать такое, а речь идет о файле в 250мб. Процесс пересборки довольно прост. Для начала я убедился, что новый TES5Edit корректно копирует сами формы, т.к. предыдущие его версии это не делали точно с некоторыми типами форм. После этого я делал следующее:
1. создавая пустые шаблоны esm файлов копировал туда сначала Navigation Mesh Info Map, т.к. новый TES5Edit просто крашится на этом процессе, а старый делает это корректно.
2. после чего шаблон с Navigation Mesh Info Map загружался в новый TES5Edit и происходило копирования всех разделов целиком. Это долгий процесс, занимает 10 минут и требует обязательно x64 версии TES5Edit, т.к. потребление памяти уходит за 5ГБ.
3. после копирования файл сохраняется и загружается в старый TES5Edit, где у него удаляется последний мастер файл (с которого происходило копирование) и сохраняется. На этом этапе старый TES5Edit не изменяет формы файла, только заголовок файла, чтобы все скопированные формы стали мастер-формами, т.е. самостоятельными как в исходном файле.
Таким образом получается чистый мастер-файл с перекопированными действительными формами. Так же в этот момент все данные приходят в правильный вид, т.е. если форма помечена как удаленная - при копировании ее содержимое будет пустое (не переживайте за моды которые в теории могут что-то восстановить, они просто перепишут новые данные). И именно пересобранные таким образом мастер-файлы делают игру стабильной.
Тестирование происходило как на чистой игре, так и на сборке Skyrim-GR по несколько часов. При тесте использовались наработки в тестирование от предыдущих попыток выявить причины. В частности было определено, что моды с эффектом плащей (DSR, EBT, Footprints, BFSEffects, getSnowy) здорово провоцирую игру на вылеты и без них игра относительно стабильна. Для сборки Skyrim-GR даже вышло несколько обновлений переделывающих эти моды в режим переключения. Но ведь всем понятно было, что не в модах дело. Поэтому для тестов я использовал множественный дубликат BFSEffects - являющийся как носителем самого эффекта, так и эффекта который реагировал на свой же эффект. С помощью такой простой "спам конфигурации" модов я получал практически постоянные вылеты в каждой поездке. И на этой же конфигурации было произведено конечно многочасовое тестирование на сборке и чистой игре. В файлах дополнительно разжаты сжатые формы (убран флаг компрессии). Это снимет с движка игры необходимость запускать процесс декомпрессии форм при их загрузке. Это сделано простым скриптом к TES5Edit.
За основу были взяты оригинальные файлы предварительно очищенные по инструкции STEP, чьи контрольные суммы совпадали с суммами в оригинальном гайде по очистки мастер файлов.
Обратите внимание, что файлы уже с вшитой локализацией. Я не знаю, возможно даже, что дело в ней. Поэтому учтите, что файлы только для РУССКОЙ версии.
Напомню, что это исправление не исправит ошибки в других модах и SKSE плагинах, вызывающие вылеты.
Обратите внимание так же на эти исправления: раз, два,
Требуется:
Skyrim LE
Установка:
Переместить свои мастер файлы (Dawnguard.esm Dragonborn.esm HearthFires.esm Skyrim.esm Update.esm), из папки Data, на всякий случай, куда нибудь.
Скачать и распаковать архив в папку игры.
Удаление:
Вернуть свои файлы с заменой в папку Data.
Изменения:
2.0 - в формах SNDR дескрипторов звука в Skyrim.esm данные параметра FNAM были ошибочно локализированы Беседкой. Этот параметр не может быть string.
3.0 - добавлены INTV записи в заголовок файлов. Насколько я понял этот пункт должен быть, просто на всякий случай. Он забит стандартными для плагина данными. Некоторые патчеры могут неверно прочитать заголовок в отсутствие этого пункта, опять же это проблема этих патчеров.
4.0 - дополнительно очищены дубликаты фильтром (между Update.esm и DW и DB).
5.0 - восстановлены RNAM записи миров, которые TES5EDIT скидывает при любом изменении файлов (в том числе при так называемой "очистке мастер файлов"). RNAM блоки данных в блоках данных миров - это данные о больших объектах выходящих за пределы ячеек. Излишне говорить, что это крайне важные данные без которых НПС и все прочее будет проваливаться вниз если нулевая точка координаты объекта находится в не загруженной ячейке, а сам объект уже должен быть хотя бы физически (коллизия) загружен в загруженной области. Данные восстановлены с помощью специально написанного для этого софта (https://github.com/Mitradis/Nifscan) в автоматическом режиме с добавлением дополнительных объектов Винтерхолда, которые там отсутствовали ( DE A6 0C 00 | E0 A6 0C 00 | E1 A6 0C 00 | E2 A6 0C 00 | E3 A6 0C 00 | E4 A6 0C 00 | E5 A6 0C 00 | E8 A6 0C 00 | EB A6 0C 00 | EC A6 0C 00 | ED A6 0C 00 | EE A6 0C 00 | EF A6 0C 00 | F0 A6 0C 00 ). Подробнее: https://vk.com/slmp_mod?w=wall-112261608_33290
6.0 - восстановлены CTDA данные, которые TES5EDIT неверно парсит и ломает пакеты НПС. Данные восстановлены с помощью специально написанного для этого софта (https://github.com/Mitradis/Nifscan) в автоматическом режиме. Подробнее: https://vk.com/slmp_mod?w=wall-112261608_33302 Напомню, что потеря этих данных происходит при банальном пересохранении в TES5EDIT, например при всем любимой "очистке мастер файлов", поэтому претензии по поводу багов конкретно к данному фиксу как и предыдущее исправление неуместны.
7.0 - исправлено кол-во добавленных блоков RNAM при фиксе объектов в коллегии Винтерхольд, из-за чего могли визуально пропадать части Коллегии. Это уже мой косяк, не увидел нумерацию.
8.0 - формы пересортированы в обратном порядке, нежели как сохраняет TES5EDIT. Теперь идентично для DB, но не идентично для остальных файлов. В них все вперемешку, но на всякий случай так же применена сортировка в обратном порядке. В DB таким образом исправляется отсутствие атаки у всадников риклингов.
Речь пойдет о главных мастер файлах игры и частности о их пересборке. Т.к. именно это помогает исправить, или снизить частоту вылетов, неизвестный общий сбой, происходящий во время перемещения по миру. Оговорюсь наперед: я понятие не имею, что именно там не так и боюсь на этот вопрос никто не сможет дать ответа, т.к. вариативность слишком большая и процесс выявления чего либо в самом файле Skyrim.esm нереалистичен. Т.к. дело идет по всей видимости о скрытых данных, ведь одного байта не там достаточно чтобы вызвать такое, а речь идет о файле в 250мб. Процесс пересборки довольно прост. Для начала я убедился, что новый TES5Edit корректно копирует сами формы, т.к. предыдущие его версии это не делали точно с некоторыми типами форм. После этого я делал следующее:
1. создавая пустые шаблоны esm файлов копировал туда сначала Navigation Mesh Info Map, т.к. новый TES5Edit просто крашится на этом процессе, а старый делает это корректно.
2. после чего шаблон с Navigation Mesh Info Map загружался в новый TES5Edit и происходило копирования всех разделов целиком. Это долгий процесс, занимает 10 минут и требует обязательно x64 версии TES5Edit, т.к. потребление памяти уходит за 5ГБ.
3. после копирования файл сохраняется и загружается в старый TES5Edit, где у него удаляется последний мастер файл (с которого происходило копирование) и сохраняется. На этом этапе старый TES5Edit не изменяет формы файла, только заголовок файла, чтобы все скопированные формы стали мастер-формами, т.е. самостоятельными как в исходном файле.
Таким образом получается чистый мастер-файл с перекопированными действительными формами. Так же в этот момент все данные приходят в правильный вид, т.е. если форма помечена как удаленная - при копировании ее содержимое будет пустое (не переживайте за моды которые в теории могут что-то восстановить, они просто перепишут новые данные). И именно пересобранные таким образом мастер-файлы делают игру стабильной.
Тестирование происходило как на чистой игре, так и на сборке Skyrim-GR по несколько часов. При тесте использовались наработки в тестирование от предыдущих попыток выявить причины. В частности было определено, что моды с эффектом плащей (DSR, EBT, Footprints, BFSEffects, getSnowy) здорово провоцирую игру на вылеты и без них игра относительно стабильна. Для сборки Skyrim-GR даже вышло несколько обновлений переделывающих эти моды в режим переключения. Но ведь всем понятно было, что не в модах дело. Поэтому для тестов я использовал множественный дубликат BFSEffects - являющийся как носителем самого эффекта, так и эффекта который реагировал на свой же эффект. С помощью такой простой "спам конфигурации" модов я получал практически постоянные вылеты в каждой поездке. И на этой же конфигурации было произведено конечно многочасовое тестирование на сборке и чистой игре. В файлах дополнительно разжаты сжатые формы (убран флаг компрессии). Это снимет с движка игры необходимость запускать процесс декомпрессии форм при их загрузке. Это сделано простым скриптом к TES5Edit.
За основу были взяты оригинальные файлы предварительно очищенные по инструкции STEP, чьи контрольные суммы совпадали с суммами в оригинальном гайде по очистки мастер файлов.
Обратите внимание, что файлы уже с вшитой локализацией. Я не знаю, возможно даже, что дело в ней. Поэтому учтите, что файлы только для РУССКОЙ версии.
Напомню, что это исправление не исправит ошибки в других модах и SKSE плагинах, вызывающие вылеты.
Обратите внимание так же на эти исправления: раз, два,
Требуется:
Skyrim LE
Установка:
Переместить свои мастер файлы (Dawnguard.esm Dragonborn.esm HearthFires.esm Skyrim.esm Update.esm), из папки Data, на всякий случай, куда нибудь.
Скачать и распаковать архив в папку игры.
Удаление:
Вернуть свои файлы с заменой в папку Data.
Изменения:
2.0 - в формах SNDR дескрипторов звука в Skyrim.esm данные параметра FNAM были ошибочно локализированы Беседкой. Этот параметр не может быть string.
3.0 - добавлены INTV записи в заголовок файлов. Насколько я понял этот пункт должен быть, просто на всякий случай. Он забит стандартными для плагина данными. Некоторые патчеры могут неверно прочитать заголовок в отсутствие этого пункта, опять же это проблема этих патчеров.
4.0 - дополнительно очищены дубликаты фильтром (между Update.esm и DW и DB).
5.0 - восстановлены RNAM записи миров, которые TES5EDIT скидывает при любом изменении файлов (в том числе при так называемой "очистке мастер файлов"). RNAM блоки данных в блоках данных миров - это данные о больших объектах выходящих за пределы ячеек. Излишне говорить, что это крайне важные данные без которых НПС и все прочее будет проваливаться вниз если нулевая точка координаты объекта находится в не загруженной ячейке, а сам объект уже должен быть хотя бы физически (коллизия) загружен в загруженной области. Данные восстановлены с помощью специально написанного для этого софта (https://github.com/Mitradis/Nifscan) в автоматическом режиме с добавлением дополнительных объектов Винтерхолда, которые там отсутствовали ( DE A6 0C 00 | E0 A6 0C 00 | E1 A6 0C 00 | E2 A6 0C 00 | E3 A6 0C 00 | E4 A6 0C 00 | E5 A6 0C 00 | E8 A6 0C 00 | EB A6 0C 00 | EC A6 0C 00 | ED A6 0C 00 | EE A6 0C 00 | EF A6 0C 00 | F0 A6 0C 00 ). Подробнее: https://vk.com/slmp_mod?w=wall-112261608_33290
6.0 - восстановлены CTDA данные, которые TES5EDIT неверно парсит и ломает пакеты НПС. Данные восстановлены с помощью специально написанного для этого софта (https://github.com/Mitradis/Nifscan) в автоматическом режиме. Подробнее: https://vk.com/slmp_mod?w=wall-112261608_33302 Напомню, что потеря этих данных происходит при банальном пересохранении в TES5EDIT, например при всем любимой "очистке мастер файлов", поэтому претензии по поводу багов конкретно к данному фиксу как и предыдущее исправление неуместны.
7.0 - исправлено кол-во добавленных блоков RNAM при фиксе объектов в коллегии Винтерхольд, из-за чего могли визуально пропадать части Коллегии. Это уже мой косяк, не увидел нумерацию.
8.0 - формы пересортированы в обратном порядке, нежели как сохраняет TES5EDIT. Теперь идентично для DB, но не идентично для остальных файлов. В них все вперемешку, но на всякий случай так же применена сортировка в обратном порядке. В DB таким образом исправляется отсутствие атаки у всадников риклингов.
Пересобранные мастер-файлы (175 МБ)Сервер №1
Оригинальные файлыСервер №2
Внимание: Автор данной темы имеет право удалять комментарии пользователей, если комментарии не соответствуют правилам сайта. Если ВЫ как пользователь считаете, что ваш комментарий был удален без каких-либо на то причин и без основания, то можете написать автору данной темы, и спросить, за что был удален ВАШ комментарий, с предоставлением причины удаления, исходя от правил сайта.
Вот интересно. А много ли таких "умельцев" которые чистят Мастер-файлы ?
Это покупаешь себе вертолёт и давай ему лопасти отпиливать и из двигателя железки выкидывать ?
А что Беседка до того тупа, что выдала игру с грязными файлами ?
Я где то читал, что вобще туда лезть нельзя. Или я не то читал ?
И как эти изменения в мастер файлах сочетаются с неофициальном патчем к тому же?
Как я уже писал это так же относится к так называемой "очистке мастер файлов". Все кто ее делал, а делали ее все, лишались этих данных на корню в DLC мастер файлах. Просто тут речь идет о главном мастер файле, который обычно никто не трогает. Я написал специальную программу для парсинга этих данных с оригинальных файлов и добавляет их в модифицированные (пересобранные либо просто пересохраненные даже без изменений) файлы.
Я не знаю что это было. Это или не это. Но сейчас за 5-6 часов игры, ну пару вылетов есть на Оригинале. Ну и фиг с этим. Не велика проблема. И вроде у меня тогда 4.0 версия была этого фикса, уже и не вспомнить. Как по мне я лучше ещё 20 модов выкину из тех 50 что стоят сейчас в игре, чем экспериментировать. Боязно уже.
У меня просто он стоит и я как бы задался вопросом. Если он исчез по вине Гугла, это одно. У меня на Гугле тогда исчезло ВСЁ.
Но если его снял Автор, то почему ? Лиж бы не из за брака. Хотя он работает уже наверно месяца два и нареканий нет.
Вобщем хотелось бы узнать причину отключения со скачивания.
Такие исправления и правда должны быть в оригинале. Себе не поставил только потому, что и так обмазался модами по самое не могу (включая старые исправления).
Пока работает не трогаю, а то убьет на**г. Папка с игрой весит 46 гигов б**, при условии, что стоит gt650 и 8g ram. В*****. Чихнешь, комп взорвется ... но пока работает. D
Купил ноут, появился повод пересобрать сборку. Этот мод в неё однозначно войдет. (ноуты пошли.. встройка от amd 5500u делает, мою старую видюху)
Вчера целый день и ни одного вылета. Так я ещё не просто играю, я его "дёргаю" постоянно. Ну типа выйду, что то поправлю в модах и захожу.
Побегаю, выйду, поправлю и захожу. И так раз 50.
С такими дёрганиями, я вобще не понимаю как он ещё и запускается)))))))) Я же там получается меняю в модах цифры, причёски и прочее.
Обалдеть.
То есть это не "Исправление" получается, а Новая Версия Скайрима 1.10))))))))) Так и надо написать Скайримушка версии 1.10
И эта конструкция не в Фиксах должна лежать, там её никто не найдёт через полгода, а рядом с Skyrim Patch 1.9.32.0.8 Ru и
Обновление Skyrim до Легендарного издания / Update of the Legendary Edition А в них должна быть ссылка на Это, типа "если кто то хочет ещё улучшить то возьмите это"
Неоф-Патчам уделено больше внимания, а они и на фиг не нужны.
Я же без них играю. И мне в кайф. Чуйка у меня на хорошие моды ну и получается на плохие.