Cette version ne prend pas en charge les dernières fonctionnalités avancées (grablist, fichier séquence) mise en place sur les versions v8.x..
10.06.2013: Bot : Arreat Core + Field Ver 6.01 A9
01.06.2013: Mise à jour des statistiques
22.05.2013: Bot : Arreat Core + Field Ver 6.01 A8
15.05.2013: Bot : Arreat Core + Field Ver 6.01 A7
Versions plus anciennes :
Synopsis
Comme certains ont pu le remarquer dans un autre sujet, je cherchais un "module" pour permettre à ma "DH" de survivre un peu plus longtemps. Même avec un DPS avoisinant les 150K, mon ratio vie/mort oscillait entre 6/3 ou 9/4. Même en la blindant en armure et résistances élémentaires, ça ne changeait pas grand-chose. Ce bot semblait avoir été développé par des barbares (sans allusion aucune avec la qualité du code
C’est ainsi que j’ai commencé à développer un module histoire de gérer un peu mieux ces foutus élites et leurs sorts. Problème, l’architecture actuelle du code, dans sa forme, compliquait énormément les choses, et je n’arrivais à rien de bien. Bref. J’ai donc voulu m’attaquer à la base, à savoir la fonction movetopos. Idem. J’ai donc dû reprendre le code de la fonction Attack. Puis de Killmob, puis de Grabit, puis et puis et puis une bonne partie du code.
Donc vous l'avez compris, ce code est spécialement adapté aux classes de type "ranged".
Parmi les améliorations (ô combien nombreuses) et
Nouvelle gestion des déplacements.
Le but ici est de d'utiliser toute la carte et d'éviter au maximum le corps à corps. Un sort, on recule, un monstre, on recule, un élite, on s'enfuit. Bref, on essaye de rester en vie le plus longtemps possible. Les améliorations ne s'arrêtent pas là. Afin de rendre ce bot plus "humain", j'ai décortiqué chacune de nos attitudes et réactions "en jeu" et je n'ai eu qu'à les retranscrire.
1/ Le démarrage
Comme vous avez pu le remarquer, certaines parties commencent mal. A peine lancée, deux groupes d’Élites vous tombent dessus. Que faire lorsque vous êtes au cœur d'Arreat, à la lisière, à l'orée du bois d'Asmodan. Soit vous combattez vaillamment et vous mourrez (ou peut-être survivez), soit vous essayez de fuir en remontant ces satanés escaliers. J'ai choisi la seconde option (plus pérenne). Et cela s'appliquera à toutes les cartes.
Votre démarrage est compliqué à gérer, alors votre bot cherchera à se faufiler entre les méchants et avancera entre tout ce beau monde, faisant fi de votre zone de sécurité.
2/ Tu avances et tu recules, comment veux-tu ...
Les deux points cruciaux, vitaux même sur lesquels je me suis penché furent la gestion des distances entre vous et vos ennemis ainsi que la distance de recul lors des phases de combat. Contre des élites, sans recul, point de salut. Mais quelle valeur donner à cette distance ?
Cette distance sera toujours égale à $giEscapeSfArea. $giEscapeSfArea étant votre distance de sécurité.
3/ Sauve-toi, mais vite alors ...
Afin de permettre aux classes distantes de s'échapper rapidement, j'ai du modifier les fonctions de gestion des sortilèges. Votre dernière compétence sera et devra toujours être une compétence de protection (ou d'échappement). Avant chaque fuite en avant, ou arrière, cette compétence sera lancée.
Nouvelle gestion des attaques.
Les fonctions servant à gérer les attaques (Attack et Killmob) ne font maintenant plus que cela. Pas de ramassage d'or, ni d'objets, alors qu'en face, nous avons des élites déchainés. Non. On tape et rien d'autre. L'un des points sur lequel je me suis penché, fut l'immobilisme navrant de votre personnage lors des phases d'attaque. Fini de taper comme un sourd, alors que CreepMob, par dessous, vous balance ses jolis bras, baissant dramatiquement vos points de vie jusqu’à leur niveau le plus bas. Fini également les pieds dans la lave, le poison, les arcanes, les mortiers, les explosions. Non, vous attaquez maintenant si votre zone de survie, définie par $giSfArea ... l'est toujours réellement !
Nouvelle gestion de ramassage d'objets.
La fonction servant à ramasser les objets a elle aussi été entièrement revue. La fonction Grabit garde le même nom, mais grab fait ici son apparition. En développant ces fonctions, j'ai essayé de prendre en compte plusieurs problèmes récurrents des anciennes (et nouvelles) versions.
Le premier point concerne l'oubli de vos objets et de votre or au sol. De par sa conception, l'ancien code ne permettait pas de prendre un objet ou de l'or situé au-delà de la valeur définie par grabrange, elle même limitée par votre position de départ. Aujourd'hui, la récursivité aidant, la valeur maximale de ramassage d'objets est devenue, quasi infinie. Plus de risque d'oublier le moindre objet à terre.
Le deuxième point concernait votre survie lors du ramassage d’objets ou d’or. Aujourd’hui, il ne se fera qu’à une seule condition. Pas de monstres à moins de $giSfArea. Et si par malheur, un élite ou un fourbe venait à s’interposer entre vous et votre butin, le ramassage est instantanément interrompu pour repasser en mode fessée. Une fois le présomptueux corrigé, vous retournez chercher votre dû !
Gestion des affixes
Une fonction spécialement dédiée à votre survie, nommée IsSafeArea, surveille la distance entre un sortilège, un monstre et vous. Si cette distance est inférieure à la valeur définie par la variable $giSfArea, vous reculez. On recule, oui, mais pour aller où ? Tout simplement à votre position précédente. Chaque point défini dans votre fichier séquence, une fois nettoyé, devient un point de survie.
Les affixes suivants sont tous, "normalement", évités (ainsi que leurs sortilèges) :
- ArcaneEnchanted
- Desecrator
- Mortar
- frozen
- deathExplosion
- deathStart
- Plagued
- iceClusters
- Molten
- PetSweep
Les compétences utilisées par ma DH pour l'occasion :
http://eu.battle.net/d3/fr/calculator/demon-hunter#WcTgeh!bef!aaZccZ
L'équipement utilisé pour "farmer" en Armageddon (P1) :
Statistiques en Armageddon PM1 (251K DPS unbuff) Certifié sans LL (Demon Hunter)
Notes techniques
Rapport d'erreurs
Pour consulter la TodoList, cliquez ici
Pour fonctionner, vous devez télécharger l'un des deux fichiers ci-dessous.
Version avec exécutable : http://dl.free.fr/gbZIyBzrg
Version sans exécutable :
Note : Pour utiliser cette version, vous devez compiler le fichier main.au3 avec Compile Script to .exe (Disponible à l'installation de AutoIT), puis lancez l’exécutable.


Ce sujet est fermé





