Leek Wars, jeu de programmation d'IA
#1
[Image: logo.png]

Bonjour,

Nous sommes Dawyde et Pilow, deux jeunes développeurs de 20 ans (bientôt 21 pour un)
nous venons vous présenter Leek Wars, un jeu sur lequel nous travaillons depuis 2 ans maintenant, et qui vient de sortir vendredi dernier en version 1.

Présentation du Jeu

Leek Wars est un jeu de programmation et de stratégie par navigateur dont le but est de programmer l’Intelligence Artificielle (IA) la plus performante afin d’affronter et de battre les autres joueurs !

Dans Leek Wars, chaque joueur incarne un éleveur qui s’occupe d’un ou plusieurs poireaux “guerrier-robot-magicien”. Chaque poireau dispose de caractéristiques telles que la force, la vie ou l’agilité qui détermineront la puissance avec laquelle il pourra lancer des sorts ou utiliser des armes, mais également de caractéristiques telle que son niveau, la fréquence de son processeur ou son nombre de coeur qui détermineront les fonctions qu’il pourra exécuter.

Le coeur du jeu repose sur la création d’une Intelligence Artificielle (IA), que le joueur code dans le langage LeekScript, un langage créé spécifiquement pour le jeu, non orienté objet, dont la syntaxe est assez proche du JavaScript et du PHP.

L’éditeur d’IA est directement intégré au site et offre de nombreuses fonctionnalités, comme des raccourcis clavier, une coloration syntaxique ainsi qu’une auto-complétion proposant toutes les fonctions et les constantes du LeekScript.

Pour développer votre IA, Leek Wars met également à votre disposition une documentation complète du LeekScript et un tutoriel complet d’apprentissage, mais ce n’est pas tout.
Vous avez également accès à un environnement de développement et de débuggage permettant de tester votre IA dans des combats de test paramétrables !

Une fois que vous vous sentez prêt à combattre, direction le Potager ! C’est ici que vous pourrez affronter les poireaux des autres joueurs et gagner de l’expérience.

Dans Leek Wars, les combats se déroulent au tour à tour. Vous évoluez sur une grille parsemée d’obstacles placés aléatoirement. À chacun de vos tours, vous disposez d’un nombre de points de tour et de mouvement. C’est là que votre IA entre en scène !
Votre code est exécuté et détermine les actions de votre poireau : se déplacer, attaquer, lancer un sort, parler… Les possibilités sont nombreuses, à vous d’élaborer la stratégie qui vous mènera jusqu’à la victoire.

Lorsque vous aurez amassé assez d’expérience, vous pourrez faire l’acquisition d’un poireau supplémentaire, et alors il faudra adapter votre IA aux combats à plusieurs, un nouveau défi s’offre à vous !

Vous pourrez également fonder ou rejoindre une équipe, pouvant accueillir jusqu'à 40 éleveurs, pour mettre en place à plusieurs des stratégies de combat élaborées.

Si vous rencontrez un problème lors du développement de votre IA ou si vous voulez simplement discuter avec les autres joueurs n’hésitez pas à aller faire un tour sur le forum ou sur le chat global, où les admins et la communauté seront là pour vous répondre.

Chaque soir à 19h, des tournois, triés par niveau, sont organisés, dans lesquels 32 poireaux s’affrontent round après round, l’occasion d’exhiber vos performances aux autres joueurs !

Leek Wars vous propose aussi de collectionner près d’une centaine de trophées cachés tout au long du jeu ! Des objectifs variés et intéressants pour apprendre à coder une IA spécifique à différentes situations.

La communauté est déjà très active et n’attend plus que vous !

Screenshots
Voici quelques screens du jeu :

[Image: 1s.png] [Image: 7s.png]

[Image: 9s.png] [Image: 2s.png]

Pour vous découvrir Leek Wars, rendez-vous sur :
=> www.leekwars.com <=

N'hésitez pas à donner vos impressions, commentaires, remarques ou critiques sur le jeu 16

Dawyde & Pilow
Répondre
#2
Haha c'est génial 2

J'avais eu cette idée aussi pour un projet mais j'ai jamais pris le temps de continuer. Pourtant j'avais créé un compilateur vour la VM Erlang et tout mais je ne désespère pas d'y arriver un jour.

Bon, pour le moment, afin de rendre mon IA plus sympa il me faut accès à des fonctions lvl 5 et je suis lvl1 avec la flemme de farmer l'XP avec toujours le même algo.

Pourquoi vous limitez les fonctions en fonction du level ?

Qui a la propriété intellectuelle du code source créé par les joueurs ?
Répondre
#3
Salut ! Merci pour ton retour !

En effet crée le compilateur ça prend du temps 34 Mais c'est très intéressant à programmer, ça vaut le coup 2

La limitation des fonctions c'est pour inciter le joueur à essayer de faire une IA avec des éléments de base simple avant de partir sur des fonctions plus avancées 34 (et aussi pour que le système de niveaux ait un intérêt)

Pour ce qui est de la propriété intellectuelle, on l'a écrit dans les CGU, ça reste la propriété exclusive de leurs auteurs, avec donc un droit de suppression à tout moment.

Dawyde
Répondre
#4
Hum mais du coup le système de niveaux n'est là que pour justifier un système destiné à donner un intérêt au système de niveaux ... autant l'enlever non =D

Bon effectivement il vaut mieux commencer avec des fonctions de base mais c'est vite frustrant ! sinon nickel sur firefox c'est beaucoup plus fluide j'ai monté mes niveaux rapidement.
Répondre
#5
C'est con mais c'est vachement marrant 2 Bravo les mecs

Parse error: syntax error, unexpected ')' in /home/www/vhosts/leekwars.com/httpdocs/class/WeaponController.class.php on line 23
Répondre
#6
Bon, toujours dans les limitations, c'est très frustrant d'avoir un nombre de combats limités par jour.

J'aimerais beaucoup pouvoir jouer contre d'autres joueurs à l'infini, en acceptant que passé 20 combats, les combats supplémentaires ne rapportent plus d'XP/habs et Capital.
Répondre
#7
(06-08-2014, 11:09 PM)niahoo a écrit : J'aimerais beaucoup pouvoir jouer contre d'autres joueurs à l'infini, en acceptant que passé 20 combats, les combats supplémentaires ne rapportent plus d'XP/habs et Capital.

J'aime bien ce genre d'idées 2
Répondre
#8
ah oui et aussi ça serait cool que le compilo plante si on utilise une fonction pour laquelle on n'a pas le level, ou au moins que le rapport de combat explique pourquoi on plante ... 20 min que je débug 2

Allez je continue, ça serait cool que les types dont le script plante ne soient pas accessibles au combat .. là ça fait 3 fois que je clique sur mockingBird et que je me dis "ah merde c'est celui qui fait rien".

Bon je crache pas sur l'XP gratos hein mais c'est pas marrant 2
Répondre
#9
Ah je vois qu'on peut lancer également 40 défis qui ne rapportent rien, pas mal pour s'entrainer sur un type en particulier.
Répondre
#10
Salut !
Merci pour vos retours 1

nahoo >
En fait c'est un peu plus que ça, le système de niveau permet également de ne pas dévoiler tout le jeu immédiatement au joueur, il risquerait de se lasser trop vite sinon.
C'est utile également pour les sorts et les armes : on ne peut pas accéder aux armes les plus fortes dès le début.

Après comme tu as du le voir sur le site la limite de combats par jour c'est les combats avec XP qui sont limités, on a monté à 200 le nombre de défis maximum afin qu'une personne souhaitant tester son IA en condition puisse le faire sans problèmes 2

Pour ce qui est des poireaux bugés, les poireaux dont l'IA ne compile pas n'ont pas accès au potager, par contre si l'IA compile et que le script plante pendant le combat on ne peut pas vraiment agir.

Harparine >
Tu as du tomber pendant une mise à jours 34"
Répondre




Utilisateur(s) parcourant ce sujet : 1 visiteur(s)