SA:MP Ошибка SAMP с SA DirectX 3.0 (Microsoft Visual C++ Runtime Library)

benjibenji

Новичок
Автор темы
1
0
Версия SA-MP
  1. 0.3.7-R5
Всем привет, уже больше часа пробую решить проблему со своей ошибкой в GTA SAMP.

Microsoft Visual C++ Runtime Library
Assertion failed!
d:/dev/moonloader/moonloader-src/mo.../script_...der.cpp
Line: 9
Expression: d3dhook::originalD3DDevice9

Больше недели спокойно играл с ENB SA.DirectX 3.0 + оптимизация с переводом игры на Vulcan API - все было нормально.
До этого пару раз вылетала точно такая же ошибка, но на второй запуск все было нормально.
Может из-за каких-то модов проблема, но буквально сегодня ночью играл с ними - все было нормально, запускалось без ошибки.

Переустанавливал последнюю версию Microsoft Visual C++, удалял пару плагинов из папки MoonLoader (до этого они нормально работали), удалял все моды из ModLoader, удалял все ASI плагины из корневой папки - ничего.
Пробовал удалять моды отдельно - так же не решалось (Сегодня ночью играл - все было нормально)
Пробовал накатить на чистую сборку SA DirectX 3.0 - точно такая же ошибка.

1.Вылетает сначала этот краш
1769867121317.png

2. Потом ошибка Microsoft
1769866272652.png


3. Потом этот краш
1769867170333.png




Пока жду ответа - буду пробовать решить сам.

Заранее большое спасибо!


UPD:
Спросил решение у ИИ гугла - все заработало. Сейчас играю, вроде FPS не поменялся.
Админы, не удаляйте мой пустой топик, вдруг кому-нибудь понадобится)
  • Файл DXVK в корневой папке игры d3d9.dll переименуйте в dxvk_d3d9.dll.
  • Исправьте enblocal.ini: (находится в корневой папке с игрой)
    В секции [PROXY] переименуйте d3d11.dll на этот новый файл:

    EnableProxyLibrary=true
    InitProxyFunctions=true
    ProxyLibrary=dxvk_d3d9.dll

    Объяснение от ИИ:
    То, что игра работала ночью, а сейчас перестала — верный признак того, что цепочка загрузки библиотек в памяти нестабильна. Moonloader очень чувствителен к порядку инициализации «хуков».
    Использование d3d11.dll в качестве прокси для GTA SA — это ошибка конфигурации. Игра работает на DX9, и когда вы подсовываете ей d3d11.dll через ENB, вы создаете «пустую» связь, которая может срабатывать через раз в зависимости от того, какой драйвер первым ответил системе.
 
Последнее редактирование: