diff --git a/Docs/Migration/21_Sandbox_Addon.md b/Docs/Migration/21_Sandbox_Addon.md index 7ab5881..6517e34 100644 --- a/Docs/Migration/21_Sandbox_Addon.md +++ b/Docs/Migration/21_Sandbox_Addon.md @@ -117,12 +117,12 @@ D:\Game\ - **Liaison** : `LifePlay.uproject` déclare `"AdditionalPluginDirectories": ["../LifePlay-Sandbox/Plugins"]` (chemin relatif au `.uproject`) et active `LPSandbox` dans `Plugins`. UBT et l'éditeur y trouvent `LPSandbox.uplugin` (modules `LPSandbox` et `LPAnimMeasure`) ; les DLL du plugin sont compilées avec le jeu (`Build.bat LifePlayEditor Win64 Development`). - **Pourquoi pas un submodule** : l'addon est un `uproject` mince qui contient le plugin sous `Plugins/LPSandbox/`. Un submodule monté sur `Plugins/LPSandbox` du jeu donnerait `Plugins/LPSandbox/Plugins/LPSandbox/` (plugin imbriqué, non scanné au bon niveau) ; un submodule `External/LifePlay-Sandbox` dupliquerait l'addon à côté du sibling et rendrait ambigu l'exemplaire chargé. Un clone sibling évite les deux problèmes. -- **Pin** : le jeu consomme un commit précis de l'addon, consigné à la main dans `S3-INT.md` (aujourd'hui `a3b1b897715b05b22d75b79d53637e58b6698c2c`, `main`, AP7 méthodes de transformation et sandbox multi-pack ; précédents : `f09c42e5a2bc613cf269cce76c878461ca41c8b7` S7-T2 uplugin, `c1fdd29e2c1036c7d6365ba6389eff5d2f8c8c96` S5-T2 `LPCoupleSim`, `f8102647ccdebad37e4977ccbf2c51e583823a80`, S4-T3). Le pin est mis à jour (hash dans `S3-INT.md` et README de l'addon) à chaque évolution de l'addon que le jeu doit prendre. Reproduire : +- **Pin** : le jeu consomme un commit précis de l'addon, consigné à la main dans `S3-INT.md` (aujourd'hui `3b21fd180c04f0fa49a1b5c9ef1b517ade1cb362`, `lot/SB0-conception`, SB0 conception de la sandbox modulaire ; précédents : `f09c42e5a2bc613cf269cce76c878461ca41c8b7` S7-T2 uplugin, `c1fdd29e2c1036c7d6365ba6389eff5d2f8c8c96` S5-T2 `LPCoupleSim`, `f8102647ccdebad37e4977ccbf2c51e583823a80`, S4-T3). Le pin est mis à jour (hash dans `S3-INT.md` et README de l'addon) à chaque évolution de l'addon que le jeu doit prendre. Reproduire : ```powershell cd D:\Game git clone https://github.com/edujiro5972/LifePlay-Sandbox.git -git -C LifePlay-Sandbox checkout a3b1b897715b05b22d75b79d53637e58b6698c2c +git -C LifePlay-Sandbox checkout 3b21fd180c04f0fa49a1b5c9ef1b517ade1cb362 # le jeu doit être cloné à côté : D:\Game\LifePlay-master 5.5 ``` diff --git a/Docs/Migration/Journal_Modifications.md b/Docs/Migration/Journal_Modifications.md index ee40488..8c00ee5 100644 --- a/Docs/Migration/Journal_Modifications.md +++ b/Docs/Migration/Journal_Modifications.md @@ -1131,6 +1131,7 @@ Validation L7c/L7d (2026-10-02, parc, même cadrage) : la nuit reste claire (sol | CHG-155 | 2026-10-05 | ShowCouple | Un lit est reconnu par son nom. Il ne bloque un déplacement que vers le bas, pour se poser ; le retour horizontal n'est plus arrêté et le contact ne renvoie plus la boîte | après avoir quitté le lit, la boîte ne pouvait plus y revenir | revenir au test `DoesPackageExist` et au filtre du flanc seul | | CHG-156 | 2026-10-05 | Clavier | `LPKeyboardSubsystem` : bouton « Clavier » ajouté à l'exécution dans `MainMenu.SettingsScrollBox` ; panneau pour changer, ajouter ou retirer une touche (actions et axes clavier). Écrit dans `Saved/Config/Windows`, pas dans `GameSettings.sav` | pouvoir réaffecter les touches, dont Q, sans modifier les Blueprints | retirer `LPKeyboardSubsystem.h/.cpp` et la dépendance `UMG` | | CHG-158 | 2026-10-05 | Réglages | `LPSettingsSubsystem` : onglets Audio, Video, Lewd, General, Keyboard, Misc au-dessus de `SettingsScrollBox`. Les lignes du Blueprint restent en place et sont montrées selon leur texte ; le reste va dans Misc. Keyboard affiche la liste des touches | la liste unique ne montrait pas le clavier | retirer `LPSettingsSubsystem.h/.cpp` | +| CHG-228 | 2026-10-07 | SB0 | addon `D:\Game\LifePlay-Sandbox` : `Docs/SB0-conception.md`, `Docs/SB-plan.md`, `README.md` (commits C1 `3b21fd1`, C2 `12d6198`, tags `lot-SB0-avant` / `lot-SB0-valide`, branche `lot/SB0-conception`) ; jeu : `Docs/Migration/etat/sandbox/S3/S3-INT.md`, `Docs/Migration/21_Sandbox_Addon.md` (pin) | conception de la sandbox modulaire demandée par l'utilisateur (modes Pair/Interaction/Mesure → mods `lps_couple` / `lps_interaction` / `lps_asset_integration`, modules système et bibliothèques `lps_*`, `.lpmod` étendu rétrocompatible, interface `ILPSandboxMod`, registre, barre latérale ; plan SB0–SB4 au format du cahier S0–S8) | pin `a3b1b89` → `3b21fd1` (hash complet `3b21fd180c04f0fa49a1b5c9ef1b517ade1cb362`) | `.\Tools\Restore.ps1 -Lot SB0` (jeu) et `.\Tools\Restore.ps1 -Lot SB0-addon -ProjectRoot D:\Game\LifePlay-Sandbox` ; commits addon conservés dans l'historique (branche) ; rien n'est commité dans le dépôt du jeu ni poussé | | CHG-227 | 2026-10-07 | DOC-MOD-3 | `Docs/Migration/23_Cycle_De_Vie_Mod.md` (§ 2.6 nouveau, 7 schémas Mermaid) | schémas du cycle de vie d'un module demandés par l'utilisateur : états (installé, monté, listé, inscrit, actif / inactif, retiré, déchargé), séquence de démarrage (moteur, registre, `GI`, sous-systèmes C++), arbres logiques de `GI.LoadSettings(LoadLastSave)`, `GI.PopulateRaws()`, du gestionnaire (`CreateModManagerWidget(GameStart)`, `ToggleMod(Mod, IsEnabled)`, `SortLoadOrder(ForUp, ModuleIndex)`, `CloseModManager(GameStart)`), appel d'une animation de mod, désactivation et déchargement ; graphes reconstitués depuis le relevé `LPDumpFunction -BP=GI -Fn=EventGraph -Pins -Exec` et l'ordre d'initialisation de `UGameInstance` (moteur) ; 7 schémas rendus sans erreur par Mermaid 11 | aucun changement de code ni de configuration | `.\Tools\Restore.ps1 -Lot DOC-MOD-3` | | CHG-226 | 2026-10-07 | DOC-MOD-2 | `Docs/Migration/23_Cycle_De_Vie_Mod.md` (§ 2.4, 3.1, 3.2, 3.3 et 3.4 nouveaux, 5, 6) ; `Docs/Migration/Journal_Modifications.md` | complément de la documentation du cycle de vie d'un mod, constats vérifiés dans les Blueprints (`GI`, `UI/ModuleTick`, relevés `LPDumpFunction`) et le moteur UE 5.5 : l'ordre de chargement existe (`GI.SortLoadOrder`, `PopulateRaws` : le premier fichier lu par nom gagne, le module le plus bas l'emporte, fichiers texte seulement) ; `vin_Base` verrouillé en dur dans `UI/ModuleTick` ; dépendance `.uplugin` obligatoire absente = le jeu ne démarre pas, donc aucune dépendance entre mods dans le `.uplugin` ; doublons entre `.uplugin`, `.lpmod` et `pack.json`, divergences dues à `New-IfMissing` de `DeliverAnims.ps1` ; évolutions E12 corrigée, E13 à E15 ajoutées | aucun changement de code ni de configuration | `.\Tools\Restore.ps1 -Lot DOC-MOD-2` | | CHG-225 | 2026-10-07 | DOC-MOD | `Docs/Migration/23_Cycle_De_Vie_Mod.md` (nouveau) ; `Docs/Migration/README.md` (ligne d'index) | documentation demandée par l'utilisateur : cycle de vie d'un mod, propriétés réellement lues par le moteur (`.uplugin`) et par le jeu (`.lpmod`), classes, architecture, capacités, évolutions possibles. Constat consigné : `LPModDailies` ne consulte pas la case du gestionnaire de mods (un pack d'animations décoché fournit encore ses clés, évolution E1) ; `MODULE_REQUIREMENTS` n'est pas vérifié | aucun changement de code ni de configuration | supprimer `23_Cycle_De_Vie_Mod.md` et cette entrée ; `.\Tools\Restore.ps1 -Lot DOC-MOD` | diff --git a/Docs/Migration/etat/sandbox/S3/S3-INT.md b/Docs/Migration/etat/sandbox/S3/S3-INT.md index 52839bc..4d2588e 100644 --- a/Docs/Migration/etat/sandbox/S3/S3-INT.md +++ b/Docs/Migration/etat/sandbox/S3/S3-INT.md @@ -8,9 +8,9 @@ Date : 2026-10-06 — Role A-INT |---|---| | Repo addon | https://github.com/edujiro5972/LifePlay-Sandbox.git | | Branche | `main` | -| **Commit pin** | `f09c42e5a2bc613cf269cce76c878461ca41c8b7` (`f09c42e`, **local, non pousse** au 2026-10-06) | +| **Commit pin** | `3b21fd180c04f0fa49a1b5c9ef1b517ade1cb362` (`3b21fd1`, SB0, **local, non pousse** au 2026-10-07) | | Contenu du commit | S5-T2 : `LPCoupleSim` (géométrie du couple partagée jeu/addon) ; inclut S4-T3 (retrait GM Interaction legacy), S4-T2 (découpe `LPPairSandbox.cpp`) et S3-T4 (`StartupModule` → `SetUALRoot`) | -| Pins précédents | `c1fdd29e2c1036c7d6365ba6389eff5d2f8c8c96` (S5-T2), `f8102647ccdebad37e4977ccbf2c51e583823a80` (S4-T3), `4de1f0b6764ed3bc575bb687630d3f070e1be221` (S3-T4) | +| Pins précédents | `f09c42e5a2bc613cf269cce76c878461ca41c8b7` (S7-T2), `c1fdd29e2c1036c7d6365ba6389eff5d2f8c8c96` (S5-T2), `f8102647ccdebad37e4977ccbf2c51e583823a80` (S4-T3), `4de1f0b6764ed3bc575bb687630d3f070e1be221` (S3-T4) | ## Structure @@ -46,7 +46,7 @@ sur la copie effectivement chargee. Pin manuel a la place (ci-dessous). ```powershell cd D:\Game git clone https://github.com/edujiro5972/LifePlay-Sandbox.git -git -C LifePlay-Sandbox checkout f09c42e5a2bc613cf269cce76c878461ca41c8b7 +git -C LifePlay-Sandbox checkout 3b21fd180c04f0fa49a1b5c9ef1b517ade1cb362 # Le jeu doit etre clone a cote : D:\Game\LifePlay-master 5.5 ``` diff --git a/Docs/Migration/etat/sandbox/SB0/SB0-VAL.md b/Docs/Migration/etat/sandbox/SB0/SB0-VAL.md new file mode 100644 index 0000000..de10a66 --- /dev/null +++ b/Docs/Migration/etat/sandbox/SB0/SB0-VAL.md @@ -0,0 +1,48 @@ +# SB0-VAL : clôture du lot SB0 (conception de la sandbox modulaire) + +**Verdict : PASS** (2026-10-07) + +## Fiches + +| Fiche | Agent | Modèle prévu | Modèle utilisé | Résultat | +|---|---|---|---|---| +| SB0-T1 | A-CART | opus | opus | fait | +| SB0-T2 | A-ARCH | opus | opus | fait | +| SB0-T3 | revue (opus + utilisateur) | opus + utilisateur | opus | plan approuvé, points ouverts tranchés § 9 | +| SB0-T4 | A-DOC + A-INT | sonnet | sonnet | fait (ce document) | + +## Dépôt addon (`D:\Game\LifePlay-Sandbox`) + +- Branche : `lot/SB0-conception` +- C1 : `3b21fd180c04f0fa49a1b5c9ef1b517ade1cb362` (`Docs/SB0-conception.md`, `Docs/SB-plan.md`) +- C2 : `12d61981d74cf4c9a52fb00ccb2177ba9126cba0` (`README.md`, pin = C1) +- Tags : `lot-SB0-avant` (HEAD de départ `159afbf`), `lot-SB0-valide` (C2) +- Note : C1 a d'abord été créé avec l'ancien chemin du plan dans le § 9 (remplacement manquant) ; il a été défait localement par `git reset --soft` (non poussé) puis recréé corrigé. Aucun amend. +- Rien n'est poussé. Aucun commit dans le dépôt du jeu. + +## Preuves + +`git log --oneline -3` (addon) : + +``` +12d6198 SB0: maj pin addon (3b21fd1) +3b21fd1 SB0: conception de la sandbox modulaire (registre de mods, barre latérale, modules système, bibliothèques) +159afbf AP7: maj pin addon (a3b1b89) +``` + +`git tag --list "lot-SB0*"` : + +``` +lot-SB0-avant +lot-SB0-valide +``` + +Occurrences du nouveau hash complet (attendu : 2 par fichier) et de l'ancien `a3b1b89` (attendu : 0) : + +| Fichier | `3b21fd18…` | `a3b1b89` | +|---|---|---| +| `Docs/Migration/etat/sandbox/S3/S3-INT.md` | 2 | 0 | +| `Docs/Migration/21_Sandbox_Addon.md` | 2 | 0 | +| `D:\Game\LifePlay-Sandbox\README.md` | 2 | 0 | + +Journal : entrée CHG-228 placée avant CHG-227.