LifePlay-Revival/Docs/Migration/27_Plan_Migration_UE58.md
edujiro5972 f953e0393f U-PLAN : plan de migration UE 5.5 vers 5.8 (lots U0 a U9, CHG-247)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 09:22:18 +02:00

12 KiB
Raw Blame History

name overview todos isProject
Migration UE 5.5 → UE 5.8 (U) Porter LifePlay Revival d'Unreal Engine 5.5 vers 5.8 (dernière version majeure d'UE5). La référence de comportement devient le jeu 5.5 validé ; tout ce qui sert à la comparaison avec UE 4.27 est abandonné ; seule la gestion des mods est figée (contrat inchangé, mods recuits).
id content status
lot-u0 Lot U0 — Préparation (moteur 5.8, chaîne de compilation, copie de travail, décisions) pending
id content status
lot-u1 Lot U1 — Cartographie (notes de mise à niveau 5.6/5.7/5.8, API, plugins, outils, reliquats 4.27) pending
id content status
lot-u2 Lot U2 — Retrait de l'outillage 4.27 et paramétrage du chemin moteur pending
id content status
lot-u3 Lot U3 — Bascule moteur et compilation (jeu, outils, plugins du dépôt) pending
id content status
lot-u4 Lot U4 — Plugins tiers et addon (StreetMap, McpAutomationBridge, LifePlay-Sandbox) pending
id content status
lot-u5 Lot U5 — Contenu (réenregistrement des paquets, avertissements, villes, Blueprints) pending
id content status
lot-u6 Lot U6 — Comportement en jeu (build Development, A/B contre le build 5.5, contrôle visuel) pending
id content status
lot-u7 Lot U7 — Mods (contrat figé ; nouvelle version de référence ; mods recuits) pending
id content status
lot-u8 Lot U8 — Shipping, publication, évaluation pending
id content status
lot-u9 Lot U9 — Voie alternative UE5 native pour les correctifs de sémantique UE4 (préparée, non activée) pending
false

27. Plan de migration UE 5.5 → UE 5.8 (2026-10-08)

Contexte

UE 5.8 est la dernière version majeure prévue d'UE5 avant UE6 (premières préversions annoncées vers fin 2027) ; Epic présente 5.8 comme une version de stabilisation et d'optimisation (Lumen Lite, MegaLights en production, Chaos Hair / Cloth / Flesh). Le jeu a été porté de 4.27 à 5.5 (V1 à V1.5, lots L0–L7, O, H, AP, SB, DC, VQ). La migration 5.8 s'appuie sur ce qui est validé en 5.5 ; la comparaison avec 4.27 n'est plus un critère.

État de départ (2026-10-08) : moteurs installés UE_4.27, UE_5.5 (pas de 5.8) ; MSVC 14.38 et 14.44 ; projet LifePlay.uproject (EngineAssociation 5.5) ; plugins du dépôt LPAnimCore, ModdingExtra, StreetMap, McpAutomationBridge (outil, gitignoré) ; addon privé D:\Game\LifePlay-Sandbox (LPSandbox, LPAnimMeasure, LPModTools, atelier de mods) ; modules de jeu dans Content/Modules/.git (dépôt local) ; taille hors Intermediate/Saved ≈ 14 Go ; 2,4 To libres sur D:.

Décisions verrouillées (utilisateur, 2026-10-08)

Décision Choix
Cible UE 5.8
UE 4.27 abandonné : plus de comparaison A/B avec 4.27, plus d'outillage ni de critère d'acceptation fondé sur 4.27
Restrictions 5.5 levées : le projet peut adopter les API, réglages et fonctions de 5.8
Gestion des mods figée : format .lpmod (lignes 1–3 par position, clés existantes), Content/Modules/<mod>/, plugins Mods/<mod>/ cuits en DLC, ModdingExtra, GI.ModEnableds, gestionnaire de mods, avertissement de version : inchangés pour les moddeurs
Publication règles PUB1/PUB2 : GitHub sans contenu de jeu ni contenu sexuel ; rien n'est poussé sans accord
Correctifs de sémantique UE4 (P2) gardés pour le moment ; une voie alternative UE5 native est préparée (lot U9), sans être activée
Commandlets du portage 4.27 (P3) retirés (LPTestStringCompat gardé comme test)
Copie de travail (P4) dossier séparé D:\Game\LifePlay-master 5.8, branche ue5.8
Version (P5) V2.0, LifePlay 2026.10.2.0

Décisions proposées (P2 à P5 tranchées le 2026-10-08, voir ci-dessus ; P1, P6, P7 à confirmer en U0)

# Proposition Motif
P1 Référence de comportement = build 5.5 validé courant (DC4, LifePlay_Build_5.5_DC4) et V1.5 publiée 4.27 abandonné
P2 Les correctifs de sémantique UE4 en place (LPStringCompat, LPMeshCompat, LPNavigationHelpers…) restent : ce sont désormais le comportement du jeu (les Blueprints en dépendent) les retirer changerait le jeu ; rien à voir avec la comparaison 4.27
P3 Les commandlets à usage unique du portage 4.27 → 5.5 (LPFix* : ParseIntoArray, StringSearch, ButtonPadding, NavRandomPoint, AssetRegistry*, SceneCapture, FindCenter, PawnResponse…, LPTestStringCompat gardé comme test) sont retirés du module LifePlayEditorTools (conservés dans l'historique git) surface de portage réduite ; déjà appliqués
P4 Copie de travail séparée D:\Game\LifePlay-master 5.8 (copie du dossier hors Intermediate, Saved, DDC, Binaries ; même dépôt git, branche ue5.8) ; LifePlay-master 5.5 reste utilisable pour les correctifs jeu jouable pendant le portage
P5 Version : LifePlay 2026.10.2.0 (majeur 2 = UE 5.8), publication « V2.0 » changement de moteur = mods recuits obligatoirement
P6 Le moteur 4.27 et le projet LifePlay-master 4.27 sont archivés puis peuvent être désinstallés par l'utilisateur après U6 abandon 4.27
P7 McpAutomationBridge : désactivé tant qu'aucune version 5.8 n'existe (plugin Optional) outil de développement

Conséquence pour les mods (contrat figé)

Un paquet cuit pour 5.5 ne se charge pas dans un jeu 5.8 (format des paquets et versions d'objets). Le contrat reste le même, mais chaque mod d'assets doit être recuit contre la nouvelle version de référence Releases/2026.10.2.0 (lpr_hair_pocolov, lpr_anim_quaternius, lpr_anim_freeanims) ; les mods texte (Content/Modules) ne changent pas. L'avertissement de version du gestionnaire signale déjà un mod cuit pour une autre version.

Matrice modèles IA ↔ complexité

Palier Complexité Modèle Profil
M0 mécanique haiku installation vérifiée, compilation + journal, cuisson, copies
M1 exploration large haiku (Explore) inventaires, recherches multi-chemins
M2 raisonnement ciblé sonnet specs bornées, retraits, docs, VAL, A/B de journaux, commits
M3 refactor opus (session principale) correctifs d'API 5.8, plugins, sous-systèmes
M4 synthèse / décision opus (session principale) portes, arbitrages, évaluation

Règles de secours et pièges : comme 21_Sandbox_Addon.md (fiche « n'écris aucun script ; en cas d'échec, recopie l'erreur ») ; mémoire lifeplay-build-pitfalls ; mesures en build empaqueté Development seulement ; tests d'empaquetage avec nouvelle partie (liste des villes) et Continuer.

Lots et fiches

U0 — Préparation (Orch + utilisateur)

  • U0-T1 (utilisateur) : installer UE 5.8 par l'Epic Games Launcher dans D:\Game\Launcher\Engine\UE_5.8.
  • U0-T2 (M0 haiku) : vérifier l'installation (Build.bat -help), relever la chaîne exigée par 5.8 (Visual Studio, MSVC, SDK Windows) depuis les notes officielles et la comparer à l'existant ; livrable etat/U58/U0/U0-ENV.md.
  • U0-T3 (M2 sonnet) : tag local ue5.5-final sur main ; copie de travail P4 (robocopy, exclusions) ; branche ue5.8 ; dépôt des modules recopié ; contrôle git status propre.
  • U0-T4 (M4) : décisions P1–P7 validées par l'utilisateur → section « verrouillées ».

U1 — Cartographie (M2 sonnet, + M1 haiku pour les recherches)

  • notes de mise à niveau officielles 5.6, 5.7, 5.8 (API C++ dépréciées / retirées, modules renommés, réglages de projet, empaquetage, IoStore, Substrate, Lumen/MegaLights par défaut) croisées avec nos sources (Source/, Plugins/, addon) ;
  • état de chaque plugin (StreetMap : origine et compatibilité 5.8 ; ModdingExtra, LPAnimCore ; addon) ;
  • reliquats 4.27 (29 docs, Config/DefaultEngine.ini, Tools/AssetHeaders.ps1, commandlets P3) ;
  • chemins moteur codés en dur (UE_5.5 dans Tools/, lanceurs .bat, mémoire) ;
  • livrable etat/U58/U1/U1-CART.md ; handoff → U2/U3.

U2 — Retrait 4.27 et chemin moteur (M2 sonnet)

  • retrait des commandlets P3 et de leurs entrées Build.cs ; Config et Tools sans référence 4.27 ;
  • un seul point de configuration du moteur (Tools/Engine.ps1 lu par tous les scripts et lanceurs) ;
  • docs : bandeau « historique 4.27 » sur les docs concernés (pas de réécriture du passé) ;
  • compilation 5.5 inchangée (A-BUILD haiku) avant bascule.

U3 — Bascule moteur et compilation (M3 opus + M0 haiku)

  • EngineAssociation 5.8, régénération des fichiers de projet, compilation LifePlayEditor ; boucle erreurs → correctifs (opus) → compilation (haiku) ; cible : 0 erreur, avertissements de dépréciation listés.

U4 — Plugins tiers et addon (M3 opus + M2 sonnet)

  • StreetMap, ModdingExtra, LPAnimCore compilés 5.8 ; McpAutomationBridge selon P7 ;
  • addon LifePlay-Sandbox : branche ue5.8, compilation, tournée Mesure (non-régression des JSON/CSV contre la référence 5.5, comme SB2-T5).

U5 — Contenu (M2 sonnet + M0 haiku)

  • ouverture du projet, LPResavePackages sur tout Content, journal de chargement sans erreur ; cuisson sans avertissement ; LPCheckStreetMap (280 villes) ; relevé des nœuds Blueprint dépréciés et correctifs.

U6 — Comportement en jeu (M2 sonnet + utilisateur)

  • build empaqueté Development 5.8 ; A/B contre le build 5.5 sur le même parcours (nouvelle partie + Continuer, LogStats) ; réglages vidéo (VQ) revus pour 5.8 ; contrôle visuel utilisateur ; registre des erreurs mis à jour.

U7 — Mods (M2 sonnet + utilisateur)

  • version de référence Releases/2026.10.2.0 ; recuisson des 3 mods d'assets dans l'atelier (addon) ; contrôle que le contrat est inchangé (structure, .lpmod, gestionnaire, avertissement de version) ; essai en jeu.

U8 — Shipping, publication, évaluation (M2 sonnet + M4)

  • build Shipping, archives (règles de publication), README ; évaluation multi-agents (modèle prévu / utilisé) ; porte de publication (utilisateur).

U9 — Voie alternative UE5 native (M3 opus + M2 sonnet), en parallèle de U5–U6

  • pour chaque correctif (LPStringCompat : ParseIntoArray, Find / Contains / Split ; LPMeshCompat ; LPNavigationHelpers ; padding des boutons) : inventaire des Blueprints appelants et des cas où les sémantiques UE4 et UE5 divergent ;
  • interrupteur par correctif (réglage de configuration, défaut = sémantique UE4 comme aujourd'hui) qui bascule l'implémentation vers l'appel UE5 natif, sans toucher aux Blueprints ;
  • banc de comparaison (étendre LPTestStringCompat et les relevés -LPVerify*) : mêmes entrées, sorties UE4 / UE5, liste des écarts et de leurs effets en jeu ;
  • livrable etat/U58/U9/U9-CART.md et interrupteurs compilés, désactivés ; la bascule effective (et un éventuel nettoyage des Blueprints) reste une décision utilisateur ultérieure.

Critères d'acceptation globaux

  1. Le jeu 5.8 compile (éditeur, Development, Shipping) sans l'addon et avec.
  2. Chargement et cuisson sans erreur ; villes et Blueprints identiques en données à la référence 5.5.
  3. Comportement en jeu équivalent au build 5.5 (A/B, contrôle visuel), réglages vidéo fonctionnels.
  4. Mods : contrat inchangé, 3 mods recuits chargés, mods 5.5 signalés par l'avertissement de version.
  5. Plus aucun outil, critère ni réglage fondé sur 4.27 ; chemin moteur à un seul endroit.
  6. CHG par lot, commits par phase, rien poussé sans accord.

Risques

  • Plugin StreetMap (tiers) non maintenu pour 5.8 → portage maison (U4).
  • Changements de rendu par défaut (Lumen, MegaLights, Substrate) → écarts visuels à arbitrer (U6, mémoire « comparer avant de revenir en arrière »).
  • Sémantique de chaînes ou de conteneurs encore modifiée par 5.6–5.8 → LPTestStringCompat rejoué en U3.
  • Toolchain : 5.8 peut exiger un MSVC plus récent que 14.44 → U0-T2.