Skip to content

Snake_Auto V2.0

Choose a tag to compare

@Klaynight-dev Klaynight-dev released this 18 Dec 14:14
· 19 commits to main since this release
16cd7bf

Date de publication : 12 décembre 2024
Auteurs : Gabriel Gourdon et Elouan Passereau

Résumé

Cette version introduit un jeu "Snake" basé sur des comparaisons d'approches algorithmiques. Le jeu est conçu pour être exécuté à l'aide du compilateur GCC. Il met l'accent sur la jouabilité avec une IA simplifiée et des mécaniques de jeu classiques enrichies.

Nouvelles fonctionnalités

  • Éléments de jeu :
    • Gestion des pommes (10 au total) avec une détection optimisée.
    • Génération de trous dans les bordures pour améliorer le gameplay.
    • Ajout de bordures et d'obstacles statiques pour délimiter le plateau.
  • Comportement du serpent :
    • Déplacement contrôlé avec une logique d'IA basique.
    • Collision détectée avec précision (corps, murs, obstacles).
    • Gestion de la victoire après avoir mangé toutes les pommes.
  • Interface utilisateur :
    • Affichage des informations en temps réel (score, mouvements, temps écoulé, position, direction, position des pommes).
    • Messages personnalisés en cas de victoire, défaite ou sortie volontaire.
  • Performances :
    • Accélération de la vitesse du serpent pour simuler un challenge progressif.
    • Calcul du temps CPU utilisé.

Améliorations

  • Réduction de la complexité de certaines fonctions (par ex. gestion des directions et détections).
  • Optimisation de la gestion des coordonnées et des collisions.
  • Ajout d’une gestion des événements clavier robuste.

Problèmes connus

  • Bug mineur : Le serpent peut se heurter à un mur lorsqu'il tente de réintégrer un trou après avoir mangé la première pomme. (TODO mentionné dans le code).

Instructions d'utilisation

Pour compiler et exécuter :

  1. Compiler avec la commande :
    gcc ./version2.c -Wall -lm -o snake_game
  2. Lancer l'exécutable généré :
    ./snake_game

Perspectives

  • Résolution du bug mentionné.
  • Ajout de niveaux supplémentaires avec des obstacles dynamiques.
  • Implémentation d’une IA avancée pour le serpent.