Repository navigation
FR Creer Modele De Production
English · Référence · Publiée, relue en partie par une personne · S'applique depuis : 4.0.0
Le plan de production est un document qu'on écrit pour un jeu, à transmettre tel quel à un orchestrateur qui lance des sous-agents en parallèle : chaque lot de travail (WP) est autonome, possède ses fichiers et se vérifie lui-même. Cette page donne le modèle, partie par partie, puis en entier à copier. C'est le plan qui a servi au premier jeu construit avec ce moteur (Travailler avec une IA).
Public, contexte, et statuts de ce sur quoi repose la page
Public : auteur · Contexte : dépôt du moteur, projet créé
-
Où il va. Copiez le modèle complet dans le dépôt de votre jeu sous le nom
docs/PRODUCTION.md(le nom que lit le prompt de sous-agent du §7), et remplacez chaque<…>. -
Le faire remplir par une IA. Dans le dépôt du moteur, la compétence
/production-plan(.claude/skills/production-plan/) lit le modèle,games/<id>/storyboard.jsonet l'état actuel (npm run validate,npm run solve,npm test, les lieux et assets présents), puis le remplit : objectif de livraison, contraintes du sujet, état, lots avec leurs fichiers, ordre, checklist finale, prompt de sous-agent, un modèle par lot. -
Contexte. Le modèle est écrit pour le dépôt du moteur : chemins
games/<id>/…,src/engine/…, et les scriptsnpm testetnpm run audit. Dans un projet créé, le jeu est dansgame/, il n'y a pas de paquet moteur à modifier (pas de WP-A), et les vérifications sontnpm run verify(validate, solve, état des traductions, lint, playtests),npm test(les tests du jeu,game/tests) etnpm run build; voir Organisation d'un projet créé.
Le plan s'ouvre sur son titre, Plan de production — « <TITRE DU JEU> », et un paragraphe : ce qui est livré, quand,
pour qui, et la priorité unique à laquelle tout le reste se plie (par exemple « un jeu qu'on peut terminer sans bug, de
l'écran titre à la fin, sur les téléphones de la famille »). Il dit ensuite qu'il est écrit pour un orchestrateur, et
suggère un modèle par lot :
| Lot | Modèle | Pourquoi |
|---|---|---|
| Changements du moteur, règles partagées, QA finale | le modèle de raisonnement le plus puissant disponible | logique du moteur et arbitrage de dernière minute |
| Transcription de lieux, assets, mini-jeux | un modèle rapide | volumineux mais guidé mot à mot par le storyboard ; validate + solve rattrapent les erreurs |
- Vague 1 : les lots indépendants en parallèle (moteur, assets, mini-jeux), puis les lots de contenu dès que le moteur a livré les ajouts au DSL dont ils ont besoin.
- Chaque agent reçoit le plan, son lot, et le gabarit de prompt du §7. Il touche uniquement les fichiers que possède son lot. Un besoin hors de son lot va dans son rapport ; il ne le fait pas lui-même.
- Chaque agent termine par
npm run validate && npm test(etnpm run solvepour les lots de contenu) et renvoie un rapport court : fait / pas fait / pour un autre lot. - Vague 2 : le lot QA démarre quand tout le monde a livré. Il peut corriger n'importe quel fichier, seul.
- Ordre de vérité quand les sources ne sont pas d'accord :
games/<id>/storyboard.json> les notes du commanditaire > le code actuel. Le storyboard a toujours raison sur le texte ; le code n'a raison que sur la technique.
| Fichier | Rôle |
|---|---|
games/<id>/storyboard.json (et son export Markdown) |
tout le scénario : tableaux, cases, répliques, réactions optionnelles, indices, sujets de conversation, répliques de regard |
| la documentation : Référence du DSL, Comment fonctionne le moteur, Vérifier son jeu | comment écrire le contenu (DSL), le moteur, les outils |
games/<id>/layout/*.json |
placement validé (jamais tapé à la main) |
games/<id>/art/<sheet>/ |
tous les sprites découpés ; jamais recoupés, jamais supprimés |
Le modèle de 4.4 citait docs/en/CONTENT_GUIDE.md, ENGINE.md et TOOLS.md à la deuxième ligne ; depuis 4.5, ces
pages sont celles de ce wiki.
<Ce qui ne doit jamais entrer dans le dépôt : lister quoi.>- Ne jamais supprimer un asset : renommer en
_v1,_v2, garder une sauvegarde. <Sensibilités du sujet : personnes qui doivent rester silencieuses, blagues refusées, règles de ton.><Règles de style : longueur des phrases, rythme (normal → normal → normal → absurde), pas de simple négation comme solution de facilité.>
-
Fonctionne :
<fonctionnalités du moteur, lieux écrits, objets, personnages, mini-jeux, tests au vert, déploiement documenté.> -
Manque, par ordre d'importance :
<une liste numérotée.>
Chaque lot liste ses fichiers, ses livrables et sa vérification.
| Lot | Fichiers possédés | Livrables | Vérification |
|---|---|---|---|
| WP-A · Moteur | src/engine/** |
… |
npm test, une capture d'écran de lieu par changement visuel |
| WP-B · Contenu, découpé par groupes de lieux (B1, B2, B3) |
games/<id>/rooms/**, game.ts, items.ts, cast.ts
|
chaque case du storyboard transcrite ; indices ; points de sauvegarde | npm run validate && npm run solve && npm test |
| WP-C · Assets |
games/<id>/art/**, npm run assets
|
… |
… |
| WP-D · Mini-jeux |
src/engine/minigames/** ou games/<id>/minigames/**
|
… |
… |
| WP-E · QA, pré-production, déploiement (vague 2, un seul agent) | n'importe quel fichier | partie complète en e2e avec captures, corrections, build, déploiement, la checklist du §6 | §6 |
<Qui attend qui ; un commit par lot ; le format du message de commit.>
-
npm run validate,npm run solve,npm test,npm run buildtous au vert - partie complète en e2e au vert, captures d'écran relues
- jouée une fois sur un vrai téléphone, en paysage, avec le son
- rien de privé dans
dist/(npm run audit)
Dans le dépôt du moteur, npm run build lance déjà la vérification des types et les tests (npm run check) avant le
build. La liste complète avant une publication : Vérifier son jeu.
Tu travailles sur le jeu « <TITRE DU JEU> » (dépôt : <path>). Lis docs/PRODUCTION.md en entier, puis ton lot : WP-<X>.
Tu possèdes exclusivement les fichiers listés dans ton lot ; tu ne changes rien d'autre. Un besoin hors de ton lot va dans ton rapport.
Sources de vérité, dans l'ordre : games/<id>/storyboard.json, les notes du commanditaire, puis le code.
Respecte le §2 sans exception.
Termine par : npm run validate && npm test (et npm run solve pour un lot de contenu).
Renvoie un rapport de 15 lignes maximum : fait / pas fait et pourquoi / ce qu'un autre lot doit faire / commandes de vérification qui sont passées.
# Plan de production — « <TITRE DU JEU> »
<Un paragraphe : ce qui est livré, quand, pour qui. La priorité unique à laquelle tout le reste se plie, par exemple
« un jeu qu'on peut terminer sans bug, de l'écran titre à la fin, sur les téléphones de la famille ».>
Ce fichier est écrit pour être transmis tel quel à un orchestrateur qui lance des sous-agents en parallèle : chaque
lot de travail (WP) est autonome, possède ses fichiers, et se vérifie lui-même.
**Modèles suggérés par lot**
| Lot | Modèle | Pourquoi |
|---|---|---|
| Changements du moteur, règles partagées, QA finale | le modèle de raisonnement le plus puissant disponible | logique du moteur et arbitrage de dernière minute |
| Transcription de lieux, assets, mini-jeux | un modèle rapide | volumineux mais guidé mot à mot par le storyboard ; validate + solve rattrapent les erreurs |
## 0. Comment l'orchestrateur fait tourner ça
1. Lancer la vague 1 : les lots indépendants en parallèle (moteur, assets, mini-jeux), puis les lots de contenu dès
que le moteur a livré les ajouts au DSL dont ils ont besoin.
2. Chaque agent reçoit ce fichier, son lot, et le gabarit de prompt du §7. Il touche **uniquement** les fichiers que
possède son lot. Un besoin hors de son lot va dans son rapport ; il ne le fait pas lui-même.
3. Chaque agent termine par `npm run validate && npm test` (et `npm run solve` pour les lots de contenu) et renvoie
un rapport court : fait / pas fait / pour un autre lot.
4. Vague 2 : le lot QA démarre quand tout le monde a livré. Il peut corriger n'importe quel fichier, seul.
5. Ordre de vérité en cas de désaccord des sources : `games/<id>/storyboard.json` > les notes du commanditaire > le
code actuel. Le storyboard a toujours raison sur le texte ; le code n'a raison que sur la technique.
## 1. Sources de vérité (à lire dans cet ordre)
| Fichier | Rôle |
|---|---|
| `games/<id>/storyboard.json` (+ son export Markdown) | tout le scénario : tableaux, cases, répliques, réactions optionnelles, indices, sujets de conversation, répliques de regard |
| le wiki : Référence du DSL, Comment fonctionne le moteur, Vérifier son jeu | comment écrire le contenu (DSL), le moteur, les outils |
| `games/<id>/layout/*.json` | placement validé (jamais tapé à la main) |
| `games/<id>/art/<sheet>/` | tous les sprites découpés ; jamais recoupés, jamais supprimés |
## 2. Contraintes non négociables
- <Ce qui ne doit jamais entrer dans le dépôt : lister quoi.>
- Ne jamais supprimer un asset : renommer en `_v1`, `_v2`, garder une sauvegarde.
- <Sensibilités du sujet : personnes qui doivent rester silencieuses, blagues refusées, règles de ton.>
- <Règles de style : longueur des phrases, rythme (normal → normal → normal → absurde), pas de simple négation comme
solution de facilité.>
## 3. État du projet au <date>
**Fonctionne :** <fonctionnalités du moteur, lieux écrits, objets, personnages, mini-jeux, tests au vert, déploiement
documenté.>
**Manque, par ordre d'importance :** <liste numérotée.>
## 4. Lots de travail
### WP-A · Moteur (`src/engine/**`)
Fichiers possédés : … Livrables : … Vérification : `npm test`, une capture d'écran de lieu par changement visuel.
### WP-B · Contenu (`games/<id>/rooms/**`, `game.ts`, `items.ts`, `cast.ts`)
Découpé par groupes de lieux (B1, B2, B3). Fichiers possédés : … Livrables : chaque case du storyboard transcrite ;
indices ; points de sauvegarde. Vérification : `npm run validate && npm run solve && npm test`.
### WP-C · Assets (`games/<id>/art/**`, `npm run assets`)
### WP-D · Mini-jeux (`src/engine/minigames/**` ou `games/<id>/minigames/**`)
### WP-E · QA, pré-production, déploiement (vague 2, un seul agent)
Partie complète en e2e avec captures d'écran, corrections, build, déploiement, checklist du §6.
## 5. Ordre et règles de fusion
<Qui attend qui ; un commit par lot ; format du message de commit.>
## 6. Checklist finale avant d'envoyer le lien
- [ ] `npm run validate`, `npm run solve`, `npm test`, `npm run build` tous au vert
- [ ] partie complète en e2e au vert avec captures d'écran relues
- [ ] jouée une fois sur un vrai téléphone, en paysage, avec le son
- [ ] rien de privé dans `dist/` (`npm run audit`)
## 7. Gabarit de prompt pour un sous-agent
(le bloc du §7 ci-dessus)Limite ·
template-not-checkedLe modèle est un document, pas un outil : rien ne vérifie qu'un plan le suit ni qu'un sous-agent s'en est tenu à ses fichiers. Les vérifications sont les commandes par lesquelles chaque lot se termine.
-
npm run validate,npm run solve,npm test,npm run build,npm run audit,npm run assets. - La compétence
/production-plan(.claude/skills/production-plan/SKILL.md, dépôt du moteur). - Travailler avec une IA, Le storyboard, Contribuer avec des agents IA.
Generated publication · publication générée — current documentation · documentation courante: quest'n'click 4.5.6 r1, documentation revision · révision de la documentation b44e7ba85533917f81210fc43e839a86745668d9.
Latest documentation · dernière documentation: https://quest-n-click.cleverapps.io/docs · https://quest-n-click.cleverapps.io/fr/docs; earlier versions · versions précédentes: each release's quest-n-click-docs-<version>.tar.gz · l'archive quest-n-click-docs-<version>.tar.gz de chaque release, https://github.com/Quest-n-Click/quest-n-click/releases
An edit made in this wiki is overwritten at the next publication · une modification faite dans ce wiki est écrasée à la publication suivante.
Edit the source · Modifier la source · Report an error · Signaler une erreur
Index (6)
Démarrer (6)
Jouer (9)
Installer (18)
- Prérequis
- Installer depuis l'archive de la release
- Installer depuis npm
- Installer depuis le dépôt pour travailler sur le moteur
- doctor : vérifier sa machine
- Outils pour les images
- Outils audio : ffmpeg, fluidsynth, Furnace, uv
- Mettre à jour
- Notes de mise à jour : 4.5
- Notes de mise à jour : 4.4
- Notes de mise à jour : 4.3
- Notes de mise à jour : 4.2
- Notes de mise à jour : 4.1
- Notes de mise à jour : v3
- Notes de mise à jour : v2 vers v3
- Venir de web-scumm
- Référence du paquet
- Dépannage de l'installation
Créer un jeu (55)
- Votre premier jeu
- Organisation d'un projet créé et du dépôt du moteur
- La boucle de travail
- Principes du contenu et contrat d'identité
- Salles
- Géométrie : placement, zones de marche, masques, calques, caméra
- Un objet est visible mais inaccessible
- Réactions
- Commandes du jeu
- Conditions
- Drapeaux, variables et événements : lequel choisir
- Code sur mesure
- Personnages
- Objets et inventaire
- Carte du monde
- Dialogues
- Scripts et événements
- Faire bouger les personnages : patrouilles et marches
- Sorties
- Chapitres et objectifs
- État et sauvegardes : persistant ou temporaire, renommer un id, migrations
- Mise en scène : salles larges et animations
- La scène : lumières, particules, sols
- Habillage et polices
- Titre et générique
- Héros : plusieurs personnages et choix du héros
- Mini-jeux intégrés
- Un mini-jeu sur mesure
- Traductions
- Musique en stems
- Bruitages
- Voix : par langue et par héros
- Images : prompts, découpe des planches, transparence, échelle
- Provenance des assets
- Le storyboard, source de vérité
- Concevoir des énigmes
- Mécaniques classiques
- Pages de relecture
- Référence du DSL
- Vérifier son jeu
- Ce que prouve le solveur
- Options du solveur
- Playtests
- Remix
- Speedrun pour les auteurs
- La fin scellée
- Modèle de production
- Jeux d'exemple
- Travailler avec une IA
- Construire et publier un jeu
- Publier sur GitHub Pages
- Le jeu statique sur Clever Cloud
- Autres hébergeurs statiques
- Sous-chemin, cache et service worker, déploiement incomplet, retour arrière
- Tester sur un téléphone en réseau local
Studio local (24)
- Le Studio local : présentation et lancement
- Modifier une salle
- Placement et scène
- Aperçu, application, annulation
- Storyboard
- Assets et découpe
- Vérifier : validateur, solveur, chemin critique, chaleur, santé, couverture
- Captures avant et après
- Diff sémantique
- Jouer et rejouer une session
- Explication des règles
- Langue et objectifs
- Voix et matrice héros × langues
- Carte
- Notes
- Remix dans le Studio
- Musique
- L'Assistant : votre propre clé
- Mode démo et studio-apply
- Sécurité en local et en réseau local
- API du Studio
- MCP local : configurer chaque client
- Outils MCP
- Dépannage du Studio
Studio d'équipe (21)
- Ce qui tourne où
- Concepts : révision, transaction, pan, bail, aperçu, build
- Débuter comme dev invité
- Travailler ensemble au quotidien
- Rôles et actions : la matrice complète
- Invitations
- Gérer les membres
- Écriture refusée sur le Studio hébergé : révision de base périmée (409)
- Écriture refusée sur le Studio hébergé : pan verrouillé (423)
- Reprendre après un bail perdu, une déconnexion ou un aperçu périmé
- Commentaires
- Carte et diff sémantique
- Publier des builds
- MCP distant
- Le jeu dans Git
- Mettre à jour le moteur d'un jeu hébergé
- Assets hébergés
- La ligne de commande du serveur
- Routes de santé et de métriques
- L'essayer en local avec compose.yml
- Limites connues
Clever Cloud (23)
- Clever Cloud : vue d'ensemble, coût et prérequis
- Applications et add-ons
- Domaines et TLS
- Keycloak
- OIDC générique et GitLab
- Configuration
- Premier déploiement
- Sauvegardes
- RPO et RTO
- Exercice de restauration sur une installation vierge
- Redéploiements
- Mettre à jour le serveur et vérifier l'état après une migration
- Limites du retour arrière
- Supervision
- Sécurité
- Renouveler les clés
- Récupérer l'accès administrateur
- Changer de domaine ou de fournisseur OIDC
- Worker, PostgreSQL ou Cellar en panne
- Exporter le jeu et quitter l'installation
- Rétention
- Dépannage sur Clever Cloud
- Coûts et démontage
Reality Bridge et connecteurs (16)
- Le Reality Bridge : ce que c'est
- Démarrage rapide
- Garanties
- Installer et lancer le Bridge
- Sauvegarde et restauration
- Plusieurs tenants
- Signaux et manifeste
- La ligne de commande du Bridge
- Vue d'ensemble des connecteurs
- Connecteur email
- Connecteur Telnet
- Connecteur SSH
- Connecteur Open Badges
- Le SDK des connecteurs
- Sécurité : Biscuit et signatures
- Dépannage du Bridge et des connecteurs
Contribuer (25)
- Bienvenue
- Préparer son poste de développement
- La boucle de développement
- Avant une pull request
- Conventions
- Écrire la documentation
- Architecture
- Visite du code
- Frontières d'import
- Quels tests tournent quand
- Tests de mutation
- Le cliquet de couverture
- La référence de qualité
- La CI expliquée
- Passes de terrain
- Mesures de performance
- Publier une release
- Paquets npm
- Décisions et ADR
- Gouvernance
- Pull requests des bots
- Contribuer avec des agents IA
- Politique de sécurité
- Code de conduite
- Licences et crédits