Structure

Les trajets FlatyBot sont basés sur le langage de développement LUA.

Les questions bêtes n'existent pas. Rejoignez notre discord pour obtenir une réponse d'un membre de la communauté !

Tout d'abord, vous allez avoir besoin d'une structure de base afin de faire votre trajet.

Comment éditer un fichier LUA ?

Afin d'éditer le fichier, vous devez utiliser un logiciel de traitement de texte adapté. En effet, le bloc-note de Windows n'est pas suffisant !

Nous vous recommandons l'utilisation de Notepad++. Lorsque vous l'avez téléchargé, il vous suffira de faire un clique droit sur le fichier base.lua et de cliquer sur Edit with Notepad++.

Commentons les commentaires

Avant toute chose, vous devez savoir qu'il existe des commentaires en LUA. Les commentaires commencent toujours pas deux tirets (voir l'image ci-dessous). Notepad++ colorie en vert les commentaires pour plus de lisibilité.

Les commentaires permettent d'indiquer à FlatyBot qu'il faut ignorer la ligne lors de la lecture du fichier. Ils sont très utiles pour mettre de côté certaines lignes du trajet ou pour ajouter des explications sur le code.

Paramètres du trajet

Chaque trajet possède des paramètres, des options, qui peuvent être modifiées comme vous le souhaitez. Les paramètres sont facultatifs. Lorsqu'un paramètre n'est pas présent, sa valeur par défaut est utilisée.

Certains paramètres utilisent des listes. Ces listes sont disponibles dans l'article « Identifiants ».

-- Attaquer les groupes de 2 à 7 monstres
MIN_MONSTERS = 2
MAX_MONSTERS = 7

-- Attaquer les monstres de niveau 25 à 500
MIN_LEVEL = 25
MAX_LEVEL = 500

-- Liste des monstres qu'on ne veut SURTOUT PAS affrontrer...
FORBIDDEN_MONSTERS = {
	43, -- Tofu
	52, -- Arakne
	54, -- Chafer
}
-- Comme vous pouvez le voir ici, il faut ajouter une virgule après chaque
-- nouveau monstre.

-- Liste des monstres qu'il faut À TOUT PRIX y avoir...
MANDATORY_MONSTERS = {
	36, -- Bouftou
}

-- Retour en banque (et suppression automatique) lorsque l'inventaire est
-- rempli à 90%
MAX_PODS = 90

-- Liste des ressources à récolter...
ELEMENTS_TO_GATHER = {
	1, -- Frêne
	8, -- Chêne
	28, -- If
}
-- Comme vous pouvez le voir ici, il faut ajouter une virgule après chaque
-- nouvelle ressource.

-- Liste des objets à supprimer lorsque l'on atteint le MAX_PODS
AUTO_DELETE = {
	303, -- Bois de Frêne
	460, -- Bois de Chêne
	461, -- Bois d'If
}
-- Comme vous pouvez le voir ici, il faut ajouter une virgule après chaque
-- nouvel objet.

-- Peut-être l'avez vous remarqué, mais les identifiants de ELEMENTS_TO_GATHER et
-- AUTO_DELETE sont différents alors qu'il s'agit de la même ressource !
-- En effet, le jeu fait une différence entre un objet À RECOLTER (comme
-- l'arbre Frêne), et un objet DANS VOTRE INVENTAIRE (le Bois de Frêne).

Fonctions

Les fonctions sont des parties de code qui peuvent être appelées et qui doivent la plupart du temps réaliser une tâche bien précise.

FlatyBot utilise 4 fonctions dans votre trajet. À chaque changement de carte, l'une de ces quatre fonctions est appelée.

  • La fonction bank est appelée lorsque le pourcentage de pods dans l'inventaire du bot est supérieur à la valeur du paramètre FULL_PODS.

  • La fonction phoenix est appelée lorsque le bot est en mode fantôme (il n'a plus d'énergie...).

  • La fonction lost est appelée lorsque le bot est perdu.

  • La fonction move est appelée lors que les 3 autres fonctions ne sont pas appelées.

Plutôt que de faire une fonction phenix, peut-être serait-il plus judicieux de chercher à comprendre pourquoi votre bot meurt autant de fois... Utilisez la fonction phenix qu'en dernier recours.

function move()
	-- Appelée à chaque changement de carte, lorsque les autres fonctions
	-- n'ont pas été appelées.
	--
	-- On mettra là-dedans les déplacements, récoltes, combats, etc...
end

function bank()
	-- Appelée à chaque changement de carte lorsque le bot est en FULL_PODS.
	--
	-- On mettra là-dedans le chemin à prendre pour rejoindre la banque la
	-- plus proche ou une maison.
end

function phoenix()
	-- Appelée à chaque changement de carte lorsque le bot est en fantôme.
	--
	-- On mettra là-dedans le chemin vers le phoenix le plus proche.
end

function lost()
	-- Appelée à chaque changement de carte lorsque le bot est perdu.
	--
	-- Son utilisation est un peu plus étrange, nous verrons des cas
	-- d'applications un peu plus tard...
end

Maintenant que vous avez compris la structure de base des trajets, nous allons voir ensemble ce que nous pouvons ajouter dans les fonctions. Rendez-vous au prochain article intitulé « Actions ».

Dernière mise à jour