Repository navigation
FR Installer Depuis Archive
English · Procédure · Publiée, relue en partie par une personne · S'applique depuis : 4.2.5
Le moteur est sur npm depuis la 4.5.2 (Installer depuis npm). Chaque release
GitHub le joint aussi sous forme d'archive, quest-n-click-<version>.tgz, et cette archive crée et fait tourner un jeu
de la même façon, sans le registre.
Public, contexte, et statuts de ce sur quoi repose la page
Public : auteur · Contexte : projet créé
Un projet de jeu à vous, hors du dépôt du moteur : un lieu, un héros et des images provisoires, le moteur installé
depuis l'archive de la release sous node_modules/@quest-n-click/engine, jouable dans votre navigateur avec npm run dev.
- Un projet créé, sur votre machine. Rien ici ne demande un clone du dépôt du moteur.
- Depuis la 4.2.5, les fichiers de la release s'appellent
quest-n-click-…. Avant la 4.2.5, c'étaitweb-scumm-…(Venir de web-scumm). - Les commandes ci-dessous sont le démarrage rapide du README. Chaque candidat de release les lance comme un lecteur
les copie, dans un dossier vide hors du dépôt, sur sa propre archive (
scripts/readme-quickstart.mjs) ; après le tag,--publishedvérifie que l'URL répond et que ses octets correspondent auSHA256SUMSde la release.
- Node.js 22.12 ou plus récent ; 22.13 si vous utiliserez le Studio local (Prérequis).
- Python 3, pour préparer les images avec
npm run assets(Prérequis). - ffmpeg est optionnel : il convertit les sons et les vidéos (Prérequis).
- Une version de release : prenez la dernière, sur https://github.com/Quest-n-Click/quest-n-click/releases/latest. Les commandes et les sorties de cette page ont été jouées avec la 4.4.0, une release passée : mettez la dernière version à sa place.
Sur votre machine, dans un terminal, depuis le dossier qui contiendra le nouveau projet (create crée lui-même le
dossier du projet). Toutes les commandes après cd my-game tournent dans le projet créé. Sous Windows, utilisez Git
Bash.
-
Nommez l'archive de la release voulue. Le modèle d'URL est
https://github.com/Quest-n-Click/quest-n-click/releases/download/v<version>/quest-n-click-<version>.tgz:# dans le dossier qui contiendra le projet T=https://github.com/Quest-n-Click/quest-n-click/releases/download/v4.4.0/quest-n-click-4.4.0.tgz
-
Créez le projet depuis cette archive.
--package=$Tlance la commandequest-n-clickde l'archive ;--engine=$Tinscrit la même archive comme dépendance du projet :# dans le dossier qui contiendra le projet npx --package=$T quest-n-click create my-game "Mon jeu" --engine=$T
create <dossier> ["Titre"]refuse un dossier qui existe et n'est pas vide. L'id du jeu est le nom du dossier en minuscules, mots séparés par des tirets ; le titre vaut ce nom par défaut.
-
Installez le moteur dans le projet :
cd my-game npm install
-
Installez les modules Python dont les outils d'images ont besoin, depuis le fichier que porte le paquet du moteur :
# dans le projet créé python3 -m pip install --require-hashes -r node_modules/@quest-n-click/engine/requirements.txt
-
Préparez les images, puis jouez :
# dans le projet créé npm run assets && npm run dev
Ouvrez l'URL qu'affiche
dev. En paysage sur un téléphone, le jeu se joue comme pour les joueurs (le serveur de développement n'écoute que sur votre machine ; Tester sur un téléphone du réseau l'ouvre au réseau local).?edit=startdans l'URL ouvre l'éditeur de placement sur le lieustart.
-
Quand vous avez changé quelque chose, vérifiez le jeu et construisez-le :
# dans le projet créé npm run verify npm run buildnpm run buildécritdist/, un site statique que n'importe quel hébergement sert (Construire et publier).
Pour vérifier l'archive avant de la lancer, téléchargez-la avec les sommes de la release et installez depuis le fichier :
# dans le dossier qui contiendra le projet
gh release download v4.4.0 --repo Quest-n-Click/quest-n-click -p 'quest-n-click-4.4.0.tgz' -p 'quest-n-click-v4.4.0-SHA256SUMS'
shasum -a 256 -c --ignore-missing quest-n-click-v4.4.0-SHA256SUMS
npx --package=./quest-n-click-4.4.0.tgz quest-n-click create my-game "Mon jeu" --engine=file:../quest-n-click-4.4.0.tgzLe chemin file: se lit depuis le dossier du projet, d'où le ../. shasum affiche quest-n-click-4.4.0.tgz: OK
quand les octets sont ceux que liste la release (vérifié le 23 octobre 2026 avec la v4.4.0).
Limite ·
sums-are-not-provenanceUne somme qui correspond dit que le fichier est celui que liste la release, pas qui a fait la release. Les attestations de la release etship verifyrépondent à cette question ; elles sont décrites dans Publier une release.
create se termine par :
my-game: "Mon jeu" created (quest-n-click https://github.com/Quest-n-Click/quest-n-click/releases/download/v4.4.0/quest-n-click-4.4.0.tgz).
Next:
cd my-game
npm install
npm run assets && npm run dev
Dans le projet, npx quest-n-click help affiche quest-n-click 4.4.0: an engine for point-and-click games in the browser et la liste des commandes. npm run dev montre le lieu du modèle avec son héros ; npm run verify se termine
sans erreur (validation, solveur, état des traductions, lint, playtests).
| Symptôme | Cause | Correction |
|---|---|---|
npm error 404 Not Found - GET https://registry.npmjs.org/quest-n-click à npm install
|
Le projet a été créé sans --engine=$T : sa dépendance vaut ^<version>, cherchée sur npm, où le moteur n'est pas publié |
Recréez-le avec --engine=$T, ou lancez npm install $T dans le projet |
my-game exists and is not empty |
create n'écrit jamais dans un dossier qui contient des fichiers |
Choisissez un autre nom de dossier, ou videz-le |
npm warn EBADENGINE Unsupported engine |
Node plus ancien que 22.12 | Installez Node 22.12 ou plus récent (Prérequis) |
npm run assets échoue sur import PIL
|
Les modules Python manquent | Étape 4 |
warning: missing images: … après assets
|
Le contenu cite une image dont le fichier n'est pas dans game/art
|
Ajoutez le fichier, ou corrigez le nom (Images) |
npx quest-n-click doctor s'arrête sur Cannot find package 'playwright'
|
doctor importe Playwright, que le paquet du moteur n'apporte pas |
Dépannage de l'installation |
create n'écrit que le nouveau dossier :
| Chemin | Quoi |
|---|---|
game/ |
le jeu : game.ts, rooms/, cast.ts, items.ts, rules.ts, layout/, locales/, art/, audio/, provenance.json
|
public/ |
les icônes de la page, son image d'aperçu, la police complète ; public/assets est écrit par npm run assets (pas commité) |
dist/ |
le build, avec licenses/ (npm run build) |
package.json |
les scripts dev, studio, assets, verify, build, release, preview, qui appellent chacun quest-n-click, et le moteur comme seule dépendance |
tsconfig.json |
@engine/* pointe dans node_modules/@quest-n-click/engine/src/engine, @quest-n-click/engine/* dans son API publique |
.gitignore, README.md
|
node_modules, dist, .cache, public/assets, game/private ignorés ; les commandes ci-dessus |
Les images du modèle sont provisoires, dessinées à partir de formes (tools/placeholder-art.py) : game/provenance.json
le dit, et npm run release les refuse tant que chaque fichier n'est pas remplacé et revu
(npx quest-n-click provenance --lock). L'organisation complète d'un projet est dans
Organisation d'un projet.
npm install ajoute node_modules/ et package-lock.json ; npm run assets écrit public/assets/ et .cache/, et
met à jour game/assets.gen.json (les tailles en pixels des images préparées). Les commandes tournent avec le projet
comme dossier de travail (WEB_SCUMM_PROJECT) : le moteur dans
node_modules/@quest-n-click/engine est lu, jamais écrit. Hors du projet, seuls le cache de npm et les modules Python de
l'étape 4 changent.
Supprimez le dossier du projet : rien d'autre n'a été écrit pour lui. Pour changer de version du moteur plus tard, voir Mettre à jour.
S'applique depuis la 4.2.5 · fonction apparue en 4.2.1
Une release joint cinq archives npm, toutes à la même version (la liste de la v4.4.0, lue le 23 octobre 2026) :
quest-n-click-<version>.tgz (le moteur), create-quest-n-click-<version>.tgz (npm init @quest-n-click, une fois
sur npm), quest-n-click-bridge-<version>.tgz (le Reality Bridge de référence, Installer et lancer le Bridge), quest-n-click-connectors-<version>.tgz (les connecteurs, ceux d'un opérateur,
jamais d'un jeu) et, depuis la 4.2.1, quest-n-click-studio-server-<version>.tgz. Le contenu de chacune est dans la
Référence du paquet.
L'archive du Studio Server contient les deux commandes quest-n-click-studio-server et quest-n-click-studio-worker,
la page du Studio déjà construite, et ses propres dépendances (OpenID Connect, JWT, Postgres). Leurs versions sont
verrouillées dans son npm-shrinkwrap.json et son SBOM ; npm lit ce verrou quand il installe depuis le registre, pas
depuis un fichier d'archive, où pg prend le dernier 8.x que permet sa plage (quest-n-click-studio-server deps dit
lequel). Elle fait tourner le serveur du moteur installé à côté, qui doit être de la même version :
# sur la machine du serveur, dans un dossier vide pour l'installation
npm install quest-n-click-<version>.tgz quest-n-click-studio-server-<version>.tgz
npx quest-n-click-studio-server import ./my-game --config studio.config.json
npx quest-n-click-studio-server serve --config studio.config.json
npx quest-n-click-studio-worker # sur la machine du worker, avec WORKER_PUBLIC_KEY et WORKER_INSTANCEUn worker installé depuis les archives prépare aussi les assets (depuis la 4.2.3) : son hook de build installe le
requirements.txt à empreintes que porte le paquet du moteur, depuis le dossier du worker, où le worker cherche les
paquets (WORKER_PYTHON_PATH pour les mettre ailleurs) :
CC_POST_BUILD_HOOK=python3 -m pip install --target .python --require-hashes --only-binary=:all: -r node_modules/@quest-n-click/engine/requirements.txt. Ses empreintes couvrent les roues de toutes les
plateformes que publie PyPI, dont le runtime natif de Clever Cloud (CPython 3.13, Linux x86_64) ; avant la 4.5.2, le
hook nommait ops/studio/worker-requirements.lock, qui n'existe plus. En 4.2.2, il fallait un worker déployé depuis
le dépôt.
L'archive du moteur apporte Vite et tsx, dont le worker a besoin pour exécuter le code du jeu et construire ses
prévisualisations (le Studio lui-même ne fait plus tourner Vite, depuis la 4.2.2). Mettez dans publicDir les assets
préparés de votre jeu (public/ de son dépôt) : celui du moteur ne contient que ses icônes et sa police. Le candidat
de chaque release installe ces deux archives dans un dossier vide et y sert un jeu, ses dépendances trouvées que npm
les remonte ou les imbrique (scripts/studio-install-smoke.mjs). Le déploiement est décrit dans
Premier déploiement sur Clever Cloud.
- Prérequis, Référence du paquet, Mettre à jour
- Votre premier jeu, Jouer en ligne
-
cli/create.mjs(ce qu'écritcreate),scripts/readme-quickstart.mjs(le démarrage rapide rejoué par chaque candidat)
Generated publication · publication générée — current documentation · documentation courante: quest'n'click 4.5.4 r2, documentation revision · révision de la documentation 63112c877c587cc4fad16b25a3400408db2c36bd.
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