Toujours quelques temps de latence parfois, le temps d'encaisser quelques baffes avant de réagir de nouveaux.
En tout cas, ça sent bon, très très bon la future version "officielle" de GMS.
Le bot va bientôt mieux jouer que moi
Posté 25 January 2013 - 21:41
Posté 25 January 2013 - 22:01
Posté 25 January 2013 - 22:02
Posté 25 January 2013 - 22:03
Voici le fichier contenant tout les fichiers nécessaire pour faire tourner le bot (il n'y a pas d’exécutable !)
Posté 25 January 2013 - 22:30
ah depuis le temps que mon bot rêvait d'utiliser berseker sur les élites !!!
![]()
Toujours quelques temps de latence parfois, le temps d'encaisser quelques baffes avant de réagir de nouveaux.
En tout cas, ça sent bon, très très bon la future version "officielle" de GMS.
Le bot va bientôt mieux jouer que moi
Posté 25 January 2013 - 23:29
Posté 25 January 2013 - 23:31
Salut c'est cool de mettre ça disposition, mais après avoir lu les trois pages, je m'étonne de ne pas avoir vu un petit noob comme moi demander :
"mais si y a pas de .exe où est ce que je clique ??" : p
faut faire comment ? un truc a compiler ou un fichier à récupérer dans la version "officiel" ?
Posté 26 January 2013 - 00:01
Posté 26 January 2013 - 04:07
J'ai l'impression que le problème que tu décris devrait plutôt être géré dans ta fonction d'attaque, je m'explique:2/
J'ai l'impression que la fonction FromD3toScreenCoords est "bogué", je m'explique. Dans le cas de classe CAC, vu que l'on est toujours collé au corps à corps avec les monstres, la distance entre votre perso et le monstre ne dépasse jamais grand max 20m sur l'axe des ordonnées. Votre perso, toujours au centre de l'écran, tape les vilains dans un rayon de 20m, donc aucun problème. Hors, si jamais vous devez dépasser, toujours sur l'axe des ordonnées, les 50m, votre curseur s'arrêtera avant et n'atteindra jamais le monstre si celui-ci est collé en haut de votre fenêtre. Attention, je ne parle pas ici des limitations induites par votre code, à savoir les valeurs maximales 790, 540 ou autres. Dans l'absolu, ce n'est pas bien grave, vu que la trajectoire, en x et y+/- est bonne. Mais c'est dommage. J'ai apporté les modifications suivantes et elles semblent résoudre le problème. Dans mon cas. A voir maintenant si ces modifications ne portent pas à conséquences sur d'autres parties.Spoiler
Non, le plus simple pour le comprendre est de mettre Diablo en fenêtré et de faire 'joujou' avec les bords de la fenêtre, tu te rendras vite compte que le ratio de *certains* éléments de l'ui ne dépend que de la hauteur de ta fenêtre et non de sa largeur, c'est pourquoi on divise par 600 et non 800. Cependant j'avais écris cette fonction dans le but de permettre au bot de gérer d'autres résolutions que 800x600 au moment du toolkit, je dois avouer qu'à partir du moment ou tout le monde bot en 800x600 (je n'en sais rien) elle n'a sans doute plus lieu d'être. (et puis elle est pas hyper fine cette fonction, voir un peu buggy de souvenir)3/
Idem pour cette fonctionSpoiler
Ne devrions nous pas avoir $return[0] = $size[0] * ($_x / 800) ?
Posté 26 January 2013 - 05:59
Pas d'usage de potion
Ne se sert jamais de sérénité
Step frappes trop souvent utilisé quand un seul élite au cac (du coup pas très rentable)
Si je mets en pause pour prendre la main, a tendance à quitter le run si trop loin du point de départ de la pause
SequenceFile=act3_core_start_[1-5]|act3_field_1|act3_tower_[1-4]|[CMD]TakeWP=0,0,3,4
Serait-il possible de prendre en compte : si focus effrayée ne pas courir après mais prendre la cible d'à côté
je suis bloqué par un obstacle (retour à ma position précédente qui recalcule une autre position
Combo poison/sentinelle arca (ou autre) je dégage vers une zone saine.
Le bot va bientôt mieux jouer que moi
La partie iterateObjectsList à effectivement été revue en profondeur. Ça va être sport maintenant de s'adapter.
Toujours pas fait pour les classes faibles. Ma dh a passé sa vie par mort à terre. Bon, là, c'est noté dans le titre, je n'avais qu'à lire. Aucune excuse.
MonsterTri=True MonsterRefresh=True/false ;(a voir) ItemRefresh=False MonsterPriority=True
Posté 26 January 2013 - 06:43
J'ai l'impression que le problème que tu décris devrait plutôt être géré dans ta fonction d'attaque, je m'explique:Pour un CaC le fait que le rayon d'aggro dessine un cercle qui sorte de la fenêtre n'est pas gênant: en cliquant au bord de la fenêtre comme fait actuellement tu va t'en rapprocher jusqu'à ce que tu puisse le taper et lorsque tu es à portée pour taper le monstre, il est forcément affiché à l'écran.Dans le cas d'un distance tu vas t'en rapprocher et commencer à l'attaquer lorsqu'il va rentrer dans ton écran (la direction est bonne), ce qui te fais attaquer bien trop tard/ t’empêche de garder la distance que tu voudrais.Mon avis est plutôt de modifier la fonction d'attaque en utilisant des shift down/up que de toucher à la fonction qui fait la projection (quoique tu ne touche pas réellement à la projection avec ta modification, juste au fail-safe pour ne pas sortir de la fenêtre du jeu).Après je t'ai p-e mal compris et ce que tu décris n'a rien à voir avec ma réponse.
Ok, je me doutais un peu de la réponse. Merci pour cette précision.Non, le plus simple pour le comprendre est de mettre Diablo en fenêtré et de faire 'joujou' avec les bords de la fenêtre, tu te rendras vite compte que le ratio de *certains* éléments de l'ui ne dépend que de la hauteur de ta fenêtre et non de sa largeur, c'est pourquoi on divise par 600 et non 800. Cependant j'avais écris cette fonction dans le but de permettre au bot de gérer d'autres résolutions que 800x600 au moment du toolkit, je dois avouer qu'à partir du moment ou tout le monde bot en 800x600 (je n'en sais rien) elle n'a sans doute plus lieu d'être. (et puis elle est pas hyper fine cette fonction, voir un peu buggy de souvenir)Sur ce bonne nuit, je retourne dans ma grotte.
Posté 26 January 2013 - 07:02
Je me doute, j'ai pu compter le nombre d’imbrication de fonctions. Pas évident au premier coup d'oeil de comprendre le codeJe me suis au combien pris la tête sur l'iterateObjectsList, la fonction attack et toute ces dépendances, mais je pense que sa en valais le coup, les prochains développeur devrait être heureux de pouvoir dev sur un code "compréhensible".
J'ai pu remarquer effectivement la présence du tri. Très bonne option. Cela dit, cela n'a pas changé grand chose. Même avec un DPS de 207k, ton perso n'a pas fini de tuer le premier vilain que tous ces potes sont autour de toi à te taper dessus. La fonction MonsterPriority était à true.essaye en modifiant ces lignes dans le setting.ini :
MonsterTri=True MonsterRefresh=True/false ;(a voir) ItemRefresh=False MonsterPriority=True
MonsterTri, force le code a trier les mobs et les items en fonction de leur distance
MonsterRefresh, force le code a rafraîchir tout les objets et a les trier (si activé) a chaque fois qu'un mob est tué
ItemRefresh, fait la même chose que MonsterRefresh, sauf qu'il le fait lorsque qu'un item est grab
MonsterPriority, force le bot a tuer tout les mobs présent avant de grab, cette fonctionnalité est très bonne pour les distants
$aData_RndX = Random($aData_XY[0] - Random(18,28), $aData_XY[0] + Random(18,28)) $aData_RndY = Random($aData_XY[1] - Random(18,28), $aData_XY[1] + Random(18,28))
Posté 26 January 2013 - 14:22
Posté 26 January 2013 - 16:05
Line 4714 (File (...)\toolkit.au3): ContinueLoop 2 Error: "ContinueLoop" statement with no matching "While", "Do" or "For" statement.
Posté 26 January 2013 - 16:35
Posté 26 January 2013 - 17:56
Posté 26 January 2013 - 18:47
checkForPotion()
Posté 26 January 2013 - 20:14
Posté 27 January 2013 - 01:18
SpellType = move (lance uniquement un skill dedié au déplacement - un saut, une roulade, un sprint, un TP...) SpellType = move&buff (lance un buff uniquement dédié au déplacement - se rafraichi lorsque le buff se termine) SpellType = attack | ... | ==> Permet l'utilisation de skill qui demande un appuie prolongé en combat (Tornade, la rafale du DH...) SpellDelayPushDown = 200 | SpellType = move | ... | ==> Permet l'utilisation de skill qui demande un appuie prolongé hors combat(...) SpellDelayPushDown = 200 |