Code:
#IF=%FirstTime,;
UseSpeed=1;
#SetArray1=Enter all skill IDs you wanna blacklist from animation modes/n/nExample:/n3194,2912,7212,8172;
#SetVar1=Which Animation you wanna use/n/n(1) = NoAnimation/n(2) = Custom Animation/n(3) = Enhanced Animation;
_SetVar6=999999;
#EXECUTE=FirstSetup;
WaitForResponse=Be sure you've turned off any animation mode at the overlay before you use this Script./n/nTo end the script write "stop anim" at the chat bar;
#DisableScrolling
Command=;
#ENDIF
#DO=999999999;
_IFMemPtrRead=%PlayerBase,%OffsetData/0x18C8,DWORD,%ARRAY1;
#EXECUTE=ApplyDefaultAnimation;
#ELSE
#EXECUTE=ApplyAnimation;
#ENDIF
_UNTILMemPtrRead=%AddrChat,0x510/0x370/0x0,WCHAR[32],=stop anim;
start_ApplyDefaultAnimation;
_MemReadVar=%AddrAtkspeed,WORD,3;
MemPtrWrite=%PlayerBase,%OffsetAnim,%Var3,WORD;
end_ApplyDefaultAnimation;
start_ApplyAnimation;
MemWrite=%AddrFreeMem1,%Var1,BYTE;
_IFMemRead=%AddrFreeMem1,BYTE,=1; No Animation
_IFMemPtrRead=%PlayerBase,0x1D0,CHAR[6],=Player; <-- checks if client is not in loading screen to prevent crashes
MemPtrWrite=%PlayerBase,%OffsetAnim,1,WORD;
#ENDIF
_IFMemRead=%AddrFreeMem1,BYTE,=2; Custom Animation
_IFMemPtrRead=%PlayerBase,0x1D0,CHAR[6],=Player; <-- checks if client is not in loading screen to prevent crashes
MemPtrWrite=%PlayerBase,%OffsetAnim,%Var2,WORD;
#ENDIF
_IFMemRead=%AddrFreeMem1,BYTE,=3; Enhanced Animation
_MemReadVar=%AddrAtkspeed,WORD,3; <-- Reads normal attackspeed
_Calc4=%Var3-%Var2; <-- Substracts the enhanced value with our attackspeed
_IFMemPtrRead=%PlayerBase,0x1D0,CHAR[6],=Player; <-- checks if client is not in loading screen to prevent crashes
MemPtrWrite=%PlayerBase,%OffsetAnim,%Var4,WORD;
#ENDIF
end_ApplyAnimation;
start_FirstSetup;
MemWrite=%AddrFreeMem1,%Var1,BYTE;
_IFMemRead=%AddrFreeMem1,BYTE,=2; Custom Animation
#SetVar2=Enter the Animation value you want at Custom Animation/nExample: 250/n/nEnter 0 for the recommend value;
#ENDIF
_IFMemRead=%AddrFreeMem1,BYTE,=3; Enhanced Animation
#SetVar2=Enter the Animation value you want at Enhanced Animation/nExample: 535/n/nEnter 0 for the recommend value;
#ENDIF
MemWrite=%AddrFreeMem2,%Var2,BYTE;
_IFMemRead=%AddrFreeMem2,BYTE,=0; Recommend
#EXECUTE=Recommend;
#ENDIF
end_FirstSetup;
start_Recommend;
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=0; Warrior
_SetVar1=3;
_SetVar2=335;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=1; Gladiator
_SetVar1=3;
_SetVar2=635;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=2; Templar
_SetVar1=3;
_SetVar2=635;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=3; Scout
_SetVar1=3;
_SetVar2=535;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=4; Assassin
_SetVar1=2;
_SetVar2=275;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=5; Ranger
_SetVar1=3;
_SetVar2=575;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=6; Mage
_SetVar1=3;
_SetVar2=500;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=7; Sorcerer
_SetVar1=2;
_SetVar2=650;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=8; Spiritmaster
_SetVar1=2;
_SetVar2=650;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=9; Priest
_SetVar1=3;
_SetVar2=500;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=10; Cleric
_SetVar1=3;
_SetVar2=725;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=11; Chanter
_SetVar1=3;
_SetVar2=535;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=12; Technist
_SetVar1=3;
_SetVar2=500;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=13; Aethertech
_SetVar1=3;
_SetVar2=535;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=14; Gunslinger
_SetVar1=2;
_SetVar2=275;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=15; Muse
_SetVar1=3;
_SetVar2=500;
#ENDIF
_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=16; Songweaver
_SetVar1=2;
_SetVar2=350;
#ENDIF
end_Recommend;
The idea behind the script is that you turn the modified animation off at certain skills where you usually get delays at
You get those skill IDs by checked "Show IDs" at the Script Editor and hover above the skill you want the ID from