LifePlay-Revival/Docs/Migration/etat/U58/U7/U7-T4.md

36 lines
2.9 KiB
Markdown
Raw Normal View History

# Fiche U7-T4 — Niveau N1 + utilisateur — Modèle prévu Opus high (orchestrateur) | utilisé Opus 5.5 (orchestrateur)
Test d'acceptation T4 (UA-MODS § 4) : mod d'assets cuit pour 5.5 monté dans le jeu 5.8. Décide D2 (UA-SYNTHESE § 5).
## Montage
- Copie jetable du build Development 5.8 : `D:\Game\LifePlay_Build_5.8_U7T4` (robocopy de `LifePlay_Build_5.8_Development`).
- Archive installée (dézippée dans `Windows\`) : `D:\Game\LifePlay_Publication\Mods\lpr_anim_quaternius-1.0-for-LifePlay-2026.10.1.6.zip`.
- Jeu : `ProjectVersion=2026.10.1.6` (non encore relevée à 2026.10.2.0), donc `MODULE_GAME_VERSION` du mod = version du jeu.
- Lancements par l'utilisateur, 2026-10-08 23:35 (deux essais).
## Résultat : PLANTAGE au démarrage (2/2), image 0, avant l'écran titre
Preuves archivées dans `T4/` : `T4_LifePlay_run1.log`, `T4_LifePlay.log`, `Crashes/UECC-Windows-*` (2 minidumps).
- `LogPluginManager: Mounting Mod plugin lpr_anim_quaternius` ; conteneur IoStore monté sans contrôle (`Mounted container …lpr_anim_quaterniusLifePlay-Windows.utoc`, `Flags=(Compressed|Indexed)`) : **le TOC 5.5 est accepté par 5.8** (UA-MODS S11 (3) confirmé).
- `LPModDailies : lpr_anim_quaternius, 84 clip(s) sous /lpr_anim_quaternius/Anims` (registre lu sans erreur).
- `LoadMap(/Game/Scenes/CentralLondon)`, fin d'initialisation, puis `FlushAsyncLoading(77): 1 QueuedPackages` et :
`Fatal error: ContainerHelpers.cpp:8 Trying to resize TArray to an invalid size of 2380791808`, thread
`FAsyncLoadingThread`, pile `FNameBatchLoader::Read ← FNameMap::Load ← FZenPackageHeader::MakeView ←
FAsyncPackage2::Event_ProcessPackageSummary`.
- Absents : `LPModDailies : N clip(s) ajoute(s) a …Dailies`, fenêtre « Mod version warning ».
## Interprétation
- **Établi** : un paquet cuit pour 5.5 (sans version, UA-MODS S11 (1)-(2)) est lu avec le schéma d'en-tête Zen 5.8 et
fait planter le jeu ; l'incompatibilité n'est pas détectée au montage.
- **Estimé (fort)** : le paquet chargé est un clip du mod, par `LPModDailies.cpp:119` (`Clip.LoadSynchronous()`), appelé
dès que `Room` existe (carte titre) ; la ligne de fin de cette boucle n'est jamais écrite et le flush porte sur un
seul paquet. Pile du thread de jeu non extraite du minidump.
- T4(b) (mod décoché) **inatteignable** : plantage avant l'écran titre, gestionnaire inaccessible ; et `LPModDailies`
ajoute les clips des modules décochés aussi (E1, doc 23 § 2.4), donc même issue attendue (estimé).
- Même risque pour `LPHairstyleSubsystem.cpp:504-508` (chargement des SkeletalMesh d'un module de coiffures coché).
## Conséquence pour D2
Règle de la synthèse : « si T4 plante → (b)+(c) » : garde C++ dans `LPModDailies` et `LPHairstyleSubsystem` (assets d'un
module de version incompatible ignorés, sans changer le contrat), avertissement étendu aux modules décochés.
Forme de la comparaison de version : décision utilisateur (voir compte rendu de séance).