LifePlay-Revival/Docs/Migration/etat/CAM/CAM-B2d-FICHE.md
edujiro5972 8084622450 LifePlay UE 5.8 : état de développement au 2026-10-19
Tickets : REP1-T4

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 22:57:42 +02:00

3.7 KiB

CAM-B2d : fiche lp-mcp-bp (2026-10-13)

GO de Big Boss (2026-10-13), après l'UE-LIBRE de la session street de STG. SPEC : CAM-SPEC.md § « CAM-B2d » (MD5 48aa5499). Room seul ; ni LPDirectControlSubsystem ni Person.

Barème

Grille a1 b2 c1 d1 e1 f1 = 7 → N3 ; S = C3 1 (procédure lp-mcp, fiches B2b) + f 1 = 2 < 3 : une fiche. Budget : ≈ 12 nœuds créés, 5 supprimés, ≈ 45 appels ; 60 tours. Case C9a : à cocher à l'envoi (relevé du jour).

Préalables (orchestrateur)

  1. UE-LIBRE de STG reçu ; UeState = 0 ; aucun jeu en cours.
  2. Relevé : git status -- Content\BPs\Room.uasset = M ; MD5 Room E0517C63 ; GI C4817B84.
  3. Instantané Snapshot.ps1 -Lot CAM-B2d -Path Content\BPs\Room.uasset.
  4. Éditeur headless ; attente du serveur MCP (journal) ; load_asset /Game/BPs/Room par la session.

Consignes de l'agent

  • Rubriques communes : celles de CAM-B2b-FICHES.md (un appel MCP par message ; graphe, outils, interdits, arrêt, livrable CAM-B2d-IMPL.md).
  • Ordre économe (leçon F6a) : créer tous les nœuds, faire une seule lecture groupée, puis couper chaque lien et le remplacer aussitôt.
  • Nœuds existants (préfixe /Game/BPs/Room.Room:EventGraph.) :
    • 453 GetActorForwardVector (self ← 261) → 454.A (Normalize2D) ;
    • 262 GI.PC ; 261 GI.PlayerCharacter ;
    • IfThenElse_96 (CircleCamera, then → VariableSet_67) ; PO28 (A ← VariableGet_292, B ← CE1.DeltaSeconds, sortie → 67) ;
    • IfThenElse_97 (LeftRight, then → VariableSet_68) ; PO30 (A ← VariableGet_293, B ← PO29, sortie → 68) ;
    • CustomEvent_48 (PlaceC2, then 1 → CallFunction_461 EnsureCamRoom).
  • Identifiants à trouver par find_node_types (filtre court) : GetControlRotation (Controller), SetControlRotation (Controller ; cible = 262, une référence PC, relire l'index de self), GetForwardVector (rotateur, catégorie Math|Rotateur), BreakRotator, MakeRotator (Roll, Pitch, Yaw : relire les index), GetActorRotation.
  • Écritures :
    1. B2d-1 : (N) GetControlRotation (self ← 262) = CR ; (N) GetForwardVector(CR) ; break 453 → 454.A ; GetForwardVector → 454.A ; delete_node 453.
    2. (N) BreakRotator(CR) = BR (pur, partagé).
    3. B2d-2 : break 292 → PO28.A ; BR.Yaw → PO28.A ; (N) MakeRotator(0, 0, Yaw ← PO28) ; (N) SetControlRotation (self ← 262, NewRotation ← ce MakeRotator) ; break 96.then → 67 ; 96.then → SetControlRotation ; delete_node 67 puis 292.
    4. B2d-3 : même chose avec PO30, 97, 68 et 293.
    5. B2d-4 : (N) GetActorRotation (self ← 261) → (N) BreakRotator → Yaw → (N) MakeRotator(0, 0, Yaw) → (N) SetControlRotation (self ← 262) ; break CE48.then → 461 ; CE48.then → ce nœud ; ce nœud.then → 461.
    6. Relecture groupée : nœuds créés, 454, PO28, PO30, 96, 97, CE48, 461. Puis compilation stricte et save_assets /Game/BPs/Room seul.
  • Mesures : MD5 de Room après l'enregistrement (≠ E0517C63) ; git status --short -- Content Source Config.

Après (orchestrateur)

Fermeture de l'éditeur, UeState = 0. V5 : dump Room, critères de la SPEC B2d et de B2b. V6 : CompileAllBlueprints = référence. UE-LIBRE à Big Boss. Ensuite : STG (Person) → build COMMUN-2 → essai commun B2 + B2b + B2d → commit de Room.

Essai B2d (à ajouter à la marche à suivre)

  • En C2 : Z éloigne toujours de la caméra ; Q et D vont à gauche et à droite de l'écran ; le personnage se tourne vers sa marche sans faire tourner la caméra.
  • La souris et les flèches gauche/droite font tourner la caméra, et Z suit la nouvelle direction.
  • En entrant en C2 (touche C ou entrée en pièce), la caméra est derrière le personnage.