[Advanced AI][FlatyCloud] SpellZoneAI

    Publicités

Users Who Are Viewing This Thread (Total: 0, Members: 0, Guests: 0)

Lmoony

Membre
Apr 7, 2019
28
56
214
30
UPDATE : (SpellZone 1.1) Majoritairement des bugs fix, des améliorations de vitesse et de stabilité. (Le bot pouvait buger face a des individus invisibles)

Bonjour, voici SpellZone, une IA combat qui, comme la dernière, fonctionne avec une configuration de sorts entrés au préalable. (Il n'est cependant plus nécessaire d’écrire toutes les données concernant le sort, le nom suffit)

Voici a quoi cela peut ressembler

Code:
DofusClass="10" -- SADIDA

local SpellConfig = {
    [1] = "Ronces Multiples",
    [2] = "Ronce",
    [3] = "Larme",
}

local distToFlee = 5 -- en dessous de cette distance le bot tentera de reculer en fin de tour, sinon, il tentera d'avancer.
local minMonsterForZoneSpell = 2 -- le nombre de monstre minimum compris dans la zone d'un spell pour qu'elle soit retenue.

Son fonctionnement est tiré de SpellPriority, vous comprendrez donc, qu'il fonctionne globalement de la même manière.
A ceci près que, lorsque le bot détecte que vous utilisez un sort de zone, il va tenter de calculer toutes les zones possible, et choisir la meilleure selon la relation suivante :

Code:
N : Nombre de d'entite dans la zone
D : Distance avec la cellule depuis laquelle je suis sense tirer le sort

Relation : N / sqrt(D)

Il omettra les zones comprenant moins de minMonsterForZoneSpell (voir config.)
Et bien sur, les lignes de vue et le tacle sont pris en compte.

Il est donc conseillé de mettre les sorts de zone en premier et de limiter leur utilisation avec minMonsterForZoneSpell.

Ne possédant pas la possibilité d'accéder a tous les sorts du jeu avec mes pauvres comptes, je n'ai pu tester que sur quelques sorts dont je vais lister une partie ici :
  • Fleche Enflammee des Cra
  • Affront des Eliotropes
  • Brimade des Eliotropes
  • Epee Divine des Iops
  • Epee Destructrice des Iops
  • Ronces Multiples des Sadida
  • Herbe Folle des Sadida
  • ...
Les sorts listés ici fonctionnent comme ils le devraient.

Il arrive parfois que le bot soit un peu lent (Au plus vous avez de PM, au plus il y a de possibilité de lancer un sort de manière différente, ça marche aussi pour la PO)
Mais de manière générale, il est plutôt rapide.

Veuillez me faire part de vos observations lors de son utilisation.
Merci !

Edit : Attention, les comptes sur lesquels des sorts ont été nouvellement appris, ou dont la variante a été modifiée, doivent être redémarré pour fonctionner correctement.
Ceci n'est pas spécifique ni a mon IA mais a FlatyBot de manière générale.


Edit2 : Les caractères spéciaux ne sont pas supportés sur le Lua. l'exemple de Œil de Taupe est parfait. Il est donc nécessaire d’écrire "eil de Taupe"

Edit3 : Accès FlatyCloud nécessaire pour utilisation


Edit4 : IA indisponible pour le moment. En attente d'update de la part de FlatyCloud
 

Attachments

  • SpellZoneAI_1.1.lua
    16.2 KB · Views: 121
Last edited:
  • Like
  • Love
Reactions: Gryffin, phadazul, Dkukure and 5 others

LizzyRox

Membre
Sep 10, 2019
25
14
134
25
UPDATE : (SpellZone 1.1) Majoritairement des bugs fix, des améliorations de vitesse et de stabilité. (Le bot pouvait buger face a des individus invisibles)

Bonjour, voici SpellZone, une IA combat qui, comme la dernière, fonctionne avec une configuration de sorts entrés au préalable. (Il n'est cependant plus nécessaire d’écrire toutes les données concernant le sort, le nom suffit)

Voici a quoi cela peut ressembler

Code:
DofusClass="10" -- SADIDA

local SpellConfig = {
    [1] = "Ronces Multiples",
    [2] = "Ronce",
    [3] = "Larme",
}

local distToFlee = 5 -- en dessous de cette distance le bot tentera de reculer en fin de tour, sinon, il tentera d'avancer.
local minMonsterForZoneSpell = 2 -- le nombre de monstre minimum compris dans la zone d'un spell pour qu'elle soit retenue.

Son fonctionnement est tiré de SpellPriority, vous comprendrez donc, qu'il fonctionne globalement de la même manière.
A ceci près que, lorsque le bot détecte que vous utilisez un sort de zone, il va tenter de calculer toutes les zones possible, et choisir la meilleure selon la relation suivante :

Code:
N : Nombre de d'entite dans la zone
D : Distance avec la cellule depuis laquelle je suis sense tirer le sort

Relation : N / sqrt(D)

Il omettra les zones comprenant moins de minMonsterForZoneSpell (voir config.)
Et bien sur, les lignes de vue et le tacle sont pris en compte.

Il est donc conseillé de mettre les sorts de zone en premier et de limiter leur utilisation avec minMonsterForZoneSpell.

Ne possédant pas la possibilité d'accéder a tous les sorts du jeu avec mes pauvres comptes, je n'ai pu tester que sur quelques sorts dont je vais lister une partie ici :
  • Fleche Enflammee des Cra
  • Affront des Eliotropes
  • Brimade des Eliotropes
  • Epee Divine des Iops
  • Epee Destructrice des Iops
  • Ronces Multiples des Sadida
  • Herbe Folle des Sadida
  • ...
Les sorts listés ici fonctionne comme ils le devraient.

Il arrive parfois que le bot soit un peu lent (Au plus vous avez de PM, au plus il y a de possibilité de lancer un sort de manière différente, ça marche aussi pour la PO)
Mais de manière générale, il est plutôt rapide.

Veuillez me faire part de vos observations lors de son utilisation.
Merci !

Edit : Attention, les comptes sur lesquels des sorts ont été nouvellement appris, ou dont la variante a été modifiée, doivent être redémarré pour fonctionner correctement.
Ceci n'est pas spécifique ni a mon IA mais a FlatyBot de manière générale.


Edit2 : Les caractères spéciaux ne sont pas supportés sur le Lua. l'exemple de Œil de Taupe est parfait. Il est donc nécessaire d’écrire "eil de Taupe"

Pour infos : Le fichier à télécharger à côté de l'ID "10" tu as mit un commentaire : --Cra
Sauf que 10 c'est Sadida

Merci pour le partage c'est super :)
Test sur sadida actuellement, la zone multiple fonctionne avec perfection.
Esit : Est-ce qu'on peut mettre l'ID du sort à la place du nom ? Ca évite que les caractères spéciaux, majuscules etc posent problème ?
 
Last edited:

Lmoony

Membre
Apr 7, 2019
28
56
214
30
Non on ne peut pas mais je pourrais faire en sorte que l'on puisse a l'avenir.
Merci
 

LizzyRox

Membre
Sep 10, 2019
25
14
134
25
Hum, c'est uniquement possible d'utiliser des sorts qui ciblent les monstres ?

J'ai essayé, sur cra, d'utiliser tir éloigné/tir puissant et sur sadida d'utiliser la Folle, mais l'IA me retourne une erreur et le bot ne fait rien du coup.
 

Lmoony

Membre
Apr 7, 2019
28
56
214
30
Oui, c'est uniquement possible d'utiliser les sorts à dégats pour le moment. La raison est la suivante : les effets ne sont pas accessibles au sein de l'API. J'attend de pouvoir y accéder afin de faire un système de boost intelligent
 
Last edited:
  • Like
Reactions: LizzyRox