153 lines
8.6 KiB
Markdown
153 lines
8.6 KiB
Markdown
|
|
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.
|