Hydra / Гидра (набор утилит и скриптового языка Papyrus)
HYDRA
◆ 2800+ ФУНКЦИЙ • ПАТЧИ ДВИЖКА • PAPYRUS ◆
УТИЛИТЫ И РАСШИРЕНИЕ СКРИПТОВ // FALLOUT 4
Описание:
Предоставляет обширный набор утилит для игры Fallout 4 и её скриптового языка. Также содержит ряд патчей для игрового движка.
▣ ОСОБЕННОСТИ И ФУНКЦИОНАЛ
● Поддержка версий игры: Поддерживает Old-Gen, Next-Gen и Anniversary Edition.
● Архитектура: Основан на плагине «Papyrus Common Library», но полностью переписан с нуля.
● Расширение Papyrus: Добавляет более 2800 новых функций в Papyrus.
● Новые типы скриптов: Добавляет ранее недоступные типы скриптов, такие как хэш-таблицы, хэш-множества, мьютексы, 64-битные целые числа и числа с плавающей запятой.
● Оптимизация движка: Содержит ряд патчей движка для существенного повышения производительности Papyrus (экспериментально).
● Восстановление Editor ID: Восстанавливает идентификаторы редактора.
● Разнообразный инструментарий:
• Исполнитель консольных команд (Console Command Runner)
• Исполнитель меню (Menu Runner)
• Исполнитель прочих/отслеживаемых характеристик (Misc/Tracked Stat Runner)
• Исполнитель условий и требований (Requirements Runner)
• Исполнитель файлового кэша (File Cache Runner)
• Исполнитель функций скриптов (Script Function Runner)
• Исполнитель объектов скриптов (Script Object Runner)
• Исполнитель рефлексии скриптов (Script Reflection Runner)
• Исполнитель переводов (Translation Runner)
• Объект кода AS3 (AS3 Code Object)
● Архитектура: Основан на плагине «Papyrus Common Library», но полностью переписан с нуля.
● Расширение Papyrus: Добавляет более 2800 новых функций в Papyrus.
● Новые типы скриптов: Добавляет ранее недоступные типы скриптов, такие как хэш-таблицы, хэш-множества, мьютексы, 64-битные целые числа и числа с плавающей запятой.
● Оптимизация движка: Содержит ряд патчей движка для существенного повышения производительности Papyrus (экспериментально).
● Восстановление Editor ID: Восстанавливает идентификаторы редактора.
● Разнообразный инструментарий:
• Исполнитель консольных команд (Console Command Runner)
• Исполнитель меню (Menu Runner)
• Исполнитель прочих/отслеживаемых характеристик (Misc/Tracked Stat Runner)
• Исполнитель условий и требований (Requirements Runner)
• Исполнитель файлового кэша (File Cache Runner)
• Исполнитель функций скриптов (Script Function Runner)
• Исполнитель объектов скриптов (Script Object Runner)
• Исполнитель рефлексии скриптов (Script Reflection Runner)
• Исполнитель переводов (Translation Runner)
• Объект кода AS3 (AS3 Code Object)
▣ ВСТРОЕННЫЕ ПАТЧИ ДВИЖКА
Загрузка Editor ID
Патч для загрузки Form Editor ID при запуске игры.
Идентификаторы редактора (Editor ID) обычно доступны только внутри Creation Kit.
Благодаря этому патчу их теперь можно использовать непосредственно в игре: через скриптовые команды, в консоли управления, а также в модах, требующих этой функции (например, Base Object Swapper и Spell Perk Item Distributor).
Идентификаторы редактора (Editor ID) обычно доступны только внутри Creation Kit.
Благодаря этому патчу их теперь можно использовать непосредственно в игре: через скриптовые команды, в консоли управления, а также в модах, требующих этой функции (например, Base Object Swapper и Spell Perk Item Distributor).
Предзагрузка скриптов
Патч для предварительной загрузки и связывания скриптов Papyrus.
Некоторые скрипты могут оставаться незагруженными или несвязанными на момент, когда игра завершает первичную загрузку.
Обычно это не вызывает сбоев, поскольку скрипты подгружаются при первом обращении к ним. Однако такой подход может создавать микрофризы и задержки, особенно при обращении к крупным и сложным скриптам.
Этот патч предпринимает попытку заранее загрузить и связать все скрипты Papyrus ещё на этапе старта, полностью устраняя подобные просадки и задержки во время игры.
Некоторые скрипты могут оставаться незагруженными или несвязанными на момент, когда игра завершает первичную загрузку.
Обычно это не вызывает сбоев, поскольку скрипты подгружаются при первом обращении к ним. Однако такой подход может создавать микрофризы и задержки, особенно при обращении к крупным и сложным скриптам.
Этот патч предпринимает попытку заранее загрузить и связать все скрипты Papyrus ещё на этапе старта, полностью устраняя подобные просадки и задержки во время игры.
Ускорение нативных функций (экспериментально; по умолчанию отключен)
Патч для ускорения большинства нативных функций Papyrus.
При вызове потоконебезопасных нативных функций Papyrus, таких как
Для понимания масштаба: при 60 FPS один кадр занимает около 16 мс. Это означает, что вызов десятков подобных функций суммарно задерживает выполнение скрипта на несколько секунд.
Как работает решение:
• Патч переносит все подобные вызовы функций в тасклеты скриптов (script tasklets), защищённые мьютексом.
• Это позволяет выполнять вызовы незамедлительно.
• Функции вроде
Ограничения и совместимость:
• Скрытые функции, такие как
• Внимание: Патч может изменить поведение отдельных скриптов, если их логика ранее затачивалась под обязательную задержку в один кадр.
• Для предотвращения конфликтов список задействованных функций можно гибко настраивать через шаблоны (pattern matching) в конфигурационном файле.
При вызове потоконебезопасных нативных функций Papyrus, таких как
ObjectReference.GetBaseObject, игровой движок помещает этот вызов в очередь до следующего игрового кадра, чтобы выполнить его последовательно в одном потоке.Для понимания масштаба: при 60 FPS один кадр занимает около 16 мс. Это означает, что вызов десятков подобных функций суммарно задерживает выполнение скрипта на несколько секунд.
Как работает решение:
• Патч переносит все подобные вызовы функций в тасклеты скриптов (script tasklets), защищённые мьютексом.
• Это позволяет выполнять вызовы незамедлительно.
• Функции вроде
ObjectReference.GetBaseObject теперь выполняются примерно за 0.01 мс вместо ~16 мс (приблизительно в 1 600 раз быстрее).Ограничения и совместимость:
• Скрытые функции, такие как
ObjectReference.AddItem, продолжают работать как в оригинальной игре: родительский стек ожидает полного завершения работы вызванной функции.• Внимание: Патч может изменить поведение отдельных скриптов, если их логика ранее затачивалась под обязательную задержку в один кадр.
• Для предотвращения конфликтов список задействованных функций можно гибко настраивать через шаблоны (pattern matching) в конфигурационном файле.
▣ ВКЛЮЧЁННЫЕ СКРИПТЫ (нажмите, чтобы раскрыть)
Forms:
Activator, ActiveMagicEffect, Actor, ActorBase, AimModel, Alias, Ammo, ArmorAddon, Book, Cell, Climate, ColorForm, Component, ConstructibleObject, Container, DamageType, Door, Enchantment, EncounterZone, Explosion, Faction, Flora, Form, FormList, GlobalVariable, HeadPart, Holotape, Idle, InputEnableLayer, InstanceNamingRules, LeveledActor, LeveledItem, LeveledList, Light, Location, MagicEffect, MagicItem, Message, MiscObject, MovementType, ObjectReference, Outfit, Perk, Potion, Projectile, Spell, WorldSpace.
IO:
Directory, File, Ini, Json, Link, Path, Permission, Space, Toml.
Модули и типы (Modules & Types):
Arrays, Assert, Boolean, Camera, Char, Colors, Console, Crypto, DateTimes, Events, Float32, Float64, FunctionRefs, Game, GameSettings, Hashing, IniSettings, Input, Int32, Int64, Internal, MemMap, MemSet, MiscStats, Mutex, NetImmerse, Operator, Pairs, Plugins, Random, Regex, SaveMap, Saves, SaveSet, Scaleform, ScriptObject, ScriptStack, ScriptType, Sky, StrictStrings, StringPairs, Strings, StructObject, StructType, TempMap, TempSet, Time, Timer, Translations, UI, UInt32, UInt64, Uuids, VarPairs, Vectors2, Vectors3, Vectors4, Versions, Wildcards, Xse.
Игровые объекты (Game Objects):
AcousticSpace, AddonNode, AimModel, AnimObject, ArrowProjectile, ArtObject, AttractionRule, AudioEffectChain, BarrierProjectile, BeamProjectile, BendableSpline, BodyPartData, CameraPath, Climate, CollisionLayer, ColorForm, ConeProjectile, DamageType, Debris, DefaultObjectManager, DialogueBranch, DualCastData, FlameProjectile, Footstep, FootstepSet, GodRays, Grass, GrenadeProjectile, ImageSpace, ImpactData, Landscape, LandscapeTexture, LensFlare, LightingTemplate, LoadScreen, MaterialObject, MaterialType, MissileProjectile, MovementType, MusicTrack, NavMesh, NavMeshInfoMap, NavMeshObstacleManager, ObjectVisibilityManager, PackIn, PlacedHazard, ReferenceGroup, Region, Relationship, ReverbParameters, SoundKeywordMapping, SoundMarker, SoundTagSet, StaticCollection, StoryManagerBranchNode, StoryManagerEventNode, StoryManagerQuestNode, Transform, Tree, ZoomData.
▣ ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ (FAQ)
В: Почему это не просто обновление для Papyrus Common Library?
О: Я решил вынести проект как отдельный, поскольку Hydra, хоть и похожа в некоторых аспектах, имеет множество фундаментальных различий в работе с Papyrus. Из-за этого она не была бы совместима с существующими модами, использующими Papyrus Common Library.
В: Можно ли использовать Hydra вместе с Papyrus Common Library?
О: Да.
В: Заменяет ли Hydra мод Papyrus Common Library?
О: В некотором смысле Hydra задумывалась как его замена, однако модам, у которых Papyrus Common Library указан в качестве обязательного требования, по-прежнему необходима его установка.
В: У меня появляется всплывающее сообщение об ошибке Hydra.dll «Plugin/PapyrusManager.cpp» (152): Не удалось загрузить скрипт типа «Hydra:Forms:Actvator».
О: При установке F4SE обязательно проверьте, чтобы была скопирована вся папка Data из архива F4SE со всем содержимым.
▣ ПРИМЕЧАНИЯ
● Для пользователей Baka Framework: Рекомендуется отключить патч Editor ID в файле настроек этого фреймворка. Baka Framework
● Для разработчиков модов: Если вы получаете ошибки компилятора о том, что массивы или структуры не допускаются внутри структур, установите [этот патч для компилятора].
● Для разработчиков модов: Если вы получаете ошибки компилятора о том, что массивы или структуры не допускаются внутри структур, установите [этот патч для компилятора].
▣ РЕКОМЕНДАЦИИ
● Addictol — существенно повышает производительность скриптовой системы игры.
● Better Help Function — позволяет искать объекты по именам через консольную функцию
● Garden of Eden — ещё один масштабный расширитель скриптовых возможностей.
● Better Help Function — позволяет искать объекты по именам через консольную функцию
help, а не только по Editor ID.● Garden of Eden — ещё один масштабный расширитель скриптовых возможностей.
Требования:
Fallout 4 (1.10.163, 1.10.984, 1.11.191 и выше)
Fallout 4 Script Extender (F4SE)
Address Library for F4SE Plugins
Visual C++ Redistributable 2026 x64
Fallout 4 Script Extender (F4SE)
Address Library for F4SE Plugins
Visual C++ Redistributable 2026 x64
Установка:
Установить через менеджеры модов или вручную. Активация не требуется.
Примечание: Как устанавливать моды [читаем в данной теме].
◆ HYDRA // 2800+ ФУНКЦИЙ PAPYRUS ◆
Основной архив (21 mb)Сервер №1




