View unanswered posts | View active topics It is currently Tue Sep 18, 2018 3:18 pm



Reply to topic  [ 21 posts ]  Go to page Previous  1, 2, 3  Next
Hacking "healbot" with casters 
Author Message
Site Admin

Joined: Fri Feb 08, 2013 5:24 pm
Posts: 2764
Reply with quote
Now we're in the hackish area again.

Technically, Logout(); seems to make you stop following but from my tests it will not do so when used with another action, i.e. the CastSpellByName and as such it is a bit useless.

You could, theoretically make checks whether your target is a player and if not it will assume that you are in a combat situation. You can then interrupt with movement. As such you should make sure that your tank only targets creatures when it has to. The whole profile would then be something like this
Code:
gcd:1500

//interrupt with forward movement
cast:1w
havetarget
!isplayer
cooldown:10000
triggers:1

//old macro for initiating combat
cast:12
triggeredby:1

//another macro
cast:XY
!incombat
nogcd

//old macro
cast:12
mana>5

This assumes that "w" is bound as forward movement key. It will only be a short keypress but thats all you want to interrupt.
Obviously replace XY with the real position of the second macro which will be just a simple
Code:
/target charname
/assist

You should also add another
Code:
/follow charname
at the end of the old macro.

I haven't actually tested the whole thing so if something doesn't work right let me know.


Thu Jul 12, 2018 7:16 pm
Profile
Paying User

Joined: Wed Jun 20, 2018 1:55 pm
Posts: 18
Reply with quote
Hey Lys,

Thanks! I think I understand the logic behind this and will play around with it.

This is a lot of fun :-)

If i can get it working, i'll definitely share the results. I'm sure other people would like to be able to create their own 5-man raiding group.


Fri Jul 13, 2018 1:00 am
Profile
Paying User

Joined: Wed Jun 20, 2018 1:55 pm
Posts: 18
Reply with quote
quick question,

How often does the combat profile run itself? Every second? Every few seconds?


Fri Jul 13, 2018 1:17 pm
Profile
Site Admin

Joined: Fri Feb 08, 2013 5:24 pm
Posts: 2764
Reply with quote
That is set by the gcd defined at the beginning. But there are a few exceptions, with the "nogcd" flag the gcd is ignored and it checks again after a few hundred milliseconds and while the bot is already channeling/casting it will not try to perform another action.


Fri Jul 13, 2018 1:33 pm
Profile
Paying User

Joined: Wed Jun 20, 2018 1:55 pm
Posts: 18
Reply with quote
oh got it, thats super helpful to know. That way I can spam "check for target in combat" and immediately have it hit the "1w" to stop following and start casting


Fri Jul 13, 2018 4:53 pm
Profile
Paying User

Joined: Wed Jun 20, 2018 1:55 pm
Posts: 18
Reply with quote
deleting a question I answered


Last edited by fearlesselite on Sat Jul 14, 2018 3:13 pm, edited 1 time in total.



Sat Jul 14, 2018 2:47 pm
Profile
Site Admin

Joined: Fri Feb 08, 2013 5:24 pm
Posts: 2764
Reply with quote
Priority. The combat profile is a list of actions that the bot iterates from top to bottom. Whenever an action has all conditions fulfilled, it will get performed and the bot stops going through the list, the next iteration starting from the top again.
Since the only condition for fireball is that you need to have more than 5% mana, that is pretty much always fulfilled.


Sat Jul 14, 2018 3:05 pm
Profile
Paying User

Joined: Wed Jun 20, 2018 1:55 pm
Posts: 18
Reply with quote
i got this working, thought I'd share. So far, seems to work very well


gcd:1500

//interrupt with forward movement
cast:1w
havetarget
!isplayer
!incombat
triggers:1
nogcd

//old macro for initiating combat
cast:27
triggeredby:1
distance<35

//found target
cast:27
mana>5
havetarget
!isplayer

//checking for target while walking
cast:26
!incombat
nogcd

27: /cast fireball
26: (more complicated script you came up with):

/target mainChar
/script if UnitAffectingCombat("target") then AssistUnit("target"); CastSpellByName("Fireball(Rank 4)") else FollowByName(mainChar, exactMatch) end;


Sat Jul 14, 2018 3:30 pm
Profile
Paying User

Joined: Wed Jun 20, 2018 1:55 pm
Posts: 18
Reply with quote
i got this working, thought I'd share. So far, seems to work very well


gcd:1500

//interrupt with forward movement
cast:1w
havetarget
!isplayer
!incombat
triggers:1
nogcd

//old macro for initiating combat
cast:27
triggeredby:1
distance<35

//found target
cast:27
mana>5
havetarget
!isplayer

//checking for target while walking
cast:26
!incombat
nogcd

27: /cast fireball
26: (more complicated script you came up with):

/target mainChar
/script if UnitAffectingCombat("target") then AssistUnit("target"); CastSpellByName("Fireball(Rank 4)") else FollowByName(mainChar, exactMatch) end;

For anyone trying to read this, this combat profile is for a mage following around a tank/main character.

It will constantly keep trying to follow the main character. However, when it seems the main char enter combat, it will stop moving (pressing 1w) and immediately start casting fireball over and over until the target is dead. At which point the mage will once again keep trying to follow the main char.

Only thing to be cautious of, if the main char gets too far away from the mage during combat, it might not be able to re-follow (haven't tested it yet).


Sat Jul 14, 2018 3:36 pm
Profile
Paying User

Joined: Wed Jun 20, 2018 1:55 pm
Posts: 18
Reply with quote
Hey Lys,

Testing this out further and running into an issue where my mage is facing the right way sometimes in combat.

I added this as my **last** in my combat profile with 20 being empty. However it won't get the mage to turn around. Thoughts?

//face attacker
cast:20
nogcd

It seems like it keeps trying to cast a fireball but just hits with an error. Is there a way to "escape" out of an earlier "combat move" if the mage is facing the wrong direction?

Also, having a slight issue with drinking water and that he's not breaking of full mana. If I manually hit the space bar, he'll immediately follow the main char (and hit 26) but otherwise he'll sit for a long time on full mana.

gcd:1500

//Drink
cast:21
mana<90
!incombat
breakoncombat
breakonfullmana
channelingtime:16000
nogcd

//interrupt with forward movement
cast:1w
havetarget
!isplayer
!incombat
triggers:1
nogcd

//old macro for initiating combat
cast:27
triggeredby:1
distance<35

//found target
cast:27
mana>5
havetarget
!isplayer

//checking for target while walking
cast:26
!incombat
nogcd


Sun Jul 15, 2018 12:17 am
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 21 posts ]  Go to page Previous  1, 2, 3  Next

Who is online

Users browsing this forum: Google [Bot] and 12 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software