Seeding Planets (nom provisoire) est un jeu de gestion en Godot
Go to file
2025-11-30 16:53:07 +01:00
common ajout d'un terrain infini et la possibilité de planter n'importe où 2025-11-30 16:53:07 +01:00
entities ajout d'un terrain infini et la possibilité de planter n'importe où 2025-11-30 16:53:07 +01:00
gui ajout d'un terrain infini et la possibilité de planter n'importe où 2025-11-30 16:53:07 +01:00
stages ajout d'un terrain infini et la possibilité de planter n'importe où 2025-11-30 16:53:07 +01:00
Translation ajout d'un terrain infini et la possibilité de planter n'importe où 2025-11-30 16:53:07 +01:00
.editorconfig #1 ajout des premiers fichiers 2025-08-01 11:15:04 +02:00
.gitattributes #1 ajout des premiers fichiers 2025-08-01 11:15:04 +02:00
.gitignore changement de l'icône, de la version et de la description du projet 2025-08-20 15:52:05 +02:00
export_presets.cfg ajout de panneaux de contrôles, de paramètres et refactorisation de la gestion de l'audio 2025-11-22 15:10:41 +01:00
icon.png fix post-proto 2025-11-14 16:43:52 +01:00
icon.png.import fix post-proto 2025-11-14 16:43:52 +01:00
project.godot ajout de panneaux de contrôles, de paramètres et refactorisation de la gestion de l'audio 2025-11-22 15:10:41 +01:00
push-to-itch.sh ajout de panneaux de contrôles, de paramètres et refactorisation de la gestion de l'audio 2025-11-22 15:10:41 +01:00
readme.md ajout d'un terrain infini et la possibilité de planter n'importe où 2025-11-30 16:53:07 +01:00
root.tscn ajout d'une petite surprise... 2025-11-11 01:08:56 +01:00

Seeding Planets

Seeding Planets (nom provisoire) est un jeu de gestion en Godot.

Installation

Outils à installer

Godot

Moteur de jeu open source. L'installation via steam est recommandée car elle permet une mise à jour automatique.

VSCodium

Éditeur de fichier texte (alternative : VSCode). Optionnel si vous n'avez pas vocation à écrire/modifier du code.

Git

Utilitaire de gestion de version. C'est un outil assez avancé donc il est recommandé de lire un tutoriel simple.

Par défaut, git s'utilise dans un terminal en ligne de commande, mais pour les débutants, une interface graphique est recommandée (comme le plugin VSCode/VSCodium Git ou GitKraken)

Télécharger les sources

Avec git, clonez le dépôt à l'URL https://git.zacharie-guet.fr/zacharie/seeding-planets.git quelque part sur votre ordinateur (avec la commande git clone sur le terminal, ou sur votre interface graphique git).

Configurer Godot

Après l'ouverture de Godot, choisissez importer et chercher l'emplacement ou vous avez téléchargé les sources, puis validez.

Godot et VSCode

Pour éditer le code du jeu avec VSCodium, allez dans les paramètres de l'éditeur de Godot (Éditeur en haut à gauche), puis cherchez la page "Éditeur de texte -> Externe". Ici, cochez la case "options avancées" (en haut à droite de la fenêtre) et remplissez les champs comme suit.

  • Chemin d'exécution: C:\Program Files\VSCodium\VSCodium.exe (ou chemin de l'exécutable VSCode)
  • Paramètre d'exécution: {project} --goto {file}:{line}:{col}
  • Utiliser un éditeur externe: Activé

Pour une meilleure intégration de Godot avec VS:

  • Aller dans l'onglet "Extensions" (colonne toute à gauche)
  • Chercher et installer l'extension "godot-tools"
  • Aller dans File > Preferences > Settings, chercher "editorPath.godot4" et dans la ligne "Path to the Godot 4 editor" mettre : "C:\Program Files (x86)\Steam\steamapps\common\Godot Engine\godot.windows.opt.tools.64.exe" ou là où est l'executable de votre godot (sur steam cherchez dans les fichiers locaux de l'application")

Arborescence du projet

Les dossiers racines sont des rangements fonctionnels des différents objets du jeu.

Les fichiers et dossiers du jeu doivent être nommés en anglais, en minuscule et les mots séparés par des underscore "_" (exemple: non_playable_character.gd)

├── common/ # Utilitaires commun à plusieurs objets
├── entities/ # Entités (mobiles et/ou instanciables en plusieurs fois)
├── stages/ # Lieux (uniques)
├── Readme.md # Documentation
└── root.tscn # Scène principale

Puis, dans un dossier représentant un objet du jeu (entities/player par exemple), les sous dossiers rangent les différents objets techniques du jeu.

player/
├── assets/
│   ├── sprites/
│   │   └── robot.png
│   └── sounds/
├── scripts/
│   └── player.gd # Script attaché à l'objet
└── player.tscn # Scène de l'objet

Des sous dossiers peuvent également représenter plusieurs versions de l'objet.

Contribuer au projet

Pour ajouter un ou plusieurs fichiers ou modifier du code dans le projet, suivez les procédures suivantes.

Les termes "branches" et "commits" (ou "révisions") sont relatifs au fonctionnement de Git, et les "tickets" sont des tâches que l'on retrouve dans le Gitea.

Modification de fichiers textes ou rennomage de dossiers/fichiers

  1. Placez vous sur la branche main (git checkout main ou interface git) et récupérez les modification (git pull ou interface git)
  2. Créez une branche dont le nom résume la modification. Les branches sont nommés en minuscule et avec des tirets "-" (exemple: edit-jump-action)
  3. Après chaque modification conséquente, créer un ou plusieurs commits. Les noms des commits sont écrits en français et peuvent commencer par l'identifiant du ticket concernant la modification (exemple: #5 augmentation de la distance du saut)
  4. Pousser votre branche (git push dans un terminal ou via interface git)
  5. Créer une demande de modification dans Gitea en suivant ce lien, cliquez sur Demande d'ajout et renseignez comme suit
    • Fusionner dans main
    • Tirer les modification depuis votre branche
    • Cliquez sur "Nouvelle Demande d'ajout"
    • Editer le titre de la demande d'ajout ou laissez comme telle
    • Cliquez sur sur "Créer une demande d'ajout"
  6. Communiquez avec l'équipe sur cette demande d'ajout, et appliquer la si vous avez l'aval de tous le monde (ou du moins des concernés du changement), en cliquant sur "Rebaser et avancer rapidement"

Pour actualiser votre dépôt local, replacez vous sur main et récupérer les nouvelles modifications

Ajout de fichiers ou modification de fichiers binaires (image, son)

  1. Placez vous sur la branche main (git checkout main ou interface git) et récupérez les modification (git pull ou interface git)
  2. Après la modification conséquente, créer un commit. Les noms des commits sont écrits en français et peuvent commencer par l'identifiant du ticket concernant la modification (exemple: #8 ajout des sprites des plantes)
  3. Pousser votre modification (git push dans un terminal ou via interface git)

Règle de developpement

Nommage

  1. Les variables et les fonctions sont nommées en minuscule avec les mots séparés par un underscore "_" (en snake case)
  2. Les constantes sont nommées en majuscule avec les mots séparés par un underscore "_" (en upper snake case)
  3. Les classes commencent pas une majuscule avec les mots séparés par une majuscule (en pascal case)
  4. Les signaux sont nommés en snake case, et doivent avoir un verbe au participe passé (exemple: energy_updated)

Dans Godot, les instances de nodes sont appelées en pascal case.

Publier le projet sur Itch

Une fois l'export web réalisé dans le dossier .export/web dans Godot, il est possible d'exécuter le script push-to-itch.sh pour pousser directement les modifications sur itch. La version prise en compte sera celle renseignée dans les paramètres du projet Godot.

Les outils zip et (butler)[https://itchio.itch.io/butler] seront nécessaires à installer (n'oubliez pas de faire un butler login).

Pour exécuter le script sur Windows, vous pouvez faire :

powershell.exe .\push-to-itch.sh  

Troubleshoot

Sur Godot, fenêtre "File have been modified outside Godot"

Si une fenêtre apparait avec marqué "Les fichiers suivants sont plus récents sur le disque", la majorité du temps, il est plus sage de cliquer sur "Recharger depuis le disque dur".