Исправление вылетов (рассинхронизация потоков) у SKSE плагинов (HDT)
09.05.2026 14888 1804 Автор мода: Mitradis Автор публикации: Mitradis Версия: 1.1 Перевод: Русский

Исправление вылетов (рассинхронизация потоков) у SKSE плагинов (HDT)

Это довольно простое решение казалось бы безвыходной ситуации с вылетами у HDT плагина. На первый взгляд вылеты у HDT плагина происходят совершенно случайно и спонтанно и это действительно так. Вы не могли отследить причину, как собственно и я. Проблема этого плагина заключается в постоянном спаме в память, так собственно и работают 90% всех плагинов, но даже не сам спам, а то, что в это время плагин зачем-то постоянно пишет данные в лог. Не нужно быть IT специалистом чтобы знать, что команды ввода-вывода на запись-чтение являются просто катастрофически медленными по сравнению с обменом данными процессор-память или ядра-кеш, и SATA3 или M2 ничем совершенно тут не помогут. Дело в том, что когда плагин решает записать новую строку, потому-что он обнаружил нового NPC, на которого решил повесить поддержку физики и решил сообщить об этом всем на свете, он посылает соответствующие команды ОС. И тут начинается праздник. Все знают о невероятной скорости интерфейсов типа SATA3, M2 и пр. Но мало кто догадывается сколько времени уходит на старт записи, на инициализацию: создания потоков, выделение памяти под операцию, опрос готовности железа, кучу обращений через подсистемы, драйвера и пр. прежде чем запись начнется. Специалисты поправят если что. А в этот момент плагину нужно работать и игре тоже нужно работать, а скорости функций там просто космические по сравнению с этим. Но идет не просто создание нового файла с одной строкой, а добавление строки к существующему, а это затягивает (в сравнении с наносекундами) операцию в разы, т.к. системе нужно считать старый файл и добавить строки и произвести записать. Собственно тут и происходит вылет судя по всему. Некая рассинхронизация в потоках происходит, что-то начинается или заканчивается раньше или позже, не дождавшись чего-то. Я не такой специалист в этом.

Решение: запретить плагинам писать логи. У одной части плагинов есть спец настройки ini файлов для отключения этих функций, некоторые плагины вовсе не пишут логи, но у части плагинов такая функция жестко прописана в коде и отключение не поддерживается. Поэтому пришлось лезть в IDA Pro и напрямую отключать сами функции логирования.

Обратите внимание, что nioverride.dll здесь версии 3.4.4 с фиксом вылета при загрузке локаций с обезглавленными телами. Версия 3.4.5 была вообще убрана с официальной страницы после моего сообщения о наличие вылета там при смене снаряжения (его исправление не представлялось возможным). По сути это еще один фикс CTD, не представленный больше нигде.

Опции для плагинов которые имеют переключатель в их ini файлах:
chargen - iLogLevel=-1
crashfixplugin - LogMessageToFile=0
nioverride - iLogLevel=-1 (этот плагин есть в наборе, но в нем не отключался лог)

Обратите внимание так же на эти исправления: раз, два,

Требования:
Вы должны удалить hdtskyrimmempatch, если он у вас есть и у вас установлен ENB и есть расширение памяти SKSE\SSME\OSA. Почему?
Скачайте основной архив и выберите нужные плагины для замены в папке Директория игры\Data\SKSE\Plugins, предварительно создав резервные копии старых.

Удаление:
Восстановить свои резервные копии или скачать оригинальные версии.

Требования:
Skyrim LE
SKSE плагины

 

1 2 3 »
Аватар Mitradis
Mitradis в 00:51:55, 11.05.2026
Нравится (1)
"Мод" полностью обновлен. Если ранее для отключения логов использовался неверный символ в пути к лог файлу, то теперь было сделано прямое, нормальное, отключение самих функций через обратный инжиниринг в IDA Pro. Только для тех плагинов которые не имеют настроек отключения логов и которые такие пишут. Но самым главным наверное является HDT плагин, т.к. в нем логирования шло просто в невероятном кол-ве при загрузке любого НПС. Теперь это не будет происходить на уровне кода самого плагина(ов).
Аватар vitaminko15
vitaminko15 в 01:31:40, 29.05.2026
Нравится
Странно, но при замене hdtPhysicsExtensions.dll из "комплекта поставки" BHUNP игра сразу при запуске крашится с ошибкой.
Аватар wprar
wprar в 16:42:36, 01.09.2025
Нравится
Подскажите, пожалуйста, я правильно понял, надо dll из этого мода заменить dll в уже установленных модах? Но, первое с чем я столкнулся это файл из мода AddItemMenu 3.2 имеет имя AddItemMenuLE.dll, а файл из этого мода называется AddItemMenu2.dll, как быть?
Аватар Slava_87
Slava_87 в 18:01:36, 22.10.2024
Нравится
Хмм... а можно было как-то попроще описания сделать... ни все же лютые айтишники wacko   И шарят в ваших сленгах biggrin
Аватар uriahheep
uriahheep в 18:24:16, 22.10.2024
Нравится (1)
Переведу ))) Чтобы не было вылетов ставьте SE.
Аватар mamlukKu
mamlukKu в 12:17:36, 20.07.2024
Нравится
Кста, почти все файлы отличаются версиями лично у меня. А про ini вообще молчу. Ставьте )) Для особо отчаянных -  не забывайте бэкапить старые файлы, их придется скорее всего  возвращать.
Аватар mamlukKu
mamlukKu в 12:10:45, 14.07.2024
Нравится
Спорная фича  для тех, кто по логам находит проблемные моды. Для обывателя -  вкл комп и нажать skse может быть.
Аватар _Johny_Hokkins_
_Johny_Hokkins_ в 20:33:28, 11.07.2024
Нравится
Хороший редактор ... Такую бы штуку для Fallout 3 и Fallout New Vegas ... Эх ... Никакой бы сэйв клинер не нужен был бы ) .
Аватар Taylon
Taylon в 20:20:51, 10.07.2024
Нравится (1)
К сожалению не работает. Игра не загружается вовсе. Загружаю через МО (запускаю SKSE файл). Проблему решил. Все установилось.
Аватар Mitradis
Mitradis в 11:10:31, 10.07.2024
Нравится (3)
Добавлен nioverride 3.4.4 с фиксом, подробнее https://vk.com/slmp_mod?w=wall-112261608_33261
Аватар tetet464859
tetet464859 в 12:05:49, 07.04.2024
Нравится
прочитал... ничего не понял... но на всякий апокалипсис скачал
Аватар opostol-sergey
opostol-sergey в 18:11:53, 19.01.2024
Нравится
Не могу скачать, как и другие исправления автора.
Аватар k©קaso√®
k©קaso√® в 18:46:27, 19.01.2024
№40, Администратор
Нравится (1)
я автору данного мода уже написал и уведомил что его моды удалены с гугла и не скачиваются, ждать когда он вернется на сайт и восстановит их )
Аватар Sinder
Sinder в 23:43:03, 09.12.2023
Нравится
Вот это вот очень полезная штука на самом деле.Действительно лишняя нагрузка на игру не нужна,тем более всякими логами-которые для обычного игрока на фиг не нужны.
Аватар serjcybercat
serjcybercat в 17:17:51, 01.12.2023
Нравится
вопрос , заменять надо то что есть ?
и SafetyLoad нужен или не нужен где то читал что не нужен ,
Аватар Mitradis
Mitradis в 14:58:20, 02.11.2023
Нравится
Перезалил. Обратите внимание, что так же добавлено "исправление" для файла nioverride.dll, чья версия 3.4.5 вызывает вылеты, в а версии 3.4.4 нет вылетов. Версию nioverride 3.4.4  можно спокойно использовать с версией Race Menu 3.4.5 т.к. она не отличается набором функций.
Аватар Gutran
Gutran в 18:29:13, 15.01.2023
Нравится
Немного с установкой запарно, некоторые факлы надо в плагины, а некоторые вообще в папку.  Попробовал скайрим запускался, но вот новую игру или загрузить сохранение не удавалось((( Скидывал в папку SKSE плагины, а сам скс кинул в папку с игрой в замену. Из модов у меня фикс кирилицы, оса, HDT барахло, DAR, Fnis. Что у меня стояло то и ставил из папок с заменой, но не сканало. Ещё анти крах мод. В общем пробнул, откатил назад благо заменены были лишь скс и плагинов штук 5-6. Жаль не удалось проверить работу данных фиксов(( Вот список того что у меня из плагинов есть https://ibb.co/BBsxj8C
Аватар Gmod25
Gmod25 в 16:15:44, 05.12.2022
Нравится
Ну поставил через MO 2, проверил, физика никуда не пропала, да и вылетов пока нет. При том, что я ничего не удалял, MO 2 просто сам заменил файлы. Побегаю, посмотрю, потом отпишусь
1 2 3 »
avatar
Gamer-mods.ru © 2012 - 2026. Все права защищены. Копирование материалов без указанной активной ссылки на данный сайт запрещено.