Memory Patch avec SKSE 1.7.1 et supérieur
Posté : 22 août 2014, 10:19
Je crois qu'il n'y a pas de tuto sur la confrérie sur comment "installer" le memory patch avec SKSE 1.7.1 (ou version supérieure)
Donc petite contribution pour le bien de tout le monde.
Un memory patch ? L'explication simple
Skyrim a accès à une quantité limitée de mémoire lorsqu'il travaille, et doit sub-diviser cette mémoire entre différentes tâches. Malheureusement, dans le code du jeu, l'une de ces tâches à tendance à souvent excéder la mémoire qu'elle s'est vue attribuer dans le cas d'un jeu moddé. Et le système de sécurité mis en place pour contourner le problème est complètement buggué et fais planter votre jeu presque à chaque fois qu'il se met en route.
Ce patch augmente la taille de la mémoire disponible pour cette tâche, ce qui fait que la fonction buggé n'aura jamais à se mettre en route.
Exemple de problèmes inhérents à cette erreur de gestion de mémoire :
Infinite Loading Screens (ILS), c'est à dire Temps de chargement infini.
Crash To Desktop (CTD), ou encore Retour au bureau en français, lors de l'entrée dans une nouvelle zone extrêmement "pleine".
CTD lorsque beaucoup de PNJ apparaissent.
Un memory patch ? L'explication moins simple
Qu'est ce qu'il faut ?
Commencez par vous rendre sur la page du SKSE, et téléchargez la dernière version. Le patch est seulement utilisable à partir de la version 1.7.1 (la version actuelle est 1.7.3).
Téléchargez la version archive en cliquant sur "7z archive" sur ce lien : http://skse.silverlock.org/
Quand vous avez cette archive, vous la décompressez, puis vous placez le tout dans votre dossier Skyrim en vous assurant que "skse_loader" soit bien dans le dossier .../Steam/SteamApps/common/Skyrim (et donc que le dossier Data de l'archive fusionne avec le dossier Data de votre Skyrim déjà présent).
Liste des fichiers qui doivent être dans ce dossier :
UTILISATEURS DE MOD ORGANIZER UNIQUEMENT : Si vous utilisez Mod Organizer, une bonne chose à faire est de ne pas copier le dossier Data directement, mais de le repackager en une archive et de l'installer via MO.
Euh, là on a juste installé le SKSE non ?
Si !
Vous voilà avec le dernier SKSE à jour et complet, maintenant, reste à appliquer le petit "tweak" qui va vous permettre d'adresser notre problème de bloc mémoire :
Dans votre dossier Data :
Créez un sous-dossier SKSE (si vous n'en avez pas déjà un)
Créez un fichier SKSE.ini dans ce sous-dossier (si vous n'en avez pas déjà un)
Ouvrez le (notepad ou notepad++) et copiez y ces lignes :
Sauvegardez et fermez.
Et voilà ! Votre skyrim est maintenant patché
Attention : Ce correctif ne fonctionnera que si vous lancez le jeu via SKSE (voir le topic sur SKSE pour plus de détails si vous ne savez pas ce que c'est : http://www.confrerie-des-traducteurs.fr ... 83&t=10213)
Ajuster les valeurs à ses besoins :
Bien évidemment, si vous avez un jeu vraiment très moddé, il se peut que les valeurs par défaut données plus haut ne soient pas suffisantes, et que quoique moins fréquents, les problèmes persistes.
Vous pouvez ajuster la valeur de defaultHeapInitialAllocMB dans la section [Memory] si vous remarquez que vous avez toujours des soucis (incrémenter par multiples de 256).
Ne pas modifier sans avoir fait des tests avec les valeurs données ! Si le patch marche avec ces valeurs, ne cherchez pas à les changer ! (voir "l'explication moins simple" ci-dessus pour comprendre pourquoi).
Pour configurer précisément la taille du bloc, la bonne chose à faire est d'utiliser le memory bloc log : lien nexus
(plus d'information sur comment l'utiliser correctement quand j'aurai le temps d'écrire tout ça...
)
Il n'y a aucune raison de modifier la valeur de scrapHeapSizeMB, excepté pour les utilisateurs qui ont mal configurés ENBoost, mais c'est une autre histoire... donc ce paramètre devrait toujours être laissé à 256
A propos de "Safety Load" :
J'ai dit que ce patch corrigeait un problème à la source des écrans de chargement infinis (connus sous le joli nom d'ILS) en plus des crash intempestifs. Ce qui était le rôle du mod correctif "Safety Load". La question est : Est-ce que ce dernier est obsolète ?
La réponse est oui,même si il est vrai que les deux font des choses parfaitement différentes.
En simple, Safety Load est plutôt destructif : si il évite le bug sur certains écrans de chargement, en revanche, pour tous les autres écrans de chargement qui n'auraient pas été buggé, il va empêcher la mémoire de s'auto-optimiser (cette auto-optimisation étant à la source des ILS), réduisant les capacités du jeu le temps qu'il se remette les idées au clair. Ça n'a jamais été reporté comme ayant des conséquences dramatiques, mais si on peut s'en passer, autant le faire
Pour comprendre les détails qui suivent, vous aurez besoin d'avoir lu "l'explication moins simple" (Deuxième paragraphe).
Remarques :
- La ligne avec iTintTextureResolution dans la section [Display] que je vous ai fait copier-collé peut être "activée" en retirant le point-virgule en début de ligne. Faites le si vous utilisez des textures en ultra HD (comme celles de XCE par exemple) pour les TintMasks, c'est à dire les peintures de guerre, tatoos, maquillages, etc... Ne l'activez surtout pas si vous n'avez pas ce genre de textures ! Ou vos overlays pour les peintures de guerre, vos lèvres et tout un tas de trucs vont apparaître ultra-pixelisés.
- Si vous avez déjà utilisé le SSME auparavant (version du memory patch originelle par Sheson, pas directement implémentée dans SKSE et désormais obsolète), vous avez surement utilisé des valeurs de bloc mémoire différentes de celles que je vous ai données dans le fichier .ini qui y correspondait. La version SKSE n'est pas exactement codée pareille que l'était le SSME, c'est pourquoi les valeurs conseillées sont différentes. Le fonctionnement en lui-même est exactement le même. De même, les autre valeurs dans le .ini ne sont plus d'actualité, celles données précédemment sont suffisantes)
- Si vous avez peur de vous rater sur la création du fichier SKSE.ini au bon endroit, ou de rater votre copier-coller, Sagittarius a uploadé le fichier dans sa configuration "par défaut" ici : SKSE ini pre-download for lazy users , vous pouvez installer ça comme un mod normal et tout se passera bien
Ce patch augmente la stabilité du jeu, pas les performances de votre ordi a proprement parler ! Donc n'espérez pas avoir rendu votre jeu plus rapide/fluide en installant ceci ! Tournez vous vers ENBoost si c'est ce que vous cherchez (ou éventuellement HiAlgoBoost, mais c'est de la m**** si vous voulez mon avis...)
Donc petite contribution pour le bien de tout le monde.
Un memory patch ? L'explication simple
Skyrim a accès à une quantité limitée de mémoire lorsqu'il travaille, et doit sub-diviser cette mémoire entre différentes tâches. Malheureusement, dans le code du jeu, l'une de ces tâches à tendance à souvent excéder la mémoire qu'elle s'est vue attribuer dans le cas d'un jeu moddé. Et le système de sécurité mis en place pour contourner le problème est complètement buggué et fais planter votre jeu presque à chaque fois qu'il se met en route.
Ce patch augmente la taille de la mémoire disponible pour cette tâche, ce qui fait que la fonction buggé n'aura jamais à se mettre en route.
Exemple de problèmes inhérents à cette erreur de gestion de mémoire :
Infinite Loading Screens (ILS), c'est à dire Temps de chargement infini.
Crash To Desktop (CTD), ou encore Retour au bureau en français, lors de l'entrée dans une nouvelle zone extrêmement "pleine".
CTD lorsque beaucoup de PNJ apparaissent.
Un memory patch ? L'explication moins simple
► Afficher le texte
Commencez par vous rendre sur la page du SKSE, et téléchargez la dernière version. Le patch est seulement utilisable à partir de la version 1.7.1 (la version actuelle est 1.7.3).
Téléchargez la version archive en cliquant sur "7z archive" sur ce lien : http://skse.silverlock.org/
Quand vous avez cette archive, vous la décompressez, puis vous placez le tout dans votre dossier Skyrim en vous assurant que "skse_loader" soit bien dans le dossier .../Steam/SteamApps/common/Skyrim (et donc que le dossier Data de l'archive fusionne avec le dossier Data de votre Skyrim déjà présent).
Liste des fichiers qui doivent être dans ce dossier :
► Afficher le texte
Euh, là on a juste installé le SKSE non ?
Si !

Dans votre dossier Data :
Créez un sous-dossier SKSE (si vous n'en avez pas déjà un)
Créez un fichier SKSE.ini dans ce sous-dossier (si vous n'en avez pas déjà un)
Ouvrez le (notepad ou notepad++) et copiez y ces lignes :
Code : Tout sélectionner
[General]
ClearInvalidRegistrations=1
EnableDiagnostics=1
[Display]
;iTintTextureResolution=2048
[Memory]
defaultHeapInitialAllocMB=768
scrapHeapSizeMB=256
Et voilà ! Votre skyrim est maintenant patché

Attention : Ce correctif ne fonctionnera que si vous lancez le jeu via SKSE (voir le topic sur SKSE pour plus de détails si vous ne savez pas ce que c'est : http://www.confrerie-des-traducteurs.fr ... 83&t=10213)
Ajuster les valeurs à ses besoins :
Bien évidemment, si vous avez un jeu vraiment très moddé, il se peut que les valeurs par défaut données plus haut ne soient pas suffisantes, et que quoique moins fréquents, les problèmes persistes.
Vous pouvez ajuster la valeur de defaultHeapInitialAllocMB dans la section [Memory] si vous remarquez que vous avez toujours des soucis (incrémenter par multiples de 256).
Ne pas modifier sans avoir fait des tests avec les valeurs données ! Si le patch marche avec ces valeurs, ne cherchez pas à les changer ! (voir "l'explication moins simple" ci-dessus pour comprendre pourquoi).
Pour configurer précisément la taille du bloc, la bonne chose à faire est d'utiliser le memory bloc log : lien nexus
(plus d'information sur comment l'utiliser correctement quand j'aurai le temps d'écrire tout ça...

Il n'y a aucune raison de modifier la valeur de scrapHeapSizeMB, excepté pour les utilisateurs qui ont mal configurés ENBoost, mais c'est une autre histoire... donc ce paramètre devrait toujours être laissé à 256

A propos de "Safety Load" :
J'ai dit que ce patch corrigeait un problème à la source des écrans de chargement infinis (connus sous le joli nom d'ILS) en plus des crash intempestifs. Ce qui était le rôle du mod correctif "Safety Load". La question est : Est-ce que ce dernier est obsolète ?
La réponse est oui,même si il est vrai que les deux font des choses parfaitement différentes.
En simple, Safety Load est plutôt destructif : si il évite le bug sur certains écrans de chargement, en revanche, pour tous les autres écrans de chargement qui n'auraient pas été buggé, il va empêcher la mémoire de s'auto-optimiser (cette auto-optimisation étant à la source des ILS), réduisant les capacités du jeu le temps qu'il se remette les idées au clair. Ça n'a jamais été reporté comme ayant des conséquences dramatiques, mais si on peut s'en passer, autant le faire

Pour comprendre les détails qui suivent, vous aurez besoin d'avoir lu "l'explication moins simple" (Deuxième paragraphe).
► Afficher le texte
Remarques :
- La ligne avec iTintTextureResolution dans la section [Display] que je vous ai fait copier-collé peut être "activée" en retirant le point-virgule en début de ligne. Faites le si vous utilisez des textures en ultra HD (comme celles de XCE par exemple) pour les TintMasks, c'est à dire les peintures de guerre, tatoos, maquillages, etc... Ne l'activez surtout pas si vous n'avez pas ce genre de textures ! Ou vos overlays pour les peintures de guerre, vos lèvres et tout un tas de trucs vont apparaître ultra-pixelisés.
- Si vous avez déjà utilisé le SSME auparavant (version du memory patch originelle par Sheson, pas directement implémentée dans SKSE et désormais obsolète), vous avez surement utilisé des valeurs de bloc mémoire différentes de celles que je vous ai données dans le fichier .ini qui y correspondait. La version SKSE n'est pas exactement codée pareille que l'était le SSME, c'est pourquoi les valeurs conseillées sont différentes. Le fonctionnement en lui-même est exactement le même. De même, les autre valeurs dans le .ini ne sont plus d'actualité, celles données précédemment sont suffisantes)
- Si vous avez peur de vous rater sur la création du fichier SKSE.ini au bon endroit, ou de rater votre copier-coller, Sagittarius a uploadé le fichier dans sa configuration "par défaut" ici : SKSE ini pre-download for lazy users , vous pouvez installer ça comme un mod normal et tout se passera bien

Ce patch augmente la stabilité du jeu, pas les performances de votre ordi a proprement parler ! Donc n'espérez pas avoir rendu votre jeu plus rapide/fluide en installant ceci ! Tournez vous vers ENBoost si c'est ce que vous cherchez (ou éventuellement HiAlgoBoost, mais c'est de la m**** si vous voulez mon avis...)