> Tutoriel LeekScript
C'est dans l'éditeur que vous pourrez développer vos IA. Pour en savoir plus sur les IA, rendez vous sur le Tutoriel LeekScript. La barre supérieure vous permet de gérer vos IAs.
On peut facilement créer une IA en utilisant le clic droit de la souris sur la barre de gauche. Le clic doit sert également a créer un dossier ou l'on peut placer ses fichier d'IA grâce a un cliqué-glissé. Un clic droit sur un fichier d'IA ouvrira un popup d'option permettant de le renommer ou de le supprimer.
Le bouton "Fichier" dans la barre supérieure affiche un menu d'option qui permet de créer un fichier d'IA ou un dossier, mais également de sauvegarder ou supprimer un fichier ou un dossier.
La partie droite de la barre supérieure affiche tous les fichiers ouverts. On peut cliquer sur chacun d'entre eux pour y accéder.
En bas du bandeau de gauche, on retrouve des statistiques sur l'IA ouverte, comme le nombre de lignes ou de caractères.
Finalement, le bandeau inférieur vous indiquera vos erreurs et a quelle ligne de quel fichier elles se trouvent (Moi ? Faire des erreurs ?). Vous pouvez cliquer sur l'erreur en question pour vous y rendre directement.
Le bouton "Option" dans la barre supérieure, représenté par deux engrenages, affiche un menu pour modifier l'affichage de l'éditeur, la taille de la police, hauteur de ligne, thème de couleur, et permet de choisir ses préférences de code. !Options On peut par exemple activer ou désactiver l’autocomplétion des variables/fonctions, ou la fermeture automatique des parenthèses et accolades. Un dernier bloc de texte donne une liste des raccourcis clavier de l'éditeur:
Le bouton "Tester" vous sera des plus utile. Il vous donne accès a un générateur de combats dans lequel vous pourrez tester votre IA dans un contexte contrôlé. Vous pouvez y choisir une carte personnalisée, les poireaux qui se battront ainsi que leurs IA.
L'onglet "Scénarios" vous permet de créer des scénarios de combat. Quel poireau va combattre lequel, dans quel contexte (Solo, équipe, BR, ...) et avec quels IAs. Des IAs de test sont fournies par défaut, avec 4 niveaux de difficultés:
L'onglet "Poireaux" vous permet de créer et modifier des poireaux de test customisés. Vous pouvez choisir leurs Caractéristiques, Armes et Puces a loisir.
L'onglet "Cartes" vous servira a créer des cartes personnalisées de test.
L'option "GRAINE" dans "Avancé" vous permet de choisir un nombre qui sera utilisé comme graine dans le générateur pseudoaléatoire du combat. "Gnnééééé ?" me dites vous ? C'est très simple: tout ce qui se passe dans un combat (position de départ, ordre de jeux, force des effets, ...) est déterminé en partie par un générateur pseudoaléatoire. La graine permet de choisir "quel générateur" on va utiliser. En somme, utiliser le même nombre vous donnera exactement le même combat ! Fantastique pour tester un changement dans son IA ou corriger des bugs (Des bugs ? Dans mon IA ????)
Une fois le combat lancé, vous observerez votre combat de test dans un lecteur de combat, identique a ceux du Potager, dans une map de test spécial.
La page de résumé du combat proposera deux boutons différents d'un résumé de combat classique : !Boutons fin de combat
Le bouton "Retour a l'éditeur" vous ramenera ou vous en étiez dans votre oeuvre. Le bouton "Refaire un combat" relancera un nouveau combat de test avec exactement les mêmes paramètres. Si vous avez précisé une Graine, ce nouveau combat sera parfaitement identique.
Votre poireau ne peut équiper qu'une seule IA à la fois. Mais vous pouvez répartir votre code afin de le rendre plus facilement lisible grâce à la fonction include.
Par exemple :
include("Deplacements");
Cette instruction va inclure le contenu de l'IA "Deplacements". C'est à dire que le contenu entier de l'IA incluse sera copié à l'emplacement de l'appel de la fonction include.
Il faut préciser à include le nom de l'IA à inclure. Ce nom doit être entre guillemets.
Si l'IA "Deplacements" contient par exemple :
// Avance vers l'ennemi moveToward(getNearestEnemy());
Ainsi, si vous avez une IA principale qui inclut "Deplacements" :
// Equipe l'arme setWeapon(WEAPON_PISTOL);
include("Deplacements");
// Attaque l'ennemi useWeapon(getNearestEnemy());
Au moment de l’exécution du code, il deviendra celui-ci :
// Equipe l'arme setWeapon(WEAPON_PISTOL);
// Avance vers l'ennemi moveToward(getNearestEnemy());
// Attaque l'ennemi useWeapon(getNearestEnemy());
Comprenez bien que le contenu de votre code ne changera pas. Le résultat serait exactement le même si vous mettiez l'intégralité du code dans une seule et même IA. L'include permet de gagner en lisibilité et en organisation lorsque votre IA devient conséquente.
Vous passez pas mal de temps dans l'éditeur, à faire les gros yeux à votre code. Choisissez un thème et une taille de police en conséquence afin de ne pas vous fatiguer les yeux trop rapidement.
Vous voilà armé pour la suite. Il est temps de commencer à coder !
Impossible de charger les données du jeu.
Vérifiez votre connexion et réessayez.