HDT Physics Extensions Crash Fix
07.09.2020 34773 10104 Автор мода: Hawk9969 Автор публикации: ąnizórđą Версия: 1.5.0 Перевод: Мультиязычный

HDT Physics Extensions Crash Fix

Этот плагин SKSE исправляет ошибку  0x15e2ec hdtPhysicsExtensions.dll, приводящую к краху игры при загрузке. Обычно такую ошибку воспринимают как сбой загрузки игры, потому что игра вылетает сразу после загрузки вашего первого сохранения.
Сбой происходит из-за гонки вызова функции TlsGetValue (при котором возвращается значение 0/NULL при ошибке инициализации), а затем, HDT PE, не проверяя это значение, выполняет арифметику по нулевому указателю и, как следствие, разыменовывает результат вычислений, тем самым вызывая сбой игры через обращение к недопустимому адресу памяти.
Решение состоит в немедленном принудительном возврате функции, если полученный результат TlsGetValue равен нулю, таким образом предотвращая ее попытку обращения к недопустимому адресу памяти и аварийному завершению игры.
*Гонка (состояние гонки) или гейзенбаг - "плавающая" ошибка. В данном случае приводит к тому, что переменная перед использованием не инициализируется.

Обновление 1.5.0.
- Добавлено ведение журнала (логов) исправленных ошибок. Лог информационный, для удобства пользователей. Чтобы пользователь знал, какие ошибки в его игре были исправлены этим фиксом.
Лог записывается по пути <Skyrim>/Data/SKSE/Plugins/hdtPhysicsExtensionsCrashFix.log.

Обновление 1.4.0:
- Добавлен фикс краха игры с ошибкой 0xC89E8.

Обновление 1.3.0:
- Добавлен фикс краха игры с ошибкой 0xD5A5C.

Обновление 1.2.0:
- Добавлен фикс краха игры с ошибкой 0xEF30.
Этот сбой происходил потому, что игра может вернуть ноль указателю ссылки на объект, который HDT PE не проверяет. Решение состояло в том, чтобы выполнить код сброса для этой ссылки на объект из HDT, который выполняется тогда, когда ссылка на объект больше не находится в ячейке ожидания.

Требования:
Skyrim LE 1.9.32.0.8;
SKSE 1.07.03;
HDT Physics Extensions.

Установка:
Вручную или с помощью модменеджеров.
Если вручную, то поместите файл hdtPhysicsExtensionsCrashFix.dll в тоже место где находится файл hdtPhysicsExtensions.dll, то есть по пути Data/SKSE/Plugins/

Неучтённые неисправности:
Функция TlsGetValue может обращаться и к другим адресам памяти без проверки. Это тоже можно будет исправить. Для этого автор просит сообщать ему о кодах ошибки.



 
Внимание: Автор данной темы имеет право удалять комментарии пользователей, если комментарии не соответствуют правилам сайта. Если ВЫ как пользователь считаете, что ваш комментарий был удален без каких-либо на то причин и без основания, то можете написать автору данной темы, и спросить, за что был удален ВАШ комментарий, с предоставлением причины удаления, исходя от правил сайта.
1 2 »
Аватар KristianDanteS
KristianDanteS в 21:49:09, 21.04.2021
Нравится (1)
При включенном UseOsAllocators=1 вылетает когда экипированно SMP Броня вместе с HDT частями именно с этими адресами: "0x000C89E8" и "0x000D5A5C".
Аватар ąnizórđą
ąnizórđą в 11:12:56, 25.04.2021
Нравится (1)
Раньше автор этого фикса писал, что не использует SMP. Поэтому он не рассчитан на работу с SMP. Да и вообще, совмещать две системы одновременно, SMP и HDT не желательно.
Аватар KristianDanteS
KristianDanteS в 12:12:47, 26.04.2021
Нравится
Хорошо, тогда не знаете ли вы, есть ли какой нибудь аналог HDT weapon slings для SMP физики?
Аватар ąnizórđą
ąnizórđą в 12:19:23, 26.04.2021
Нравится
Для оружия возможно две системы и не так критичны. Просто выше Вы писали про броню. 
Про Weapon slings для SMP ничего не могу подсказать.
Аватар KristianDanteS
KristianDanteS в 12:22:52, 26.04.2021
Нравится
Я играю с надетой броней SMP и оружейным ремнем от HDT weapons. И при первой загрузке игры, после снятия любой части брони (Шлем, перчатки и т.д.) оружие застывает и иногда случается CTD. Это происходит только при включенном Useosallicators=1. Я уже второй год ищу решение этой проблемы, и нигде не нахожу. Что только не пробовал. Может вы знаете в чем тут причина? Или это неведомая магия вуду SMP?
Аватар sergey9012
sergey9012 в 09:55:20, 27.10.2021
Нравится
Я использую Microsoft Compatibility administrator. Данная библиотека  должна загружаться с параметром Duplicatehandlefix, где модуль от HDT PE hdtphysicextension.dll должен быть  include , а та же dll от HDT SMP exclude. Кроме этого добавляется параметр  IgnoreOLEunregistration с указанием точного пути hdtphysicextension.dll от HDT PE и запретом на unregistered от библиотек HDT SMP. ВСЕ подчеркиваю ВСЕ т.называемые патчи совместимости PE и SMP созданы малограмотными школьниками, эти патчи загружают менеджер памяти для Windows XP чтобы вызвать сбой аллокатора в ntdll  и TESV. Это даже не метод. Это полная хрень.
Аватар Mitradis
Mitradis в 18:18:05, 18.09.2020
Нравится
Очень хорошо работает, просто великолепно. Прекратились зависания игры при загрузке или промотке времени, прекратились редкие вылеты при первой загрузке. Никогда бы не подумал, что авторы HDT плагина допустили столь детские ошибки (ведь проверка на null это лежит в самой основе программирования).
Аватар djastin089
djastin089 в 23:02:55, 12.09.2020
Нравится
фикс на самом деле хорошо работает,прекратились вылеты при загрузке сейвов,грязи чистильщики в них не видели,спасибо большое)
Аватар ąnizórđą
ąnizórđą в 22:21:42, 07.09.2020
Нравится (2)
Обновление 1.5.0.
Аватар sergey9012
sergey9012 в 12:10:05, 09.09.2020
Нравится
У меня что то никаких логов нигде так и не появилось.
Аватар ąnizórđą
ąnizórđą в 21:23:11, 09.09.2020
Нравится
Автор тоже сообщает, что возможно такое, когда логи плагин не записывает. По каким причинам - не уточняется.
Однако лог можно глянуть, открыв консоль в игре.
Аватар vvtori
vvtori в 09:50:15, 14.05.2020
Нравится
Я решил эти проблемы просто: удалил всё, что связано с HDT (спутниц и др.), и больше не устанавливаю моды с HDT.
Аватар Igorek70rus
Igorek70rus в 19:18:08, 09.09.2020
Нравится
Смешной вы человек, тысячи людей играют с HDT (в том числе и я несколько лет) и все ок, даже не ставил подобные краш фиксы, только память расширил в SKSE.ini и все, и то для тяжелых текстур макияжей там всяких, а HDT проблемы только из за не правильно установленных модов, или конкретных кривых модов, например спутниц.  cool
Аватар djastin089
djastin089 в 11:24:33, 12.09.2020
Нравится
нравится играть деревянными персами - играй, кто мешает
Аватар ąnizórđą
ąnizórđą в 18:23:19, 13.05.2020
Нравится (3)
Обновление 1.4.0.
Аватар sergey9012
sergey9012 в 15:37:59, 14.05.2020
Нравится (1)
Поекратились  CTD при раздевании/ одевании миксов HDT PE  и HDT SMP. Спасибо!
Аватар povlani
povlani в 11:48:13, 01.05.2020
Нравится
Будет ли работать, если запускать через MO.
Аватар ąnizórđą
ąnizórđą в 13:33:27, 01.05.2020
Нравится
Будет.
Аватар kwenda_kutomba
kwenda_kutomba в 05:40:14, 01.05.2020
Нравится (2)
What's New in Version 1.3.0Released Wednesday at 07:42 AM
  • Added an additional crash fix for hdtPhysicsExtensions.dll+0xD5A5C.
Аватар ąnizórđą
ąnizórđą в 13:38:14, 01.05.2020
Нравится
Спасибо за уточнение. Исправила.
Аватар badun
badun в 22:43:21, 29.04.2020
Нравится
с моими вылетами не помогло :))))  всё равно при быстром перемещении иногда вылетаю smile ставил ради эксперимента smile  ибо  вылетов у меня оч мало .
Аватар andreyvsh
andreyvsh в 00:07:18, 30.04.2020
Нравится
Как я понял - этот фикс работает на этапе загрузки сохранения. Там у Беседки зарыт попадос на мультизадачность. При перемещениях могут работать другие баги. Попробуйте сменить движок HDT-PE SMP. Я решил так свои проблемы-вылеты.
Аватар Sayonara
Sayonara в 01:03:25, 01.05.2020
Нравится
Да вылет при перемещений это не всегда дело рук физики, движок сам по себе не стабильный от этого не избавиться в 32 битной версии.
Аватар kwenda_kutomba
kwenda_kutomba в 06:14:38, 01.05.2020
Нравится
не надо гадать на кофейной гуще, в skse.ini (если его нет, создайте) в [General]EnableDiagnostics=1, будут записываться дампы ошибок C:\Users\ИМЯ ПОЛЬЗОВАТЕЛЯ\Documents\My Games\Skyrim\SKSE\Crashdumps. В любой дебагер загружаете эту ошибку и смотрите, там все написано, обычно. И в логах загрузки skse, если что то не так, обычно пишется plugin not loaded, если изза плагина вылет. Если изза перегруза анимаций, как у меня бывает редко, тоже в дампе, обычно решается сокращением кол-ва анимаций. Если вылет изза скриптов, что бывает часто именно при загрузке -> savetool->чистка сохранений от orphan скриптов. Вообще  начиная разговор о стабильности движка, добейтесь для начала стабильности своей системы, памяти там, проца и соответствия количества ваших модов и вашей системы. А так 450 модов, 9500 скриптов, 216000 ссылок на скрипты, 7000 анимаций и нет вылетов при нормальной оптимизации на "нестабильном" 32 разрядном старом движке. А при переходе с 4 поколения проца на 9й вылеты пропали как класс. Вот и думайте, что там пишут в требованиях разрабы аутисты из беседки.
Аватар andreyvsh
andreyvsh в 07:24:33, 01.05.2020
Нравится
Очень большая и гневная тирада. Но правда непонятна главная мысль. Т.е. с проблемой некорректного использования мьютексов при программировании тредов (мультизадачность) надо бороться апгрейдом железа?

Вы думаете что создать гонки на крутом проце нельзя? К сожалению не так.
Проблему так называемого FootIK, я получил первый раз после хорошего апгрейда железа. Это один из вариантов проблемы с которой борется данный фикс.
Тупо получил вылет с дурацкой ошибкой при загрузке сохранения. Бороться можно было только двумя путями:
1. Загрузить страшно ранний сейв, а потом уже ...
2. Установить в диспетчере на TESV.exe один проц., а после загрузки сейва вернуть все.
Слава богу нашел фикс который это делает автоматом и снял проблему.
Оцените шутку юмора - 1 ПРОЦ ! (отключение мультизадачности) решил проблему.
Так что насчет Беседки не стоит.
Аватар kwenda_kutomba
kwenda_kutomba в 09:31:02, 01.05.2020
Нравится
может попробовать сделать так? https://drive.google.com/open?id=16grKypXw0OyFjFpAX9vq8TlU4Do6oTMo
вначале перевод, дальше тема с реддита. О мультизадачности. Не надо делать в диспетчере. Вы берете обрезаете себе сразу общую производительность или вы лучше разбираетесь как перераспределить процессы между потоками? Я написал, что прежде чем что то делать нужно конкретно ЗНАТЬ что. А без дампа ошибки как узнать? Проблему можно создать на чем угодно. И я говорю не про как бороться, а как избежать.  Насчет железа, я не думаю, а знаю, проверено на трех поколениях, поэтому все таки в беседке аутисты, которые не доделывают все должным образом и делают только как им удобно, чтобы получить бабло сразу.
Аватар andreyvsh
andreyvsh в 09:51:28, 01.05.2020
Нравится
Не будем ссориться, одно дело делаем. Но вы меня плохо прочитали. Процы у меня меняет мод.Диспетчер использовался на первом этапе дабы понять проблему. Решение было: на этапе первой загрузки сейва включено 1 ядро. После включаются ВСЕ.

PS.
Вы же сборку делаете, если я не путаю. Включите в нее этот мод. Он здесь на сайте.
Аватар ąnizórđą
ąnizórđą в 13:18:06, 02.05.2020
Нравится
В SKSE.ini параметр [Debug] WriteMinidumps=1
Аватар kwenda_kutomba
kwenda_kutomba в 21:33:41, 02.05.2020
Нравится (1)
да, спасибо за поправку, но и диагностику, чтобы был лог загрузки skse надо тоже.
Дебагер на Вин10, если кому надо WinDbg Preview https://docs.microsoft.com/ru-ru....preview , в microsoft store он есть.
Аватар gender65
gender65 в 19:19:17, 13.05.2020
Нравится
Какой прогой объединяете плагины ? А то у вас прочел 400+ модов стоит.
Аватар gender65
gender65 в 19:17:44, 13.05.2020
Нравится
Рекомендую поставить это !  https://gamer-mods.ru/load....-0-8514
Тоже многие годы мучился с вылетами ,установив эту шнягу забыл,что такое вылеты,честно.Причем моды стоят тяжелые и в полном объеме - 255 плагинов,текстурки с высоким разрешением  и тд.
Аватар badun
badun в 21:18:30, 29.04.2020
Нравится
вылеты имеются но не частые :)) всё равно возьму ну а вдруг smile biggrin
Аватар ąnizórđą
ąnizórđą в 18:51:55, 29.04.2020
Нравится
Обновление 1.3.0.
Аватар sergey9012
sergey9012 в 15:13:44, 30.04.2020
Нравится
1.3 сбрасывает при cell change  в логах нет ничего. С 1.2 все нормально видно даже на глаз и не так конфликтует с HDT SMP удается их развести при помощи  параметров  Microsoft Compat.administrator DuplicateHandlefix для hdtSkinnedMeshPhysics.dll в модуле hdtPhysicsExtensions.dll, запретить выгружать Вашу hdtSittingHeightFix.dll, добавление  havok_fix dll  в HDT SMP  с параметром Correctopenfileexusive  в модуле hdtPhysicsExtensions.dll
Аватар ąnizórđą
ąnizórđą в 01:17:57, 01.05.2020
Нравится
Вы для разведения ACT используете? Зачем?
Данный фикс никак не влияет на SMP.
Вот пост Hawk9969 с фрагментом кода (жмём)
Аватар sergey9012
sergey9012 в 09:55:03, 01.05.2020
Нравится
Конечно не влияет. Но имеется 2 (две) dll с одним именем в системе и 2 xml   одноименных файла. По одному экземпляру в папках Hdt pe и HDT smp.  С smp у меня работают шмотки и волосы. С pe тело Cosio и animal.vag. Стоит Cosio на CBadvancenice.  Порядок загрузки задержки фиксы работа с памятью и приоритеты выставлены вручную т.к. в момент раздевания одевания были CTD.  Теперь все работает при анимациях SL нлрмально.
Аватар }{имик
}{имик в 16:52:02, 25.04.2020
Нравится (3)
Ну, фиксов для Skyrim`а  - много не бывает!
Аватар Nodax
Nodax в 12:15:40, 23.04.2020
Нравится
Может из-за этого у меня были рандомные вылеты и Crash Fixes никак не описывал проблему?
Аватар ąnizórđą
ąnizórđą в 19:11:24, 22.04.2020
Нравится (3)
Обновление 1.2.0.
Аватар Strenger
Strenger в 01:33:40, 21.04.2020
Нравится (2)
Не гхыра не понял, т.к. в программировании и иже с ним- пробковый дуб, но вылеты при загрузке сохранения случаются, а значит, беру и ставлю.
1 2 »
avatar
Gamer-mods.ru © 2012 - 2024. Все права защищены. Копирование материалов без указанной активной ссылки на данный сайт запрещено.