What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal
RebornBuddy Forums

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

How to write a profile for special boss mechanics

fandig2

Community Developer
Joined
Apr 1, 2013
Messages
473
Hello, for fun i started writing a profile for Blackwing Descent using the questing botbase.
I'm now stuck on the Maloriak boss, I need the bot to do lower dps (I guess i can use wait timers?) and the bot may NOT interupt a certain ability, I'm not sure how to do that.

Bonus question: Is it possible for the bot to know if you are thrown up in the air and use anti-falling damage abilities such as disengage right before landing?

Thanks in advance :)
 
Combat logic is controlled outside of the profile.
So in order to customize how it behaves, you would have to completely disable it and write your own combat logic into the profile.
You could do this with RunCode pretty easy. But it can get messy.


For the falling code, you could use DoWhen to monitor the boolean property: Me.IsFalling and have the DoWhen activate when it returns true.
eg:

PHP:
<CustomBehavior File="Hooks\DoWhen" ActivityName="FallDetect" AllowUseDuringCombat="true" UseWhen="Me.IsFalling &amp;&amp; !Me.HasAura(130)" >
	<CustomBehavior File="RunCode" Code="SpellManager.Cast(130); await Coroutine.Wait(1500, () => Me.HasAura(130));" />
</CustomBehavior>

This DoWhen will activate when your player is falling, and you lack the aura 130 (Slow Fall)
When it activates, it casts 130 (Slow Fall) on your player.

For doing Disengage, it can be a bit more tricky since you need to know the player's Z coordinate in correlation to the ground Z coordinate.
I think there is a property in the API that calculates the ground Z coordinate, but I don't know it atm.
 
Last edited:
Thank you for the answers, everything I have learned so far is by looking at other peoples profiles :)
 
Combat logic is controlled outside of the profile.
So in order to customize how it behaves, you would have to completely disable it and write your own combat logic into the profile.
You could do this with RunCode pretty easy. But it can get messy.


For the falling code, you could use DoWhen to monitor the boolean property: Me.IsFalling and have the DoWhen activate when it returns true.
eg:

PHP:
<CustomBehavior File="Hooks\DoWhen" ActivityName="FallDetect" AllowUseDuringCombat="true" UseWhen="Me.IsFalling &amp;&amp; !Me.HasAura(130)" >
    <CustomBehavior File="RunCode" Code="SpellManager.Cast(130); await Coroutine.Wait(1500, () => Me.HasAura(130));" />
</CustomBehavior>

This DoWhen will activate when your player is falling, and you lack the aura 130 (Slow Fall)
When it activates, it casts 130 (Slow Fall) on your player.

For doing Disengage, it can be a bit more tricky since you need to know the player's Z coordinate in correlation to the ground Z coordinate.
I think there is a property in the API that calculates the ground Z coordinate, but I don't know it atm.

is there a reference link that has all the commands?
 
Back
Top