Aller au menu - Aller au contenu
> Le Site du Zéro > Les concours > Algorithmie > Voir une œuvre

Fiche d'œuvre

Retour au concours

Auteur

Œuvre

Titre : Labo42
Concours : Générateurs de labyrinthes
Commentaires : Voir les commentaires

Description de l'auteur

20 janvier 2008, 21h42
Salut a tous!
La news d'hier soir m'a rappelé l'existence de ce concours, je l'avais laissé de coté lors de sont lancement par manque de temps étant en 2ème année à l'INSA de Rouen et le fin d'année a été, comment dire, ... chargée; enfin là les DS se sont terminés la semaine dernière et donc c'est glande intensive pendant les 2 semaines de vacances! Un petit projet d'info ne peux pas me faire de mal!

J'ai donc commencé a bosser sur le projet cet après-midi, et j'ai l'honneur de vous présenter l'avancée de mon travail : le projet Labo42!

Pourquoi 42?
Pourquoi Labo?


42 parce que c'est la réponse à la vie a l'univers et à tout le reste
Labo parce que a la base je voulais écrire Labi mais que j'ai fait une faute de frappe et que finalement je me suis dit labo c'est pas mal, ça pourrai donner un début d'histoire ou un but au jeu qui risque de découler du projet (vous voyer le genre de jeu ou il faut sortir d'un labo et puis.... non arrêtez c'est trop horrible, perdez 2 niveaux plutôt!)


Bon arrêtons de dire des bêtises et passons au choses sérieuses:
Le projet va être codé en JAVA, parce que sécomsaépiscétou et aussi que c'est le langage que j'ai le plus utilisé dernièrement (voir le projet Cobra42)
Pour ce qui est des objectifs, bah ... en fait à la base quand j'ai lu le descriptif du concours hier j'ai vu cette image :
Image utilisateur
et j'ai pas pus m'empêcher de vouloir coder l'algorithme...

après bah l'idée de faire une interface utilisateur permettant de se déplacer dans le labyrinthe me plait bien, et je vois pas trop de difficultés pour adapter l'algorithme de génération en 3d, après ça veux aussi dire représentation en 3d la c'est plus chaud mais ca fait un moment que j'ai envie de voir ce dont est capable la librairie java permettant le gestion de la 3d.
Bien je pense que c'est tout pour le moment , je vais mettre la première version en ligne sous peu, (le temps de vous l'emballer en fait)

21 janvier 2008 16h42
Aujourd'hui j'ai décidé de coder la possibilité pour l'utilisateur de se déplacer dans le labyrinthe. Pour cela il a fallu qui je modifie un peu mon affichage, désormais, le programme ne "recalcule" pas l'affichage complet du labyrinthe a chaque fois qu'il faut mettre l'affichage à jour, autant vous dire que ça devenait insupportable lorsque l'on faisait bouger le joueur... l'image de fond du labyrinthe (les murs quoi! n'est donc calculée qu'une seule fois, puis stockée dans une variable BufferedImage qui est appelée à chaque mise à jour de l'affichage et permet ainsi un gain de temps considérable!

J'ai ajouté une boite de dialogue quand le joueur atteint la case en bas à droite du labyrinthe ("vous vous en êtes sortis !" avec un bouton Ok qui quitte le programme)

Pour ce qui est de ce que je compte faire sur le programme dans l'immédiat
  • Faire se déplacer la sortie dans le labyrinthe (je pense que ça peux être très drôle et c'est pas dur a faire)
  • j'ai une idée pour générer des labyrinthes imparfaits a partir de "combinaison linéaires" de labyrinthes parfaits, j'ai envie de voir que ce que ca donne!
  • Rajouter une barre de menu avec quelques options de configuration, la possibilité de recalculer un labyrinthe, peut être la possibilité d'exporter un labyrinthe en une image etc...
  • mettre un chronomètre et peut être des highs scores (meme si vu que les labyrinthes sont aléatoires je suis pas sur que cela soit réellement intéressant en fait)

La version 0.4 est en ligne ! Enjoy!

22 janvier 2008 00h42
La version 0.5 viens de sortir! Pour les moins aventureux d'entre vous (ou ceux qui n'ont pas le JDK) j'ai aussi inclus une version compilée, ayant un numéro de version terminant par J (annoté que j'en ai aussi rajouté une pour la version 0.4)
Quoi de neuf dans cette version? Heh ben écoutez j'ai changé les objectifs du jeu! Atteindre un point fixe dans un labyrinthe c'est drôle, mais quand il bouge c'est encore plus drôle! (oui je sais un point fixe qui bouge c'est plus un point fixe c'est un point qui bouge) J'ai donc codé une petite intelligence artificielle capable de se déplacer dans le labyrinthe, bon je vous avoue elle est encore un peux bête pour le moment mais déjà elle a un comportement beaucoup moins con que la première fois que je l'ai lancé toute seule dans un labyrinthe! Pour le moment elle fait tous ses choix aléatoirement, mais elle va toujours jusqu'au bout des chemins dans lesquels elle se trouve; toujours est un grand mot, en fait il y a une très petite chance (approximativement 0.0025% si je ne me suis pas planté dans mes calculs, et en considérant que la fonction random() est uniforme) qu'elle s'arrête, et face demi-tour, sinon elle serai bien trop prévisible, le but du jeux maintenant c'est de l'attraper je vous rappelle! j'aimerais bien rapidement faire quelque chose pour qu'elle évite le joueur quand même, après lui avoir appris comment ça marchait un labyrinthe, (en fait non car si elle devais s'en sortir elle ne le ferais que par chance) va maintenant falloir que je lui explique le but du jeu!
J'ai également rajouté un chronomètre (en bas a gauche) pour savoir au bout de combien de temps vous réussissez a attraper ma p'tite IA!


Téléchargements
Version 0.2
Version 0.4
Version 0.4J (compilée)
Version 0.5
Version 0.5J (compilée)

Impression du jury