29 KiB
Fiche CAM-T1 — Niveau N1 — Modèle prévu sonnet | utilisé claude-sonnet-5-5 (Sonnet 5.5) — Agent lp-inventory — Skills sk-protocol, lp-paths (sk-recount appliqué pour les recoupements)
CAM-T1-INV : inventaire chiffré des sources de caméra (2026-10-11)
Copie D:\Game\LifePlay-master 5.8, branche ue5.8, HEAD 4283c13 (relevé : git rev-parse --short HEAD → 4283c13, git branch --show-current → ue5.8). Lecture seule ; seuls écrits : ce livrable et 4 journaux CAM-T1_*.txt du même dossier. Rien lu dans .hyperai/ ni dans la copie 5.5.
Convention de lecture : sur un .uasset/.umap (binaire) grep -c compte des lignes (découpe sur \n), pas des occurrences ; un compte « 1 » veut dire « présent au moins une fois ». Sur les textes, Grep (ripgrep) compte aussi des lignes.
1. Commandes exactes
Outil : Grep (ripgrep) pour les fichiers texte ; Bash grep -a pour les .uasset/.umap (le Grep d'outil ne peut pas forcer -a sur un binaire ; la fiche prescrit grep -a). Racine : cd "D:/Game/LifePlay-master 5.8".
a) Motifs binaires (21 motifs de la fiche). Écart de méthode : au lieu de 21 passes sur 9070 fichiers (USB), une passe « union » puis 21 comptes sur les seuls candidats ; équivalent, car tout fichier contenant un motif est dans l'union (SetViewTarget couvre SetViewTargetWithBlend et K2_SetViewTarget ; FieldOfView couvre SetFieldOfView).
- A1 union :
grep -rlaF --include=*.uasset --include=*.umap -e CameraComponent -e SpringArmComponent -e CameraActor -e CineCameraActor -e CineCameraComponent -e SceneCaptureComponent2D -e PlayerCameraManager -e SetViewTarget -e GetViewTarget -e TargetArmLength -e FieldOfView -e bUsePawnControlRotation -e CameraLag -e ProbeSize -e bDoCollisionTest -e SetFieldOfView -e SetActiveCamera -e ChargenCameras -e AutoActivate Content > Docs/Migration/etat/CAM/CAM-T1_union.txt(code 0, 52 s) - A2 matrice : pour chaque fichier F de l'union et chaque motif P :
grep -caF -e "$P" "$F"→Docs/Migration/etat/CAM/CAM-T1_matrice.txt - A3 fichiers par motif : pour chaque P :
grep -rlaF --include=*.uasset --include=*.umap -e "$P" $(cat CAM-T1_union.txt) | wc -l - A4 contrôle élargi (recoupement, insensible à la casse, hors liste de la fiche) :
grep -rlaiE --include=*.uasset --include=*.umap "camera|viewtarget|springarm" Content > Docs/Migration/etat/CAM/CAM-T1_camera-insensible.txt - A5 jetons réellement présents : pour chaque fichier de A4 :
grep -aoiE "[A-Za-z_0-9]*(camera|viewtarget|springarm)[A-Za-z_0-9]*" F | sort | uniq -c | sort -rn→Docs/Migration/etat/CAM/CAM-T1_tokens.txt - A6 total de fichiers :
find Content -type f \( -name '*.uasset' -o -name '*.umap' \) | wc -l
b) Niveaux et config de cuisson.
- B1 :
find Content -name '*.umap';find Content/__ExternalActors__ -type f | wc -l;find Content/__ExternalActors__ -type f | awk -F/ '{print $3"/"$5}' | sort | uniq -c;find Content -iname '*ThirdPersonMap*' -o -iname '*VehicleExampleMap*' -o -iname '*VehicleOffroadExampleMap*';git ls-files Content/__ExternalActors__ | wc -l;git check-ignore -v Content/__ExternalActors__ - B2 : Grep
GameDefaultMap|EditorStartupMap|GlobalDefaultGameMode|GameInstanceClass|TransitionMap|ServerDefaultMap|MapsurConfig/DefaultEngine.ini; GrepMapsToCook|DirectoriesToAlwaysCook|DirectoriesToNeverCook|bCookAll|CookAll|UseZenStore|\.umap|Maps(insensible à la casse) surConfig/DefaultGame.ini; ReadConfig/DefaultGame.inil. 36-59.
c) Config. Grep camera|FOV|FieldOfView|ViewTarget|SpringArm (-i, -n) sur Config/*.ini ; sed -n '4,5p' Config/DefaultEditor.ini | cut -c1-200 (lignes trop longues).
d) C++. Grep camera|ViewTarget|SpringArm|FieldOfView|FOV (-i), glob *.{cpp,h}, chemin Source : en mode count puis en mode content -n.
e) Modules et addon.
- E1 : Grep
camera(-i) surContent/Modulesencountpuiscontent -n; Grep\.animate\(camera\); Grep^ANIMATION: camera; Grep^\s*(\d+::\s*)?((Player|Actor[0-9]?)(\([A-Za-z]+\))?::\s*)?".*camera(-i, lignes de dialogue) - E2 :
find "Content/Modules" -type f | wc -l;git --git-dir='D:\Game\LifePlay_ModulesGit\5.8.git' --work-tree='D:\Game\LifePlay-master 5.8\Content\Modules' status --porcelain | wc -letlog --oneline -1 - E3 addon
D:\Game\LifePlay-Sandbox-5.8: Grepcamera(-i) encount, glob{Plugins,Source}/**/*.{cpp,h,cs}; Grepcamera(-i) encountsurSourceseul ;ls -la Content(jonction) ;git log --oneline -1
f) Dumps de graphes.
- F1 : Grep
SetViewTarget|CameraComponent|SpringArm|ViewTarget|CameraActor(-i), glob*.txt, cheminDocs\Migration\etat,count - F2 (actif / attribution par actif et date) :
cd Docs/Migration/etat && find . -name '*.txt' ! -path './CAM/*' -printf '%p|%TY-%Tm-%Td %TH:%TM\n' | while IFS='|' read -r f d; do awk -v F="$f" -v D="$d" '… (lit -BP=<nom>, "=== <nom> ::" ou "=== /Game/<chemin>" dans les 15 premières lignes ; compte les lignes /SetViewTarget|CameraComponent|SpringArm|ViewTarget|CameraActor/ insensible à la casse) …' "$f"; done | sort(sortie non archivée en fichier : un premier essai avec redirection versCAM-T1_dumps.txta été refusé par le système de permissions, aucun contournement ; sortie résumée au § 2 F) - F3 : Grep (noms de BP sans dump)
BP=(Birdview|FirstPerson|Pawn|GM|CameraShake|MapStreets|CityExpansion|ContactMenu|SecondScreenFloor|StreetMap_Static)\b|/Game/BPs/(Birdview|…)\b|=== (Birdview|…) ::suretat/**/*.txt,count; GrepBirdview|FirstPerson|CameraShake|MapStreets|CityExpansion|\bPawn\b|\bGM\bsurportage55/L4-CX-B0[78]_{application,dryrun}.txt; Read des 6 premières lignes deL6f_LPDumpComponents_20260930-102024.txtetSTE/dumps/CentralLondon__SceneCapture.txt
g) Versions 5.5 : sans objet (consigne de la fiche, copie 5.5 non lue).
2. Comptes bruts
A. Motifs binaires dans Content (9070 .uasset/.umap, A6 = 9070)
Union A1 : 12 fichiers (wc -l CAM-T1_union.txt → 12). Par dossier : Content/BPs 7 ; Content/Scenes 1 ; Content/__ExternalActors__ 0 ; Content/UI 3 ; autres 1 (Content/FreeAnimationsPack/Map/Overview.umap).
Fichiers par motif (A3) : CameraComponent 6 · SpringArmComponent 0 · CameraActor 9 · CineCameraActor 0 · CineCameraComponent 0 · SceneCaptureComponent2D 2 · PlayerCameraManager 0 · SetViewTargetWithBlend 3 · SetViewTarget 3 · K2_SetViewTarget 0 · GetViewTarget 3 · TargetArmLength 0 · FieldOfView 2 · bUsePawnControlRotation 0 · CameraLag 0 · ProbeSize 0 · bDoCollisionTest 0 · SetFieldOfView 0 · SetActiveCamera 0 · ChargenCameras 6 · AutoActivate 3. Motifs à 0 fichier sur 9070 : 11 sur 21 (SpringArmComponent, CineCameraActor, CineCameraComponent, PlayerCameraManager, K2_SetViewTarget, TargetArmLength, bUsePawnControlRotation, CameraLag, ProbeSize, bDoCollisionTest, SetFieldOfView, SetActiveCamera = 12 en réalité : voir l'écart E2 en § 3). Un résultat nul n'est pas seul : les 9 autres motifs répondent, donc les commandes fonctionnent.
Matrice fichier × motif (valeur = grep -caF, lignes ; . = 0). Motifs : M1 CameraComponent, M2 SpringArmComponent, M3 CameraActor, M4 CineCameraActor, M5 CineCameraComponent, M6 SceneCaptureComponent2D, M7 PlayerCameraManager, M8 SetViewTargetWithBlend, M9 SetViewTarget, M10 K2_SetViewTarget, M11 GetViewTarget, M12 TargetArmLength, M13 FieldOfView, M14 bUsePawnControlRotation, M15 CameraLag, M16 ProbeSize, M17 bDoCollisionTest, M18 SetFieldOfView, M19 SetActiveCamera, M20 ChargenCameras, M21 AutoActivate. M2, M4, M5, M7, M10, M12, M14-M19 : 0 partout (colonnes omises, présentes dans CAM-T1_matrice.txt).
| Dossier | Fichier | M1 | M3 | M6 | M8 | M9 | M11 | M13 | M20 | M21 |
|---|---|---|---|---|---|---|---|---|---|---|
| BPs | Birdview | 1 | 3 | . | . | . | . | . | . | 1 |
| BPs | FirstPerson | 2 | . | . | . | . | . | . | . | . |
| BPs | GI | 5 | 4 | . | 1 | 1 | 2 | . | 1 | . |
| BPs | PC | . | 1 | . | 1 | 1 | . | . | 1 | . |
| BPs | Person | . | 1 | . | . | . | 1 | . | . | 1 |
| BPs | Room | 5 | 2 | . | . | . | 2 | . | 1 | . |
| BPs | StreetMap_Static | . | 1 | . | . | . | . | . | . | . |
| Scenes | CentralLondon.umap | 1 | 2 | 1 | . | . | . | 1 | 1 | 1 |
| ExternalActors | (190 fichiers) | . | . | . | . | . | . | . | . | . |
| UI | ContactMenu | . | 1 | . | 1 | 1 | . | . | 1 | . |
| UI | MainMenu | 3 | 2 | . | . | . | . | . | 1 | . |
| UI | TopRight | . | . | 1 | . | . | . | . | . | . |
| autres | FreeAnimationsPack/Map/Overview.umap | . | . | . | . | . | . | 1 | . | . |
Comptes demandés explicitement : CameraComponent = Birdview 1, FirstPerson 2, GI 5, Room 5, CentralLondon 1, MainMenu 3 (somme 17 lignes, 6 fichiers) ; SpringArmComponent = 0 ; CameraActor = Birdview 3, GI 4, PC 1, Person 1, Room 2, StreetMap_Static 1, CentralLondon 2, ContactMenu 1, MainMenu 2 (somme 17, 9 fichiers) ; CineCameraActor = 0 ; SetViewTarget = GI 1, PC 1, ContactMenu 1 (3 fichiers). Recoupement des sommes de colonnes de la matrice avec A3 : M1 6, M3 9, M6 2, M8 3, M9 3, M11 3, M13 2, M20 6, M21 3 = identiques.
Contrôle élargi A4 (insensible à la casse, camera|viewtarget|springarm, 403 fichiers) : Content/BPs 14 · Content/Scenes 1 · Content/UI 12 · Content/__ExternalActors__ 24 · autres 352 (Content/Heavy 348, Content/FreeAnimationsPack 4). 14+1+12+24+352 = 403.
- BPs présents dans A4 : Birdview, CameraShake, FirstPerson, GameSettings, GI, MapMarkers, MapStreets, PC, Person, Room, SkyBox, StreetMap_Static, TestBall, TestPerson. BPs de
Content/BPs(27.uasset) absents de A4 (0 jeton « camera/viewtarget/springarm ») : AI, BridgetBP, CityExpansion, Daily, Daily_F, FullScreenMode, GM, HISM, LightSource, Pawn, Save, SecondScreenFloor, TestStatic (13 ; 14+13 = 27). - UI présents dans A4 : Builder, BuilderFnt, BuilderTexture, CharGen, ColorSlot, Contact, ContactMenu, Inventory, MainMenu, SexAction, SexInterface, TopRight.
- Jetons A5 (sortie
CAM-T1_tokens.txt, 216 lignes) :__ExternalActors__(24 fichiers) : un seul jeton,Camera×24 (1 par fichier) ; aucun CameraActor/CameraComponent/CineCamera.Heavy+FreeAnimationsPack(352) :EditorCameraPosition×344,AssetEditorOrbitCameraPosition×344, camera_prop/camera_M/camera_F ×7, Camera ×4, Cameras ×3, MaterialExpressionCameraVectorWS ×2, camera_sensor, camera_lens, camera, MaterialExpressionCameraPositionWS, CameraRings, CameraLens, CameraFlash ×1. - Jetons notables par BP (extraits de A5, noms tels qu'écrits dans la table des noms) : Birdview : CameraActor, CheckIfCameraMovable, RotateCamera, CircleCamera, PreventCameraMove, CameraSpeed. CameraShake : CameraShake, LegacyCameraShake, EngineCameras. GI : camera ×26, Camera ×20, CameraComponent ×8, SwitchCamera, SwitchCameraDelayed, ResetCamera, ResetCameraAndPlayer, ResetSceneCamera, StartingCamera, SceneCamera, SexCameraIndex, CameraFocusPoint, CameraSceneTransformDefault, PlayWorldCameraShake, ApplyCameraSpeedAtStartup, CameraSpeed, SetViewTargetWithBlend, GetViewTarget, ChargenCameras. PC : SwitchCamera, SwitchCameraDelayed, StartMoveCamera, StopMoveCamera, MoveCamera, RotateCamera, CircleCamera, ResetCamera, CameraChanged, SexCameraIndex, SceneCamera, InpActEvt_SwitchCamera, InpActEvt_RotateCamera, SetViewTargetWithBlend, ChargenCameras. Room : camera ×16, CameraComponent ×7, RotateCamera, CircleCamera, CenterCameraToAction, AutoCamera, TestAutoCamera, StartingCamera, ResetSceneCamera, SceneCamera, CameraFocusPoint, GetViewTarget, ChargenCameras. Person : camera_prop, camera, SceneCamera, MoveCamera, GetViewTarget, CameraActor. CentralLondon : CameraActor ×5, CameraScene ×4, CameraPortrait ×4, CameraFullBody ×4, CameraComponent, ChargenCameras. MainMenu : SliderCameraSpeed, TextCameraSpeedValue, SizeBoxCameraSpeed, SetCameraSpeed, GetCameraSpeed, CameraComponent ×5, CameraActor ×2. ContactMenu/Contact : SelectCamera, SetViewTargetWithBlend, CurrentCamera. SexAction : SwitchCamera, Switchcamera. FirstPerson : CameraComponent ×5 (jetons).
B. Niveaux
find Content -name '*.umap'→ 2 :Content/Scenes/CentralLondon.umap,Content/FreeAnimationsPack/Map/Overview.umap.Content/__ExternalActors__: 190 fichiers (find … | wc -l→ 190) :ThirdPerson/ThirdPersonMap41 ;VehicleTemplate/VehicleExampleMap36 ;VehicleTemplate/VehicleOffroadExampleMap113 (41+36+113 = 190). Chemins d'un acteur externe :Content/__ExternalActors__/<gabarit>/Maps/<niveau>/<hex>/<hex2>/<id>.uasset(profondeur 8).- Aucun
.umapne porte le nom ThirdPersonMap / VehicleExampleMap / VehicleOffroadExampleMap ; seuls existent les dossiersContent/__ExternalActors__/…/<niveau>etContent/__ExternalObjects__/…/<niveau>(6 chemins parfind -iname).Content/ThirdPersonetContent/VehicleTemplate: n'existent pas (ls -d: « No such file or directory »). git ls-files Content/__ExternalActors__ | wc -l→ 0 ;git check-ignore -v→.gitignore:64:/Content/__ExternalActors__/.git ls-files Content | wc -l→ 292.- Motifs CameraActor / CineCameraActor / CameraComponent dans les 190 acteurs externes (sensible à la casse) : 0 fichier. Insensible à la casse : 24 fichiers portent le seul jeton
Camera(ThirdPersonMap 1 :…/ThirdPersonMap/4/PN/2QISIGK5DJNQ05US8O8FXW.uasset; VehicleExampleMap 1 :…/VehicleExampleMap/4/LP/UZ50PDVAY299IMPNI9D2JC.uasset; VehicleOffroadExampleMap 22, liste complète dansCAM-T1_camera-insensible.txt).
| Niveau | Fichiers avec motif (casse) | Rôle (config) | Cuit ? |
|---|---|---|---|
/Game/Scenes/CentralLondon |
CameraActor (2 l.), CameraComponent (1), SceneCaptureComponent2D (1), FieldOfView (1), ChargenCameras (1), AutoActivate (1) | GameDefaultMap et EditorStartupMap (Config/DefaultEngine.ini:10-11) : niveau de jeu |
oui, par déduction : DefaultGame.ini:51 +DirectoriesToAlwaysCook=(Path="/Game"), absent des NeverCook ; aucune ligne MapsToCook |
/Game/FreeAnimationsPack/Map/Overview |
FieldOfView (1) | non référencé en config | non : DefaultGame.ini:55 +DirectoriesToNeverCook=(Path="/Game/FreeAnimationsPack") |
| ThirdPersonMap (41 acteurs externes) | aucun | aucun .umap ; nom d'un gabarit UE (ThirdPerson) |
incertain : sous /Game (AlwaysCook) et hors NeverCook, mais sans niveau propriétaire |
| VehicleExampleMap (36) | aucun | idem, gabarit VehicleTemplate | incertain, idem |
| VehicleOffroadExampleMap (113) | aucun | idem | incertain, idem |
Config : DefaultEngine.ini:8 GlobalDefaultGameMode=/Game/BPs/GM.GM_C ; :9 GameInstanceClass=/Game/BPs/GI.GI_C ; :10 GameDefaultMap=/Game/Scenes/CentralLondon.CentralLondon ; :11 EditorStartupMap= (même valeur). DefaultGame.ini : :41 bCookAll=False ; :42 bCookMapsOnly=False ; :51 AlwaysCook /Game ; NeverCook l. 52, 54-57 dont /Game/Heavy/New/fBlah, /Game/Quaternius, /Game/FreeAnimationsPack, /Game/AnimPacks, /Game/Retarget_ue5. Grep MapsToCook sur DefaultGame.ini → 0 ligne (aucune liste de cartes cuites).
C. Config (Config/*.ini, fichiers : DefaultEditor, DefaultEditorSettings, DefaultEngine, DefaultGame, DefaultInput, DefaultScalability) : 8 lignes, 2 fichiers
Config/DefaultEditor.ini:4et:5: lignes+Profiles=(ProfileName="Epic Headquarters"…et+Profiles=(ProfileName="Grey Wireframe"…(profils de prévisualisation de l'éditeur ; lignes > 200 caractères, le terme qui a déclenché le motif n'est pas dans les 200 premiers).Config/DefaultInput.ini:79bEnableFOVScaling=True;:93FOVScale=0.011110;:107+ActionMappings=(ActionName="RotateCamera",…,Key=MiddleMouseButton);:108idemKey=LeftAlt;:109idemKey=RightAlt;:118+ActionMappings=(ActionName="SwitchCamera",…,Key=C).DefaultEngine.ini,DefaultGame.ini,DefaultEditorSettings.ini,DefaultScalability.ini: 0 ligne.
D. C++ (Source, *.cpp/*.h) : 81 lignes, 9 fichiers (Found 81 total occurrences across 9 files ; somme 4+12+4+1+6+4+3+29+18 = 81)
| Fichier | Lignes | Contenu (numéros de ligne) |
|---|---|---|
Source/LifePlay/LPUserSettings.cpp |
29 | vitesse de caméra (CameraSpeed, GameUserSettings.ini) l. 10-114 |
Source/LifePlay/LPUserSettings.h |
18 | idem, l. 1-58 |
Source/LifePlay/LPDirectControlSubsystem.cpp |
12 | #include Camera/CameraActor.h l. 15, CameraComponent.h l. 16 ; FollowCamera l. 897 : GetViewTarget l. 903, SpawnActor<ACameraActor> l. 913, SetFieldOfView(70.f) l. 916, log « camera troisieme personne derriere le personnage » l. 918, SetViewTargetWithBlend(FollowView, 0.35f) l. 922, balayage ECC_Camera sphère 12 l. 934-935 |
Source/LifePlay/LPDirectControlSubsystem.h |
4 | l. 12 (« La camera suiveuse n'est pas branchee. »), 19, 43 FollowCamera(...), 64 ACameraActor* FollowView |
Source/LifePlay/LPSecondScreenSubsystem.cpp |
6 | l. 18, 20 FaceFOV = 30.f, 68, 103, 109, 110 CaptureComp->FOVAngle = FaceFOV |
Source/LifePlay/LPSecondScreenSubsystem.h |
4 | commentaires l. 3-10 (SceneCapture2D « SecondScreen » de CentralLondon) |
Source/LifePlay/LPKeyboardSubsystem.cpp |
4 | l. 92 RotateCamera, 97 SwitchCamera, 166, 168 (catégorie « Camera ») |
Source/LifePlay/LPSettingsSubsystem.cpp |
3 | l. 204, 346, 405 (SliderCameraSpeed) |
Source/LifePlay/LPOutdoorRoomSubsystem.h |
1 | l. 6 (commentaire) |
Motifs SpringArm : 0 ligne dans Source. |
E. Modules texte et addon
Content/Modules : 2053 fichiers (find … -type f | wc -l) ; dépôt local 5.8.git : status --porcelain | wc -l → 0, log --oneline -1 → c8661cd. Grep camera (-i) : 84 lignes, 36 fichiers (Found 84 total occurrences across 36 files). Par type de fichier : .lpscene 31, .lpaction 5 (4 ANIMATION: camera + mpwill_maid.lpaction), FAQ.txt 1. Par module : vin_Base 28 fichiers, vin_Incest 3, vin_NTR 1, vin_BDSM 1, vin_Interracial 2, FAQ.txt 1 (28+3+1+1+2+1 = 36).
Par commande de script (plus détail, E1) :
| Commande / forme | Lignes | Fichiers | Source |
|---|---|---|---|
<Acteur>.animate(camera) |
11 | 9 | Grep \.animate\(camera\) : onlyfans, reluctant_star ×2, sr_fso_campdare1_cms, sr_fso_darkalley_comedy_cms, sr_fso_door_dare_cms, sr_fso_hangout_dare1_cms, sr_fso_homemade_video_cms, sr_fso_orcmockwar_cms ×2, sr_fso_work_dare2_cms |
ANIMATION: camera (clé d'action) |
4 | 4 | take_photos_MULTIPLE, film_videos_MULTIPLE, windowshop, sightsee (.lpaction l. 12) |
followUp(pro_incest_*_camera) |
2 | 1 | check_on_my_family l. 54, 265 |
timeout(<ms>, pinhole_camera_cms) |
4 | 1 | pinhole_camera_cms l. 26, 45, 53, 67 |
ACTION_NAME: …camera |
1 | 1 | mpwill_maid.lpaction l. 2 |
variable CameraBought (getGlobal/setGlobal/If) |
10 | 2 | pro_incest_shower_camera (l. 9, 10, 19, 21, 29), pro_incest_bedroom_camera (l. 10, 11, 20, 22, 30) |
| texte de dialogue/narration contenant « camera(s) » | 50 | 21 | Grep des lignes débutant par une chaîne "… ou Acteur:: + " (E1, 3e regex) : 50 lignes, 21 fichiers |
commentaire // |
1 | 1 | dating_incalls l. 7 |
| FAQ.txt | 1 | 1 | FAQ.txt:16 « How do I control the sex scene camera? » |
11+4+2+4+1+10+50+1+1 = 84 : égal au total. Aucune commande de script de déplacement ou de cadrage de caméra n'apparaît ; les seules formes sont animate(camera) (animation « camera » d'un acteur), ANIMATION: camera, et des noms de scène ou variable. |
Addon D:\Game\LifePlay-Sandbox-5.8 (HEAD 9227db8) : Grep camera (-i), Plugins/** et Source/** en *.cpp|*.h|*.cs : 136 lignes, 10 fichiers, tous sous Plugins/LPSandbox/Source/LPSandbox/ : LPSandboxMeasure.cpp 49, LPSandboxMeasureTour.cpp 18, LPSandboxCamera.cpp 17, LPSandboxInteraction.cpp 15, LPSandboxMeasureMod.h 11, LPPairSandbox.cpp 7, LPPairSandbox.h 6, LPSandboxCoupleMod.cpp 5, LPSandboxCamera.h 4, LPSandboxMod.h 4 (somme 136). Source/ seul de l'addon : 0 résultat (« No matches found »). Content/ de l'addon : jonction vers le Content du jeu 5.8 (ls -la Content → Content -> /d/Game/LifePlay-master 5.8/Content), donc déjà compté en A et E ; non recompté.
F. Dumps de graphes déjà présents (Docs/Migration/etat/**/*.txt)
F1 : 47 fichiers, 587 lignes ; dont 2 sont mes propres journaux (CAM/CAM-T1_tokens.txt 32, CAM/CAM-T1_matrice.txt 1) → 45 fichiers de dump avec au moins une ligne (SetViewTarget|CameraComponent|SpringArm|ViewTarget|CameraActor, -i). Attribution par actif (F2) : 44 fichiers ; le 45e, portage55/L6f/L6f_LPDumpComponents_20260930-102024.txt (6 lignes), est un dump de composants de /Game/Scenes/CentralLondon (en-tête l. 1 : LPDumpComponents -Map=/Game/Scenes/CentralLondon -Filter=SceneCapture -All).
Répartition F2 des 45 : GI 20 (22 lignes chacun), MainMenu 7 (3 à 12), Person 8 (1 ligne), Room 6 (6 ou 7), PC 2 (9), CentralLondon SceneCapture 2 (L6f_components_CentralLondon_SceneCapture.txt 5, L6f_LPDumpComponents_20260930-102024.txt 6) = 45.
Dump le plus récent par actif (nom de l'actif, chemin sous Docs/Migration/etat/, date de modification, lignes à motif) :
| Actif | Dump le plus récent | Date | Lignes motif |
|---|---|---|---|
| GI (EventGraph) | ST/STE/dumps/GI__EventGraph_V5.txt |
2026-10-10 23:24 | 22 |
| Room (EventGraph) | ST/STE/dumps/Room__EventGraph_V5.txt |
2026-10-10 23:24 | 6 |
| PC (EventGraph) | ST/STE/dumps/PC__EventGraph.txt |
2026-10-10 11:33 | 9 |
| Person (EventGraph) | ST/STE/dumps/Person__EventGraph_D4.txt |
2026-10-10 20:17 | 1 |
| MainMenu (EventGraph) | ST/STB/dumps/MainMenu__EventGraph.txt |
2026-10-09 21:59 | 5 |
| CentralLondon (acteurs SceneCapture) | ST/STE/dumps/CentralLondon__SceneCapture.txt |
2026-10-10 11:33 | non compté (en-tête LPDumpComponents -Map=/Game/Scenes/CentralLondon -Filter=SceneCapture) |
| StreetMap_Static (EventGraph) | ST/STB/dumps/StreetMap_Static__EventGraph.txt |
2026-10-09 21:59 | 0 |
| SecondScreenFloor (composants) | portage55/L6f/L6f_components_SecondScreenFloor.txt |
2026-09-30 10:19 | 0 |
| MapMarkers (EventGraph) | ST/STA/dumps/MapMarkers__EventGraph.txt |
2026-10-09 20:35 | 0 |
| SexInterface (EventGraph) | ST/STB/dumps/SexInterface__EventGraph.txt |
2026-10-09 21:59 | 0 |
| TopRight (arbre de widgets) | portage55/L6e/L6e_LPDumpWidgetTree_20260930-081148.txt |
2026-09-30 08:14 | 0 |
| CharGen (EventGraph) | ST/STE/STE-VAL_LPDumpFunction_20261010-141402.txt |
2026-10-10 14:14 | 0 |
Dumps de composants de Room (autres que EventGraph) : sandbox/PairCol/PairCol_LPDumpComponents_20261004-185441.txt et post-v1/PawnDyn/PawnDyn_LPDumpComponents_20261004-223842.txt, 0 ligne motif. |
BP caméra (liste des BP de A avec CameraActor/CameraComponent/SetViewTarget ou jeton Camera) avec dump d'EventGraph/fonction : GI, PC, Room, Person, StreetMap_Static, MapMarkers, plus MainMenu (UI), SexInterface (UI), CharGen (UI), TopRight (arbre de widgets). Sans aucun dump d'actif trouvé : Birdview, FirstPerson, Pawn, GM, CameraShake, MapStreets, CityExpansion, ContactMenu, Contact, SexAction, Builder, GameSettings, SkyBox, TestBall, TestPerson, Overview.umap. SecondScreenFloor : dump de composants seulement (30 sept.), pas de graphe. F3 : pour Birdview, FirstPerson, Pawn, GM, CameraShake, MapStreets, CityExpansion, ContactMenu, les 466 lignes comptées sur 46 fichiers viennent de journaux CompileAllBlueprints (14 lignes par fichier, 28 fichiers), LPResavePackages/dryrun/application (liste de noms d'actifs), et un journal LPFixParse qui cite Birdview :: EventGraph -> K2Node_CallFunction_266 (L4-CX-B08_application.txt:100) : ce sont des listes ou des avertissements, pas des dumps de graphe. Les lignes des 4 fichiers STB-VAL_LPDump… et STA-T2a_LPDump… de StreetMap_Static correspondent aux dumps listés ci-dessus.
3. Écarts au compte attendu de la fiche
- E1 : la fiche cite 190 fichiers
__ExternalActors__: confirmé (190). Fiche : « seulement 2.umap» : confirmé (2). - E2 : 12 des 21 motifs ont été annoncés 0 fichier dans mes notes de travail ; recompte de la liste du § 2 A : les motifs à 0 sont SpringArmComponent, CineCameraActor, CineCameraComponent, PlayerCameraManager, K2_SetViewTarget, TargetArmLength, bUsePawnControlRotation, CameraLag, ProbeSize, bDoCollisionTest, SetFieldOfView, SetActiveCamera = 12 ; les 9 motifs présents : CameraComponent, CameraActor, SceneCaptureComponent2D, SetViewTargetWithBlend, SetViewTarget, GetViewTarget, FieldOfView, ChargenCameras, AutoActivate (12 + 9 = 21). La phrase « 11 sur 21 » au début de ce § 2 A est fausse : la valeur correcte est 12 (erreur de plume corrigée ici, la liste nominative fait foi).
- E3 : la fiche attendait des BP Pawn, GM, SecondScreenFloor, CameraShake, MapStreets, CityExpansion « à relever » : Pawn, GM, SecondScreenFloor, CityExpansion n'ont aucun jeton camera (A4) ; CameraShake et MapStreets n'ont que des jetons « CameraShake/EngineCameras » et « Camera » (aucun des 21 motifs).
- E4 : la fiche liste
LPSettingsSubsystemetLPUserSettingscomme citant « camera » : confirmé (3 et 47 lignes) ;LPKeyboardSubsystem(4),LPOutdoorRoomSubsystem.h(1),LPSecondScreenSubsystem(10),LPDirectControlSubsystem(16) : confirmé. Aucun autre fichier C++ n'apparaît. - E5 : méthode « union + comptes sur candidats » au lieu de 21 passes complètes (équivalence argumentée en § 1).
- E6 : l'attribution F2 des 45 fichiers de dump repose sur l'en-tête (15 premières lignes) ; aucun fichier de
CAM-T1_dumps.txtn'existe (redirection refusée par les permissions, sortie résumée ici). - E7 :
Config/DefaultEditor.ini:4-5: le terme déclencheur n'a pas été isolé (voir § 2 C).
4. Établi / estimé / incertain
Établi (sortie de commande rejouée, § 2) : les comptes A, A4/A5, B (niveaux, découpe des 190, cartes de config), C, D, E, F1/F2 ; le recoupement A3 = somme des colonnes de la matrice (9 motifs concordants) ; A4 (403) = somme des dossiers (14+1+12+24+352) ; 84 = somme des catégories de commandes du § 2 E ; 136 = somme des fichiers addon ; 81 = somme des fichiers C++.
Estimé : « CentralLondon cuit » (déduit de AlwaysCook /Game + absence dans NeverCook ; pas de journal de cuisson relu) ; « Overview non cuit » (NeverCook /Game/FreeAnimationsPack) ; « ThirdPerson/VehicleTemplate sont des gabarits » (déduit des noms de dossiers et de l'absence de .umap homonyme ; pas de preuve par un autre fichier) ; catégorisation « dialogue » des 50 lignes (regex de début de ligne, comptée mais non relue ligne à ligne).
Incertain : (1) si les actifs __ExternalActors__ sont réellement cuits sans niveau propriétaire (essai : lire le journal ou le manifeste de la dernière cuisson U8r, ou lister le contenu de l'archive) ; (2) la signification des 344 jetons EditorCameraPosition dans Content/Heavy (non cartographiée ici) ; (3) si le .uasset binaire écrit les noms en ASCII pour tous les actifs : un nom stocké en UTF-16 échapperait à grep -a (aucune raison de le croire pour des noms de classe, mais non testé) ; (4) les comptes grep -c sur binaires sont des lignes, pas des occurrences (une ligne peut porter plusieurs occurrences) ; (5) le contenu de Config/DefaultEditor.ini:4-5 (terme non vu) ; (6) pas de dump Blueprint pour Birdview, FirstPerson, Pawn, GM, CameraShake, MapStreets, CityExpansion : un dump de composants ou de fonctions serait à produire par une fiche de cartographie (CAM-T2/T3), hors de cette fiche (lecture seule).
Fichiers écrits (chemins absolus) : D:\Game\LifePlay-master 5.8\Docs\Migration\etat\CAM\CAM-T1-INV.md ; journaux : …\CAM\CAM-T1_union.txt, …\CAM\CAM-T1_matrice.txt, …\CAM\CAM-T1_camera-insensible.txt, …\CAM\CAM-T1_tokens.txt. Fichiers à commiter : aucun fichier suivi modifié ; Docs/Migration/etat/ n'est suivi que pour les .md et .csv (lp-paths), donc seul CAM-T1-INV.md (A) est candidat, et le dossier CAM/ est déjà non suivi (?? au statut initial).
Tours : 21 / 40
Constats
- Le jeu n'a aucune trace binaire de SpringArm, de CineCamera, de PlayerCameraManager ni de bUsePawnControlRotation dans
Content; les caméras Blueprint sont desCameraActor(9 actifs) et desCameraComponent(6 actifs), pilotées parSetViewTargetWithBlend(GI, PC, ContactMenu). - Les 190 acteurs externes (ThirdPerson, VehicleTemplate) ne contiennent aucun CameraActor/CameraComponent ; leurs niveaux n'existent pas en
.umap, le dossier est ignoré par git (.gitignore:64). - Le C++ contient déjà une caméra de suivi à la 3e personne (
LPDirectControlSubsystem::FollowCamera, FOV 70,SetViewTargetWithBlend0,35 s), dont le commentaire d'en-tête dit qu'elle « n'est pas branchée » (LPDirectControlSubsystem.h:12) ; ni sa distance ni sa hauteur n'ont été relevées ici (CAM-T2/T3). - Les modules n'utilisent aucune commande de script de cadrage : seulement
animate(camera)(11 lignes),ANIMATION: camera(4) et des noms de scène. - L'addon contient un module de caméra de bac à sable (
LPSandboxCamera.cpp/.h, 21 lignes) et des mesures (LPSandboxMeasure*.cpp, 78 lignes) ; non lus au-delà du compte.