From 4747778d2c05021238327089bdbda7c6cd7ff16d Mon Sep 17 00:00:00 2001 From: edujiro5972 <336072401+edujiro5972@users.noreply.github.com> Date: Tue, 29 Sep 2026 01:25:53 +0200 Subject: [PATCH] L2 : compilation propre a partir de zero uproject : TargetPlatforms Windows, plugins explicites (ModdingExtra, StreetMap, EnhancedInput ; McpAutomationBridge limite a l'editeur ; AndroidFileServer desactive). DefaultEngine.ini : section AndroidFileServer retiree (n'est plus recreee). Binaries/Intermediate/caches deplaces vers D:\Game\LifePlay_Backup_5.5\L2\_purge. Tests : LifePlayEditor et LifePlay Win64 Development compilent sans erreur ni avertissement ; demarrage editeur sans LogClass Error ; releve LPCheckMeshAssignment identique a L1 ; T-STAT-02..04 au vert. Co-Authored-By: Claude Opus 5.5 --- Config/DefaultEngine.ini | 14 ------------- Docs/Migration/04_Cahier_Des_Charges.md | 2 +- Docs/Migration/Journal_Modifications.md | 24 ++++++++++++++++++++++ Docs/Migration/Registre_Erreurs.md | 3 ++- LifePlay.uproject | 27 ++++++++++++++++++++++++- 5 files changed, 53 insertions(+), 17 deletions(-) diff --git a/Config/DefaultEngine.ini b/Config/DefaultEngine.ini index 0fb63b5..34008ef 100644 --- a/Config/DefaultEngine.ini +++ b/Config/DefaultEngine.ini @@ -110,20 +110,6 @@ DefaultBroadphaseSettings=(bUseMBPOnClient=False,bUseMBPOnServer=False,MBPBounds +ClassRedirects=(OldName="/Script/VictoryBPLibrary.VictoryBPFunctionLibrary",NewName="/Script/LifePlay.LPVictoryCompat") +EnumRedirects=(OldName="/Script/VictoryBPLibrary.EJoyImageFormats",NewName="/Script/LifePlay.EJoyImageFormats") -[/Script/AndroidFileServerEditor.AndroidFileServerRuntimeSettings] -bEnablePlugin=True -bAllowNetworkConnection=True -SecurityToken= -bIncludeInShipping=False -bAllowExternalStartInShipping=False -bCompileAFSProject=False -bUseCompression=False -bLogFiles=False -bReportStats=False -ConnectionType=USBOnly -bUseManualIPAddress=False -ManualIPAddress= - [/Script/UnrealEd.CookerSettings] bCookOnTheFlyForLaunchOn=False diff --git a/Docs/Migration/04_Cahier_Des_Charges.md b/Docs/Migration/04_Cahier_Des_Charges.md index 67860c1..dc7e9c9 100644 --- a/Docs/Migration/04_Cahier_Des_Charges.md +++ b/Docs/Migration/04_Cahier_Des_Charges.md @@ -75,7 +75,7 @@ Traitement du `Registre_Erreurs.md` **par ordre de fréquence × gravité**, un T-STAT-01 (0 package UE4) est **reporté** au sous-lot `L4-CX-B07` (resave contrôlé). - **Retour** : `Tools\Restore.ps1 -Lot L1` ou `git checkout lot-L1-avant -- Content`. -### L2 — Compilation propre +### L2 — Compilation propre ✅ (2026-09-29) - **Objectif** : binaires reconstruits à partir de zéro, projet conforme UE5. - **Périmètre** : `.uproject` (`TargetPlatforms: ["Windows"]`, section `Plugins` explicite : `ModdingExtra`, `StreetMap`, `EnhancedInput`, `McpAutomationBridge` limité à l'éditeur, diff --git a/Docs/Migration/Journal_Modifications.md b/Docs/Migration/Journal_Modifications.md index a527079..d2ee2d6 100644 --- a/Docs/Migration/Journal_Modifications.md +++ b/Docs/Migration/Journal_Modifications.md @@ -57,3 +57,27 @@ Les commandlets de contrôle n'ont rien écrit : contenu toujours identique à 4 | T-STAT-02, 03, 04 | ✅ | | T-LOAD-01 | ❌ attendu : 6 erreurs (`CX-B02`), à corriger en L4 | | T-LOAD-02 | ❌ attendu : 5 broches (`CX-B01`), à corriger en L4 | + +--- + +## Lot L2 — Compilation propre (2026-09-29) + +Tag d'entrée `lot-L2-avant`. Sauvegarde : `D:\Game\LifePlay_Backup_5.5\L2\` (`.uproject`, +`DefaultEngine.ini`) ; dossiers mis de côté dans `L2\_purge\` (manifeste `L2\purge_manifest.csv`). + +| ID | Date | Lot | Fichiers | Raison | Avant → après | Retour arrière | +|---|---|---|---|---|---|---| +| CHG-011 | 2026-09-29 | L2 | `LifePlay.uproject` | `TargetPlatforms` `WindowsNoEditor` → `Windows` ; section `Plugins` explicite : `ModdingExtra`, `StreetMap`, `EnhancedInput` activés ; `McpAutomationBridge` limité à la cible `Editor` (`TargetAllowList`) ; `AndroidFileServer` désactivé | MD5 `DA10325E…` → nouveau | `Tools\Restore.ps1 -Lot L2 -Only LifePlay.uproject` | +| CHG-012 | 2026-09-29 | L2 | `Config/DefaultEngine.ini` | retrait de la section `AndroidFileServerRuntimeSettings` (et de son `SecurityToken`) ; le plugin étant désactivé, l'éditeur ne la recrée plus (vérifié après un lancement) | 14 lignes retirées | `Tools\Restore.ps1 -Lot L2 -Only Config\DefaultEngine.ini` | +| CHG-013 | 2026-09-29 | L2 | `Binaries`, `Intermediate`, `Saved/Cooked`, `Saved/StagedBuilds`, `Plugins/*/Binaries`, `Plugins/*/Intermediate`, `Build/WindowsNoEditor`, `Build/LinuxNoEditor` (≈ 13,9 Go) | reconstruction à partir de zéro ; **déplacés**, pas supprimés | → `D:\Game\LifePlay_Backup_5.5\L2\_purge\` | `Move-Item` inverse (voir `purge_manifest.csv`) ; suppression définitive sur décision utilisateur | + +### Vérifications de sortie L2 + +| Test | Résultat | +|---|---| +| T-BUILD-01 `LifePlayEditor Win64 Development` | ✅ code 0, 233 s, **0 erreur, 0 avertissement** dans le code du projet et de ses plugins (2 messages de configuration UBT propres à `McpAutomationBridge`) — `Saved/Logs/portage/L2_Build_LifePlayEditor_20260929-011800.log` | +| T-BUILD-02 `LifePlay Win64 Development` | ✅ code 0, 97 s, 0 erreur, 0 avertissement ; exécutable 300 Mo (328 Mo avant : `McpAutomationBridge` exclu du jeu) | +| T-LOAD-04 démarrage éditeur | ✅ 0 `LogClass: Error`, 0 échec de chargement de package ou de plugin | +| Non-régression `LPCheckMeshAssignment` | ✅ relevé identique à L1 (10 erreurs, 285 avertissements, mêmes signatures) | +| ERR-023 (`AndroidFileServer`) | ✅ `DefaultEngine.ini` non réécrit après lancement | +| T-STAT-02, 03, 04 | ✅ | diff --git a/Docs/Migration/Registre_Erreurs.md b/Docs/Migration/Registre_Erreurs.md index d189865..01953e2 100644 --- a/Docs/Migration/Registre_Erreurs.md +++ b/Docs/Migration/Registre_Erreurs.md @@ -9,7 +9,8 @@ | ERR-020 | `GetAssetsByClass` : classe perdue à la montée de version (3 nœuds `GI`) + 2 `Break AssetData` sans `ObjectPath` | `LPCheckMeshAssignment` L1 | 5 broches | **bloquante** (cause probable d'ERR-002) | L4-CX-B01 | ouvert | | ERR-021 | broche `Font` d'`EditableTextBoxStyle` : échec de compilation `UI/StatMenu`, `UI/CharGen` | `CompileAllBlueprints` L1 | 6 erreurs | **bloquante** (cuisson) | L4-CX-B02 | ouvert | | ERR-022 | 293 packages de gameplay au format UE4 (base 4.27) | `Tools\AssetHeaders.ps1` | 293 | faible (converti au chargement) | L4-CX-B07 | ouvert | -| ERR-023 | `AndroidFileServer` réécrit sa section et son `SecurityToken` dans `DefaultEngine.ini` à chaque lancement | L1 | chaque lancement | faible (bruit git) | L2 | ouvert | +| ERR-023 | `AndroidFileServer` réécrit sa section et son `SecurityToken` dans `DefaultEngine.ini` à chaque lancement | L1 | chaque lancement | faible (bruit git) | L2 | clos (CHG-011, CHG-012) | +| ERR-024 | `McpAutomationBridge` (outil de développement) impose des plugins d'exécution (`GameplayAbilities`, `SmartObjects`, `Niagara`, `PythonScriptPlugin`…) et dépend de `StructUtils`, déprécié en 5.5 | UBT L2 | — | faible (livraison) | L7g | ouvert | | ERR-002 | `generatePerson()` sans argument : personnages identiques (« Tyrone »), nus, invisibles ; en PIE 5.5 chaque `index SPAWN` pointe vers `Person_C_0` | rapport 2026-09-28, journal PIE 09-28 | 16,6 `Accessed None` maillage/perso (4.27 : 0,3) | bloquante | L5 | ouvert | | ERR-003 | `Attempted to access index 0 from array Float_… of length 0` dans `GI::ReturnStatIfNeeded` (variable DSL `Float` vide) | build 5.5 Development | 2 (4.27 : 0) | haute | L5 | ouvert | | ERR-004 | `index N from CallFunc_ParseIntoArray_ReturnValue of length N` (`GI` EventGraph) | PIE 09-28 | 6 510 | moyenne | L7b | ouvert | diff --git a/LifePlay.uproject b/LifePlay.uproject index 6968ad2..4c34536 100644 --- a/LifePlay.uproject +++ b/LifePlay.uproject @@ -18,7 +18,32 @@ ] } ], + "Plugins": [ + { + "Name": "ModdingExtra", + "Enabled": true + }, + { + "Name": "StreetMap", + "Enabled": true + }, + { + "Name": "EnhancedInput", + "Enabled": true + }, + { + "Name": "McpAutomationBridge", + "Enabled": true, + "TargetAllowList": [ + "Editor" + ] + }, + { + "Name": "AndroidFileServer", + "Enabled": false + } + ], "TargetPlatforms": [ - "WindowsNoEditor" + "Windows" ] }