Documentation HeLa

Premier passage pour une documentation de la structure du code de HeLa disponible sur Hela · master · natacha / Jeu Vide-a · GitLab

Godot distingue principalement 3 types de fichiers, les éléments graphiques en .png les scènes correspondant à unélément actif du jeu, de l’environnement, ou un écran: .tscn et finalement les scripts qui permettent de déterminer les actions et les propriétés de l’ensemble des éléments du jeu: .gd que nous documenterons ici.

Script Niveau1

Il s’agit du script principal associé au niveau1 du jeu:

Met en place les principaux modèles d’interaction

  • Switch player: échanger les personnages de jeu
  • Switch camera: modifier l’axe de la caméra en fonction du personnage choisi.
  • Apparition des différents tutoriaux et dialogues avec HeLa
  • Organise les inputs souris et clavier-
  • Initialise l’ensmble des situation.

L41-92 Organise les différentes séquences d’action

  • L41-55 vérifie en permanence quel personnage est active
  • L57-80 Organise le système de question à HeLa
  • L82-90 Organise le changement de caméras et de joueurs

L93 jusque la fin: organise les inputs de souris et clavier

  • Associe les inputs claviers aux joueuses 1 et 2
  • Détecte les présences des différents personnages dans les zones de cellule
  • Détecte les présences des différents personnages dans les zones de tuto
  • Détecte les inputs souris de demande d’aide à HeLa

Script Player (Joueuse)

Ce script réunit les propriétés associées à tous les personnages qui peuvent éventuellement devenir joueuses. Commence par fixer sa situation:

  • Si elle peut bouger ou non (c-a-d si alle a été choisie pour bouger).
  • Si elle est ou non Joueuse 1 ou 2.
  • Détecte la Souris.
  • Attribue une couleur de cellule au personnage.
  • Détermine le choix de sprite associé aux mouvements du personnage.

Applique les inputs aux mouvemetns des personnages et à leur état de santé

  • Commence par déterminer la vitesse en fonction du niveau de la santé L22-25.
  • Puis associe un Sprite et une vélocité en fonction du mouvement demandé au clavier L21-81.
  • L83-90 détecte la demande de soin lors du clic de souris sur Heal et ajuste le niveau de santé.
  • L92-94 détermine le type de mouvement.

Détermine la situation par rapport aux zones de texture cellule

  • je ne comprends pas bien comment cette partie fonctionne.

Autres Scripts

Servent essentiellement à préciser les qualités graphiques des éléments qui leur sont associés et à détecter les interactions

  • Environment Scripts (il y en a un pour chaque type de cellule), Button Script, GUI Script(convcerne l’interface graphue)
    Servent essentiellement à préciser les qualités graphiques des éléments qui leur sont associés et à détecter les interactions.

  • Global variable script.
    Permet de stocker l’ensemble des variables globales associées au projet.

Quelques Questions:

Mes problèmes de joueuse:

  • Je n’ai pas encore réussi à soigner les personnages J’ai l’impression que le bouton Heal ne fonctionne pas, mais peut-être est-ce que c’est parce qu’il y a des conditions que je n’ai pas remplies. Il faudrait sans doute un peu de guidance d’esplications ou y réfléchissons.
  • Je n’ai pas encore réussi à faire aparaitre le bouton “ask HeLa” je n’ai vu que les tutoriaux. Est-ce que ce bouton aparaît plus tard?

Questions sur les détails des scripts:

Script Niveau1:

  • If global level1_cave_visited what is cave?
  • Ligne 51 $Canvas a un nombre d’enfants (child) limités comment les acquiert-il?
  • Ligne 61 Question to HeLa rock what does this mean?
  • Global HeLa callable, where does this happen?

Script GUI:

  • Update la variable $Stats et la variable $Options ou sont-elles, comment les trouver?

Script personnage:

  • What is: on_NPCGreen ?

Script d’environnement:

  • What is: is_static

Questions plus générales:

  • Je ne comprends pas le fonctionnement de Global Heal c’est sans doute un moyen de soigner l’ensemble des personnages, mais je ne vois pas ou cela s’applique…
  • Je ne comprends pas non plus ou s’applique Globall HeLa callable
  • Je ne comprends pas l’utilité du script colorcells

Toujours cette notification autour de la non application du paramètre delta. Du coup je me demande si on en a vraiment besoin puisque aparemment on fait tourner le programme sans…

Suggestion de développement, repréciser l’ordre des tutoriaux et les étapes qui sont à réaliser. Une cartographie du niveau serait-elle utile?

Alors je viens d’arriver à cloner, et c’est étrange car chez moi le bouton HEAL fonctionne bien.
Peux-tu me décrire le problème de ton côté ? Tu n’arrives pas à cliquer sur le bouton ou le heal du personnage ne s’effectue pas ?

Alors j’ai déplacé le bouton pour pouvoir cliquer dessu, et maintenant c’est le heal du personnage qui ne s’effectue pas
C’est peut-être parce que j’ai dṕlacé le bouton, maintnant que j’y pense…

Ah non c’est encore plus bête que cela, il faut cliquer sur le joueur que l’on veut soigner après avoir cliqué sur heql… J’avais oublié… cela ne me semble pas du tout évident-…
Pour faciliter l’interaction dans un premier temps cliquer sur heal devrait suffire à soigner tous les personnages en transférant les cellules accumulées aux bons endroits… @Amelie_Dumont

Ok, bon d’un côté ça me rassure, ce n’est pas un bug que je ne comprenais pas.
Il faudra que je change le code pour que ça soigne tout le monde en même temps

13 posts were merged into an existing topic: Migrating a Git repository to LFS

ça y est @Amelie_Dumont les repository sont séparés et fonctionne tu pourra tous les voir en allant à la racine: natacha · GitLab

HeLa est ici: natacha / hela · GitLab

IMPORTANT avant de cloner le repository il faut que tu installe git-lfs:

  • sudo apt-get install git-lfs
  • git lfs install
1 Like

ça y est @Amelie_Dumont la page jeu Vide-A est en ligne.
Commentaires critiques bienvenus
Je commencerais à la diffuser à partir de lundi si tu es d’accord

Hello, je me demandais si ça te demande beaucoup de boulot de modifier l’export du jeu ? Je n’ai pas eu le temps cette semaine de re-pusher le code qui corrigeait le système de heal. Et je ne pourrai le faire qu’à partir de mardi.
Donc ce serait pas mal de ré-exporter le jeu une fois les modifications faites.

Dès à présent l’export du jeu peut être mis en ligne par @natacha sur simple ssh. Si tu veux je peux modifier l’endroit du téléchargement pour que tu puisses le faire toi-même.

C’est une ligne dans la configuration du nginx.

Et ça sort sur https://ps.lesoiseaux.io/hela

Au passage, on vient de se rendre compte de l’existence de https://qw.lesoiseaux.io/jeu-vide-a/ que @Amelie_Dumont avait fait il y a déjà quelques années. Ce dossier est dans /srv/www/jeu-vide-a… Je demandais à @natacha où mettre hela/ pour qu’Amélie puisse le télécharger…

Peux-tu me passer une clé publique SSH Amélie pour que tu puisses accéder au serveur et devenir autonome sur les versions d’HeLa sur le site ? ssh-keygen -t ed25519 si possible (c’est plus sûr et plus simple à copier-coller :wink: