12 KiB
Fiche MAPDL1-SPEC-05 (v2) — Niveau N2 — Modèle prévu opus medium | utilisé claude-opus-5-5 — Agent session « Medium · MAPDL1 » — Skills sk-protocol, lp-city, lp-lot
MAPDL1-SPEC-05 v2 : états des villes, accord, licence, « Télécharger uniquement » ou « Installation complète » (2026-10-22)
La v2 révise MAPDL1-SPEC-05.md. Le § 1 (trois états), le § 2 (C1 à C5) et le § 3 de la v1 sont inchangés. Cette version remplace les § 4 à 6.
Réponse de l'utilisateur, citée mot pour mot par Big Boss : « le fichier json contient le lien de téléchargement mega alors on demande l'accord et on montre la licence de la carte avant de téléchargé. On propose 2 choix : téléchargé uniquement ou installation complète ».
Sans code ni jeton.
1. Le fichier Config/LPCityMaps.json : lien Mega et licence de chaque carte
{
"format": 1,
"base": ["CentralLondon", "00BathCC"],
"licences": {
"osm": { "titre": "Map data (c) OpenStreetMap contributors, ODbL 1.0", "fichier": "Licenses/OpenStreetMap_Geodata_License.txt" },
"lifeplay_ancienne": { "titre": "<texte du sec. 4, valide par l'utilisateur>", "fichier": "Licenses/Vinfamy_License.txt" }
},
"villes": [
{ "ville": "Tokyo", "pack": "lpm_city_tokyo", "version": "1.0.1",
"jeu_min": "2026.10.2.2a", "jeu_max": "2026.12.99",
"zip": "lpm_city_tokyo-1.0.1-for-LifePlay-2026.10.2.2a.zip", "octets": 0, "sha256": "…",
"lien": "https://mega.nz/file/<id>#<cle>",
"licences": ["osm", "lifeplay_ancienne"],
"source": "Tokyo.zip, NEW Maps (2018-08-31), SHA-256 700173a2…318a4a" }
]
}
lien: le lien Mega du pack, c'est-à-dire de l'archive cuite 5.8 déposée par l'utilisateur sur son Mega (R1). L'utilisateur le fournit après son dépôt.licences: des renvois à des textes communs. Le titre court s'affiche dans la fenêtre, et le texte complet se lit dans le fichierLicenses/…livré avec le jeu.source: la provenance exacte, la même que dansCREDITS.txt.- Le fichier est écrit par
Tools\IndexCartes.ps1(C5), à partir dePRODUCTION.csv, des CREDITS des packs et d'une liste « ville ; lien » remplie par l'utilisateur.
2. La fenêtre au clic sur une ville téléchargeable
Fenêtre Slate « City map: », en anglais dans le jeu. Dans l'ordre :
- Informations :
- ville et version du pack ;
- taille ;
- source (Mega) ;
- provenance (« original LifePlay map, 2018 ») ;
- « active after the next game launch ».
- Licence : les titres de
licences, plus un bouton « Read the full licence » qui affiche le texte du fichierLicenses/…. - Accord : une case « I have read and accept the licence of this map », non cochée au départ. Les deux boutons d'action restent désactivés tant qu'elle n'est pas cochée.
- Deux boutons, et « Cancel » :
| Bouton | Ce qu'il fait |
|---|---|
| Download only (« Télécharger uniquement ») | le zip du pack est obtenu depuis Mega et déposé, sans rien installer ; la fenêtre indique où il se trouve. La ville reste « téléchargeable » |
| Full install (« Installation complète ») | le zip est obtenu et déposé, son SHA-256 est contrôlé contre le JSON, puis le pack est posé en deux arbres, Content/Modules/<pack>/ d'abord et Mods/<pack>/ en dernier, avec retour en arrière si une étape échoue. Une ancienne version du pack est déplacée dans Saved/Downloads/_ancien/, jamais supprimée. La ville passe à « Restart required » |
Erreurs, pour les deux boutons : un message clair, rien d'installé, et la ville reste « téléchargeable ». Elles couvrent :
- un SHA-256 faux (le fichier est déplacé dans
Saved/Downloads/_rejet/) ; - un disque plein ;
- un dossier
Mods/non inscriptible ; - un fichier introuvable.
3. Comment le jeu obtient le fichier depuis Mega
Les conditions de Mega (version du 02.03.2026, MAPDL1-L2-RECH-01.md) disent qu'une application ne peut utiliser leur API qu'après inscription développeur et approbation de Mega.
| (c) Navigateur | (b) Client de l'API Mega dans le jeu | |
|---|---|---|
| Qui télécharge | le navigateur du joueur, sur la page Mega du lien : le jeu l'ouvre (LaunchURL), et le joueur clique sur le bouton de téléchargement de Mega |
le jeu lui-même (HTTP en flux, déchiffrement AES-128, MAC Mega), avec une barre de progression dans la fenêtre |
| « Download only » | possible : le navigateur dépose le zip dans le dossier Téléchargements. Le jeu ne fait rien de plus. Il ne voit le fichier que si le joueur garde la fenêtre ouverte (il peut alors indiquer « file received ») | possible : le jeu dépose le zip dans un dossier qu'il connaît (par exemple Saved/Downloads/) et l'indique |
| « Full install » | possible, en deux temps : le joueur télécharge dans le navigateur, puis le jeu repère le zip dans Téléchargements (dossier Windows de l'utilisateur, fichier de la taille attendue dont le SHA-256 correspond, même si le navigateur l'a renommé, par exemple « (1) ») et installe. Recours : « Choose file… » si le fichier est ailleurs | possible, en un temps, sans quitter le jeu |
| Téléchargement vraiment dans le jeu | non : il passe toujours par la page Mega dans le navigateur, un clic de plus, avec le quota et les éventuels écrans de Mega | oui |
| Conditions de Mega | conformes sans démarche | approbation de Mega obligatoire avant publication (inscription développeur, contrat sur demande, à faire par l'utilisateur) ; Mega peut retirer l'accès à tout moment, sans préavis |
| Coût de C6 | ≈ 1,75 j : fenêtre, case d'accord, licence, deux boutons, surveillance de Téléchargements, SHA-256, libzip, pose |
≈ 2,5 à 3 j : la même fenêtre, plus le client Mega (non documenté officiellement : schéma relevé dans des clients communautaires) |
| Délai | aucun | inconnu : il dépend de la réponse de Mega à la demande d'approbation |
| Fragilité | faible : le site de Mega fait le travail | moyenne à élevée : changement d'API sans préavis, retrait possible |
Réponse à la question. Les deux choix de l'utilisateur, « Télécharger uniquement » et « Installation complète », sont tous les deux possibles avec (c). Le téléchargement se fait alors dans le navigateur, et le jeu fait la pose. Seule (b) permet un téléchargement vraiment dans le jeu. Elle coûte environ 2,5 à 3 jours, avec un délai inconnu, fixé par Mega, et elle exige que l'utilisateur obtienne l'approbation de Mega.
Une voie mixte est possible : faire (c) maintenant, et ajouter (b) plus tard si Mega l'approuve. La fenêtre, la licence et la pose ne changent pas ; seule la source du fichier change.
À vérifier à l'IMPL, et non tranché ici :
libzipdans un module du jeu en Shipping (la bibliothèque est fournie avec le moteur, estimé) ;- un sélecteur de fichier Windows en Shipping pour « Choose file… » (celui du moteur n'existe qu'en éditeur ; un appel Win32 direct est à valider) ;
- l'emplacement du dossier Téléchargements (
SHGetKnownFolderPath, dossier connu de Windows).
4. Licence des anciennes cartes : ce que l'on sait
| Élément | Ce qui est établi | Source |
|---|---|---|
| Données géographiques | Elles viennent d'OpenStreetMap : noms de rues et de bâtiments réels, aménités OSM, importés par le plugin StreetMap, qui ne lit que de l'OSM. Licence : ODbL 1.0, attribution « © OpenStreetMap contributors » | contenu lu par LireCarteUE4.py ; Plugins/StreetMap ; Licenses/OpenStreetMap_Geodata_License.txt livré avec le jeu |
| Provenance de chaque carte | Dossier Mega « NEW Maps » (lien fourni par l'utilisateur), nom et SHA-256 du zip, date d'ajout sur Mega | STM1-MEGA-CARTES-INDEX.md ; CREDITS.txt de chaque pack |
| Auteur de la carte (l'asset UE4 de 2018-2022) | inconnu. Ni le dossier Mega ni les zips ne nomment d'auteur ; chaque zip ne contient que How_to_install_a_city.txt |
index Mega § « Ce qui n'a pas pu être lu » ; contenu des zips lus |
| Licence de l'asset | inconnue. Le jeu d'origine met sous MIT les « assets created by me (Vinfamy) » (Licenses/Vinfamy_License.txt). Rien n'établit que ces cartes ont été faites par Vinfamy, ni par qui elles ont été ajoutées au dossier de 2019 à 2022 |
Licenses/Vinfamy_License.txt |
Il n'y a aucune information par ville au-delà de la provenance et de la date. Le texte est donc le même pour toutes.
Texte honnête proposé, à valider par l'utilisateur (licences.lifeplay_ancienne.titre, et une ligne dans chaque CREDITS.txt) :
« Original LifePlay city map (2018–2022), inherited from the original LifePlay game's "NEW Maps" download folder. Author and licence of the original map asset are not recorded in the source. Map data (c) OpenStreetMap contributors, ODbL 1.0. LifePlay code and assets by Vinfamy are under the MIT licence (Licenses/Vinfamy_License.txt). »
Je n'ai rien inventé. Ce texte ne donne pas la carte pour MIT ; il dit seulement ce qui est établi. Si l'utilisateur sait qui a fait ces cartes, ou sous quelle licence, le texte se remplace dans un seul champ du JSON et dans le CREDITS des packs, à leur prochaine version.
5. Effort et plan (modèles réduits)
| Étape | Agent | Modèle | Jeton | Contenu | Effort |
|---|---|---|---|---|---|
| E0 | lp-inventory |
haiku | non | autres appelants de GetAllFilesFromFolder("Heavy/StreetMap"), texte comparé au clic (v1 § 2) |
0,25 j |
| E1 | lp-impl |
sonnet (escalade : lp-impl-max) |
non | C1 à C5 : états, crochet ModdingExtra, tri et grisés, bandeau, JSON et IndexCartes.ps1 |
2,25 j |
| E2 | lp-builder |
haiku | oui | build de l'éditeur et du jeu Development | 0,25 j |
| E3 | lp-validator |
haiku | non | VAL statique | 0,25 j |
| E4 | utilisateur | — | — | essai en jeu des états (cahier de MAPDL1) | — |
| E5 | lp-impl |
sonnet | non | C6 : fenêtre (informations, licence, case d'accord, deux boutons), puis la source selon D10 : (c) navigateur et surveillance de Téléchargements, ou (b) client Mega après approbation ; SHA-256, libzip, pose en deux arbres |
(c) 1,75 j ; (b) 2,5 à 3 j |
| E6 | lp-builder, puis lp-validator |
haiku | oui, puis non | build et VAL de C6, puis essai en jeu | 0,5 j |
| E7 | lp-writer |
haiku | non | DOC, et la ligne de licence dans le gabarit de CREDITS de RepriseCarte.ps1 (texte validé) |
0,25 j |
Total :
- états et menu : ≈ 3 j ;
- avec le téléchargement en (c) : ≈ 5,25 j ;
- avec le téléchargement en (b) : ≈ 6 à 6,5 j, plus le délai de Mega.
Aucun Blueprint n'est modifié (lp-mcp-bp n'est pas prévu). MAPDL1 (opus) garde les fiches, le diagnostic et la relecture.
6. Décisions à soumettre (Big Boss)
| # | Question | Proposition |
|---|---|---|
| S5-1 | les trois états et leur affichage (v1 § 1 et 3) | oui |
| S5-2 | la voie C++ seulement, aucun Blueprint (v1 § 2) | oui |
| S5-3 | lancer E0 à E4 (états et menu) avant le téléchargement | oui |
| S5-4 | la fenêtre du § 2 : informations, licence, case d'accord non cochée, « Download only » et « Full install » | oui (c'est la consigne de l'utilisateur) |
| D10 | (c) navigateur et pose par le jeu, ou (b) téléchargement dans le jeu, qui exige l'approbation de Mega ; ou (c) maintenant, puis (b) plus tard | à l'utilisateur |
| D11 | forme du dépôt sur Mega | un zip par pack, l'archive produite telle quelle, pour (c) comme pour (b) |
| S5-5 | le texte de licence des anciennes cartes (§ 4) | à valider, à corriger ou à compléter par l'utilisateur |
7. Compte rendu
- Résultat : v2 rédigée. Aucun code, aucun jeton.
- Preuves :
Licenses/OpenStreetMap_Geodata_License.txtetLicenses/Vinfamy_License.txt(lus) ;STM1-MEGA-CARTES-INDEX.md;MAPDL1-L2-RECH-01.md;MAPDL1-SPEC-05.md(v1).
- Incertitudes :
libzipet le sélecteur de fichier en Shipping ;- le renommage du zip par le navigateur (couvert par la recherche par taille et SHA-256) ;
- le délai d'approbation de Mega.
- Fichier :
D:\Game\LifePlay-master 5.8\Docs\Migration\etat\REL\MAPDL1\MAPDL1-SPEC-05-v2.md(A).