-----------------------------------------------------------------------
E) Chance To Block
-----------------------------------------------------------------------
04B00CC0 33C9 XOR ECX,ECX
ECX=0
04B00CC2 8A48 49 MOV CL,BYTE PTR DS:[EAX+49]
ECX= Colonne AF Block Factor
Valeurs de BlockFactor Extraites de CharStats.txt
Ama=19 (25)
sor=14 (20)
Nec=14
Pal=1E (30)
BAR=19
Dru=14
Ass=19
04B00CC5 8B4424 14 MOV EAX,DWORD PTR SS:[ESP+14]
EAX=GAme Version LOD=1 D2c=0
04B00CC9 03E9 ADD EBP,ECX
EBP=ToBlock + Block Factor (+Blocking Bonus inclus dans Toblock)
04B00CCB 85C0 TEST EAX,EAX
04B00CCD 74 2F JE SHORT D2Common.04B00CFE
D2C --> Jump E1
ICI LOD
04B00CCF 6A 00 PUSH 0
04B00CD1 6A 02 PUSH 2
04B00CD3 56 PUSH ESI
04B00CD4 E8 576FFFFF CALL D2Common.#10519
04B00CD9 6A 00 PUSH 0
04B00CDB 6A 0C PUSH 0C
04B00CDD 56 PUSH ESI
04B00CDE 8BF8 MOV EDI,EAX
04B00CE0 E8 4B6FFFFF CALL D2Common.#10519
04B00CE5 8BC8 MOV ECX,EAX
EDI=Dextérité
ECX=CLEVEL
04B00CE7 83F9 01 CMP ECX,1
04B00CEA 7F 05 JG SHORT D2Common.04B00CF1
Compare CLVL avec 1
04B00CEC B9 01000000 MOV ECX,1
Si CLVL<1 alors CLVL=1
04B00CF1 8D47 F1 LEA EAX,DWORD PTR DS:[EDI-F]
EAX=Dextérité-F(15 en décimal)
04B00CF4 03C9 ADD ECX,ECX
ECX=CLVL+CLVL=2*CLVL
04B00CF6 0FAFC5 IMUL EAX,EBP
EAX= (ToBlock+BlockFactor+blocking Bonus)*(Dextérité-15)
04B00CF9 99 CDQ
04B00CFA F7F9 IDIV ECX
04B00CFC 8BE8 MOV EBP,EAX
EBP=Chance ToBlock
LOD EBP=((ToBlock+BlockFactor+Blocking bonus)*(Dextérité-15))/(2*CLVL)
-----------------------------------------------------------------------
E1)CAP 0 75% pour les joueurs
-----------------------------------------------------------------------
Arrivé de D2C avec EBP=(ToBlock+BlockFactor+blocking Bonus)
04B00CFE 83FD 4B CMP EBP,4B
04B00D01 7D 08 JGE SHORT D2Common.04B00D0B
CAP à 75%
-----------------------------------------------------------------------
B) End of Fn
-----------------------------------------------------------------------
04B00D03 5F POP EDI
04B00D04 8BC5 MOV EAX,EBP
04B00D06 5E POP ESI
04B00D07 5D POP EBP
04B00D08 C2 0800 RETN 8