-
Notifications
You must be signed in to change notification settings - Fork 0
FAQ_fr
English | Français | Deutsch | Italiano | Español | Português | Slovenščina | Українська | Русский
PyGameMaker est un IDE de développement de jeux open-source inspiré de GameMaker 7.0. Il vous permet de créer des jeux 2D en utilisant la programmation visuelle (Google Blockly) ou un système événement-action, sans avoir besoin d'écrire du code.
Oui ! PyGameMaker est complètement gratuit et open-source — le code source est sous licence MIT, et la documentation sous licence CC BY 4.0.
- Windows (exécutable .exe autonome)
- macOS (paquet .app)
- HTML5 (navigateurs web)
- Linux (binaire natif)
- Mobile (iOS/Android via Kivy)
Non ! PyGameMaker est conçu pour les débutants. Vous pouvez créer des jeux en utilisant :
- Les blocs Blockly par glisser-déposer
- Le système événement/action par pointer-cliquer
- Aucun codage requis
PyGameMaker est inspiré de GameMaker 7.0 mais utilise son propre format de projet. Vous ne pouvez pas importer directement des fichiers GameMaker, mais les concepts et le flux de travail sont similaires.
- Python 3.10 ou supérieur
- Windows, Linux ou macOS
- 4 Go de RAM minimum (8 Go recommandé)
- ~500 Mo d'espace disque
Voir Demarrage_fr pour des instructions d'installation détaillées. La version courte :
git clone https://github.com/Gabe1290/pythongm.git
cd pythongm
python -m venv venv
source venv/bin/activate # ou venv\Scripts\activate sur Windows
pip install -r requirements.txt
python main.pyAssurez-vous que Python est installé et ajouté au PATH de votre système. Vous pouvez vérifier en exécutant :
python --versionSi cela échoue, réinstallez Python et cochez « Ajouter Python au PATH » lors de l'installation.
Essayez de réinstaller les dépendances :
pip install -r requirements.txt --force-reinstallLes projets sont sauvegardés dans des dossiers que vous choisissez. Chaque projet contient :
-
project.json- Fichier de projet principal - Des dossiers pour les sprites, sons, objets, salles, etc.
Actuellement, PyGameMaker ouvre un projet à la fois. Utilisez Fichier > Ouvrir un projet pour basculer entre les projets.
Copiez simplement le dossier entier du projet. Toutes les ressources et tous les paramètres sont contenus à l'intérieur. Envisagez l'utilisation de git pour le contrôle de version :
cd mon_projet
git init
git add .
git commit -m "Sauvegarde initiale"Essayez ces étapes :
- Vérifiez si
project.jsonexiste et n'est pas vide - Ouvrez
project.jsondans un éditeur de texte pour vérifier les erreurs JSON - Restaurez depuis une sauvegarde si disponible
- Vérifiez la sortie console pour des messages d'erreur spécifiques
- Objet : Un modèle/plan définissant un comportement
- Instance : Une copie spécifique d'un objet placée dans une salle
Par exemple, obj_ennemi est un objet. Placer 5 ennemis dans une salle crée 5 instances de obj_ennemi.
Causes courantes :
- Mauvais type d'événement : Assurez-vous d'utiliser le bon événement (ex : « Touche pressée » vs « Clavier »)
- Pas d'instances : L'objet doit avoir des instances dans la salle
- Objet non visible : Vérifiez la propriété visible
- Ordre d'exécution : Certains événements s'exécutent avant d'autres
Utilisez les événements de collision :
- Ouvrez l'objet qui doit détecter la collision
- Ajoutez l'événement Collision avec [autre_objet]
- Ajoutez des actions pour ce qui se passe lors de la collision
- Clavier [touche] : Se déclenche à chaque frame tant que la touche est maintenue
- Touche pressée [touche] : Se déclenche une fois quand la touche est d'abord enfoncée
- Touche relâchée [touche] : Se déclenche une fois quand la touche est relâchée
La première salle dans l'arbre des ressources (en haut de la liste) se charge au démarrage du jeu. Faites glisser les salles pour les réordonner.
Utilisez les actions de salle :
- Salle suivante : Aller à la salle suivante dans l'ordre
- Salle précédente : Aller à la salle précédente
- Aller à la salle : Aller à une salle spécifique
Les objets sont détruits en quittant une salle sauf s'ils sont marqués comme Persistants dans leurs propriétés.
La taille de la fenêtre de jeu correspond aux dimensions de la première salle. Vous pouvez :
- Changer la taille de la salle pour correspondre à la taille de fenêtre désirée
- Utiliser les Vues pour n'afficher qu'une partie de la salle
- PNG (recommandé, prend en charge la transparence)
- JPEG/JPG
- BMP
- GIF (première image seulement)
Vérifiez le paramètre Origine dans l'éditeur de sprite. L'origine est le point d'ancrage pour le positionnement. Paramètres courants :
- Haut-gauche (0, 0) : Par défaut
- Centre : Bon pour les objets en rotation
- Bas-centre : Bon pour les personnages
- Créez un sprite avec plusieurs frames (bande horizontale)
- Définissez le Nombre de frames dans les propriétés du sprite
- Ajustez la Vitesse d'animation (frames par seconde)
Cela arrive lors de la mise à l'échelle des sprites. Pour le pixel art, désactivez l'interpolation/le lissage dans les paramètres du jeu si disponible.
- WAV (non compressé)
- OGG (recommandé pour la musique)
- MP3
Vérifiez :
- Le fichier audio existe dans le dossier des sons
- Le format de fichier est supporté
- Vous utilisez le bon nom de son dans les actions
- Le navigateur peut nécessiter une interaction utilisateur (pour HTML5)
Utilisez l'action Jouer une musique avec l'option boucle activée, ou utilisez Jouer un son avec le paramètre boucle défini sur vrai.
Problèmes courants :
- Windows : DLL manquantes - assurez-vous que tout le dossier de sortie est inclus
- HTML5 : Navigateur bloquant les fichiers locaux - hébergez sur un serveur
- Ressources manquantes : Vérifiez que tous les fichiers sont inclus
La taille du jeu inclut Python et toutes les bibliothèques. Pour réduire la taille :
- Supprimez les ressources inutilisées
- Compressez les images et l'audio
- Utilisez des formats appropriés (OGG au lieu de WAV)
- Activez la compression UPX pour les builds Windows
Oui ! Les jeux que vous créez vous appartiennent entièrement et vous pouvez les vendre. Le code source de PyGameMaker est sous licence MIT permissive, vous pouvez donc l'utiliser librement dans des projets commerciaux — et contrairement aux licences copyleft, vous n'êtes pas obligé de publier vos propres modifications en open-source.
- Ouvrez un objet
- Cliquez sur l'onglet Blockly dans l'éditeur d'objets
- L'espace de travail de programmation visuelle apparaît
Les deux systèmes fonctionnent sur le même objet. L'onglet Blockly et l'onglet Événements montrent des vues différentes de la même logique. Les changements dans l'un sont reflétés dans l'autre.
Vérifiez :
- Vous visualisez le bon objet
- Faites défiler l'espace de travail (les blocs pourraient être hors écran)
- Vérifiez le niveau de zoom
Conseils pour de meilleures performances :
- Réduisez le nombre d'instances
- Évitez les calculs lourds dans les événements Step
- Utilisez des alarmes au lieu de compter les frames
- Optimisez les tailles des sprites
- Détruisez les instances qui quittent la salle
L'événement Step s'exécute à chaque frame (60 fois/seconde par défaut). Utilisez :
- Des alarmes pour les actions différées
- Des conditions pour vérifier avant les opérations lourdes
- Une vitesse de salle plus basse si approprié
Signalez les bugs sur la page GitHub Issues. Incluez :
- Ce que vous attendiez
- Ce qui s'est réellement passé
- Les étapes pour reproduire
- Votre système d'exploitation et votre version de Python
- Demarrage_fr - Installation et bases
- Premier_Jeu_fr - Tutoriel étape par étape
- Evenements_Actions_fr - Référence complète
- Programmation_Visuelle_fr - Guide Blockly