LifePlay-Revival/Docs/Migration/etat/BOSS/COMMUN-23-TESTS.md
2026-10-21 09:36:04 +02:00

16 KiB
Raw Blame History

Fiche COMMUN-23-FIT — Niveau N1 — Modèle prévu sonnet | utilisé claude-sonnet-5-5 — Agent lp-writer (rôle A-DOC) — Skills sk-protocol, lp-doc, lp-lot

COMMUN-23-TESTS : fiche de tests commune de la build Development COMMUN-23 (SET1 réglages en partie, M-Z talons, F8a) (2026-10-20)

Demande de Big Boss (local_104ff22d), 2026-10-20, sur ordre de l'utilisateur : « Oui, lance la build Development COMMUN-23 (SET1 réglages en partie, M-Z talons, F8a) et prépare le cahier de tests. » Cette fiche reprend etat\REL\SET1\SET1-V1-IMPL.md (§ 5 V1 à V10, § 10), SET1-V1b-IMPL.md (§ 5 W1 à W9), etat\REL\FIX1\FIX1-MZ2-IMPL.md (§ 5), FIX1-MES.md (constat de la séance : talons enfoncés au lever) et FIX1-F8a-IMPL.md. Constat de départ côté SET1 (captures de l'utilisateur, avant correctif) : en partie, l'ancienne liste longue des réglages s'affichait, puis était remplacée par les onglets au bout d'environ 30 s, avec une superposition. Fiche prête : § 1 (MD5, heure) à compléter par Big Boss à la remise de la build. Rédigée sans copie UE, sans MCP, sans lancer le jeu. Aucun contenu de jeu : chaque action est décrite par sa fonction (doc 27). Forme reprise de COMMUN-21-TESTS.md.

Hors fiche : E9 de F6 et la redirection des sauvegardes (COMMUN-21) ; la branche « pièce cachée » ; la correction de la page Keyboard au-delà de son affichage ; F7b (animation « look », séance FIX1-MES) ; mesure du délai de 0,5 s de W7 (relevé au journal seulement, pas de verdict de temps de trame).

1. Build testé

Élément Valeur
Chemin de la build D:\Game\LifePlay_Build_5.8_Development_COM23\Windows\ (lancer Windows\LifePlay.exe) ; confirmé par Big Boss à la remise
Exe Windows\LifePlay\Binaries\Win64\LifePlay.exe
MD5 de l'exe 0f7b0a39eb48753d3b6bf436f43032a0 (identique à Binaries\Win64\LifePlay.exe, compilation SET1-V1b), 335 855 104 octets
Date de génération exe lié le 2026-10-20 à 21:37:17 ; paquet BuildDebug.ps1 -SkipBuild lancé à 21:43:16, UAT code 0 en 119 s, CheckPackage PASS, 0 paquet recuit ; journal Saved\Logs\portage\BuildDebug_Development_20261020-214316.log
Configuration Development, commune à plusieurs lots
Base HEAD du dépôt + sources non commitées de SET1 (V1 et V1b) et de FIX1 (MZ2, F8a)

MD5 des sources attendus (relevés dans les livrables amont) :

  • LPSettingsSubsystem.cpp 6277a8fc139c05dc10e302f88de0f8d9, LPSettingsSubsystem.h 138350efe8473c430db984db63c8feac, LPColorGradeSubsystem.cpp 5be400543166b6de7a4a88f6097a9d93, LPVideoQualitySubsystem.cpp c3055197030bdbbce813df4cc6d7cd63, LPModInfoSubsystem.cpp 98206e688308e908b04ae15cf408e1bb (SET1-V1b-IMPL.md § 9) ;
  • LPDirectControlSubsystem.cpp 86ef519e880989941e033edeadda7c26 (FIX1-MZ2-IMPL.md § 1) ;
  • LPCameraModeSubsystem.cpp 976bf0a458b87f9aecf974fcec3209f0 (FIX1-F8a-IMPL.md § 1) ;
  • ces MD5 sont ceux des livrables amont, à la date de leurs fiches : si un fichier a bougé depuis, seul le relevé de Big Boss fait foi.

Lots et correctifs couverts :

  • SET1-V1 / V1b : les onglets des réglages (General, Audio, Video, Keyboard, Lewd, Misc) et les lignes de couleur, de vidéo et de contrôle des mods se posent sur l'instance du menu qui est à l'écran, plus sur la première liste trouvée en mémoire (cause établie : une instance neuve du menu à chaque ouverture en partie, les anciennes restent en mémoire jusqu'au ramasse-miettes). Compilé à 0 erreur, 0 avertissement ; jamais vu en jeu.
  • FIX1-MZ2 : la correction M-Z (maillage relevé au lever) vise −90 + 12 × HeelHeight au lieu de −90 fixe ; en talons (−80,4 pour 0,8) le maillage est déjà à sa hauteur voulue et M-Z ne se déclenche plus. Valeurs calculées sur les journaux de COM22, jamais vues en jeu.
  • FIX1-F8a : initialisation de Aim dans TickCoupleMouse (avertissement C4701) ; logique inchangée par construction, aucune exécution (FIX1-F8a-IMPL.md C1).

2. Faisabilité

Machine calme : réserve « mesure » non requise.

2.1 Lignes de lancement

Le PowerShell de l'utilisateur plante au démarrage : donner les deux formes. Elles sont équivalentes.

Forme cmd (sans &), jeu lancé sans argument (cas 1 à 5 et 7) :

"D:\Game\LifePlay_Build_5.8_Development_COM23\Windows\LifePlay.exe"

Forme PowerShell (avec &) :

& "D:\Game\LifePlay_Build_5.8_Development_COM23\Windows\LifePlay.exe"

Forme cmd avec le relevé des personnages, cas 6 (un relevé toutes les 2 s au journal) :

"D:\Game\LifePlay_Build_5.8_Development_COM23\Windows\LifePlay.exe" -LPPersonsLog=2

Forme PowerShell :

& "D:\Game\LifePlay_Build_5.8_Development_COM23\Windows\LifePlay.exe" -LPPersonsLog=2

Après le chargement, la ligne LPDebug persons : releve toutes les 2 s doit être au journal (LPDebugSubsystem.cpp:649, cité par FIX1-MES.md § 1) ; absente, l'argument n'a pas été pris : arrêter et le dire.

2.2 Journal et motifs

« Journal » = D:\Game\LifePlay_Build_5.8_Development_COM23\Windows\LifePlay\Saved\Logs\LifePlay.log du lancement jugé (le jeu en garde un exemplaire horodaté à chaque lancement). Préfixe LogLifePlay: Display:. Motifs exacts, lus dans le code :

Motif (texte exact) Fichier : ligne Quand
Reglages : onglets General, Audio, Video, Keyboard, Lewd, Misc LPSettingsSubsystem.cpp:938 à chaque création de barre d'onglets
Reglages : onglets poses sur <MainMenu_C_n> (ecran titre) ou (partie) LPSettingsSubsystem.cpp:940 juste après la précédente
Reglages : onglets retires de <MainMenu_C_k> (instance quittee) LPSettingsSubsystem.cpp:180 au changement d'instance, avant les deux précédentes
Reglages : entree Settings ajoutee sur l'ecran titre ; Reglages : Settings place apres Mod Manager LPSettingsSubsystem.cpp:791, :857 création du bouton Settings de l'écran titre
Couleur : reglages de couleur ajoutes sur <MainMenu_C_n> LPColorGradeSubsystem.cpp:314 les 5 lignes de couleur viennent d'être ajoutées à la liste de cette instance
Video : controles ajoutes avant les reglages de couleur (sur <MainMenu_C_n>) LPVideoQualitySubsystem.cpp:595 les lignes de vidéo et Recommended viennent d'être ajoutées
Modules : cases de controle des mods ajoutees a Settings > Misc (moteur a, version min b, version max c) sur <MainMenu_C_n> LPModInfoSubsystem.cpp:303 les 3 cases de contrôle des mods viennent d'être ajoutées
M-Z : <acteur> maillage relatif Z <avant> -> <cible>[ (talons)] (gabarit <classe>), debout sans meuble ; HeelHeight=<h> ; currentAnimation=<nom> ; -90+12*HeelHeight=<z> LPDirectControlSubsystem.cpp:1268 une correction M-Z
LPDebug persons : STATE <acteur> coll=… meshZ=… anim=… currentAnimation=… LPDebugSubsystem.cpp:414, :580 un relevé toutes les 2 s avec -LPPersonsLog=2

Relevé commun des réglages (commande prête, à lancer après chaque lancement) :

Select-String -Path "D:\Game\LifePlay_Build_5.8_Development_COM23\Windows\LifePlay\Saved\Logs\LifePlay.log" -Pattern 'onglets (poses|retires)','reglages de couleur ajoutes sur','controles ajoutes avant','cases de controle des mods'

Rapprocher ensuite les noms MainMenu_C_<n> : pour une instance donnée, les quatre familles de lignes portent le même <n> (SET1-V1b-IMPL.md § 10).

Relevé commun des personnages (cas 6) :

$J = "D:\Game\LifePlay_Build_5.8_Development_COM23\Windows\LifePlay\Saved\Logs\LifePlay.log"
Select-String -Path $J -Pattern 'LPDebug persons : STATE PlayerCharacter' | Select-Object LineNumber, Line
Select-String -Path $J -Pattern 'M-Z :'
Cas Fonction ou réglage dans la build ? Dépend d'un travail non fini ou d'une observation
.1 à .5 (SET1) oui (V1 et V1b, compilées à 0 erreur) jamais vu en jeu ; IsInViewport() vrai pour l'instance de l'écran titre non observé (V6) : si faux, aucun onglet au titre
.6 (M-Z) oui (MZ2, compilée à 0 erreur) jamais vu en jeu ; demande une tenue à talons (HeelHeight > 0), une tenue sans talons, un siège
.7 (non-régressions) oui F8a jamais exécutée ; menu Clavier et Tamise : voir COMMUN-21 et COMMUN-20

3. Cas

Contrôle automatique : motif cherché dans le journal de jeu par Big Boss (lancé avant la remise par Tools\EssaiJournal.ps1 quand il existe). Verdict, Découvreur et Heure restent vides : le BILAN les remplit. « Onglets tout de suite » = les onglets sont visibles dès l'ouverture, sans liste longue, sans superposition et sans attente d'environ 30 s.

Cas Lot Correctif (CHG / ERR / ticket) Action de l'utilisateur Attendu Contrôle automatique du journal Verdict Découvreur Heure
COMMUN-23.1 SET1 SET1-V1 (V1, V4 partiel, V6), SET1-V1b (W3) Lancer le jeu (ligne § 2.1, sans argument) ; sur l'écran titre, cliquer Settings Onglets General, Audio, Video, Keyboard, Lewd, Misc tout de suite ; onglet Video complet (qualité globale, ombres, textures, effets, anticrénelage, Recommended, puis les cinq réglages de couleur) ; onglet Misc complet (les trois cases de contrôle des mods) onglets poses sur MainMenu_C_<n> (ecran titre) : 1 ligne ; reglages de couleur ajoutes sur, controles ajoutes avant, cases de controle des mods : 1 ligne chacune, avec le même <n> ; symptôme de V6 : aucune de ces lignes au titre
COMMUN-23.2 SET1 SET1-V1 (V2, V7, V8), SET1-V1b (W1, W9) Nouvelle partie ou Continuer ; en partie, Échap, puis Settings (première ouverture) ; parcourir Video, Misc et Keyboard Onglets tout de suite, sans liste longue ni superposition, sans attente de 30 s ; Video et Misc complets (comme .1) ; Keyboard s'affiche (la page des touches est présente) onglets poses sur MainMenu_C_<n> (partie) : 1 ligne ; les trois lignes Couleur, Video, Modules avec le même <n> ; écart entre onglets poses et ces trois lignes ≤ environ 0,5 s (W7) ; motif already has a parent : 0
COMMUN-23.3 SET1 SET1-V1 (V3, V9, V10), SET1-V1b (W2, W5, W6, W8) Fermer les réglages (Back), les rouvrir, recommencer 2 ou 3 fois en partie (chaque ouverture crée une instance neuve) ; à chaque fois regarder Video, Misc, Keyboard ; sur une ouverture, ouvrir les réglages, Back, rouvrir sans quitter l'écran de pause Onglets tout de suite à chaque ouverture, sans liste longue ni superposition ; Video et Misc complets ; curseurs et afficheurs de valeur Video et couleur à leur valeur en cours (pas la valeur par défaut) ; un curseur déplacé met à jour son afficheur ; cases ×2 et style sombre sur la nouvelle instance à chaque nouvelle ouverture : onglets retires de <ancienne> puis onglets poses sur <nouvelle> (partie), <n> nouveau à chaque fois, repris par les trois lignes Couleur, Video, Modules ; une seule ligne par famille et par instance ; réouverture sur la même instance : aucune nouvelle ligne de ces familles
COMMUN-23.4 SET1 SET1-V1 (V4, V5), SET1-V1b (W4) Depuis la partie, retourner au titre ; sur le nouvel écran titre, cliquer Settings Bouton Settings présent dès l'affichage du nouvel écran titre ; réglages ouverts avec les onglets tout de suite ; Video et Misc complets onglets poses sur MainMenu_C_<m> (ecran titre) avec <m> différent de celui du premier titre (.1) ; étiquette (ecran titre) exacte (pas (partie)) ; trois lignes Couleur, Video, Modules avec <m>
COMMUN-23.5 SET1 SET1-V1 (V1 à V3, persistance) ; réglage de caméra 1 à 7, défaut 3 (SET1-PRE.md:91) En partie, ouvrir Settings, changer la vitesse de caméra (Camera Speed) à une valeur qui n'est pas la valeur d'origine (noter l'ancienne et la nouvelle) ; fermer les réglages, les rouvrir ; puis, si le temps le permet, retourner au titre et rouvrir Settings La nouvelle valeur est conservée à la réouverture (même instance ou instance neuve) ; la caméra réagit à la nouvelle vitesse sans objet : constat visuel (aucune ligne de journal propre à ce réglage dans les sources relues) ; en cas de doute, rapprocher des lignes onglets poses de la réouverture
COMMUN-23.6 FIX1 FIX1-MZ2 (FIX1-MZ2-IMPL.md § 5 points 2 à 6) ; constat FIX1-MES.md Lancer avec la ligne -LPPersonsLog=2 (§ 2.1). a) Joueur en talons (HeelHeight > 0) : noter l'heure, s'asseoir sur un siège, rester 10 s, se lever, rester debout immobile 10 s, regarder les pieds. b) Même séance sans talons (tenue plate). c) Observer si un personnage non joueur à talons s'assoit et se lève (facultatif) a) Après le lever, pieds sur le sol (pas enfoncés, pas suspendus) ; b) inchangé par rapport à avant : pieds au sol ; c) idem a) a) STATE PlayerCharacter … meshZ= égal à −90 + 12 × HeelHeight (−80,4 pour 0,8 ; −85,2 pour 0,4) avant et après le lever ; 0 ligne M-Z : visant le joueur ; b) meshZ=-90.0, 0 ligne M-Z : ; si une ligne sort sans talons, elle porte -> -90.0 (gabarit Person_C) sans (talons) et HeelHeight=0.000 ; toute ligne M-Z : : le <avant> est différent de <cible> (la ligne ne sort plus pour un personnage déjà à sa cible) ; aucune ligne avec HeelHeight=? ; Fatal|Unhandled|Critical error|Assertion failed : 0
COMMUN-23.7 FIX1 / KEY2 / STM1 FIX1-F8a (FIX1-F8a-IMPL.md C1) ; non-régressions de COMMUN-21 (.12) et COMMUN-20 a) En scène, glisser le couple à la souris (saisir, déplacer, relâcher), plusieurs fois. b) Ouvrir le menu Clavier et faire défiler : noter l'ordre des titres de section. c) Charger la carte de Londres, suivre la Tamise en vue de dessus a) Le couple se déplace avec le curseur, se pose au relâchement, sans saut ni blocage (logique inchangée par construction) ; b) 9 sections dans cet ordre : Movement, Camera, Map & World, Couple (scene), Actions & Interaction, Menus, Time, Favorites, System ; aucune section « Other » ; c) plus aucune maison générique sur la Tamise, ponts et quais intacts a) Fatal|Unhandled|Critical error|Assertion failed : 0 ; b) sans objet : constat visuel (51 actions au départ : Clavier : 51 actions et 17 axes relus) ; c) \[LPCity\] EAU CentralLondon : masque 59 centres : au moins 1, epargnees 0 sur la dernière ligne

Décompte : 7 cas : SET1 5 (.1 à .5), M-Z 1 (.6, trois sous-parties a, b, c dont c facultative), non-régressions 1 (.7, trois sous-parties a, b, c).

Relevés communs au journal (hors cas) : Fatal|Unhandled|Critical error|Assertion failed = 0 ; Accessed None : aucun nouveau ; avertissements Slate (already has a parent, ensure) : 0 ; toute ligne Reglages : de la session recopiée au BILAN.

4. Cas témoins

Cas VAL statique (chemin) Verdict statique
COMMUN-23.1 à .5 Docs\Migration\etat\REL\SET1\SET1-V1-IMPL.md (§ 5, V1 à V10) et SET1-V1b-IMPL.md (§ 5, W1 à W9) IMPL seulement : compilation à 0 erreur, aucune VAL de comportement, preuve « à rejouer sur un build Development » ; V1 à V10 et W1 à W9 reportés, aucun essai en jeu
COMMUN-23.6 Docs\Migration\etat\REL\FIX1\FIX1-MZ2-IMPL.md (§ 5, points 2 à 6) et FIX1-MES.md IMPL seulement : comportement calculé sur les journaux de COM22, jamais observé
COMMUN-23.7 a Docs\Migration\etat\REL\FIX1\FIX1-F8a-IMPL.md (C1) build seule : 0 avertissement, 0 erreur ; aucune exécution du glissé
COMMUN-23.7 b, c COMMUN-21-TESTS.md (.12 et .13) et son BILAN à relever dans le BILAN de COMMUN-21

Aucune VAL de comportement n'existe pour les cas .1 à .6 : aucun verdict statique ne vaut pour un cas de jeu.

PubCheck : à lancer par l'auteur après écriture (pwsh -NoProfile -File Tools/PubCheck.ps1 -Fichiers Docs/Migration/etat/BOSS/COMMUN-23-TESTS.md -Depot "D:/Game/LifePlay-master 5.8", stdin sur /dev/null) ; résultat cité au compte rendu.

Tours : 5 / 40

Fichiers à commiter

  • Docs/Migration/etat/BOSS/COMMUN-23-TESTS.md (A).