LifePlay-Revival/Docs/Migration/etat/REL/STM1/STM1-RECH-01.md
edujiro5972 56dfcfc3d2 LifePlay UE 5.8 : état de développement au 2026-10-20
Tickets : PUB-20261020-T1

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 17:35:10 +02:00

12 KiB

Fiche STM1-RECH-01 — Niveau N2 — Modèle prévu opus medium | utilisé claude-opus-5-5 — Agent session « Medium · STM1 » (pas de sous-agent) — Skills sk-protocol (lu en CART-01), lp-ue-compat (lu en CART-01)

STM1-RECH-01 : carte de Londres valide et portage du plugin StreetMap en 5.8 (2026-10-20)

Ordre : Big Boss (local_104ff22d), 2026-10-20 03:00. Demande de l'utilisateur citée par Big Boss : « pour street map voir si on peut récupérer une carte valide de londre et si le plugin intègre la version 5.8 ». Lecture seule : ni copie UE, ni MCP, ni écriture dans Content\ ou Plugins\, ni git qui écrit. Recherche web : GitHub (API gh, lecture) et une recherche web.

Résultat : réussi pour les deux questions. A. La carte de Londres de la copie 5.8 est intacte : même octet pour octet que la 5.5 et que l'archive du 2026-10-20, et elle se cuit en entier (144 Mo). Aucune version de remplacement n'est nécessaire. La carte « quelconque » vient donc d'ailleurs (repli sur 000Dummy ou Cities[0], STM1-CART-02). B. Notre plugin compile et charge en 5.8 : portage local fait en U4 (CHG-254) et build 5.8 réussie. L'amont n'est plus maintenu depuis 2023. Deux forks publics visent la 5.8, mais notre plugin est une variante LifePlay (eaux, parcs, réglages propres) : un remplacement par un fork casserait plus qu'il ne répare.

A. Une carte de Londres valide

A1. L'asset actuel est-il intact ? (établi)

Copie Paquet source Content/Heavy/StreetMap/Static/CentralLondon.uasset Cuit (.uexp, données de rendu)
5.8 (travail) MD5 fba15a84cc46…, 13 607 769 octets Saved/Cooked/Windows/…/CentralLondon.uexp : 144 012 885 octets (2026-10-14 16:35)
5.5 fba15a84cc46…, 13 607 769 157 023 959 (2026-10-07)
Archive LifePlay_Backup_5.5\ARCH58-20261020\LifePlay-master 5.8 fba15a84cc46…, 13 607 769 —
4.27 (ARCH427\LifePlay-master 4.27) 3ff43b1a89c7…, 202 010 797 (format UE4, données de rendu dans le fichier) build 2026.9 : 210 059 668
000Dummy (repère) 128c0628…, 98 129 (5.5 = 5.8) 47 231

Commande : find LifePlay_Backup_5.5 "LifePlay-master 5.5" "LifePlay-master 5.8" -iname CentralLondon.uasset -path "*Static*", puis md5sum et stat -c %s, plus stat des .uexp cuits. La baisse 4.27 → 5.x (202 → 13,6 Mo) est déjà expliquée et close sans perte : ERR-018 (Docs/Registre_Erreurs.md:32). Les 280 maillages Static (sommets, triangles, sections, matériaux, dimensions) sont identiques entre les assets 4.27 et 5.5 (CHG-044). En 5.8, LPCheckStreetMap donne 280/280 villes conformes (etat/U58/U8/U8-T7b-VAL.md § 3.3). Le cuit 5.8 fait trois mille fois la taille de 000Dummy : la carte complète est bien embarquée. Les archives Releases/2026.10.1.5 et 2026.10.1.6 contiennent les livrables publiés (exécutable et paquets), pas l'asset source : rien de plus à y prendre (estimé, contenu non ouvert). Les .uasset cuits de 1,6 à 2 Ko sont des en-têtes de paquet : les données sont dans le .uexp.

A2. Le jeu d'origine en garde-t-il une autre version ? (établi : non)

  • Le dépôt public vinfamy/LifePlay (dernier push le 2021-01-08) n'a pas de Content/Heavy (gh api repos/vinfamy/LifePlay/contents/Content/Heavy → HTTP 404). Le doc 12 (Docs/12_Reconciliation_Vinfamy.md, index Docs/README.md:50) conclut déjà « rien à récupérer ».
  • Content/Heavy/* est ignoré par notre dépôt (.gitignore:17) : il n'existe pas d'autre version dans git. Les seules copies sont celles de A1, toutes équivalentes.

A3. Régénérer depuis OpenStreetMap ? (établi : pas de source locale)

  • Aucun fichier .osm ni .osm.pbf sous D:\Game (find /d/Game -maxdepth 6 -iname "*.osm*" : vide). L'asset StreetMap/CentralLondon.uasset ne garde aucun chemin .osm lisible (grep -a).
  • L'outil existe : l'import .osm du module StreetMapImporting est compilé en 5.8 (B2). Il faudrait télécharger un extrait récent de Londres (Geofabrik, Overpass), l'importer, puis recréer le maillage Static.
  • Coût et risques (estimé) : la carte obtenue serait différente de l'originale (OSM a changé depuis 2020 : bâtiments, routes, noms). Ces différences touchent les données de jeu indexées sur la carte (bâtiments nommés, aménités, CityExpansion, favoris, sauvegardes), la cohérence avec les 279 autres villes et les mods. Il faudrait aussi respecter la licence ODbL : attribution « © OpenStreetMap contributors » dans les crédits, avec une source exacte (règle des crédits du projet).

A4. Lien avec CART-02 (estimé fort)

L'asset étant bon et cuit, une « map quelconque avec des bâtiments lambda » ne vient pas de l'asset de Londres. Elle vient du choix de la ville : démarrage sur 000Dummy, GetCityByName sans correspondance, ou MoveCity qui retombe sur Cities[0] (STM1-CART-02 § 1, M1-M5). Les observations de CART-02 § 5 (messages bleus, journal GetAssetByObjectPath ECHEC) et la lecture MCP de GI.Cities restent la voie qui tranche.

B. Le plugin StreetMap et UE 5.8

B1. L'amont (établi)

Fait Source
ue4plugins/StreetMap : non archivé, 453 forks, dernier push le 2024-05-23 ; derniers commits du 2023-05-29 (« Miscellaneous fixes for warnings in 5.2 », « Fixed meshes not being rendered unless selected (invalid LOD) », « Fixed crash when reimporting if the .OSM file wasn't found ») gh api repos/ue4plugins/StreetMap ; gh api repos/ue4plugins/StreetMap/commits?per_page=3 ; https://github.com/ue4plugins/StreetMap
Le README ne nomme aucune version de moteur. Il annonce seulement l'intention de « keep the source code up to date » https://github.com/ue4plugins/StreetMap (README)
Conclusion : l'amont s'arrête à UE 5.2, sans portage 5.3-5.8 estimé (déduit des commits)

B2. Notre copie (établi : compile et fonctionne en 5.8)

Fait Source
Portage local en U4 : les 9 C4996 du lot sont corrigés, dont ceux de StreetMap (W1 GetMaterialRelevance, W2 GetDetailsView, W3 FSlateFontInfo, W4 ImportVersion), sous garde UE_VERSION_OLDER_THAN(5, 8, 0) CHG-254, commit 5ed078d ; .claude/skills/lp-ue-compat/ruptures.md § 3 ; etat/U58/U4/U4-T3-IMPL.md
Compilation 5.8 réussie : [13/16] Compile [x64] Module.StreetMapRuntime.cpp, 0 C4996, Result: Succeeded Saved/Logs/portage/U7_Build_20261009-103224.log
Modules liés en U4 : StreetMapRuntime (l. 35-39) et StreetMapImporting (l. 71-75) etat/U58/U4/U4-T4-BUILD.md (V3, journal U4_Build_20261008-181959.log)
DLL 5.8 présentes : UnrealEditor-StreetMapRuntime.dll (2026-10-08 22:03), UnrealEditor-StreetMapImporting.dll (22:07) ; plugin monté et chargé à chaque démarrage ls Plugins/StreetMap/Binaries/Win64 ; Saved/Logs/LifePlay.log (CART-01 § 2)
Les deux ruptures 5.8 corrigées par le fork isamarin n'existent pas chez nous : aucun PostCreateBlueprint ni SetNum(…, false) dans nos sources grep -n dans Plugins/StreetMap/Source (vide)
Notre plugin diverge de l'amont : eaux et parcs (WaterColor, ParkColor, GetWaters, GetParks), RoadOffesetZ, MakeMeshBatch simplifié diff entre gh api …/contents/Source/StreetMapRuntime/{StreetMapSceneProxy,StreetMapComponent}.cpp et nos fichiers
Le .uplugin reste « VersionName 1.0 » : ce numéro ne dit rien de la version du moteur Plugins/StreetMap/StreetMap.uplugin
Rappel CART-01 : en jeu, la carte est un StaticMeshComponent. Le plugin n'y fournit que les données (UStreetMap) et l'import en éditeur STM1-CART-01 § 1

B3. Forks qui visent 5.8 (établi : existent ; qualité non éprouvée)

Fork Ce qu'il apporte Source
isamarin/StreetMap 2026-09-15 : « fix UE 5.8 build compatibility » (SetNum → EAllowShrinking, UActorFactory::PostCreateBlueprint supprimé en 5.8), module de tests d'automatisation (6/6 annoncés), correctifs de plantages et de fuites gh api repos/isamarin/StreetMap/commits/<sha>
carla-simulator/StreetMap, branche ue58-digitaltwins 2026-09-02 : « UE 5.8 port for CARLA » ; dépend du plugin Carla : inutilisable seul (estimé) gh api repos/carla-simulator/StreetMap/commits?sha=ue58-digitaltwins
Autres (lucyyyLL, synapticore-studio, GeoCivilTech…) activité 2025-2026 sans portage 5.8 annoncé dans les derniers commits gh api repos/ue4plugins/StreetMap/forks?sort=newest

Options (aucune décision prise)

Option Ce qu'elle règle Coût Risque
O1 (recommandée) : garder l'asset et le plugin actuels ; trancher la cause par les observations de CART-02 § 5 et la lecture MCP de GI.Cities (après CG2) la cause probable de F3 (choix de la ville) faible : observations de l'utilisateur, une lecture MCP, puis un correctif ciblé du GI ou des données faible : aucun asset ni plugin remplacé
O2 : reprendre ponctuellement des correctifs d'isamarin (plantages à l'import .osm, tests) dans notre variante, sous instantané, avec CHG robustesse de l'import en éditeur, pas F3 moyen : diff fichier par fichier contre notre variante moyen : conflits avec nos ajouts (eaux, parcs) ; sans effet sur la carte en jeu
O3 : régénérer Londres depuis un extrait OSM récent rien pour F3 si l'asset est bon ; seulement une carte « à jour » élevé : import, maillage, contrôle, cuisson, crédits ODbL élevé : carte différente de l'originale, données de jeu et sauvegardes désalignées, mods
O4 : remplacer le plugin par un fork 5.8 rien pour F3 moyen à élevé élevé : perte de nos ajouts, assets UStreetMap peut-être illisibles si les structures changent

Mesuré (extraits bruts)

$ md5 + taille de Static/CentralLondon.uasset
fba15a84cc46 13607769 LifePlay_Backup_5.5/ARCH58-20261020/LifePlay-master 5.8/Content/Heavy/StreetMap/Static/CentralLondon.uasset
fba15a84cc46 13607769 LifePlay-master 5.5/Content/Heavy/StreetMap/Static/CentralLondon.uasset
fba15a84cc46 13607769 LifePlay-master 5.8/Content/Heavy/StreetMap/Static/CentralLondon.uasset
3ff43b1a89c7 202010797 LifePlay_Backup_5.5/ARCH427/LifePlay-master 4.27/Content/Heavy/StreetMap/Static/CentralLondon.uasset
$ stat .uexp cuits
144012885 2026-10-14 16:35:34 LifePlay-master 5.8/Saved/Cooked/Windows/.../Static/CentralLondon.uexp
47231     2026-10-14 16:35:41 LifePlay-master 5.8/Saved/Cooked/Windows/.../Static/000Dummy.uexp
$ gh api repos/ue4plugins/StreetMap --jq '{pushed_at,archived,forks_count}'
{"archived":false,"forks_count":453,"pushed_at":"2024-05-23T09:52:01Z"}
$ grep -a "StreetMap\|Result:" Saved/Logs/portage/U7_Build_20261009-103224.log
[13/16] Compile [x64] Module.StreetMapRuntime.cpp [NoUba]
Result: Succeeded
$ gh api repos/vinfamy/LifePlay/contents/Content/Heavy
gh: Not Found (HTTP 404)

Incertitudes, écarts, fichiers

  • Non vérifié : le rendu de la carte en jeu (sans copie UE). Le contenu des archives Releases n'a pas été ouvert. Les correctifs d'isamarin n'ont été ni compilés ni testés chez nous.
  • La dernière compilation de StreetMapImporting relevée est celle d'U4 (2026-10-08). Le journal ADD1 du 2026-10-19 ne recompile pas StreetMap (0 ligne) : les DLL du 2026-10-08 sont à jour.
  • Fichiers écrits : D:\Game\LifePlay-master 5.8\Docs\Migration\etat\REL\STM1\STM1-RECH-01.md (A) ; STM1-TACHES.md (M). Fichiers téléchargés de GitHub pour le diff : dossier temporaire du système, hors projet.

Tours : ≈ 17 / 40 (déclaré ; FicheStats.py fait foi). Recherche externe : bien en dessous de la moitié du budget.

À verser :

  • lp-ue-compat § 1 ou lp-paths : StreetMap = variante LifePlay du dépôt ue4plugins/StreetMap (amont arrêté en 5.2) ; portage 5.8 local (U4) ; forks 5.8 connus : isamarin/StreetMap, carla-simulator/StreetMap@ue58-digitaltwins.
  • lp-paths : Content/Heavy n'est ni dans git ni dans vinfamy/LifePlay ; les seules copies de référence des villes sont les archives locales (ARCH427, ARCH58-20261020).

Suite : Big Boss doit présenter les options à l'utilisateur (O1 recommandée) et maintenir la lecture MCP de CART-02 § 4 après CG2. État : RECH-01 close, aucun fichier du projet modifié.