Плагин SKSE, добавляющий несколько новых скриптов с собственными функциями, которые предоставляют различные удобства, связанные с хранением данных и другими разнообразными функциями для скриптера/моддера.
ВАЖНЫЙ: Если вы используете Skyrim версии 1.6+, вам необходимо установить версию AE PapyrusUtil и Address Library. Это НЕ ИМЕЕТ ЗНАЧЕНИЯ если у вас нет Anniversary Edition DLC, то любая версия после 1.5.97 считается AE.
Убедитесь, что ваша библиотека адресов и установленный SKSE64 полностью обновлены.
И как всегда, убедитесь, что никакие моды не перезаписывают актуальную версию PapyrusUtil устаревшей версией (например, Simply Knock, Campfire и Wearable Lanterns)
Если вы все еще получаете сообщение об ошибке, попробуйте запустить стандартный лаунчер Skyrim из Steam или напрямую (через SkyrimSELauncher.exe в основной папке), а затем вернитесь к запуску с помощью skse и/или вашего менеджера модов.
Последняя версия будет совместима ТОЛЬКО с последней версией, выпущенной в Steam на данный момент. v1.6.1170. Все остальное не поддерживается, и вам придется загрузить более старую версию PapyrusUtil, соответствующую установленной у вас версии.
Очевидно, если у вас установлена версия игры GoG 1.6.1179, установите версию GoG.
1. Описание
2. Требования
3. Установка
4. Удаление
5. Обновление
6. Совместимость и проблемы
7. Кредиты
8. Журнал изменений
1.
ОписаниеПлагин SKSE, позволяющий сохранять любое количество значений типа int, float, form и string в любой форме или глобально из скриптов Papyrus. Также поддерживает списки этих типов данных. Доступ к этим значениям возможен из любого мода, что обеспечивает лёгкую динамическую совместимость.
PapyrusUtil.psc - проверка версии и инициализация переменных массивов.
StorageUtil.psc - хранить переменные и списки данных в форме, которую можно извлечь, используя форму и имя переменной в качестве ключей. См. документацию в файле psc.
JsonUtil.psc - аналогично StorageUtil.psc, но сохраняет данные в настраиваемых внешних файлах .json вместо форм, что позволяет настраивать их вне игры и хранить независимо от файла сохранения пользователя.
MiscUtil.psc - некоторые другие команды.
ActorUtil.psc - Переопределение пакета актера.
2.
ТребованияSKSE SE/AE 2.2.6+ http://skse.silverlock.org/
Библиотека адресов для плагинов SKSE: https://www.nexusmods.com/skyrimspecialedition/mods/324443.
УстановкаИспользуйте менеджер модов или извлеките файлы вручную.
4.
УдалениеУдалите файлы, добавленные вами на шаге 9 установки.
5.
ОбновлениеПросто перезапишите все файлы.
6.
Совместимость и проблемыДолжно быть совместимо со всем.
7.
Кредитыexiledviper — продолжение поддержки и рефакторинга исходного кода оригинального плагина
meh321 - оригинальная версия, идея, преобразование библиотеки адресов
Команде SKSE — за то, что сделали этот плагин возможным
milzschnitte - для предложений
eventHandler, Expired, aers, arha, ianpatt — помощь в преобразовании и обновлении SKSE64
8.
Журнал изменений4.6 AE/SE - 18.01.2024
Обновлено для SKSE64 AE/SE 2.2.6 и Skyrim 1.6.1170
4.5 AE/SE - 12/05/2023Обновлено для SKSE64 AE/SE 2.2.4 и Skyrim 1.6.1130
4.4 AE/SE - 01/7/2022Обновлено для SKSE AE сборки 2.2.2
Добавлены функции ListRandom() в StorageUtil и JsonUtil.
Исправлены некоторые ошибки
4.3 АЕ/SE - 01.07.2022Обновлено для SKSE AE сборки 2.1.54.2 AE/SE - 14.12.2021Обновлено для SKSE AE сборки 2.1.4
4.1 AE/SE - 23.11.2021Обновлено для SKSE AE сборки 2.1.3
Обновлено для библиотеки адресов
4.0 AE/SE - 19.11.2021Обновлено для SKSE AE сборки 2.1.2Добавлены функции RemoveDupe(), GetDiff() и GetMatching() в PapyrusUtil.psc.
Исправлена ошибка JsonUtil, из-за которой возвращалось неверное значение формы при выгрузке соответствующего плагина.3.9 SE - 02/04/2020Исправлена загрузка выделенных форм FF из совместного сохранения.
Изменено местоположение файла журнала на Мои документы/Мои игры/Skyrim Special Edition/SKSE/PapyrusUtilDev.log.3.8 SE - 22.11.2019Обновлено для SKSE 2.0.17
Исправлена обработка форм из файла ESL
3.7b SE - 17.06.2019Обновлено для SKSE64 SE 2.0.163.7 SE - 19.03.2019Обновлено для SKSE 2.0.13-15
Добавлен MiscUtil.FoldersInFolder()
3.6b SE - 09/10/2018Обновлено для SKSE64 SE 2.0.113.6 SE - 09/10/2018Обновлено для SKSE64 SE 2.0.9/2.0.103.5 SE - 09/10/2018Обновлено для SKSE64 SE 2.0.8
Исправлены функции сканирования ячеек MiscUtil.
3.4b SE - 04/05/2018Обновлено для SKSE64 SE 2.0.7
Скопировал скрипты в папку creationkit /source/scripts
3.4 SE - 01/05/2018Добавлены обратно функции, связанные с TFC
Добавлены обратно функции переопределения пакета ActorUtil.
Исправлена проблема с формами, которые иногда сохранялись/возвращались неправильно, если файл .esl был активен в порядке загрузки.
Исправление 3.3c SE — 12.04.2017
Обновлено для SKSE64 SE 2.0.6
Исправление 3.3b SE — 12.11.2017Обновлено для SKSE64 SE 2.0.5
Добавлена обратно функция MiscUtil.SetMenus()
3.3 SE- 21.10.2017Первоначальный выпуск версии SKSE64
3.3 - 15.09.2016
Различные исправления различных проблем с CTD и производительностью
Новые функции JsonUtil:
Добавлены функции произвольного пути для возможности пользовательского форматирования JSON.
JsonInFolder(string folder) для получения массива JSON-файлов, которые существуют в заданной папке
Новая функция MiscUtil:
ScanCellNPCsByFaction() для поиска в ячейке актеров заданной фракции
Новая функция PapyrusUtil:
GetScriptVersion() для получения текущей установленной версии скрипта, которая может отличаться от значения DLL GetVersion() в зависимости от различной и/или неправильной установки мода пользователем.
Исправления:
Некоторые исправления в обработке файлов JsonUtil и отсутствующих значениях.
Множество других исправлений, которые я сейчас не могу вспомнить.
3.2 - 01.04.2016- Множество исправлений различных проблем с CTD и производительностью.
- Новые функции JsonUtil:
Unload() — выгружает файл из памяти, который использовался JsonUtil, при необходимости предварительно сохраняя изменения. IsPendingSave() — проверяет, был ли изменен указанный Json-файл с момента его последней загрузки/сохранения. IsGood() — проверяет, загружен ли в данный момент указанный Json-файл и нет ли в нем ошибок. GetErrors() — возвращает отформатированную строку ошибок анализа Json, если таковые имеются. JsonInFolder() — возвращает массив всех Json-файлов в указанном каталоге. - Новые функции StorageUtil:
CountObj<type> Prefix() — подсчитывает количество ключей, начинающихся со строки, в определенном объекте ClearObj<type> Prefix() — удаляет все значения с ключами, начинающимися со строки определенного объекта. - Новые функции MiscUtil:
FilesInFolder() — возвращает массив всех файлов или файлов с заданными расширениями, содержащихся в папке. ScanCellActors() — возвращает массив ближайших объектов в ячейке, соответствующих критериям. ScanCellObjects() — возвращает массив ближайших объектов заданного типа формы в ячейке, соответствующих критериям. WriteToFile() — считывается после удаления в предыдущем обновлении. ReadFromFile() — считывается после удаления в предыдущем обновлении.
3.1 - 09/01/2015- Исправлена ошибка, вызывавшая вылет при загрузке сохранения у некоторых пользователей.
- Добавлено количество<type> Prefix() для StorageUtil и JsonUtil — подсчитывает количество ключей, начинающихся со строки
- Добавлено Очистить<type> Prefix() для StorageUtil — удаляет все значения с ключами, начинающимися со строки
- Добавлено Pluck<type> () в StorageUtil — получает значение и возвращает его, а затем удаляет его из хранилища.
- Добавлен сдвиг<type> List() в StorageUtil — получает первое значение списка, а затем удаляет его из этого списка.
- Добавлен поп<type> List() в StorageUtil — получает последнее значение списка, а затем удаляет его из этого списка.
3.0 - 21.08.2015- ТРЕБУЕТСЯ SKSE 1.7.3
- StorageUtil и JsonUtil Int/Float/String/FormListToArray()
- Различные новые служебные функции и функции массивов в PapyrusUtil.psc
- Различные другие новые функции, которые я не могу вспомнить, в основном связанные с работой с массивами или их возвратом.
- Исправлены различные ошибки, связанные со сбоями.
- Улучшена производительность многих функций
- УДАЛЕНО MiscUtil.WriteToFile(),ReadFromFile(),ExecuteBat() — функции в основном не использовались, представляли угрозу безопасности и лучше выполнялись другими способами.
2.8 - 10/03/2014- Исправлена критическая ошибка, из-за которой StringListRemove делал ровно противоположное тому, что вы хотели.
- Исправлена проблема сбоя на рабочем столе, с которой сталкивались некоторые пользователи, когда плагин загружал внешние JSON-файлы для чтения.
- Добавлены функции инициализации массива papyrus в PapyrusUtil.psc.
2.7 - 09/09/2014- Добавлено сохранение переопределения обратного пакета.
- Добавлены функции AdjustInt/FloatValue() и Int/FloatListAdjust() в StorageUtil и JsonUtil, сокращенная функция для корректировки существующих значений на заданную величину.
- Добавлена функция ClearAll() в JsonUtil для очистки содержимого внешних JSON-файлов.
- Очистили различные собственные функции для лучшей проверки правильности передаваемых аргументов и предотвращения потенциальных сбоев.
2.6 - 08/11/2014- Исправлена ошибка, приводившая к сбою/зависанию при попытке загрузить несуществующий внешний файл.
2.5 - 08.08.2014- ТРЕБУЕТСЯ SKSE 1.7.1
- Переписывание исходного кода плагина
- Добавлен новый скрипт JsonUtil
- Функция ListSlice() для копирования списка в массив Papyrus
- Функция ListCopy() для копирования массива Papyrus в список
- Функция ListResize() для изменения длины списка
- Различные другие исправления ошибок и небольшие новые функции.