LifePlay-Revival/Docs/Migration/etat/ST/LISIB/LISIB-J1.md

153 lines
8.6 KiB
Markdown
Raw Normal View History

Fiche LISIB-J1 — Niveau N1 — Modèle prévu Opus 5.5 (orchestrateur) | utilisé claude-opus-5-5 — Agent orchestrateur (session LISIB) + utilisateur — Skills lp-lot, lp-validate, sk-protocol
# LISIB-J1 : PIE de contrôle des textes lisibles, avec l'utilisateur (2026-10-10)
État à essayer :
- DLL `UnrealEditor-LifePlay.dll` du 2026-10-10 17:35:12 (`LISIB-BUILD.md`) ;
- code `LPReadableTextSubsystem.cpp`, MD5 `51f7fd23…` ;
- aucun asset modifié par LISIB.
Copie UE : `BUILD-GO` de Big Boss requis. Éditeur avec interface, PIE seulement, aucune sauvegarde d'asset ni écriture
MCP.
## Consignes de Big Boss (BUILD-ATTENTE LISIB-J1)
- Aucune sauvegarde d'asset. Répondre **non** à toute proposition d'enregistrer à la fermeture.
- Un nom refusé dans Save Preset ne pose pas de problème : le plantage est corrigé par STE-P1. Si un nom accepté crée un
fichier dans `Content\Modules\`, ce fichier est déplacé vers `D:\Game\LifePlay_Backup_5.5\LISIB\`, MD5 identique.
- `GI.uasset` est modifié par STE et non commité. On joue avec ses gardes, et il ne doit pas changer.
- MD5 de référence relevés à 17:40:42, à retrouver identiques avant BUILD-FIN :
| Asset | MD5 |
|---|---|
| `Content/BPs/GI.uasset` | `b8b97c46b825a6af942baabd5bf74c56` |
| `Content/UI/CharGen.uasset` | `e4c2eea6a3a2129eb8b382715609b1d5` |
| `Content/UI/MainMenu.uasset` | `7292c6beb26a8066343abddf49b63d9f` |
| `Content/UI/StatMenu.uasset` | `9030531ccf4ef46c133722dacd6d2203` |
`Content\Modules` : aucun fichier plus récent que `LISIB-BUILD.md` (`find -newer`, 0 fichier). Un repère
`avant_J1.marker` est posé dans le scratchpad de la session.
## Décision de l'utilisateur relayée par Big Boss ([BOSS→TOUS], 2026-10-10)
« nous arrêtons les modifications dès que LISIB a fini et nous lançons le build de dev ». Conséquences pour LISIB :
- les corrections demandées pendant J1 se font dans le même passage (IMPL-fix, compilation, vérification) ;
- après la BUILD-FIN de J1, plus aucune écriture de code ni d'asset ;
- LOT STF construit l'archive Development commune, avec `LPReadableTextSubsystem` ;
- le CHG et le commit LISIB viennent après la preuve en jeu sur cette archive.
## Parcours
Pour chaque écran, l'utilisateur dit « lisible » ou décrit le défaut : texte, taille, mise en page, couleur.
1. Éditeur ouvert sur la copie 5.8, carte de démarrage habituelle, **Play (PIE)**.
2. **Settings**, contrôle de non-régression : les SpinBox et les cases ont le même rendu qu'avant (taille 18, fond
sombre).
3. **Nouvelle partie → CharGen** :
- lignes de morphes : `CharGenSlider` et `GenitalSlider.MorphSpin`, en 16, opacité pleine ;
- « Counteract Vagina Deform » (`SpinBox_0`) ;
- Randomize (`RanSetAge`, `RanSetAttractiveness`) ;
- X/Y/Z ;
- MoanPitch ;
- Save Preset : `VarianceSpinBox` passe au style sombre ; `FilenameEntry` garde son texte noir ;
- nom refusé : le flash rouge passe sans plantage et le texte reste noir.
Passer la souris sur une SpinBox : le remplissage reste bleu sombre (correctif D1).
4. **BodyShapeMenu** (16 SpinBox en 20) et **BodyShape**.
5. **CityMenu** :
- SpinBox de zones (`ResiSpin`, `OfficeSpin`, `RetailSpin`, `LeisureSpin`) ;
- `UnknownSpin` (D3 : style propre dans l'asset) ;
- `RacePercent` ;
- champ `SearchAction`.
6. **Builder** :
- Loc, Rot et Scl ;
- Room ;
- Spin rouge, vert et bleu ;
- Tiling ;
- champ `FilenameEntry` ;
- **ColorSlot** Red, Green, Blue et Alpha (D3).
Vérifier que les lignes tiennent en 16.
7. **StatMenu**, Save Preset : `VarianceSpinBox`, et `FilenameEntry`, qui doit être noir alors qu'il était clair avant
LISIB.
8. Champs de recherche, selon ce qui est accessible :
- Cursor et TopRight `SearchAction` / `SearchBox` ;
- ContactMenu (`SearchAction`, tags en 14) ;
- Inventory (`search` en 14, `OutfitName`) ;
- Journal ;
- LoadExtImg.
9. Selon le temps : Scene (`TimeoutHours`), SexLight, StatAdjust.
10. Quitter le PIE sans sauvegarder.
## Preuves à relever
- Journal du PIE : les lignes `LogLifePlay: LISIB : SpinBox lisible …` et `… Text Box lisible …`, comptées par menu.
Aucune ligne ne doit citer MainMenu (Settings exclu).
- Plantage, `Accessed None` nouveau ou erreur `LISIB` : aucun attendu.
- Coût (D2) : impression de fluidité, et `stat unit` si l'utilisateur le veut.
## Décisions attendues de l'utilisateur
- D3 :
- les 4 SpinBox de ColorSlot et `CityMenu.UnknownSpin` prennent le style commun, ou en sont exclues par leur nom ;
- taille minimale de 16 gardée, ou ajustée.
- Verdict : « J1 conforme », ou liste des écarts. Un écart conduit à la fiche `LISIB-IMPL-fix`.
## Résultat
PIE du 2026-10-10, 18:03 → environ 18:20. Éditeur PID 5008, lancé avec le chemin entre guillemets (défaut du lanceur
noté au registre).
L'utilisateur a envoyé 7 captures. Elles montrent :
- CharGen :
- « Counteract Vagina Deform » 0,0 ;
- Sex Moan Voice ;
- Sex Moan Pitch Multiplier ;
- lignes de morphes de cheveux ;
- Save Preset : nom `tee` en noir sur blanc ; Variance blanche sur fond sombre, avec le remplissage bleu.
- Stats (Children, Fertility, Age, Money, Attractiveness, compétences) : texte blanc sur fond sombre.
- Recherche (`hema`) : texte noir.
Tout est lisible.
Réponses de l'utilisateur :
- « le pitch devrai avoir un pas de 0.01. variance devrait avoir un pas de 0.1. save preset ok ».
- Constat : `MoanPitch` et `VarianceSpinBox` n'ont pas de `Delta` dans l'asset (relevé U5) et affichent jusqu'à 6
décimales, par exemple « 1,054199 ».
- Méthode choisie : « C++ LISIB, ce passage (Recommandé) ».
- StatMenu : « Oui, les deux (Recommandé) ».
- À la question « BodyShapeMenu, Builder et ColorSlot, StatMenu lisibles ? D3 ? taille 16 ? » : « oui. commun.16 partout ».
- D3 : style **commun** gardé pour ColorSlot et `CityMenu.UnknownSpin` ;
- taille minimale de 16 gardée partout.
Préréglage `tee.lpcharacter` créé par Save Preset : déplacé vers
`D:\Game\LifePlay_Backup_5.5\LISIB\essai-J1\` (MD5 `59f8855d…`, identique avant et après).
Contrôle à 18:2x, éditeur encore ouvert : MD5 de GI, CharGen, MainMenu et StatMenu identiques au tableau ci-dessus ;
aucun fichier nouveau dans `Content\Modules`.
**Correction J1-a**, dans le même passage (consigne de Big Boss) :
- `LPReadableTextSubsystem.cpp`, table `SpinSteps` et fonction `ApplySpinStep` :
- `CharGen.MoanPitch` : `Delta` 0,01, 2 décimales au plus ;
- `CharGen.VarianceSpinBox` et `StatMenu.VarianceSpinBox` : `Delta` 0,1, 1 décimale au plus ;
- `.cpp` de 258 lignes, LF, ASCII, MD5 `50de3ed1b77feb1b95d73809bc80d0f2`.
- Recompilation à 18:30 (`LISIB-J1a_Build_20261010-183020.txt`) : code 0, 0 erreur, 0 avertissement.
- VAL2 **PASS** (`LISIB-VAL2.md`).
- Second PIE, éditeur PID 23196 : réponse de l'utilisateur « 1 et 2 oui ». Pitch au pas de 0,01, Variance de CharGen et
de StatMenu au pas de 0,1 : **conformes**.
**Demande hors passage, reportée** :
- Demande de l'utilisateur : « pour les stats un pas de 0.1 pour tous ».
- Constat dans le relevé U5 : les lignes de stats sont `StatAdjust.ValueBox`. Le graphe de StatAdjust arrondit la valeur
à l'entier à chaque changement (`OnValueChanged` → `SetValue(Round(InValue))`) et à l'affichage
(`SetValue(Round(QueryStat))`). Un pas posé en C++ serait donc annulé.
- Il faudrait modifier l'asset `StatAdjust.uasset` : retirer les 2 `Round` et poser `Delta` à 0,1.
- Décision de l'utilisateur : « Après le gel (Recommandé) ». Report **LISIB-S1**, noté au registre.
Second préréglage `tee.lpcharacter`, créé pendant le second PIE : déplacé vers
`D:\Game\LifePlay_Backup_5.5\LISIB\essai-J1b\` (MD5 `2be655c3…`, identique avant et après). MD5 de GI, CharGen,
MainMenu et StatMenu identiques à la référence. `StatAdjust` vaut `6966f80d…` (non touché).
**Écart relevé par Big Boss après la BUILD-FIN** : `LifePlay.uproject` a été modifié à 18:31:45, pendant la relance de
l'éditeur avec interface (PID 23196, 18:30). Le BUILD-FIN ne l'a pas signalé, car `git status` n'avait été relevé que sur
`Content` et `Source`. `git diff` (5 insertions, 1 suppression) :
- `McpAutomationBridge` perd `"Optional": true` ;
- `InterchangeTests` gagne `SupportedTargetPlatforms` [Win64, Linux, Mac].
Cause probable : l'éditeur a réécrit les descripteurs de plugins au chargement du projet (estimé, non reproduit).
Big Boss a sauvegardé le fichier ; la suite est décidée par l'utilisateur. Le fichier n'entre **pas** dans LISIB-R2.
Leçon : relever `git status --short` sur **tout l'arbre** avant un BUILD-FIN.
**Verdict LISIB-J1 : conforme.** Tous les écrans vus sont lisibles, ainsi que le pas de Pitch et de Variance. D3 :
style commun ; taille 16 partout.