#1 ajout des premiers fichiers

This commit is contained in:
Zacharie Guet 2025-08-01 11:15:04 +02:00
commit 68d99d9b3f
15 changed files with 267 additions and 0 deletions

4
.editorconfig Normal file
View File

@ -0,0 +1,4 @@
root = true
[*]
charset = utf-8

2
.gitattributes vendored Normal file
View File

@ -0,0 +1,2 @@
# Normalize EOL for all files that Git considers text files.
* text=auto eol=lf

19
.gitignore vendored Normal file
View File

@ -0,0 +1,19 @@
# Godot 4+ specific ignores
.godot/
/android/
.nomedia
# Godot-specific ignores
.import/
export.cfg
export_credentials.cfg
# Imported translations (automatically generated from CSV files)
*.translation
# Mono-specific ignores
.mono/
data_*/
mono_crash.*.json
.vscode

0
common/.gitkeep Normal file
View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 850 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c7ff87jniga5m"
path="res://.godot/imported/robot.png-17ad80b7e526843a55ea7e95e3e071cb.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://entities/player/assets/sprites/robot.png"
dest_files=["res://.godot/imported/robot.png-17ad80b7e526843a55ea7e95e3e071cb.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@ -0,0 +1,9 @@
[gd_scene load_steps=2 format=3 uid="uid://bgvbgeq46wee2"]
[ext_resource type="Texture2D" uid="uid://c7ff87jniga5m" path="res://entities/player/assets/sprites/robot.png" id="1_symyc"]
[node name="Player" type="Node2D"]
[node name="Frame01" type="Sprite2D" parent="."]
scale = Vector2(0.179297, 0.179297)
texture = ExtResource("1_symyc")

1
icon.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128"><rect width="124" height="124" x="2" y="2" fill="#363d52" stroke="#212532" stroke-width="4" rx="14"/><g fill="#fff" transform="translate(12.322 12.322)scale(.101)"><path d="M105 673v33q407 354 814 0v-33z"/><path fill="#478cbf" d="m105 673 152 14q12 1 15 14l4 67 132 10 8-61q2-11 15-15h162q13 4 15 15l8 61 132-10 4-67q3-13 15-14l152-14V427q30-39 56-81-35-59-83-108-43 20-82 47-40-37-88-64 7-51 8-102-59-28-123-42-26 43-46 89-49-7-98 0-20-46-46-89-64 14-123 42 1 51 8 102-48 27-88 64-39-27-82-47-48 49-83 108 26 42 56 81zm0 33v39c0 276 813 276 814 0v-39l-134 12-5 69q-2 10-14 13l-162 11q-12 0-16-11l-10-65H446l-10 65q-4 11-16 11l-162-11q-12-3-14-13l-5-69z"/><path d="M483 600c0 34 58 34 58 0v-86c0-34-58-34-58 0z"/><circle cx="725" cy="526" r="90"/><circle cx="299" cy="526" r="90"/></g><g fill="#414042" transform="translate(12.322 12.322)scale(.101)"><circle cx="307" cy="532" r="60"/><circle cx="717" cy="532" r="60"/></g></svg>

After

Width:  |  Height:  |  Size: 994 B

37
icon.svg.import Normal file
View File

@ -0,0 +1,37 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://duvusidiuik4p"
path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://icon.svg"
dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

16
project.godot Normal file
View File

@ -0,0 +1,16 @@
; Engine configuration file.
; It's best edited using the editor UI and not directly,
; since the parameters that go here are not all obvious.
;
; Format:
; [section] ; section goes between []
; param=value ; assign values to parameters
config_version=5
[application]
config/name="Seeding Planets"
run/main_scene="uid://c5bruelvqbm1k"
config/features=PackedStringArray("4.4", "Forward Plus")
config/icon="res://icon.svg"

91
readme.md Normal file
View File

@ -0,0 +1,91 @@
# Seeding Planets
Seeding Planets (nom provisoire) est un jeu de gestion en Godot.
## Installation
### Outils à installer
#### [Godot](https://godotengine.org/fr/)
Moteur de jeu open source. L'[installation via steam](https://store.steampowered.com/app/404790/Godot_Engine/) est recommandée car elle permet une mise à jour automatique.
#### [VSCodium](https://vscodium.com/)
Editeur de fichier texte (alternative : [VSCode](https://code.visualstudio.com/)). Optionnel si vous n'avez pas vocation à écrire/modifier du code.
#### [Git](https://git-scm.com/downloads)
Utilitaire de gestion de version. C'est un outil assez avancé donc il est recommandé de lire un [tutoriel simple](https://about.gitlab.com/fr-fr/blog/what-is-git/).
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](https://open-vsx.org/extension/pinage404/git-extension-pack) ou [GitKraken](https://www.gitkraken.com/))
### 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, aller dans les paramètres de l'éditeur de Godot (Editeur en haut à gauche), puis cherchez la page "Editeur de texte -> Externe". Ici, cochez la case 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é
## 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 version de l'objet.
## Contribuer au projet
Pour ajouter un ou plusieurs fichiers ou modifier du code dans le projet, suivez les procédure suivantes.
> Les termes "branches" et "commits" sont relatifs au fonctionnement de Git, et les "tickets" sont des tâches que l'on retrouve dans le [Gitea](https://git.zacharie-guet.fr/zacharie/seeding-planets/issues).
### Modification de fichiers textes ou rennomage de dossiers/fichiers
1. 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`)
2. 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`)
3. Pousser votre branche (`git push` dans un terminal ou via interface git)
4. Créer une demande de modification dans Gitea
### Ajout de fichiers ou modification de fichiers binaires (image, son)
1. Placez vous sur la branche principale `main`
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)
## Troubleshoot
### Fenêtre "File have been modified outisde 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".

12
root.tscn Normal file
View File

@ -0,0 +1,12 @@
[gd_scene load_steps=3 format=3 uid="uid://c5bruelvqbm1k"]
[ext_resource type="PackedScene" uid="uid://tsi5j1uxppa4" path="res://stages/planet/planet.tscn" id="1_pyidc"]
[ext_resource type="PackedScene" uid="uid://bgvbgeq46wee2" path="res://entities/player/player.tscn" id="2_vvh5c"]
[node name="Root" type="Node2D"]
[node name="Planet" parent="." instance=ExtResource("1_pyidc")]
position = Vector2(543, 309)
[node name="Player" parent="." instance=ExtResource("2_vvh5c")]
position = Vector2(530, 270)

Binary file not shown.

After

Width:  |  Height:  |  Size: 114 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bnrjnvceprxfn"
path="res://.godot/imported/sol_gamejam_normal.png-a56c3648b71b32f03d2bec4e03abf9bc.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://stages/planet/assets/textures/sol_gamejam_normal.png"
dest_files=["res://.godot/imported/sol_gamejam_normal.png-a56c3648b71b32f03d2bec4e03abf9bc.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@ -0,0 +1,8 @@
[gd_scene load_steps=2 format=3 uid="uid://tsi5j1uxppa4"]
[ext_resource type="Texture2D" uid="uid://bnrjnvceprxfn" path="res://stages/planet/assets/textures/sol_gamejam_normal.png" id="1_wb4p4"]
[node name="Planet" type="Node2D"]
[node name="SolGamejamNormal" type="Sprite2D" parent="."]
texture = ExtResource("1_wb4p4")