Para's Script Library

11/19/2018 15:56 Diavolakos#2131
Quote:
Originally Posted by mezorr View Post
paraly mm i think you can make some script for search shugo in primeth forge because dont need kill any mob only for search dont kill


map shugo:

[Only registered and activated users can see links. Click Here To Register...]
I'd also like to have something like a wall walk through instances moving around until it sees the message of the shugo and then stop, in this case we should bring our main to claim the daevanion skill.

And also a complete set of maps of the spots shugo might spawn would be awesome.

Another thing I would like to see if it is possible is to "see" when we get the cubic entry shugo in Lakrum. I see the system message in my chat doesn't write it, it only appears in front of our eyes. I am working on my computer and I have my main char logged and throw an eye here and there hoping to see if the cubic entrance spawned, it would be awesome if I could simply forget about it until vanilla notifies me that it just spawned with a notification and a sound.

There must be a way for this message to be detected.
11/20/2018 11:52 FaCaDa_BRA#2132
Para! Mirash Refuge ver. 1.02, in all rounds, not taking the loot from the Boss box.
:(
11/20/2018 18:16 Paraly#2133
fixed :)

________________________


This is probably the most complicated script I've ever done, like yesterday where I posted the Animation alternative [Only registered and activated users can see links. Click Here To Register...], this script also uses assembly to get a better Eye Secure mode which completely prevents targeting hidden players, it's very very fast.

Classes who don't have any Eye skill just execute this script once and it ends after 1 second the code is then injected into Aion and you can close the Script Editor, it will work till you restart Aion.

At classes who have Eye skills the script will keep running since it needs to check when you use eye buffs

Note: Make sure all Eye options are disabled at the Overlay

Code:
#IF=%FirstTime,;
RequireVersion=5.95;
UseSpeed=1;
#DisableScrolling
#EXECUTE=DeclareMemory;
#EXECUTE=CheckClass;
#ENDIF

#IF=%Var[ValidClass],=1;
#EXECUTE=RunTime;
#ELSE
#EXECUTE=SingleTime;
#ENDIF




start_RunTime;

_IFMemRead=%AddrFreeMem30,DWORD,=2560068424;
#EXECUTE=WaitForBuffs;
#ELSE
#EXECUTE=StartThread;
#EXECUTE=WaitForBuffs;
#ENDIF

end_RunTime;


start_SingleTime;

_IFMemRead=%AddrFreeMem30,DWORD,=2560068424;
#SetVar1=Secure eye code already applied, want to remove it?/n/nType 1 for Yes/nType 0 for No;
#EXECUTE=End;
#ELSE
#EXECUTE=StartThread;
WaitForResponse=Secure eye code applied, you can close the Script Editor now.;
#ENDIF

end_SingleTime;


start_WaitForBuffs;

#DO=9999999999999;

Delay=500;

_SetVar=ValidBuff,0;

_IFBuffAlive=3339;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=1099;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=1476;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=3270;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=1910;
_SetVar=ValidBuff,1;
#ENDIF

#IF=%Var[ValidBuff],=1;
#EXECUTE=Stop;
#EXECUTE=ExpireBuff;
#EXECUTE=Play;
#ENDIF

#UNTIL=1,=2;

end_WaitForBuffs;



start_ExpireBuff;

#DO=120000;

Delay=500;

_SetVar=ValidBuff,0;

_IFBuffAlive=3339;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=1099;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=1476;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=3270;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=1910;
_SetVar=ValidBuff,1;
#ENDIF

#UNTIL=%Var[ValidBuff],=0;

end_ExpireBuff;



start_CheckClass;

_SetVar=ValidClass,0;

_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=4; Assassin
_SetVar=ValidClass,1;
#ENDIF

_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=5; Ranger
_SetVar=ValidClass,1;
#ENDIF

_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=14; Gunslinger
_SetVar=ValidClass,1;
#ENDIF

end_CheckClass;



start_End;

#IF=%Var1,=1;
_SetVar=AddrThread,%Var10;
#EXECUTE=StopThread;
#EndScript
#ELSE
#EndScript
#ENDIF

end_End;


start_StartThread;

_Pause=True;

MemWrite=%AddrFreeMem30,%AddrFreeMem30,DWORD;
_MemReadVar=%AddrFreeMem30,DWORD,FreeMemory;
_SetVar=AddrThread,%Var10;

_Calc[Jump]=%Var[FreeMemory]-%Var[AddrThread];
_Calc[Jump]=%Var[Jump]-5;

_Calc[Return]=%Var[AddrThread]+4294967295;
_Calc[Return]=%Var[Return]-%Var[FreeMemory];
_Calc[Return]=%Var[Return]+5;

MemWrite=%AddrFreeMem30,0x488B97980300004881FA001400007421C7879803000000140000F30F11877016000048BA0000000000000000E9,BYTE[45];

_Calc[Return1]=%Var[Return]-45;
_Calc[AddrReturn1]=%Var[FreeMemory]+45;
MemWrite=%Var[AddrReturn1],%Var[Return1],DWORD;

_Calc[AddrCode2]=%Var[FreeMemory]+49;
MemWrite=%Var[AddrCode2],0xC7879803000000000000F30F11877016000048BA0000000000000000E9,BYTE[29];

_Calc[Return2]=%Var[Return]-78;
_Calc[AddrReturn2]=%Var[FreeMemory]+78;
MemWrite=%Var[AddrReturn2],%Var[Return2],DWORD;

_Calc[AddrJump1]=%Var[AddrThread]+1;
_Calc[AddrJump2]=%Var[AddrThread]+5;
MemWrite=%Var[AddrThread],0xE9,BYTE[1];
MemWrite=%Var[AddrJump1],%Var[Jump],DWORD;
MemWrite=%Var[AddrJump2],0x909090,BYTE[3];

_Pause=False;

end_StartThread;


start_StopThread;

_Pause=True;
MemWrite=%Var[AddrThread],0xF30F118770160000,BYTE[8];
Delay=500;
MemWrite=%AddrFreeMem30,0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,BYTE[77];
_Pause=False;

end_StopThread;


start_Stop;

_Calc[AddrStop]=%Var[FreeMemory]+11;
MemWrite=%Var[AddrStop],19,BYTE;

end_Stop;


start_Play;

_Calc[AddrStop]=%Var[FreeMemory]+11;
MemWrite=%Var[AddrStop],20,BYTE;

end_Play;



start_DeclareMemory;

_IFMemRead=%AddrLangPack,CHAR[32],=L10N/ENU/;
_HTTPGetVar=http://subvanillatool.com/data/Threads.html,,10,NA-1670="(.*?)"; NA Target Data/1670
#ELSE
_HTTPGetVar=http://subvanillatool.com/data/Threads.html,,10,EU-1670="(.*?)"; EU Target Data/1670
#ENDIF

end_DeclareMemory;
11/21/2018 00:54 Diavolakos#2134
Quote:
Originally Posted by Paraly View Post
fixed :)

________________________


This is probably the most complicated script I've ever done, like yesterday where I posted the Animation alternative [Only registered and activated users can see links. Click Here To Register...], this script also uses assembly to get a better Eye Secure mode which completely prevents targeting hidden players, it's very very fast.

Classes who don't have any Eye skill just execute this script once and it ends after 1 second the code is then injected into Aion and you can close the Script Editor, it will work till you restart Aion.
...so we disable the eye (see hidden players) in the options and then we run the script once (I am a sorc), that means I can still see hidden players but not select them?

Because that was indeed a problem momentarily selecting someone in hide mode with tab
11/21/2018 00:56 Paraly#2135
Quote:
Originally Posted by Diavolakos View Post
...so we disable the eye (see hidden players) in the options and then we run the script once (I am a sorc), that means I can still see hidden players but not select them?

Because that was indeed a problem momentarily selecting someone in hide mode with tab
Yes, that's correct :)
11/27/2018 11:17 Paraly#2136
Someone requested a script where a toon follows the main and just keeps looting his targets

Code:
#IF=%FirstTime,;
#DisableScrolling
MemPtrWrite=%AddrFPS,%OffsetFPS1,24,BYTE;
MemPtrWrite=%AddrFPS,%OffsetFPS2,24,FLOAT;
#SmoothBackground
UseSpeed=1;
#UseLoop
#EnableChatLog
#ClearChatLog
#SetVar1=Enter your main charactername;
_MemPtrReadVar=%PlayerBase,%OffsetName,WCHAR[32],2;
Command=;
_SetVar26=65536;
#ENDIF


#EXECUTE=Follow;

#EXECUTE=Keywords;
#EXECUTE=Notification;

#EXECUTE=CheckLoot;




start_Follow;


#EXECUTE=SelectMaster;
#IF=%TargetDistance,<20;
#IF=%TargetName,%Var1;
Command=/Follow;
#ELSE
Command=/attack;
#ENDIF


end_Follow;




start_CheckLoot;

_SetVar4=0;

_MemPtrReadVar=%PlayerBase,%OffsetData/0x30,WORD,29;
_MemPtrReadVar=%TargetBase,%OffsetData/0x30,WORD,28;
_MemPtrReadVar=%TargetBase,%OffsetData/0x378,WORD,27;

#IF=%Var27,=%Var29; <-- if target has player as target
_SetVar4=1;
#ENDIF

#IF=%Var27,=%Var28; <-- if target has target as target
_SetVar4=1;
#ENDIF

#IF=%Var27,=0; <-- if target has nothing as target
_SetVar4=1;
#ENDIF

_IFMemPtrRead=%AddrFrameID[2],0x558,WORD,>0; If target's target is alive
_SetVar4=1;
#ENDIF

#IF=%Var27,=Var26; <-- if target has looted target as target
_SetVar4=1;
#ENDIF

#IF=%Var4,=0;
_SetVar26=%Var27;
UseID=50003;
Delay=55;
_IFMemPtrRead=%TargetBase,%OffsetHP,DWORD,=0; Dead
_IFMemPtrRead=%TargetBase,%OffsetData/0x1574,DWORD,=1; Lootable
_IFMemPtrRead=%TargetBase,%OffsetData/0x1588,DWORD,=0; Not Looted yet
_MemReadVar=%AddrTargetID,WORD,5;
#EXECUTE=WaitForLoot;
#ENDIF

end_CheckLoot;



start_WaitForLoot;

_SetVar6=0;

#DO=12000; 12 seconds loot timeout

MemPtrWrite=%PlayerBase,%OffsetActionID,0x150000000100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002,BYTE[225];

_IFMemPtrRead=%TargetBase,%OffsetData/0x1588,DWORD,>0; <-- Looted
_SetVar6=1;
#ENDIF

_IFMemRead=%AddrTargetID,WORD,=%Var5; <-- Lost target
#ELSE
_SetVar6=1;
#ENDIF

_IFMemPtrRead=%AddrFrameID[275],0x28,BYTE,=175;
SendKey=0x43;
Delay=5;
SendKey=0x43;
Delay=5;
SendKey=0x43;
Delay=5;
SendKey=0x43;
Delay=15;
_SetVar6=1;
_IFMemPtrRead=%AddrFrameID[525],0x28,BYTE,=175;
SendKey=0x0D;
Delay=50;
SendKey=0x0D;
Delay=50;
Command=;
SendKey=0x1B;
MemPtrWrite=%AddrFrameID[19],0x28,142,BYTE;
#ENDIF

_IFMemPtrRead=%AddrFrameID[525],0x28,BYTE,=175;
SendKey=0x0D;
Delay=50;
SendKey=0x0D;
Delay=50;
Command=;
SendKey=0x1B;
MemPtrWrite=%AddrFrameID[19],0x28,142,BYTE;
#ENDIF

_IFMemPtrRead=%PlayerBase,%OffsetHP,DWORD,=0;
_SetVar6=1;
#ENDIF

#UNTIL=%Var6,=1;

SendKey=0x1B;
Delay=15;
SendKey=0x1B;
Delay=15;
SendKey=0x1B;
Delay=15;
SendKey=0x1B;
Delay=15;
MemPtrWrite=%AddrFrameID[19],0x28,142,BYTE;

end_WaitForLoot;


start_Notification;


#EXECUTE=SelectMaster;
#IF=%TargetName,;
Command=/w %Var1 I don't see you anymore, I'll wait [pos:here/:0 %Var3 %Var1 %Var2 0.0 0];
#DO=999999999;
Command=/select %Var1;
#UNTIL=%TargetName,%Var1;
#ENDIF

_IFMemPtrRead=%PlayerBase,%OffsetPercentHP,BYTE,<50;<-- Use if lower than 50% life
#IF=%Timer=1,60000;
Command=/w %Var1 I'm low life!;
CreateTimer=1;
#ENDIF

_IFMemPtrRead=%PlayerBase,%OffsetPercentHP,BYTE,<99;<-- Use if lower than 99% life
#IF=%Timer=1,60000;
Command=/w %Var1 I'm under attack!;
CreateTimer=1;
#ENDIF


end_Notification;





start_Keywords;


_SearchChatLog=\[charname:%Var1.*?] Whispers: Hello!;
Command=/w %Var1 Hey;
#ENDIF

_SearchChatLog=\[charname:%Var1.*?] Whispers: Stay here!;
#EXECUTE=SelectMaster;
_IFMemPtrRead=%TargetBase,%OffsetName,WCHAR[32],=%Var1;
_MemPtrReadVar=%TargetBase,%OffsetPosX,FLOAT,6;
_MemPtrReadVar=%TargetBase,%OffsetPosY,FLOAT,7;
_MemPtrReadVar=%TargetBase,%OffsetPosZ,FLOAT,8;
MoveTo=%Var6,%Var7,%Var8,False,False;
Command=/w %Var1 ok I'll wait [pos:here/:0 %Var6 %Var7 %Var8 0.0 0];
_SetVar9=0;
#EXECUTE=Wait;
#ENDIF

#ClearChatLog

end_Keywords;


start_Wait;

#DO=9999999999;
_SearchChatLog=\[charname:%Var1.*?] Whispers: Follow me!;
_SetVar9=1;
#ENDIF
Delay=500;
#UNTIL=%Var9,=1;

end_Wait;


start_SelectSlave;


_IFMemPtrRead=%TargetBase,%OffsetName,WCHAR[32],=%Var2;
#ELSE
Command=/select %Var2;
Delay=5;
#ENDIF


end_SelectSlave;




start_SelectMaster;


_IFMemPtrRead=%TargetBase,%OffsetName,WCHAR[32],=%Var1;
#ELSE
Command=/select %Var1;
Delay=5;
#ENDIF


end_SelectMaster;
The follower toon can also be whispered with

"Hello!" - The follower returns "Hey!" (just a ping to check if he works properly)

"Stay here!" - The follower waits at your position till you whisper him "Follow me!"
11/27/2018 16:17 ParAdoX83#2137
Quote:
Originally Posted by Paraly View Post
fixed :)

________________________


This is probably the most complicated script I've ever done, like yesterday where I posted the Animation alternative [Only registered and activated users can see links. Click Here To Register...], this script also uses assembly to get a better Eye Secure mode which completely prevents targeting hidden players, it's very very fast.

Classes who don't have any Eye skill just execute this script once and it ends after 1 second the code is then injected into Aion and you can close the Script Editor, it will work till you restart Aion.

At classes who have Eye skills the script will keep running since it needs to check when you use eye buffs

Note: Make sure all Eye options are disabled at the Overlay

Code:
#IF=%FirstTime,;
UseSpeed=1;
#DisableScrolling
#EXECUTE=DeclareMemory;
#EXECUTE=CheckClass;
#ENDIF

#IF=%Var[ValidClass],=1;
#EXECUTE=RunTime;
#ELSE
#EXECUTE=SingleTime;
#ENDIF




start_RunTime;

_IFMemRead=%AddrFreeMem30,DWORD,=2560068424;
#EXECUTE=WaitForBuffs;
#ELSE
#EXECUTE=StartThread;
#EXECUTE=WaitForBuffs;
#ENDIF

end_RunTime;


start_SingleTime;

_IFMemRead=%AddrFreeMem30,DWORD,=2560068424;
#SetVar1=Secure eye code already applied, want to remove it?/n/nType 1 for Yes/nType 0 for No;
#EXECUTE=End;
#ELSE
#EXECUTE=StartThread;
WaitForResponse=Secure eye code applied, you can close the Script Editor now.;
#ENDIF

end_SingleTime;


start_WaitForBuffs;

#DO=9999999999999;

Delay=500;

_SetVar=ValidBuff,0;

_IFBuffAlive=3339;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=1099;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=1476;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=3270;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=1910;
_SetVar=ValidBuff,1;
#ENDIF

#IF=%Var[ValidBuff],=1;
#EXECUTE=Stop;
#EXECUTE=ExpireBuff;
#EXECUTE=Play;
#ENDIF

#UNTIL=1,=2;

end_WaitForBuffs;



start_ExpireBuff;

#DO=120000;

Delay=500;

_SetVar=ValidBuff,0;

_IFBuffAlive=3339;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=1099;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=1476;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=3270;
_SetVar=ValidBuff,1;
#ENDIF
_IFBuffAlive=1910;
_SetVar=ValidBuff,1;
#ENDIF

#UNTIL=%Var[ValidBuff],=0;

end_ExpireBuff;



start_CheckClass;

_SetVar=ValidClass,0;

_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=4; Assassin
_SetVar=ValidClass,1;
#ENDIF

_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=5; Ranger
_SetVar=ValidClass,1;
#ENDIF

_IFMemPtrRead=%PlayerBase,%OffsetClassID,BYTE,=14; Gunslinger
_SetVar=ValidClass,1;
#ENDIF

end_CheckClass;



start_End;

#IF=%Var1,=1;
#EXECUTE=StopThread;
#EndScript
#ELSE
#EndScript
#ENDIF

end_End;


start_StartThread;

#Hide

MemWrite=%AddrFreeMem30,%AddrFreeMem30,DWORD;
_MemReadVar=%AddrFreeMem30,DWORD,FreeMemory;
_SetVar=AddrThread,%Var10;

_Calc[Jump]=%Var[FreeMemory]-%Var[AddrThread];
_Calc[Jump]=%Var[Jump]-5;

_Calc[Return]=%Var[AddrThread]+4294967295;
_Calc[Return]=%Var[Return]-%Var[FreeMemory];
_Calc[Return]=%Var[Return]+5;

MemWrite=%AddrFreeMem30,0x488B97980300004881FA001400007421C7879803000000140000F30F11877016000048BA0000000000000000E9,BYTE[45];

_Calc[Return1]=%Var[Return]-45;
_Calc[AddrReturn1]=%Var[FreeMemory]+45;
MemWrite=%Var[AddrReturn1],%Var[Return1],DWORD;

_Calc[AddrCode2]=%Var[FreeMemory]+49;
MemWrite=%Var[AddrCode2],0xC7879803000000000000F30F11877016000048BA0000000000000000E9,BYTE[29];

_Calc[Return2]=%Var[Return]-78;
_Calc[AddrReturn2]=%Var[FreeMemory]+78;
MemWrite=%Var[AddrReturn2],%Var[Return2],DWORD;

_Calc[AddrJump1]=%Var[AddrThread]+1;
_Calc[AddrJump2]=%Var[AddrThread]+5;
MemWrite=%Var[AddrThread],0xE9,BYTE[1];
MemWrite=%Var[AddrJump1],%Var[Jump],DWORD;
MemWrite=%Var[AddrJump2],0x909090,BYTE[3];

#UnHide
#SetAsActive

end_StartThread;


start_StopThread;

MemWrite=%Var[AddrThread],0xF30F118770160000,BYTE[8];
Delay=500;
MemWrite=%AddrFreeMem30,0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,BYTE[77];

end_StopThread;


start_Stop;

_Calc[AddrStop]=%Var[FreeMemory]+11;
MemWrite=%Var[AddrStop],19,BYTE;

end_Stop;


start_Play;

_Calc[AddrStop]=%Var[FreeMemory]+11;
MemWrite=%Var[AddrStop],20,BYTE;

end_Play;



start_DeclareMemory;

_IFMemRead=%AddrLangPack,CHAR[32],=L10N/ENU/;
_SetVar10=617357; -- 0x96B8D -- NA Data/1670
#ELSE
_SetVar10=617341; -- 0x96B7D -- EU Data/1670
#ENDIF

end_DeclareMemory;

Just for a noob like me: wouldn't it be better to include this into the tool itself?
11/27/2018 17:53 mahiki00#2138
nice.
12/15/2018 18:54 zorak10#2139
Anyone can help me about the transformation scrol... What the command to use transformation scrol?
12/17/2018 12:50 Paraly#2140
If anyone needs an "alarm" script that gives an alarm when ever you get whispered, when someone /says anything nearby or when a GM whispers/says something nearby

You need to replace the "SomeGMNickName" with what ever GM username you know
Code:
#IF=%FirstTime,;
UseSpeed=1;
#DisableScrolling
#UseLoop
#EnableChatLog
#ClearChatLog
#EnableSpeech
#ENDIF


_SearchChatLog=\[charname:.*?] Whispers:;
Speech=Someone whispered your character.;
#EXECUTE=Alarm;
#ClearChatLog
#ENDIF

_SearchChatLog=: [A-Za-z]*: ;
Speech=Someone whispered or said something;
#EXECUTE=Alarm;
#ClearChatLog
#ENDIF

_SearchChatLog=: {GM}.*?: ;
Speech=A GM said something nearby.;
#EXECUTE=Alarm;
#ClearChatLog
#ENDIF

_SearchChatLog=\[charname:SomeGMNickName.*?] Whispers: ;
Speech=A GM whisperd something;
#EXECUTE=Alarm;
#ClearChatLog
#ENDIF

_SearchChatLog=: SomeGMNickName: ;
Speech=A GM said something nearby.;
#EXECUTE=Alarm;
#ClearChatLog
#ENDIF

Delay=1000;



start_Alarm;

Beep=480,200;

Beep=1568,200;

Beep=1568,200;

Beep=1568,200;



Beep=739.99,200;

Beep=783.99,200;

Beep=783.99,200;

Beep=783.99,200;


Beep=369.99,200;

Beep=392,200;

Beep=369.99,200;

Beep=392,200;

Beep=392,400;

Beep=196,400;



Beep=739.99,200;

Beep=783.99,200;

Beep=783.99,200;

Beep=739.99,200;

Beep=783.99,200;

Beep=783.99,200;

Beep=739.99,200;

Beep=83.99,200;

Beep=880,200;

Beep=830.61,200;

Beep=880,200;

Beep=987.77,400;

end_Alarm;
Quote:
Originally Posted by zorak10 View Post
Anyone can help me about the transformation scrol... What the command to use transformation scrol?
Open up the Script Editor

Check "Show IDs" at the Script Editor

Rightclick on the Transformation Scroll item

Hover above the Transformation buff you got, copy the ID it displays

Add this line to the "Basic Settings" part in your Combat Routine file

Code:
_ACItems=190099000/5043;
replace 5043 with the buff ID of your transformation

note: Don't enable Transformation Potions at the startup then
12/19/2018 16:59 FaCaDa_BRA#2141
Para... Mirash Sanctum Script ver. 1.04...need updating, is trying to collect the boss drop, before killing.
12/30/2018 12:02 fzg#2142
Hi Para.

Any chance you can review the skill script for chanter? I think the timings for skills are wrong as I get a lot of 'you are not ready to use the skill' msg looking at it killing.

Thanks.

PS: If you point me at the right direction I can have a look.
12/30/2018 12:08 Paraly#2143
Quote:
Originally Posted by fzg View Post
Hi Para.

Any chance you can review the skill script for chanter? I think the timings for skills are wrong as I get a lot of 'you are not ready to use the skill' msg looking at it killing.

Thanks.

PS: If you point me at the right direction I can have a look.
I don't have a level 80 chanter, I just got the skill IDs from aioncodex

Anyways [Only registered and activated users can see links. Click Here To Register...] should help you
12/30/2018 21:00 fzg#2144
Quote:
Originally Posted by Paraly View Post
I don't have a level 80 chanter, I just got the skill IDs from aioncodex

Anyways [Only registered and activated users can see links. Click Here To Register...] should help you
Thanks a lot, That is very helpful :) Done similar things with other tools in the past.

What I am missing here is 'cooldown time' on the skill definition. I have changed rotation so the 1st a skill that has low cd (5 sec) and no problems. but if the 1st skill has lets say 30 sec, and kills a mob in 10 and goes to the other, it is 20 sec waiting for the cd to finish.

Anything I'm missing here ?
12/30/2018 21:15 Paraly#2145
Quote:
Originally Posted by fzg View Post
Thanks a lot, That is very helpful :) Done similar things with other tools in the past.

What I am missing here is 'cooldown time' on the skill definition. I have changed rotation so the 1st a skill that has low cd (5 sec) and no problems. but if the 1st skill has lets say 30 sec, and kills a mob in 10 and goes to the other, it is 20 sec waiting for the cd to finish.

Anything I'm missing here ?
The bot just uses those skills that are ready of course and he checks them in the order in which they got declared

Code:
_ACSkills=CheckedFirst,CheckedSecond,CheckedThird,CheckedFourth...;
And it gets the cooldown information right from the game no need to declare them