Un plugin SKSE ajoutant plusieurs nouveaux scripts avec des fonctions natives qui offrent diverses commodités liées au stockage de données et à d'autres fonctions diverses au scripteur/moddeur.
IMPORTANT: Si vous utilisez Skyrim version 1.6 ou supérieure, vous devez installer la version AE de PapyrusUtil et de la bibliothèque d'adresses. ÇA N'A PAS D'IMPORTANCE Si vous ne possédez pas le DLC Anniversary Edition ; toute version postérieure à la 1.5.97 est considérée comme AE.
Assurez-vous que votre bibliothèque d'adresses et votre installation SKSE64 sont entièrement à jour.
Et comme toujours, assurez-vous qu'aucun mod ne remplace la version à jour de PapyrusUtil par une version obsolète (comme Simply Knock, Campfire et Wearable Lanterns).
Si vous rencontrez toujours un message d'erreur, essayez d'exécuter une fois le lanceur Skyrim par défaut depuis Steam ou directement (via SkyrimSELauncher.exe dans le dossier principal), puis revenez au lancement avec SKSE et/ou votre gestionnaire de mods.
La dernière version sera UNIQUEMENT compatible avec la version la plus récente publiée sur Steam, actuellement v1.6.1170. Toute autre configuration n'est pas prise en charge, et vous devrez télécharger une version antérieure de PapyrusUtil correspondant à votre version installée.
Évidemment, si vous avez la version GoG du jeu en version 1.6.1179, installez la version GoG.
1. Description
2. Exigences
3. Installation
4. Désinstallation
5. Mise à jour
6. Compatibilité et problèmes
7. Crédits
8. Journal des modifications
1.
DescriptionCe plugin SKSE permet d'enregistrer un nombre quelconque de valeurs de type entier, flottant, formulaire et chaîne de caractères, soit dans n'importe quel formulaire, soit globalement depuis des scripts Papyrus. Il prend également en charge les listes de ces types de données. Ces valeurs sont accessibles depuis n'importe quel mod, ce qui facilite la compatibilité dynamique.
PapyrusUtil.psc - Vérification de version et initialisation des tableaux de variables.
StorageUtil.psc Stockez des variables et des listes de données dans un formulaire, puis récupérez-les en utilisant le formulaire et le nom de la variable comme clés. Consultez le fichier .psc pour la documentation.
JsonUtil.psc - Similaire à StorageUtil.psc, mais enregistre les données dans des fichiers .json externes personnalisés au lieu de formulaires, ce qui permet de les personnaliser en dehors du jeu et de les stocker indépendamment d'un fichier de sauvegarde utilisateur.
MiscUtil.psc - quelques commandes diverses.
ActorUtil.psc - Remplacement du package d'acteur.
2.
ExigencesSKSE SE/AE 2.2.6+ http://skse.silverlock.org/
Bibliothèque d'adresses pour les plugins SKSE : https://www.nexusmods.com/skyrimspecialedition/mods/324443.
InstallationUtilisez un gestionnaire de mods ou extrayez les fichiers manuellement.
4.
DésinstallationSupprimez les fichiers que vous avez ajoutés à l'étape 9 de l'installation.
5.
Mise à jourIl suffit d'écraser tous les fichiers.
6.
Compatibilité et problèmesDevrait être compatible avec tout.
7.
Créditsexiledviper - Maintenance et refactorisation continues du code source du plugin original
meh321 - version originale, idée, conversion de la bibliothèque d'adresses
Équipe SKSE – pour avoir rendu ce plugin possible
milzschnitte - pour des suggestions
eventHandler, Expired, aers, arha, ianpatt - Assistance à la conversion et à la mise à jour SKSE64
8.
Journal des modifications4.6 AE/SE - 18/01/2024
Mise à jour pour SKSE64 AE/SE 2.2.6 et Skyrim 1.6.1170
4.5 AE/SE - 12/05/2023Mise à jour pour SKSE64 AE/SE 2.2.4 et Skyrim 1.6.1130
4.4 AE/SE - 01/07/2022Mise à jour pour SKSE AE version 2.2.2
Ajout des fonctions ListRandom() à StorageUtil et JsonUtil
Corrections de bugs
4.3 AE/SE - 01/07/2022Mise à jour pour SKSE AE version 2.1.54.2 AE/SE - 14/12/2021Mise à jour pour SKSE AE version 2.1.4
4.1 AE/SE - 23/11/2021Mise à jour pour SKSE AE version 2.1.3
Mise à jour pour la bibliothèque d'adresses
4.0 AE/SE - 19/11/2021Mise à jour pour SKSE AE version 2.1.2Ajout des fonctions RemoveDupe(), GetDiff() et GetMatching() à PapyrusUtil.psc
Correction d'un problème où JsonUtil renvoyait une valeur de formulaire incorrecte lorsque le plugin associé était déchargé.3.9 SE - 02/04/2020Chargement fixe des formulaires FF alloués à partir de la sauvegarde partagée
L'emplacement du fichier journal a été modifié : Mes Documents/Mes Jeux/Skyrim Special Edition/SKSE/PapyrusUtilDev.log3.8 SE - 22/11/2019Mise à jour pour SKSE 2.0.17
Correction du traitement des formulaires provenant du fichier ESL
3.7b SE - 17/06/2019Mise à jour pour SKSE64 SE 2.0.163.7 SE - 19/03/2019Mise à jour pour SKSE 2.0.13-15
Ajout de MiscUtil.FoldersInFolder()
3.6b SE - 09/10/2018Mise à jour pour SKSE64 SE 2.0.113.6 SE - 09/10/2018Mise à jour pour SKSE64 SE 2.0.9/2.0.103.5 SE - 09/10/2018Mise à jour pour SKSE64 SE 2.0.8
Correction des fonctions de numérisation des cellules de MiscUtil
3.4b SE - 04/05/2018Mise à jour pour SKSE64 SE 2.0.7
Scripts copiés dans le répertoire /source/scripts du Creation Kit
3.4 SE - 01/05/2018Réintégration des fonctions liées au TFC
Réintégration des fonctions de remplacement du package ActorUtil
Correction d'un problème où les formulaires pouvaient parfois être mal enregistrés ou renvoyés lorsqu'un fichier .esl était actif dans l'ordre de chargement.
Correctif 3.3c SE - 12/04/2017
Mise à jour pour SKSE64 SE 2.0.6
Correctif 3.3b SE - 11/12/2017Mise à jour pour SKSE64 SE 2.0.5
Réintégration de la fonction MiscUtil.SetMenus()
3.3 SE - 21/10/2017Version initiale SKSE64
3.3 - 15/09/2016
Divers correctifs pour différents problèmes de plantage et de performances
Nouvelles fonctionnalités de JsonUtil :
Ajout de fonctions de chemin arbitraire pour permettre un formatage JSON personnalisé.
JsonInFolder(string folder) permet d'obtenir un tableau des fichiers JSON présents dans un dossier donné.
Nouvelle fonction MiscUtil :
Utilisez ScanCellNPCsByFaction() pour rechercher des acteurs appartenant à une faction donnée dans une cellule.
Nouvelle fonction de PapyrusUtil :
Utilisez GetScriptVersion() pour obtenir la version du script actuellement installée, qui peut différer de la valeur DLL de GetVersion() en fonction de l'installation variée et/ou défectueuse du mod par l'utilisateur.
Correctifs :
Corrections apportées à la gestion des fichiers JsonUtil et aux valeurs manquantes
Il y a beaucoup d'autres correctifs dont je ne me souviens plus précisément pour le moment.
3.2 - 01/04/2016- Nombreuses corrections pour divers problèmes de plantage et de performances
- Nouvelles fonctionnalités de JsonUtil :
Unload() - Décharge de la mémoire un fichier utilisé par JsonUtil, en enregistrant éventuellement les modifications au préalable. IsPendingSave() - Vérifie si le fichier JSON donné a été modifié depuis son dernier chargement/enregistrement. IsGood() - Vérifie si le fichier JSON donné est actuellement chargé et ne contient aucune erreur. GetErrors() - Renvoie une chaîne formatée contenant les erreurs d'analyse JSON, le cas échéant. JsonInFolder() - Renvoie un tableau de tous les fichiers JSON présents dans un répertoire donné. - Nouvelles fonctionnalités de StorageUtil :
CompterObj<type> Prefix() - compte le nombre de clés commençant par une chaîne de caractères dans un objet spécifique. ClearObj<type> Prefix() - supprime toutes les valeurs dont les clés commencent par une chaîne de caractères sur un objet spécifique - Nouvelles fonctions MiscUtil :
FilesInFolder() : Renvoie un tableau de tous les fichiers, ou de ceux ayant une extension donnée, contenus dans un dossier. ScanCellActors() : Obtient un tableau des acteurs proches dans une cellule correspondant aux critères. ScanCellObjects() : Obtient un tableau des objets proches d'un type de formulaire spécifique dans une cellule correspondant aux critères. WriteToFile() : Réintégré après avoir été supprimé lors d'une mise à jour précédente. ReadFromFile() : Réintégré après avoir été supprimé lors d'une mise à jour précédente.
3.1 - 09/01/2015- Correction d'un bug provoquant un plantage lors du chargement des sauvegardes pour certains utilisateurs.
- Nombre ajouté<type> La fonction Prefix() de StorageUtil et JsonUtil compte le nombre de clés commençant par une chaîne de caractères.
- Ajout de Clear<type> Prefix() à StorageUtil - supprime toutes les valeurs dont les clés commencent par une chaîne de caractères
- Ajout de pincement<type> () à StorageUtil - obtient une valeur et la renvoie, puis la supprime du stockage.
- Ajout d'un quart de travail<type> List() à StorageUtil - récupère la première valeur d'une liste puis la supprime de cette liste.
- Ajout de pop<type> List() à StorageUtil - récupère la dernière valeur d'une liste puis la supprime de cette liste.
3.0 - 21/08/2015- REQUIERT SKSE 1.7.3
- StorageUtil & JsonUtil Int/Float/String/FormListToArray()
- Diverses nouvelles fonctions utilitaires et de tableaux dans PapyrusUtil.psc
- Diverses autres nouvelles fonctions dont je ne me souviens plus, principalement liées à la manipulation ou au renvoi de tableaux.
- Correction de divers bugs liés aux plantages
- Performances améliorées pour de nombreuses fonctions
- SUPPRIMÉ MiscUtil.WriteToFile(),ReadFromFile(),ExecuteBat() - Ces fonctions étaient largement inutilisées, représentaient un risque pour la sécurité et étaient mieux réalisées par d'autres moyens.
2.8 - 10/03/2014- Correction d'un bug critique qui faisait que StringListRemove faisait exactement l'inverse de ce que vous attendiez.
- Correction d'un problème de plantage rencontré par certains utilisateurs lors du chargement de fichiers JSON externes par le plugin.
- Ajout de fonctions d'initialisation de tableau Papyrus à PapyrusUtil.psc
2.7 - 09/09/2014- Réactivation de la sauvegarde des packages de remplacement.
- Ajout des fonctions AdjustInt/FloatValue() et Int/FloatListAdjust() à StorageUtil et JsonUtil ; fonctions raccourcies pour ajuster les valeurs existantes de +/- une valeur donnée.
- Ajout d'une fonction ClearAll() à JsonUtil pour vider le contenu d'un fichier JSON externe.
- Nettoyage de diverses fonctions natives afin de mieux vérifier la validité des arguments transmis et ainsi éviter d'éventuels plantages.
2.6 - 08/11/2014- Correction d'un bug provoquant un plantage/blocage lors de la tentative de chargement d'un fichier externe inexistant.
2.5 - 08/08/2014- REQUIERT SKSE 1.7.1
- Réécriture du code source du plugin
- Ajout d'un nouveau script JsonUtil
- Fonction ListSlice() pour copier une liste dans un tableau Papyrus
- Fonction ListCopy() pour copier un tableau Papyrus dans une liste
- Fonction ListResize() pour modifier la longueur de la liste
- Diverses autres corrections de bugs et nouvelles fonctionnalités mineures