Petit Computer France
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
-50%
Le deal à ne pas rater :
-50% Baskets Nike Air Huarache
64.99 € 129.99 €
Voir le deal

Leek Wars

5 participants

Aller en bas

Leek Wars Empty Leek Wars

Message par RayTro 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é) :
Leek Wars 8512e23ad5

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:
RayTro
RayTro
Admin

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

https://petitcomputer-france.forumgaming.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par Adriendu92 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
Adriendu92
Adriendu92

Messages : 165
Date d'inscription : 07/12/2013
Age : 23
Localisation : Colombes

http://www.ptc-qr-code.sitew.fr/

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par RayTro Ven 18 Juil - 12:36

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

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

https://petitcomputer-france.forumgaming.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par Adriendu92 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 
Adriendu92
Adriendu92

Messages : 165
Date d'inscription : 07/12/2013
Age : 23
Localisation : Colombes

http://www.ptc-qr-code.sitew.fr/

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par RayTro 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
Leek Wars 1091328b70


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

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

https://petitcomputer-france.forumgaming.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par Adriendu92 Ven 18 Juil - 13:24

j'allait l'écrire merci
Adriendu92
Adriendu92

Messages : 165
Date d'inscription : 07/12/2013
Age : 23
Localisation : Colombes

http://www.ptc-qr-code.sitew.fr/

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par RayTro 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
RayTro
RayTro
Admin

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

https://petitcomputer-france.forumgaming.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par Adriendu92 Ven 18 Juil - 13:55

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

Messages : 165
Date d'inscription : 07/12/2013
Age : 23
Localisation : Colombes

http://www.ptc-qr-code.sitew.fr/

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par RayTro 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
RayTro
RayTro
Admin

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

https://petitcomputer-france.forumgaming.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par J8B 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.
J8B
J8B

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

http://jinbryce.free.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par RayTro 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...
RayTro
RayTro
Admin

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

https://petitcomputer-france.forumgaming.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par J8B 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! )
J8B
J8B

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

http://jinbryce.free.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par RayTro Ven 18 Juil - 19:26

Ah d'accord ^^
RayTro
RayTro
Admin

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

https://petitcomputer-france.forumgaming.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par Adriendu92 Ven 18 Juil - 19:54

a oui punaise
Adriendu92
Adriendu92

Messages : 165
Date d'inscription : 07/12/2013
Age : 23
Localisation : Colombes

http://www.ptc-qr-code.sitew.fr/

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par Adriendu92 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
Adriendu92
Adriendu92

Messages : 165
Date d'inscription : 07/12/2013
Age : 23
Localisation : Colombes

http://www.ptc-qr-code.sitew.fr/

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par RayTro Ven 18 Juil - 21:41

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

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

https://petitcomputer-france.forumgaming.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par S.lexis 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.
S.lexis
S.lexis

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

http://3dszone.netau.net

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par fenixelf 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 
fenixelf
fenixelf

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

http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par RayTro Sam 19 Juil - 12:16

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

Razz
RayTro
RayTro
Admin

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

https://petitcomputer-france.forumgaming.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

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

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

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

http://3dszone.netau.net

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par fenixelf 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
fenixelf
fenixelf

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

http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par fenixelf 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
fenixelf
fenixelf

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

http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par RayTro Sam 19 Juil - 17:02

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

var me = getLeek();
RayTro
RayTro
Admin

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

https://petitcomputer-france.forumgaming.fr

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par S.lexis 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 !
S.lexis
S.lexis

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

http://3dszone.netau.net

Revenir en haut Aller en bas

Leek Wars Empty Re: Leek Wars

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut


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