online faq recherche accueil
 

Il y a 218 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici

 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet :

Nouveau calculateur complet pour toutes les vitesses d'attaques

 
n°4764610
leech_1985
Mythos Alpha Testeur :D
Posté le 20-02-2008 à 10:58:57  profilanswer
 

Bonjour,
 
TitanSeal vient de publier la version anglaise de son calculateur des vitesses d'attaque, j'ai pensait que ca pourrait intéresser la communauté des joueurs français. Toutes les attaques sont couvertes, notamment les formes un peu bizarres genre une ama qui se transforme en ours etc xD à priori tout ca est correct à 99%, étant donné que TitanSeal a écrit une explication monstrueuse sur tout ce qui est calcul de vitesses dans le jeu, malheureusement disponible uniquement en schleu :ack:, mais bon, il sait de quoi il parle donc.  
 
Enjoy.


Message édité par leech_1985 le 20-02-2008 à 10:59:17

---------------
A Blizzard game is never late. Nor is it early. It arrives precisely when it means to.
Et vous saurez TOUT, TOUT sur diablo II - B.NET : leech3
La censure a frappé, non sans cordialité.
n°4764612
Touffu
en Vadrouille
Posté le 20-02-2008 à 11:40:25  profilanswer
 

Ah ouais, le gars a même intégré le Holy Freeze et le Decrepify !
 
Merci pour l'info !


---------------
 L'Artiste est celui qui tend le bras vers l'horizon.

[:touffu][:touffu:1][:touffu:2][:touffu:3]
n°4764620
benoit21
vive le stade toulousain
Posté le 20-02-2008 à 13:50:51  profilanswer
 

je parle pas "schleu" je fait comment :'(.


---------------
[:blackhawk:5][:yatoub:1]ma trade list:http: vive le rugby :)[:yodaman:2]
n°4764623
Nico-LMR
geek un jour, geek ...
Posté le 20-02-2008 à 14:55:18  profilanswer
 

Toutes les attaques ne sont pas couvertes, il manque ferveur et berserker pour les persos utilisant passion =(
 
Enfin il est déjà plus complet que le précédent :)


---------------
Ma KA sorc CaC Anti-Ubers
Site de référencement d'objets de D2
Diablo 2 Engine  
Vive le Sky et vive la France Moi :o
n°4764628
leech_1985
Mythos Alpha Testeur :D
Posté le 20-02-2008 à 19:34:33  profilanswer
 

Nico-LMR a écrit :

Toutes les attaques ne sont pas couvertes, il manque ferveur et berserker pour les persos utilisant passion =(
 


 
Euh, c po vrai. Suffit de choisir une arme qui supporte passion et ferveur apparait dans la liste des attaques. C pô génial ca?  
edit : c'est vrai qu'il manque berserk, mais il y a ferveur. Berserk a peut-être les même caps que l'attaque standard non? j'y connait rien *g*
 
 
@benoit : euh, c'est de l'anglais, là ;) Je te remet le lien pour pas qu'il y ai de malentendu : http://diablo2.ingame.de/tips/calc [...] nglish.php


Message édité par leech_1985 le 20-02-2008 à 19:36:41

---------------
A Blizzard game is never late. Nor is it early. It arrives precisely when it means to.
Et vous saurez TOUT, TOUT sur diablo II - B.NET : leech3
La censure a frappé, non sans cordialité.
n°4764629
Nico-LMR
geek un jour, geek ...
Posté le 20-02-2008 à 19:55:13  profilanswer
 

Autant pour moi :jap:
 
Pour zerk, sur le barbare ça change mais il me semble que sur l'ancien calculateur ça changeait, mais je ne sais pas si c'est réellement le cas ;)


---------------
Ma KA sorc CaC Anti-Ubers
Site de référencement d'objets de D2
Diablo 2 Engine  
Vive le Sky et vive la France Moi :o
n°4764630
Kyjja
Forrest-ssin
Posté le 20-02-2008 à 20:20:42  profilanswer
 
n°4764636
Mezzi
Sir, Yes Sir! <o/
Posté le 20-02-2008 à 22:04:30  profilanswer
 

Merci pr le calculateur :jap:


---------------
Besoin d'aide sur Dynasty Warriors 4 et 5 ?  | Besoin d'aide pour UberTristram -> GaTu [:khel:1]  
Trade liste SCL4 | 23/06/07Lv99 {Mezzi-Memories} scl3 | Lv97 {Mezzi-Kishi} scl4 | May² FaQ
ForgeRun scl, c'est ici | IWYFS-Memorial | 1erPost: Tahar, Luto, Bibs, Moi | [en pause de DII]
n°4764638
benoit21
vive le stade toulousain
Posté le 20-02-2008 à 22:49:36  profilanswer
 

Citation :

@benoit : euh, c'est de l'anglais, là  Je te remet le lien pour pas qu'il y ai de malentendu : http://diablo2.ingame.de/tips/calc [...] nglish.php


je parlais pour les explications^^


---------------
[:blackhawk:5][:yatoub:1]ma trade list:http: vive le rugby :)[:yodaman:2]
n°4764657
leech_1985
Mythos Alpha Testeur :D
Posté le 21-02-2008 à 09:04:38  profilanswer
 

benoit21 a écrit :

Citation :

@benoit : euh, c'est de l'anglais, là  Je te remet le lien pour pas qu'il y ai de malentendu : http://diablo2.ingame.de/tips/calc [...] nglish.php


je parlais pour les explications^^

 

http://diablo2.ingame.de/tips/calc [...] nglish.php ?

 

Si tu parles de la théorie, oui elle est en allemand, mais pour se servir du calculateur nul besoin (et heureusement) de comprendre la théorie derrière tout ça.


Message édité par leech_1985 le 21-02-2008 à 09:05:18

---------------
A Blizzard game is never late. Nor is it early. It arrives precisely when it means to.
Et vous saurez TOUT, TOUT sur diablo II - B.NET : leech3
La censure a frappé, non sans cordialité.
n°4764703
Myrdinn
ollydebugger
Posté le 22-02-2008 à 08:53:30  profilanswer
 

D'autant que la théorie, ce n'est qu'un post récapitulatif de travaux trouvés ça et la sur les sites dédiés diablo. Même s'il est plutôt bien fait, tu peux trouver les infos à des tas d'autres endroits en anglais et en français.
Au passage ce n'est pas très sympa de sa part de ne pas avoir cité ces sources, surtout quand on sait le travail énorme qu'à fait Hammerman sur ce forum allemand (et ailleurs) et sur ces sujets en particulier.


---------------
Le savoir ne vaut que s'il est partagé :Lien vers les posts techniques Diablo2/LOD
n°4764713
Kyjja
Forrest-ssin
Posté le 22-02-2008 à 13:56:36  profilanswer
 
n°4764715
Myrdinn
ollydebugger
Posté le 22-02-2008 à 16:25:43  profilanswer
 

Non,
Je n'ai pas regardé la nouvelle version, tout ce que je peux dire c'est que je n'étais pas 100% d'accord sur les anciennes versions.  
Néanmoins cela reste un très bon calculateur et probablement le meilleur dispo.


---------------
Le savoir ne vaut que s'il est partagé :Lien vers les posts techniques Diablo2/LOD
n°4764716
Garlyc
toshoper !
Posté le 22-02-2008 à 16:30:37  profilanswer
 

Les paliers de bomb pour les ama sont enfin les bons!
 
:p


---------------
Quand 900 ans tu auras, comme moi, moins en forme tu seras!
[:garlyc 1er:1][:garlyc 1er:2][:garlyc 1er:4][:garlyc 1er:6]
 TRADE LIST DES PNJ SCL   [:garlyc]   Les Mercos / M’avina / Les Skills ama / Les Armes Soso / Les Soso Orbe-Foudre.
 
n°4764718
rygar
Don't cube your mum , geek !
Posté le 22-02-2008 à 17:25:43  profilanswer
 

Pour frénésie l'ias de l'arme de la main gauche n'est toujours pas prise en compte alors qu'elle intervient , enfin le fonctionnement de frénésie reste assez flou ...


Message édité par rygar le 22-02-2008 à 17:26:08

---------------
Guide frénétique pour débutants
Pour le fun : smiter anti-uber sans life tap ^^
Pour les nostalgiques de diablo 1 : La roguezone ^^
n°4764728
Mezzi
Sir, Yes Sir! <o/
Posté le 22-02-2008 à 20:33:36  profilanswer
 

Manque aussi un 'detail' de l'ias,
 
Là ya que tes tranches 5 par 5, alors qu'avec grief, on tombe pas tjrs sur une 30-35-40 ^^


---------------
Besoin d'aide sur Dynasty Warriors 4 et 5 ?  | Besoin d'aide pour UberTristram -> GaTu [:khel:1]  
Trade liste SCL4 | 23/06/07Lv99 {Mezzi-Memories} scl3 | Lv97 {Mezzi-Kishi} scl4 | May² FaQ
ForgeRun scl, c'est ici | IWYFS-Memorial | 1erPost: Tahar, Luto, Bibs, Moi | [en pause de DII]
n°4764731
leech_1985
Mythos Alpha Testeur :D
Posté le 22-02-2008 à 20:39:43  profilanswer
 

Myrdinn, il me semble que plusieurs sources sont évoquées au fur et à mesure du texte, sans liens néanmoins.  
 
@rygar: cela fait plusieurs mois que frenzy n'a plus aucun mystère pour la communauté allemande tout du moins :
 
il y a deux formules pour le calcul du WSM (weaponspeedmodifier, en gros la vitesse de base de l'arme)
 
Si l'arme principale (celle équipée en premier) est dans le slot de droite :
WSMtotale = ( WSMgauche + WSMdroite)/2 + WSMdroite - WSMgauche
 
Si l'arme principale est dans le slot de gauche (standard) :
 
on fait la moyenne des deux.  
 
Le calculateur prend tout cela en compte, c'est meme pour cela que il y a les cases à chocher pour "left weapon slot". Il s'agit de savoir si larme principale (primary weapon) est dans le slot de gauche ou celui de droite. Sachant que diablo prend automatiquement celui de gauche quand tu débutes un jeu/rammasses ton corps/changes de slot.
 
 
exemple : primary = phase blade dans le slot de gauche, secondary = cleaver

Code :
  1. Data
  2. Character: Barbarian
  3. Primary Weapon: Phaseblade
  4. Secondary Weapon: Cleaver
  5. Skill: Frenzy
  6. IAS: 0
  7. Weapon-IAS: 0 / 0
  8. IAS attack speed [ticks] attacks per second
  9. 0 11 2.27
  10. 3 10.5 2.38
  11. 7 10 2.5
  12. 11 9.5 2.63
  13. 18 9 2.77
  14. 24 8.5 2.94
  15. 35 8 3.12
  16. 48 7.5 3.33
  17. 65 7 3.57
  18. 89 6.5 3.84
  19. 129 6 4.16
  20. 200 5.5 4.54
  21. 377 5 5


 
Primary = phaseblade dans le slot de droite!; secundary = cleaver

Code :
  1. Data:
  2. Character: Barbarian
  3. Primary Weapon: Phaseblade
  4. Secondary Weapon: Cleaver
  5. Skill: Frenzy
  6. IAS: 0
  7. Weapon-IAS: 0 / 0
  8. IAS attack speed [ticks] attacks per second
  9. 0 7.5 3.33
  10. 3 7 3.57
  11. 13 6.5 3.84
  12. 27 6 4.16
  13. 50 5.5 4.54
  14. 89 5 5


 
 
Comme tu peux le voir c'est pas du tout le même résultat.  
 
 
 
 
@Mezzy : la box "change intervals" permet de remédier à ce problème ;)
 


---------------
A Blizzard game is never late. Nor is it early. It arrives precisely when it means to.
Et vous saurez TOUT, TOUT sur diablo II - B.NET : leech3
La censure a frappé, non sans cordialité.
n°4764732
Mezzi
Sir, Yes Sir! <o/
Posté le 22-02-2008 à 20:48:23  profilanswer
 

leech_1985 a écrit :


@Mezzy : la box "change intervals" permet de remédier à ce problème ;)
 


 
:jap: Merci, je ne l'avais pas vu :)


---------------
Besoin d'aide sur Dynasty Warriors 4 et 5 ?  | Besoin d'aide pour UberTristram -> GaTu [:khel:1]  
Trade liste SCL4 | 23/06/07Lv99 {Mezzi-Memories} scl3 | Lv97 {Mezzi-Kishi} scl4 | May² FaQ
ForgeRun scl, c'est ici | IWYFS-Memorial | 1erPost: Tahar, Luto, Bibs, Moi | [en pause de DII]
n°4764733
rygar
Don't cube your mum , geek !
Posté le 22-02-2008 à 23:03:06  profilanswer
 

@ leech_1985 : Intéressant ce truc , mais dur à exploiter in game malheureusement , car dès que tu switch sur ton équipement secondaire et que tu reviens , l'arme dans le slot de gauche est considérée comme équipée en premier , c'qui t'obligerait à la déséquiper/rééquiper à chaque fois que tu switch  , les devs de chez blizzard ont vraiment l'esprit tordu ^^
 
Sinon moi je parlais de l'ias que tu rajoutes sur l'arme ou l'équipement : le calculateur ne prend en compte que l'ias sur l'arme principale , or l'ias sur l'autre arme  aussi est prise en compte , de ce fait l'ias sur le reste de l'équipement n'a pas le même effet  car il s'applique aux deux armes . Donc tu tapes plus vite avec 120 ias sur le stuff et deux armes sans ias qu'avec une arme à 120 ias et rien ailleurs  :ack:
 


---------------
Guide frénétique pour débutants
Pour le fun : smiter anti-uber sans life tap ^^
Pour les nostalgiques de diablo 1 : La roguezone ^^
n°4764734
leech_1985
Mythos Alpha Testeur :D
Posté le 22-02-2008 à 23:07:24  profilanswer
 

rygar a écrit :

or l'ias sur l'autre arme  aussi est prise en compte ,

 


 


euh. attends je vérifie mais il me semble que non.

 

€ : effectivement, absolument pas. Oublie l'ias de la deuxieme arme. Il n'y a que l'attaque standard qui prend en contre l'ias de l'arme secondaire.

 

sinon :

 
rygar a écrit :

@ leech_1985 : Intéressant ce truc , mais dur à exploiter in game malheureusement , car dès que tu switch sur ton équipement secondaire et que tu reviens , l'arme dans le slot de gauche est considérée comme équipée en premier , c'qui t'obligerait à la déséquiper/rééquiper à chaque fois que tu switch  , les devs de chez blizzard ont vraiment l'esprit tordu ^^

 


 

Ouais, mais étant donné que tu peux du coup accélérer un "couple" composé d'une arme ULTRA LENTE qui fait beaucoup de dégats assortie à une arme très rapide (phaseblade quoi) pour avoir au final un WSM finalement supérieur à celui du couple rapide+rapide (le comble), ca vaut parfois le coup ;) C'est pa trop dure de faire un double clic à chaque switch, une habitude qui se prend vite, c'st un peu comme remttre l'arme du merco pour que l'aura s'active.

 

pppps: cette astuce permet notamment d'accélèrer à une vitesse convenable le marteau de schaefer, qui à la base n'est pas un foudre de guerre avec ses -20 de WSM (ou +20, ca dépend dans quel sens on compte).


Message édité par leech_1985 le 22-02-2008 à 23:21:54

---------------
A Blizzard game is never late. Nor is it early. It arrives precisely when it means to.
Et vous saurez TOUT, TOUT sur diablo II - B.NET : leech3
La censure a frappé, non sans cordialité.
n°4764735
rygar
Don't cube your mum , geek !
Posté le 22-02-2008 à 23:41:13  profilanswer
 

Pour l'ias j'ai fait plein de tests avec hero et j'te garanti que l'ias de la deuxième arme est pris en compte ,  mais le truc chelou c'est que la différence ne se fait que si tu tapes les monstres , si tu déclenches frénésie et que tu tapes dans le vide en bloquant le perso , tu tapes a la même vitesse :ack: ,  c'est pour ça que ça reste encore assez flou pour moi ...
 
Pour le truc du wsm , ça fait quand même un peu "bonus caché" vu le gain énorme apporté et la manoeuvre pour le faire  :lol:


---------------
Guide frénétique pour débutants
Pour le fun : smiter anti-uber sans life tap ^^
Pour les nostalgiques de diablo 1 : La roguezone ^^
n°4764736
Kyjja
Forrest-ssin
Posté le 22-02-2008 à 23:47:30  profilanswer
 
n°4764737
rygar
Don't cube your mum , geek !
Posté le 23-02-2008 à 00:05:04  profilanswer
 

A mon avis myrdinn va s'auto-invoquer :D


---------------
Guide frénétique pour débutants
Pour le fun : smiter anti-uber sans life tap ^^
Pour les nostalgiques de diablo 1 : La roguezone ^^
n°4764742
leech_1985
Mythos Alpha Testeur :D
Posté le 23-02-2008 à 05:30:58  profilanswer
 

Well enjoy . Mais perso j'y comprends nawak.

 

Sinon il y a ca aussi : http://www.theamazonbasin.com/d2/f [...] opic=54813

 

Mais ces deux threads ne tiennent pas compte des méthodes de calcul de WSM, par contre il y est bien précisé que l'ias de la seconde arme n'a pas effet.


Message édité par leech_1985 le 23-02-2008 à 05:39:17

---------------
A Blizzard game is never late. Nor is it early. It arrives precisely when it means to.
Et vous saurez TOUT, TOUT sur diablo II - B.NET : leech3
La censure a frappé, non sans cordialité.
n°4764753
rygar
Don't cube your mum , geek !
Posté le 23-02-2008 à 14:12:56  profilanswer
 

Ces topics remontent à la 1.10 où effectivement seul l'ias de l'arme principale était prise en compte , mais Myrdinn émettait l'hyppotèse de changements en 1.11 dans ce topic http://forum.judgehype.com/judgehy [...] 0213_1.htm
c'est pour ça que j'avais fait des tests , mais ça reste approximatif .


---------------
Guide frénétique pour débutants
Pour le fun : smiter anti-uber sans life tap ^^
Pour les nostalgiques de diablo 1 : La roguezone ^^
n°4764755
leech_1985
Mythos Alpha Testeur :D
Posté le 23-02-2008 à 14:50:36  profilanswer
 

d'accord.  
 
à vérifier effectivement.


---------------
A Blizzard game is never late. Nor is it early. It arrives precisely when it means to.
Et vous saurez TOUT, TOUT sur diablo II - B.NET : leech3
La censure a frappé, non sans cordialité.
n°4765266
Myrdinn
ollydebugger
Posté le 08-03-2008 à 16:58:10  profilanswer
 

Ce que je peux dire sur la 1.11 c'est que la routine des combats à 2 armes alterne l'IAS des 2 armes.
En fait il reprend ce qui a été utilisé depuis longtemps par Trombe, c'est à dire à chaque attaque valide il switch les 2 armes. Attention pour de multiples raisons (plus de cibles ...) il repasse à la main principale. Du coup celle-ci est plus utilisée
Par contre je ne peux pas confirmer que cela fonctionne pour toutes les attaques à 2 mains.
 
JE m'explique
 
Le jeu ne gère pas spécialement l'IAS pour l'attaque à 2 mains, il prend le même IAS que pour les attaques à 1 main. Bref à moins que ce ne soit géré spécifiquement par l'attaque c'est l'arme principale qui compte (1.10) l'arme en cours en 1.11
 
La preuve en assembleur (très rapide pour que quelqu'un puisse reprendre sans partir de rien) C'est du 1.10 mais la même séquence se retourve en 1.11 (cela m'évite de coller mes commentaires d'une séquence d'assembleur à une autre et en 1.11 une partie des calculs est externalisée dans des routines de D2Common.dll rendant le suivi beaucoup plus compliqué)
Attention ce sont mes notes brutes peu détaillées avec des interrogations pour lesquelles je n'ai pas toujours la réponse.
 

Code :
  1. 0097F61C 8B5424 14 MOV EDX,DWORD PTR SS:[ESP+14]
  2. 0097F620 81FA 9A010000 CMP EDX,19A
  3. 0097F626 8D1480 LEA EDX,DWORD PTR DS:[EAX+EAX*4]
  4. 0097F629 7D 09 JGE SHORT D2Common.0097F634
  5. 0097F62B 8D1495 B82D9900 LEA EDX,DWORD PTR DS:[EDX*4+992DB8]
  6. 0097F632 EB 13 JMP SHORT D2Common.0097F647
  7. 0097F634 8D1495 F82E9900 LEA EDX,DWORD PTR DS:[EDX*4+992EF8]
  8. 0097F63B EB 0A JMP SHORT D2Common.0097F647
  9. 0097F63D 8D1480 LEA EDX,DWORD PTR DS:[EAX+EAX*4]
  10. 0097F640 8D1495 282C9900 LEA EDX,DWORD PTR DS:[EDX*4+992C28]
  11. 0097F647 8B72 0C MOV ESI,DWORD PTR DS:[EDX+C]
  12. 0097F64A 85F6 TEST ESI,ESI
  13. 0097F64C 75 4D JNZ SHORT D2Common.0097F69B
  14. 0097F64E 8B72 08 MOV ESI,DWORD PTR DS:[EDX+8]
  15. 0097F651 85F6 TEST ESI,ESI
  16. 0097F653 0F84 C5010000 JE D2Common.0097F81E
  17. 0097F659 8B8D A8000000 MOV ECX,DWORD PTR SS:[EBP+A8]
  18. 0097F65F E8 CC08FFFF CALL D2Common.0096FF30
  19. 0097F664 85C0 TEST EAX,EAX
  20. 0097F666 0F84 AA010000 JE D2Common.0097F816
  21. 0097F66C 68 F40B0000 PUSH 0BF4
  22. 0097F671 68 F45C9A00 PUSH D2Common.009A5CF4 ; ASCII "C:projectsD2headDiablo2SourceD2CommonUNITSUnits.cpp"
  23. 0097F676 50 PUSH EAX
  24. 0097F677 E8 4414FFFF CALL D2Common.#10963
  25. 0097F67C 8BC8 MOV ECX,EAX
  26. 0097F67E E8 BDE9FDFF CALL D2Common.0095E040
  27. 0097F683 8B15 80E09800 MOV EDX,DWORD PTR DS:[<&Fog.gdwBitMasks>>; Fog.gdwBitMasks
  28. 0097F689 33C9 XOR ECX,ECX
  29. 0097F68B 8A48 06 MOV CL,BYTE PTR DS:[EAX+6]
  30. 0097F68E 234A 0C AND ECX,DWORD PTR DS:[EDX+C]
  31. 0097F691 894C24 2C MOV DWORD PTR SS:[ESP+2C],ECX
  32. 0097F695 0F84 7B010000 JE D2Common.0097F816


J'ai laissé le début de la routine pour que vous puissiez la retrouver en 1.11 (L'assertion avec l'Unit.cpp se trouve en 6FDAF377 en 1.11)
 

Code :
  1. 0097F69B 6A 01 PUSH 1
  2. 0097F69D 55 PUSH EBP
  3. 0097F69E E8 0D270000 CALL D2Common.#10440
  4. Player or Shadow(Master/Warrior) --> Do Something
  5. A voir Absolument probablement lié à la vitesse du jeu


Très intéressant . Une propriété spécifique aux joueurs et Shadow de l'assassin qui à ma connaissance n'est décrite par personne. Malheureusement je ne sais pas ce que cela fait :lol:
 
 

Code :
  1. 0097F6A3 6A 00 PUSH 0
  2. 0097F6A5 6A 5D PUSH 5D
  3. 0097F6A7 55 PUSH EBP
  4. 0097F6A8 E8 8387FFFF CALL D2Common.#10520
  5. 0097F6AD 8BF8 MOV EDI,EAX
  6. EDI = ITEM_FastAttackrate


IAS en bon franglais.
Au passage, la preuve que le jeu ne regarde pas s'il y a 1 ou 2 mains, (on verra que cela viendra plus tard) C'est l'IAS lu betement dans les caractéristiques du joueur (Donc avec l'arme principale et pas la secondaire, et d'apèrs moi et mes traces arme en cours en 1.11)  
 

Code :
  1. 0097F6AF 85FF TEST EDI,EDI
  2. 0097F6B1 74 11 JE SHORT D2Common.0097F6C4
  3. 0097F6B3 8D047F LEA EAX,DWORD PTR DS:[EDI+EDI*2]
  4. 0097F6B6 83C7 78 ADD EDI,78
  5. 0097F6B9 8D0480 LEA EAX,DWORD PTR DS:[EAX+EAX*4]
  6. 0097F6BC C1E0 03 SHL EAX,3
  7. 0097F6BF 99 CDQ
  8. 0097F6C0 F7FF IDIV EDI
  9. 0097F6C2 8BF8 MOV EDI,EAX
  10. Si IAS>0 Then
  11. EDI=(120*IAS)/(IAS+120)


Archi connu, je le laisse pour prouver que l'on est bien en train de gérer l'attaque speed.
 

Code :
  1. 0097F6C4 6A 00 PUSH 0
  2. 0097F6C6 6A 44 PUSH 44
  3. 0097F6C8 55 PUSH EBP
  4. 0097F6C9 E8 6285FFFF CALL D2Common.#10519
  5. EAX=AttackRate
  6. Pour Monstre=0x64 = 100% Pourcentage de vitesse actuel
  7. Peut être 100+WeaponSpeed???
  8. A voir avec Scimitar Colonne Speed=-20
  9. OK= 100-WSM= 120 (0x78) pour mon amazone ;)


Je laisse mes notes de l'époque même si ce ne sont plus des interrogations pour moi :)
Au passage une amazone et un scimitar, j'avais pas grand chose pour tester :lol:
 
 

Code :
  1. 0097F6CE 8B4D 04 MOV ECX,DWORD PTR SS:[EBP+4]
  2. PtUnit+4 = ClassID
  3. 0097F6D1 8BF0 MOV ESI,EAX
  4. 0097F6D3 8B45 00 MOV EAX,DWORD PTR SS:[EBP]
  5. 0097F6D6 03F7 ADD ESI,EDI
  6. ESI=AttackRate+(120*IAS)/(IAS+120)
  7. 0097F6D8 83E8 00 SUB EAX,0
  8. 0097F6DB 74 36 JE SHORT D2Common.0097F713
  9. 0097F6DD 48 DEC EAX
  10. 0097F6DE 0F85 A5000000 JNZ D2Common.0097F789
  11. Check Player ou Monster
  12. Player --> F713
  13. Aucun --> F789
  14. Monster --> F6E4
  15. 0097F6E4 85C9 TEST ECX,ECX
  16. 0097F6E6 0F8C 9D000000 JL D2Common.0097F789
  17. ClassID Nul --> F789
  18. 0097F6EC A1 206A9900 MOV EAX,DWORD PTR DS:[sgptDataTables]
  19. 0097F6F1 3B88 800A0000 CMP ECX,DWORD PTR DS:[EAX+A80]
  20. Table= Limite des fichiers
  21. Compare ClassID Vs Table A80 =2C0=Taille Max de Monstats.bin
  22. 0097F6F7 0F8D 8C000000 JGE D2Common.0097F789
  23. 0097F6FD 81F9 A1010000 CMP ECX,1A1
  24. 0097F703 0F8C 80000000 JL D2Common.0097F789
  25. 0097F709 81F9 A2010000 CMP ECX,1A2
  26. 0097F70F 7E 0C JLE SHORT D2Common.0097F71D
  27. 0097F711 EB 76 JMP SHORT D2Common.0097F789
  28. ClassID Invalid ou Shadow MAster or Warrior ????
  29. Si oui alors Jump F71D
  30. Sinon Monstre Classique Suite en F789


Toute une partie pour gérer suivant les cas.
Les monstres et joueurs n'ont pas les même routines
Nos amis shadow sont toujours aussi étranges seuls "monstre" à utiliser 2 armes ?
 
 
Voici la routine pour les utilisateurs de 2 armes  
 

Code :
  1. 0097F713 83E9 04 SUB ECX,4
  2. 0097F716 74 05 JE SHORT D2Common.0097F71D
  3. 0097F718 83E9 02 SUB ECX,2
  4. 0097F71B 75 6C JNZ SHORT D2Common.0097F789


Is Player Barbarian or Assassin ? si oui alors F71D
OK ici => Barbare, Assassin et Shadow (Master and Warrior)
Bref Gestion des 2 Mains  
Sinon --> F789 (Monstres et autres classes)

Code :
  1. 0097F71D 8B5D 60 MOV EBX,DWORD PTR SS:[EBP+60]
  2. 0097F720 6A 04 PUSH 4
  3. 0097F722 53 PUSH EBX
  4. 0097F723 E8 B803FDFF CALL D2Common.#10257
  5. Item Main Droite
  6. 0097F728 8BF8 MOV EDI,EAX
  7. 0097F72A 57 PUSH EDI
  8. 0097F72B E8 F006FEFF CALL D2Common.#10839
  9. 0097F730 85C0 TEST EAX,EAX
  10. 0097F732 75 02 JNZ SHORT D2Common.0097F736
  11. 0097F734 33FF XOR EDI,EDI
  12. 0097F736 6A 05 PUSH 5
  13. 0097F738 53 PUSH EBX
  14. 0097F739 E8 A203FDFF CALL D2Common.#10257
  15. Item Main Gauche
  16. 0097F73E 8BD8 MOV EBX,EAX
  17. 0097F740 53 PUSH EBX
  18. 0097F741 E8 DA06FEFF CALL D2Common.#10839
  19. 0097F746 85C0 TEST EAX,EAX
  20. 0097F748 75 02 JNZ SHORT D2Common.0097F74C
  21. 0097F74A 33DB XOR EBX,EBX
  22. 0097F74C 6A 2D PUSH 2D
  23. 0097F74E 57 PUSH EDI
  24. 0097F74F E8 8CE5FDFF CALL D2Common.#10731
  25. 0097F754 85C0 TEST EAX,EAX
  26. 0097F756 74 2D JE SHORT D2Common.0097F785
  27. 0097F758 6A 2D PUSH 2D
  28. 0097F75A 53 PUSH EBX
  29. 0097F75B E8 80E5FDFF CALL D2Common.#10731
  30. Regarde si arme de mélée
  31. 0097F760 85C0 TEST EAX,EAX
  32. 0097F762 74 21 JE SHORT D2Common.0097F785
  33. 0097F764 6A 00 PUSH 0
  34. 0097F766 6A 44 PUSH 44
  35. 0097F768 57 PUSH EDI
  36. 0097F769 E8 C284FFFF CALL D2Common.#10519
  37. 0097F76E 6A 00 PUSH 0
  38. 0097F770 6A 44 PUSH 44
  39. 0097F772 53 PUSH EBX
  40. 0097F773 8BF8 MOV EDI,EAX
  41. 0097F775 E8 B684FFFF CALL D2Common.#10519
  42. AttackRAte des 2 armes aka WSM
  43. 0097F77A 03C7 ADD EAX,EDI
  44. 0097F77C 99 CDQ
  45. 0097F77D 2BC2 SUB EAX,EDX
  46. 0097F77F D1F8 SAR EAX,1
  47. 0097F781 2BC7 SUB EAX,EDI
  48. 0097F783 03F0 ADD ESI,EAX
  49. 0097F785 8B5C24 18 MOV EBX,DWORD PTR SS:[ESP+18]


 
Qui fini au traditionnel
 
EAX:EDX = (WSM des 2 armes - WSM(main gauche))/2 - WSM(main droite)
ESI= 100+EIAS+Moyenne des WSM
 
 
Suite Commune à tout le monde (implique fin du traitement des 2 mains)

Code :
  1. 0097F789 837D 00 00 CMP DWORD PTR SS:[EBP],0
  2. 0097F78D 75 09 JNZ SHORT D2Common.0097F798
  3. Player ? --> NonF798
  4. 0097F78F 837D 10 12 CMP DWORD PTR SS:[EBP+10],12
  5. 0097F793 75 03 JNZ SHORT D2Common.0097F798
  6. 0097F795 83EE 1E SUB ESI,1E
  7. OK Player Only MODE=0x12 =Séquence? Même Token que GetHit(GH)
  8. Si Oui alors retirer 0x1E (30)
  9. On arrive toujours ICI AVEC ESI=AnimAccelerator=100+WSM+EAIS


 
Le coup de l'animation sequence, c'est justement pour les attaques du type frenzy. Dans ce cas on retire 30 (Ca aussi c'est déjà connu)
 
 
Bref pour ne pas trop vous embrouiller.
On calcule l'IAS de la même façon pour toutes les attaques qui utilisent la routine classique.
Pour les attaques à 2 mains on fait un mix des WSM (d'ailleurs j'ai l'impression que je ne suis pas d'accord avec tout le monde sur le coup des mains gauches et mains droites ??? A revérifier)
Ensuite on retourne pour une gestion commune.
 
Bref rien qui ne laisse penser à un mix des IAS des 2 armes ici. C'est l'IAS d'une seule arme, reste à svaoir laquelle et dans quelle condition.  
 
 
P.S. j'oubliais ma traditionnelle remarque sur les calculateurs du net. Il manque la moitié de l'information et donc des palliers possibles. Ce n'est pas très important en général sauf en duel ou un avantage est toujours bon à prendre


Message édité par Myrdinn le 08-03-2008 à 17:05:37

---------------
Le savoir ne vaut que s'il est partagé :Lien vers les posts techniques Diablo2/LOD
n°4765366
rygar
Don't cube your mum , geek !
Posté le 12-03-2008 à 17:59:27  profilanswer
 

Donc si j'ai bien compris , l'ias prise en compte pour frénésie et son application reste une énigme pour la science ^^


---------------
Guide frénétique pour débutants
Pour le fun : smiter anti-uber sans life tap ^^
Pour les nostalgiques de diablo 1 : La roguezone ^^

Aller à :
Ajouter une réponse