ENB Helper NG and AE AI created
25.08.2026 983 30 Автор мода: lelslie Автор публикации: k©קaso√® Версия: 1.5.3a Перевод: Мультиязычный

ENB Helper NG and AE AI created

🔹 ENB Helper AE - Небольшой плагин для F4SE, сообщает ENB и ReShade, что именно происходит в Fallout 4: время суток, погода и ее тип, локация, находится ли игрок в помещении или на улице, а также трансформации камеры. Чтение данных выполняется по запросу, без использования конфигурационных файлов и фоновых потоков. Для работы требуются F4SE и Address Library. Изначально модификация была написана с помощью ИИ и отправлена на доработку из-за багов; эта пересобранная версия 1.5.2 полностью исправлена, протестирована в игре и задокументирована.

🔹 Нативно активные основные функции:
Каждый показатель вычисляется асинхронно для максимальной производительности кадров:
* `GetTime` — текущий игровой час (0.0–24.0). Напрямую синхронизирует внутриигровое время, обеспечивая плавный переход фильтров между днем, ночью, рассветом и закатом [C1083].
* `GetWeatherTransition` — прогресс смены погоды (от 0 до 1). Отслеживает процент смены погоды, предотвращая резкие визуальные скачки [C1083].
* `GetCurrentWeather` / `GetOutgoingWeather` — FormID текущей и уходящей погоды.
* `GetCurrentWeatherClassification` / `GetOutgoingWeatherClassification` — классификация погоды: 0 — солнечно, 1 — облачно, 2 — дождливо, 3 — снежно, -1 — неизвестно.
* `GetCurrentLocationID` / `GetWorldSpaceID` — FormID локации и игрового мира (worldspace).
* `GetSkyMode` — значение enum для режима неба.
* `GetPlayerCameraTransformMatrices` — матрицы трансформации камеры (локальная / мировая / мировая за предыдущий кадр).
* `GetIsInterior` — `true`, если игрок находится внутри интерьерной ячейки.
* `GetReShadeBridgePointer` — стабильный указатель на небольшую общую структуру (время, флаг интерьера, FormID погоды) для шейдеров ReShade.
* `GetHealthStatus` — все вышеперечисленные данные в одной структуре за один вызов.
* `GetPluginVersion` — 1.51
Все геттеры запрашивают данные по требованию в потоке рендеринга. Адреса игры берутся из Address Library через CommonLibF4 — никаких жестко заданных смещений, поэтому обновление игры не сломает плагин незаметно.

🔹 Требования:
* Fallout 4 NG 1.10.980 - 1.10.984
* Fallout 4 АЕ 1.11.137, 1.11.159, 1.11.169, 1.11.191, 1.11.221, 1.11.240
F4SE версии 0.7.1 или новее.
Address Library for F4SE Plugins
* ENB скачать с сайта Б.Воронцова или здесь у нас или любая готовая ENB модификация с Нексуса.

🔹 Установка:
Используйте мод-менеджер или вручную, поместите `ENBHelperF4.dll` непосредственно в папку плагинов F4SE: `Fallout 4\Data\F4SE\Plugins\`.
Проверка: нажмите Shift + Enter в загруженной игре. В разделе погодной системы ENB активируется выпадающее меню Statistics, где в реальном времени будут отображаться обновляемые данные.

Обновление:1.5.3а
* Добавлен вариант для игры Fallout 4 NG 1.10.980 - 1.10.984
* Добавлена мультиверсионность для АЕ 1.11.x: Один DLL-файл теперь поддерживает все исполняемые файлы версии 1.11.x (от 1.11.137 до 1.11.240) с помощью Address Library, вместо поддержки исключительно версии 1.11.221.
* Версия Pre-NG 1.10.163 не поддерживается — она имеет другую структуру памяти и требует отдельной сборки плагина, которой пока нет.

Обновление:1.5.1
v1.5.1 — версия, в которой я исправил баги за ИИ. Релиз 1.5.0, написанный нейросетью, был удален; это исправленная и пересобранная версия.
* Удален рабочий поток 60 Гц. В оригинальной версии запускался отдельный независимый поток, который обращался к объектам RE::Sky, PlayerCharacter и PlayerCamera извне основного игрового потока. Игра сама управляет этими объектами, поэтому чтение их из другого потока приводило к конфликту данных (data race). Теперь геттеры запрашивают данные по требованию в вызывающем потоке — откуда их в любом случае вызывают ENB и ReShade.
* Исправлена классификация погоды. Старый код воспринимал весь 20-байтовый массив weatherData как одно целое число (int), из-за чего байт скорости ветра считывался как «флаг». Теперь код корректно считывает биты kPleasant/kCloudy/kRainy/kSnow.
* Исправлено определение интерьеров. Раньше для этого обязательно требовался шаблон освещения (lighting template), поэтому любой интерьер без него определялся как экстерьер. Теперь код просто запрашивает данные у ячейки (cell).
* Упрощена структура. Самодельный DllMain и ручная настройка spdlog заменены на стандартную точку входа F4SE_PLUGIN_LOAD (включая ротацию логов).
* Интегрирована библиотека CommonLibF4. Вложенный подмодуль (submodule) был пуст, а путь импорта — некорректен, из-за чего репозиторий не собирался «из коробки». Теперь всё работает.
* Сохранен экспорт неискаженных (unmangled) имен на базе .def-файла; эта часть кода была в порядке.
* Защищены все экспорты на случай, если вызывающие программы передадут некорректные указатели вывода. Прокси d3d11 от ENB вызывал геттер камеры с указателем вывода -1 (из-за несоответствия прототипов), что приводило к вылету игры при запуске. Теперь все операции записи вывода выполняются через SEH (структурную обработку исключений) и просто пропускают запись вместо вылета.
* Был добавлен (и затем удален) лог «пульса» для верификации: пока сторонняя программа вызывала экспорты, лог раз в секунду выводил счетчик вызовов и состояние игры, доказывая, что данные действительно передаются. Это логирование подтвердило работоспособность во время тестов в игре и было удалено из релизной сборки. Сами экспорты не изменились, исчезла только диагностическая строка.

Обновление:1.5
### Добавлено
* Мост ReShade: `GetReShadeBridgePointer()` возвращает компактную структуру с параметрами `in_game_time`, `is_interior_cell`, `weather_form_id` для компактной интеграции ReShade/ENB.
* Экспорт снимка состояния здоровья: `GetHealthStatus(ENBHelperHealth*)` для получения снимка состояния во время выполнения за один вызов.
* Экспорт функций `GetPluginVersion()` и `IsLoaded()`.
### Изменено
* Версия плагина поднята до 1.5 (передаётся как 150 в `F4SEPlugin_Query`).
* Базовое имя DLL зафиксировано как `ENBHelperF4.dll`, экспорт в `.def` синхронизирован.
* Усилено логирование и потокобезопасность; рабочий поток использует `atomic` + `shared_mutex`.
* Синхронизирован экспорт в .def для предотвращения искажения имён (mangling) для Reactor/ENB.
### Исправлено
* Определена переменная `bLoaded` для устранения ошибки компоновщика (линкера).
* Обеспечена совместимость `F4SEPlugin_Query` с различными заголовками F4SE (резервный вариант `infoVersion`).
* Устранены предупреждения о неиспользуемых параметрах (`unused-parameter`), улучшена обработка завершения работы.
Аватар k©קaso√®
k©קaso√® в 14:49:46, 25.08.2026
№5, Администратор
Нравится
Обновление:1.5.3а
* Добавлен вариант для игры Fallout 4 NG 1.10.980 - 1.10.984
* Добавлена мультиверсионность для АЕ 1.11.x: Один DLL-файл теперь поддерживает все исполняемые файлы версии 1.11.x (от 1.11.137 до 1.11.240) с помощью Address Library, вместо поддержки исключительно версии 1.11.221.
Аватар k©קaso√®
k©קaso√® в 08:34:27, 16.08.2026
№3, Администратор
Нравится
Обновлено 1.5.1
Аватар -Miro-
-Miro- в 18:39:55, 15.08.2026
Нравится
Вай, это только для AE?
Для OG есть что то?
И чем помогает данный мод подскажите добрые люди
Аватар k©קaso√®
k©קaso√® в 08:35:30, 16.08.2026
№4, Администратор
Нравится
для 1.10.163 тут https://gamer-mods.ru/load....0-14602
в двух словах он помогает распределять правильно погоду и погодные эффекты но только для ЕНБ модификаций
Аватар k©קaso√®
k©קaso√® в 17:04:25, 15.08.2026
№1, Администратор
Нравится
Обновлено 1.5
avatar
Gamer-mods.ru © 2012 - 2026. Все права защищены. Копирование материалов без указанной активной ссылки на данный сайт запрещено.