Leek Wars

Voir le sujet précédent Voir le sujet suivant Aller en bas

Leek Wars

Message par RayTro le Ven 18 Juil - 12:05

Salut à tous, j'ai récemment découvert Leek Wars, un jeu sur navigateur auquel vous faites combattre une IA que vous avez codé juste avant.

Le langage de programmation est extrêmement simple, les boucles / conditions sont les mêmes qu'en C, et les commandes ajoutées sont très explicite, de plus, une documentation en français est disponible.

Rien que le code de base qu'on a au début du jeu est facile à comprendre (en même temps il est commenté) :


On fait des combats pour monter en niveau, monter en niveau pour avoir accès à de nouvelles commandes, et de nouvelles armes et sorts (puces).

Voilà, si vous êtes intéressés pour créer des IAs, ce jeu peut vous plaire Smile

Et aussi : on peut créer des équipes, si jamais une équipe "PTC" vous intéresse... :hap:
avatar
RayTro
Admin

Messages : 335
Date d'inscription : 09/08/2013
Age : 21

Voir le profil de l'utilisateur http://petitcomputer-france.forumactif.org

Revenir en haut Aller en bas

Re: Leek Wars

Message par Adriendu92 le Ven 18 Juil - 12:30

Punaise ça à 'air trop bien  drunken je vais essayer tout de suite en plus ça tombe bien je m'ennuyait un peu

_________________
Le monde se partage en 10 ! Ceux qui connaissent le binaire et ceux qui ne le connaissent pas ! study
avatar
Adriendu92

Messages : 164
Date d'inscription : 07/12/2013
Age : 16
Localisation : Colombes

Voir le profil de l'utilisateur http://www.ptc-qr-code.sitew.fr/

Revenir en haut Aller en bas

Re: Leek Wars

Message par RayTro le Ven 18 Juil - 12:36

Hey tu m'as mis en parrain ! Bah merci en tout cas Very Happy
avatar
RayTro
Admin

Messages : 335
Date d'inscription : 09/08/2013
Age : 21

Voir le profil de l'utilisateur http://petitcomputer-france.forumactif.org

Revenir en haut Aller en bas

Re: Leek Wars

Message par Adriendu92 le Ven 18 Juil - 13:14

de rien et j'ai un bug mon code marche pas (ps mon Nom Adriendu92 mon nom de poireau Poireaudu92)
Code:
var leek = getNearestEnemy();
if (canUseWeapon(Nombre leek)) : Booléen canUse = true {
setWeapon(WEAPON_PISTOL);
}
var enemy = getNearestEnemy();
moveToward(enemy);
useWeapon(enemy);
ça met undefined  confused 

_________________
Le monde se partage en 10 ! Ceux qui connaissent le binaire et ceux qui ne le connaissent pas ! study
avatar
Adriendu92

Messages : 164
Date d'inscription : 07/12/2013
Age : 16
Localisation : Colombes

Voir le profil de l'utilisateur http://www.ptc-qr-code.sitew.fr/

Revenir en haut Aller en bas

Re: Leek Wars

Message par RayTro le Ven 18 Juil - 13:24

Code:
if (canUseWeapon(leek)) {
Si tu vas voir dans la doc tu vois que canUseWeapon est disponible à partir du niveau 29


Dernière édition par RayTro le Ven 18 Juil - 13:25, édité 1 fois
avatar
RayTro
Admin

Messages : 335
Date d'inscription : 09/08/2013
Age : 21

Voir le profil de l'utilisateur http://petitcomputer-france.forumactif.org

Revenir en haut Aller en bas

Re: Leek Wars

Message par Adriendu92 le Ven 18 Juil - 13:24

j'allait l'écrire merci

_________________
Le monde se partage en 10 ! Ceux qui connaissent le binaire et ceux qui ne le connaissent pas ! study
avatar
Adriendu92

Messages : 164
Date d'inscription : 07/12/2013
Age : 16
Localisation : Colombes

Voir le profil de l'utilisateur http://www.ptc-qr-code.sitew.fr/

Revenir en haut Aller en bas

Re: Leek Wars

Message par RayTro le Ven 18 Juil - 13:26

le ": Booléen canUse" c'est ce que renvoie la fonction canUseWeapon
ça indique que ça renvoi un nombre booléen (soit 0 soit 1)
tu peux aussi faire
Code:
var résultat = canUseWeapon(leek)

un petit joke : http://leekwars.com/fight/1050559
avatar
RayTro
Admin

Messages : 335
Date d'inscription : 09/08/2013
Age : 21

Voir le profil de l'utilisateur http://petitcomputer-france.forumactif.org

Revenir en haut Aller en bas

Re: Leek Wars

Message par Adriendu92 le Ven 18 Juil - 13:55

Trop drole et tu est deja niveau 7  affraid moi 1 pale 

_________________
Le monde se partage en 10 ! Ceux qui connaissent le binaire et ceux qui ne le connaissent pas ! study
avatar
Adriendu92

Messages : 164
Date d'inscription : 07/12/2013
Age : 16
Localisation : Colombes

Voir le profil de l'utilisateur http://www.ptc-qr-code.sitew.fr/

Revenir en haut Aller en bas

Re: Leek Wars

Message par RayTro le Ven 18 Juil - 13:56

Bah c'est plutôt rapide en fait, quand tu as découvert que tu pouvais tiirer deux fois de suite tu gagnes plein de combats d'affilée ^^

L'IA inutile :
Code:
var enemy = getNearestEnemy();
var ENom = getName(enemy);
var arme = 0;
var dist1 = getCell();
 var dist2 = getCell(enemy);
 var dist = getCellDistance(dist1,dist2);
if (getWeapon() == -1) {
 setWeapon(WEAPON_PISTOL);
 say ("Bonne chance, " + ENom + " !");
 arme = 1;
 moveToward(enemy);
}


//--------------------------DISCUSS-----------------------------------
if (arme == 1) {
 say ("Batterie à plat, mode veille prolongée activé.");
} else {
}

EDIT : http://leekwars.com/fight/1056731
mon IA de combat actuel à l'action
j'aime bien la phrase de fin
avatar
RayTro
Admin

Messages : 335
Date d'inscription : 09/08/2013
Age : 21

Voir le profil de l'utilisateur http://petitcomputer-france.forumactif.org

Revenir en haut Aller en bas

Re: Leek Wars

Message par J8B le Ven 18 Juil - 18:04

Moi qui suis plutôt long pour coder, pas sûr que j'ai le temps de m'y investir dessus, même si ça à l'air sympa.

_________________
Statut (MàJ:04 Août 2017): Sur le projet "Virtual Bébête" (avancée ~28% Démo_B3).
Mes BDs et mes dessins, c'est sur Webcomics, http://www.webcomics.fr/member/J8B

And i'm here too: http://petitcomputer.wikia.com/wiki/User:J8B
avatar
J8B

Messages : 407
Date d'inscription : 27/10/2013
Localisation : Tarn

Voir le profil de l'utilisateur http://webcomics.fr/member/J8B

Revenir en haut Aller en bas

Re: Leek Wars

Message par RayTro le Ven 18 Juil - 18:39

Plutôt long pour coder ?
Faut aussi savoir que le pathfinding est préfabriqué, si tu veux créer le tiens par contre...
avatar
RayTro
Admin

Messages : 335
Date d'inscription : 09/08/2013
Age : 21

Voir le profil de l'utilisateur http://petitcomputer-france.forumactif.org

Revenir en haut Aller en bas

Re: Leek Wars

Message par J8B le Ven 18 Juil - 19:19

Quand je dis long, c'est au niveau réflexion de ce que je veux faire. (Déjà rien que pour écrire un message ici je peux y passer une demi heure  lol! )

_________________
Statut (MàJ:04 Août 2017): Sur le projet "Virtual Bébête" (avancée ~28% Démo_B3).
Mes BDs et mes dessins, c'est sur Webcomics, http://www.webcomics.fr/member/J8B

And i'm here too: http://petitcomputer.wikia.com/wiki/User:J8B
avatar
J8B

Messages : 407
Date d'inscription : 27/10/2013
Localisation : Tarn

Voir le profil de l'utilisateur http://webcomics.fr/member/J8B

Revenir en haut Aller en bas

Re: Leek Wars

Message par RayTro le Ven 18 Juil - 19:26

Ah d'accord ^^
avatar
RayTro
Admin

Messages : 335
Date d'inscription : 09/08/2013
Age : 21

Voir le profil de l'utilisateur http://petitcomputer-france.forumactif.org

Revenir en haut Aller en bas

Re: Leek Wars

Message par Adriendu92 le Ven 18 Juil - 19:54

a oui punaise

_________________
Le monde se partage en 10 ! Ceux qui connaissent le binaire et ceux qui ne le connaissent pas ! study
avatar
Adriendu92

Messages : 164
Date d'inscription : 07/12/2013
Age : 16
Localisation : Colombes

Voir le profil de l'utilisateur http://www.ptc-qr-code.sitew.fr/

Revenir en haut Aller en bas

Re: Leek Wars

Message par Adriendu92 le Ven 18 Juil - 21:39

Mayday
Code:
var portee = 7;
var moi = getLeek();
var vie = getLife(moi);
var enemy = getNearestEnemy();
var Enom = getName(enemy);
var cell=getCell();
var Ecell=getCell(enemy);
var distance=getCellDistance(cell,Ecell);

if (getWeapon() == -1) {
setWeapon(WEAPON_PISTOL);
say ("Ca va barder !!");
}

if (distance > portée) {
   var d2=distance-portée ;
   moveToward(enemy,d2);
}

useWeapon(enemy);
useWeapon(enemy);
useChip(CHIP_PEBBLE,enemy);
var Evie = (getLife(enemy));
if (Evie== 0) {
say ("Bye Bye "+Enom+" !!");
}

if (distance < portee ) {
   var d2 = portée-distance;
moveAwayFrom(enemy,d2);
}
erreur : undefined
avatar
Adriendu92

Messages : 164
Date d'inscription : 07/12/2013
Age : 16
Localisation : Colombes

Voir le profil de l'utilisateur http://www.ptc-qr-code.sitew.fr/

Revenir en haut Aller en bas

Re: Leek Wars

Message par RayTro le Ven 18 Juil - 21:41

Il y a quelque chose de souligné ?
à première vue il n'y a rien de choquant :/
avatar
RayTro
Admin

Messages : 335
Date d'inscription : 09/08/2013
Age : 21

Voir le profil de l'utilisateur http://petitcomputer-france.forumactif.org

Revenir en haut Aller en bas

Re: Leek Wars

Message par S.lexis le Sam 19 Juil - 11:16

Adrien : Oui à priori y'a rien de faux...
But, j'ai testé et j'ai finalement vu que à plusieurs reprises tu utilises "portée" avec un accent.
Donc déjà la variable n'existe pas, mais aussi je te déconseille d'utiliser des accents, ça a l'air mal géré sur ce site (cf un programme que j'avais nommé Première qui s'est transformé en codes HTML).
Par ailleurs tu as des parenthèses inutiles ligne 23.
Et je te recommande d'utiliser directement les tabulations plutôt que des espaces.

_________________
Plus ou moins de retour
avatar
S.lexis

Messages : 387
Date d'inscription : 24/08/2013

Voir le profil de l'utilisateur http://3dszone.netau.net

Revenir en haut Aller en bas

Re: Leek Wars

Message par fenixelf le Sam 19 Juil - 11:39

Ah mais d'accord en fait ce jeu est seulement une histoire de poireaux XD

J'ai commencé à modifier un peu l'IA mais comme tout débutant il y a son lot d'erreur de formulation :

//--------------------------------
//------- Code de base -----------
//--------------------------------

// On prend le pistolet
setWeapon(WEAPON_PISTOL); // Attention : coûte 1 PT

// On récupère l'ennemi le plus proche
var enemy = getNearestEnemy();

// On récupère le mouvement possible
var move = getAgility();

// On avance vers l'ennemi si possible
if (move > 3) {moveToward(enemy)} ;

// On essaye de lui tirer dessus
useWeapon(enemy);
useWeapon(enemy);

l'erreur est : une fin d'instruction était attendue ici. Pourtant j'ai les accolades fermées et le point virgule a la fin de la ligne silent 
avatar
fenixelf

Messages : 228
Date d'inscription : 08/03/2014
Age : 18
Localisation : Île de France - La ville du bois

Voir le profil de l'utilisateur http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Re: Leek Wars

Message par RayTro le Sam 19 Juil - 12:16

if (move > 3) {moveToward(enemy);}

Razz
avatar
RayTro
Admin

Messages : 335
Date d'inscription : 09/08/2013
Age : 21

Voir le profil de l'utilisateur http://petitcomputer-france.forumactif.org

Revenir en haut Aller en bas

Re: Leek Wars

Message par S.lexis le Sam 19 Juil - 14:22

Et pour connaître son nombre nombre de mouvements restants c'est getMP plutôt.

_________________
Plus ou moins de retour
avatar
S.lexis

Messages : 387
Date d'inscription : 24/08/2013

Voir le profil de l'utilisateur http://3dszone.netau.net

Revenir en haut Aller en bas

Re: Leek Wars

Message par fenixelf le Sam 19 Juil - 16:11

thx (même si j'ai laissé tombé cet IA  Laughing )
Au fait je suis pas mal intéressé par l'idée d'une team PTC

_________________
Get Ready... Twisted Evil
avatar
fenixelf

Messages : 228
Date d'inscription : 08/03/2014
Age : 18
Localisation : Île de France - La ville du bois

Voir le profil de l'utilisateur http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Re: Leek Wars

Message par fenixelf le Sam 19 Juil - 16:53

Autre erreur et là je ne comprends pas du tout...
// variables
var me = getLeek()

if (getWeapon() == -1) {
setWeapon(WEAPON_MACHINE_GUN);
say ("Go go poireaux rangers !");
}
// On récupère l'ennemi le plus proche
var enemy = getNearestEnemy();

// On avance vers l'ennemi
moveToward(enemy);

// On essaye de lui tirer dessus
if isOnSameLine(me,enemy) {useWeapon(enemy);
useWeapon(enemy);
}
useChip(CHIP_PEBBLE,enemy);

pareil... fin d'instruction attendue.


Blague : je voulais acheter le machine gun qui coute 3080 habs mais j'ai déjà fait mes 20 combats solo et j'ai 3079 habs T_T
avatar
fenixelf

Messages : 228
Date d'inscription : 08/03/2014
Age : 18
Localisation : Île de France - La ville du bois

Voir le profil de l'utilisateur http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Re: Leek Wars

Message par RayTro le Sam 19 Juil - 17:02

Pour rejoindre la team Wink => http://leekwars.com/team/1290
temporairement ouvert, en t'attendant.

var me = getLeek();
avatar
RayTro
Admin

Messages : 335
Date d'inscription : 09/08/2013
Age : 21

Voir le profil de l'utilisateur http://petitcomputer-france.forumactif.org

Revenir en haut Aller en bas

Re: Leek Wars

Message par S.lexis le Sam 19 Juil - 17:17

Oui rejoins la team ! Je pense faut attendre qu'on soit level 15 pour profiter des fonctions de team avant de débuter...
RayTro go chat !

_________________
Plus ou moins de retour
avatar
S.lexis

Messages : 387
Date d'inscription : 24/08/2013

Voir le profil de l'utilisateur http://3dszone.netau.net

Revenir en haut Aller en bas

Re: Leek Wars

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum