Structure
Les trajets FlatyBot sont basés sur le langage de développement LUA.
Les tutoriels que vous allez suivre sont adaptés à votre niveau en informatique. En effet, nous considérons que vous n'avez jamais programmé quoi que ce soit dans votre vie. N'ayez pas peur, et lisez attentivement nos explications !
😁
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.
base.lua
607B
Text

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.
Options
Descriptions
Valeurs
Défaut
MIN_MONSTERS
nombre minimum de monstres dans un groupe de combat
[1:8]
0
MAX_MONSTERS
nombre maximum de monstres dans un groupe de combat
[1:8]
8
MIN_MONSTERS_LEVEL
niveau minimum du groupe de monstre
[1:+∞]
1
MAX_MONSTERS_LEVEL
niveau maximum du groupe de monstre
[1:+∞]
+∞
FORBIDDEN_MONSTERS
liste des monstres qui ne doivent pas être présents en combat
Liste de monstres
Aucun
MANDATORY_MONSTERS
liste des monstres qui doivent être présent en combat
Liste de monstres
Aucun
MAX_PODS
pourcentage de pods dans l'inventaire nécessaire afin de retourner en banque
[1:100]
90
ELEMENTS_TO_GATHER
liste des ressources qui doivent être récoltées
Liste de ressources
Toutes
AUTO_DELETE
liste des objets qui doivent être obligatoirement supprimés
Liste d'objets
Aucun
TIME_GATHER
temps avant de retourner sur une carte précedemment récoltée par le mode automatique
temps en minute
5
Certains paramètres utilisent des listes. Ces listes sont disponibles dans l'article « Identifiants ».
Vous me donnez l'impression que ce n'est pas encore très clair pour vous... Comme je suis clairvoyant, voici un petit exemple pour vous aider !
😉
1
-- Attaquer les groupes de 2 à 7 monstres
2
MIN_MONSTERS = 2
3
MAX_MONSTERS = 7
4
5
-- Attaquer les monstres de niveau 25 à 500
6
MIN_MONSTERS_LEVEL = 25
7
MAX_MONSTERS_LEVEL = 500
8
9
-- Liste des monstres qu'on ne veut SURTOUT PAS affrontrer...
10
FORBIDDEN_MONSTERS = {
11
43, -- Tofu
12
52, -- Arakne
13
54, -- Chafer
14
}
15
-- Comme vous pouvez le voir ici, il faut ajouter une virgule après chaque
16
-- nouveau monstre.
17
18
-- Liste des monstres qu'il faut À TOUT PRIX y avoir...
19
MANDATORY_MONSTERS = {
20
36, -- Bouftou
21
}
22
23
-- Retour en banque (et suppression automatique) lorsque l'inventaire est
24
-- rempli à 90%
25
MAX_PODS = 90
26
27
-- Liste des ressources à récolter...
28
ELEMENTS_TO_GATHER = {
29
1, -- Frêne
30
8, -- Chêne
31
28, -- If
32
}
33
-- Comme vous pouvez le voir ici, il faut ajouter une virgule après chaque
34
-- nouvelle ressource.
35
36
-- Liste des objets à supprimer lorsque l'on atteint le MAX_PODS
37
AUTO_DELETE = {
38
303, -- Bois de Frêne
39
460, -- Bois de Chêne
40
461, -- Bois d'If
41
}
42
-- Comme vous pouvez le voir ici, il faut ajouter une virgule après chaque
43
-- nouvel objet.
44
45
-- Peut-être l'avez vous remarqué, mais les identifiants de ELEMENTS_TO_GATHER et
46
-- AUTO_DELETE sont différents alors qu'il s'agit de la même ressource !
47
-- En effet, le jeu fait une différence entre un objet À RECOLTER (comme
48
-- l'arbre Frêne), et un objet DANS VOTRE INVENTAIRE (le Bois de Frêne).
Copied!

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.
Nous n'allons pas nous attarder sur leur utilité et leur utilisation, puisque ce guide n'a pas pour objectif de vous apprendre à programmer. Les plus vétérans d'entres-vous verront les fonctions de manière plus approfondie un peu plus tard dans le cours.
🧐
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.
Vous semblez encore une fois douteux... Voici un petit exemple pour vous aider.
😎
1
function move()
2
-- Appelée à chaque changement de carte, lorsque les autres fonctions
3
-- n'ont pas été appelées.
4
--
5
-- On mettra là-dedans les déplacements, récoltes, combats, etc...
6
end
7
8
function bank()
9
-- Appelée à chaque changement de carte lorsque le bot est en FULL_PODS.
10
--
11
-- On mettra là-dedans le chemin à prendre pour rejoindre la banque la
12
-- plus proche ou une maison.
13
end
14
15
function phoenix()
16
-- Appelée à chaque changement de carte lorsque le bot est en fantôme.
17
--
18
-- On mettra là-dedans le chemin vers le phoenix le plus proche.
19
end
20
21
function lost()
22
-- Appelée à chaque changement de carte lorsque le bot est perdu.
23
--
24
-- Son utilisation est un peu plus étrange, nous verrons des cas
25
-- d'applications un peu plus tard...
26
end
Copied!
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 8mo ago