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

UPaCCBT: The BehaviourTree Ultimate Paladin Healer Custom Class

Status
Not open for further replies.
I would like to know the real meaning behind "tank prio" And the "multiplier" numbers...how does the two scales work exactly? I know prio means the higher number the higher prio ofc...but what does the numbers represent exactly? And multiplier numbers? Love this cc 2 death n heal fl 7/7 like it was nothing. Just would like som ?e more indepth understanding.

Thnx! :)
 
Well best of luck Glideroy!

Have you considered going the route of a plugin for interrupts? I know Strix was working on something, but real life took over and he stopped.
 
this is how heal tank priority and multiplier work.
Imagine we have "Tank" unit and "Target" unit.
Imagine our internal logic decide we need to heal "Target" unit on next cycle.
Imagine "Target" HP are 60% and "Tank" HP are 80%.
Heal tank priority say this:
The HP of the Target, multiplied by 1+(_heal_tank_priority/100)>Tank HP?
If yes then heal Tank instead of target on next Cycle.
I know this is a "reverse" logic (you are not checking if the tank need a heal, you are cheking if the target do not need a heal more then the tank do) but this work :P
In the Example a _heal_tank_priority of 40 whould heal the tank instead of target (60*(1+0.4))=84; 84>80 ==> Heal the tank.
So a 100 _heal tank priority means that if Tank is at 80% he will be healend until someone drow below 40% (40*(1+1)=80)
so a heal tank priority of 100 means someone need to be at half tank health to be healed.
Thats quite good in a lot of situation but sometimes you want more.
Here multiplier comes into play.
Multiplier simpli multiply the _heal_tank_priority.
So if _multiplier=1 and _heal_tank_priority=100 Target need to have 1/2 the Tank HP to be healed with (50%)
_multiplier=2 and _heal_tank_priority=100 Target need to have 1/4 the tank HP to get a heal. (25%)
at the end with _multiplier=100 and _heal_tank_priority=100 a target need to have 1/200 the Tank HP to get a heal (or for our European that see thing in % a target need to have 0.5% the Tank HP to get a heal.. possibile but realy unlikely :) )
I do not know if my explanation was clear or not.. if not tell me :)

@Zacharybinx34: No way in hell I'm gonna do a plugin :P
The problem with interrupt is that it needs to be deeply inserted inside the Cast System of the combat class, I'm having problem doing it with my 3 Cast Systems I surely do not want to code it for every strange cast system a CC creator can came up with.. no no thanks :P
 
this is how heal tank priority and multiplier work.
Imagine we have "Tank" unit and "Target" unit.
Imagine our internal logic decide we need to heal "Target" unit on next cycle.
Imagine "Target" HP are 60% and "Tank" HP are 80%.
Heal tank priority say this:
The HP of the Target, multiplied by 1+(_heal_tank_priority/100)>Tank HP?
If yes then heal Tank instead of target on next Cycle.
I know this is a "reverse" logic (you are not checking if the tank need a heal, you are cheking if the target do not need a heal more then the tank do) but this work :P
In the Example a _heal_tank_priority of 40 whould heal the tank instead of target (60*(1+0.4))=84; 84>80 ==> Heal the tank.
So a 100 _heal tank priority means that if Tank is at 80% he will be healend until someone drow below 40% (40*(1+1)=80)
so a heal tank priority of 100 means someone need to be at half tank health to be healed.
Thats quite good in a lot of situation but sometimes you want more.
Here multiplier comes into play.
Multiplier simpli multiply the _heal_tank_priority.
So if _multiplier=1 and _heal_tank_priority=100 Target need to have 1/2 the Tank HP to be healed with (50%)
_multiplier=2 and _heal_tank_priority=100 Target need to have 1/4 the tank HP to get a heal. (25%)
at the end with _multiplier=100 and _heal_tank_priority=100 a target need to have 1/200 the Tank HP to get a heal (or for our European that see thing in % a target need to have 0.5% the Tank HP to get a heal.. possibile but realy unlikely :) )
I do not know if my explanation was clear or not.. if not tell me :)

@Zacharybinx34: No way in hell I'm gonna do a plugin :P
The problem with interrupt is that it needs to be deeply inserted inside the Cast System of the combat class, I'm having problem doing it with my 3 Cast Systems I surely do not want to code it for every strange cast system a CC creator can came up with.. no no thanks :P

haha. Have you you checked with any dev's to see if there is an easy way to implement it into your CC?

Wishing you luck!
 
@gilderoy thanks for the explanation...
This way it's a little bit complicated to get the real numbers, but now i know how to setup this part correctly, to heal the group AND my tank ...

now i can play with this a little bit, to not drop down in healing soooo much :)

Good luck with debugging the Arena stuff... my mate died yesterday more than one time... i switched back to rev 220 and it worked much better ... so please i want back the logic / healing of rev 220...

Logs will be attached later today, i have to sort out which ones are from raiding, which ones are from arena
 
Thank you for clarifying so well mr Gilderoy...now i know hos to really tweak it ;) Thnx and keep up the good work!
 
Here we go with some new logs :)

In this log 06-10-2011_18_08 6344 Log.zip are some different "problems"

First of all...
If i'm dead (or my toon), do we really need to spam the log with casts that would be done when i'm alive?
This is only a question (and suggestion): stop logging when the toon is dead and has nothing to do

I quote the timestamps and text, that you can figure it out easier in the big logs.

Best example for this:
[18:14:57:071] Cleared POI - Reason Player Died
[18:14:57:071] Cleared POI
[18:14:57:089] We are in arena, but i'm not valid, CC is in PAUSE
[18:14:57:095] tar DeathKnight Me**** hp 85.56 distance 3.25 tank Myself hp 0 distance 0
I died (this is ... okay, they focussed me a lot in this fight ... but we took revenge in the next match^^), but the log grows with many many output

here my mate left the arena
[18:15:18:677] [LazyRaider] Tank left group, no tank currently
and then i watched a little bit the stats, and the fight (skada wowaddon) to analyse what happens to me.
But the log grows and grows and grows :)
[18:15:27:295] Not in game

More than 400 lines of output, that are unteresting for debugging and error finding^^

Second thing ... we CAN'T dispell Polymorph from ourself ;), so don't try this,we can use racials and/or trinkets, but we can't dispel polymorph on ourself
Maybe you can check first if we are polymorphed (then we do not need to dispel, we need to use trinkets or racials)
[18:22:37:720] urgent debuff dispelling Polymorph
[18:22:37:727] Urgent Debuff was found, dispelling ASAP!: casting Cleanse on Myself at distance 0 with type Cleanse at hp 100

Next problem (in my opinion)
When switching tank from my mate to ME (because they'Re beating me) is okay, but DON'T switch beacon of light
[18:32:45:530] Missing Beacon of light: casting Beacon of Light on Tank Me**** at distance 16.8 with type Buff at hp 94
[18:32:45:531] Spell_C::CastSpell(53563, 0, 0x3000000033B2684, 0) [917]
[18:32:46:761] Changing Tank to Me couse they are beating on me!
[18:32:46:766] tar Myself hp 71.07 distance 0 tank Myself hp 71.07 distance 0
[18:32:46:979] Performance: spell decided in 234.5243 milliseconds, average on 902 casts: 65.943908203991, Latency 48
[18:32:46:979] Performance: first wait 146 second wait 346 third wait 211.943908203991
[18:32:46:990] Missing Beacon of light: casting Beacon of Light on Myself at distance 0 with type Buff at hp 71.07
If i had to heal myself, why should i beacon myself? my mate needs heal (maybe), so i have to heal ME and HIM ... he has to have the beacon in this case ... that's important.

If i'm healing him, i have to heal myself too (often) so the beacon has to be on ME not on him

Nex problem...
Divine Protection on me .. perfect, but no heal (no decision) on me? that's maybe a problem :)
[18:33:05:781] Low HP: casting Divine Protection on Myself at distance 0 with type Self at hp 43.46
[18:33:05:783] Spell_C::CastSpell(498, 0, 0x30000000237EA41, 0) [945]
[18:33:05:879] Changing Tank to Me couse they are beating on me!
and now no heal, because
[18:33:08:556] Performance: nothing decided on last cicle in 110.1413 milliseconds
No decision for 2 seconds? Dunno if the toon used all CDs at this time, or i was silenced (maybe this could be logged so i/we can analyse the logs a little bit easier?) ... but no big problem all in all, This CC does good work after this and healed me :) (i'm only confused by the 2 seconds of doing nothing)

another dispell, that isn't working...
Psychic Scream, Fear ... we can't dispel ourself while feared ;)
[18:33:39:253] urgent debuff dispelling Psychic Scream
[18:33:39:260] Urgent Debuff was found, dispelling ASAP!: casting Cleanse on Myself at distance 0 with type Cleanse at hp 100

Another Suggestion comes to mind, while analysing the log :)
Maybe you can add the possibility to give us a setting for the Racials and PVP Trinkets... so that we can setup the CC to only use Every Man for Himself (and the other things) if ONE of the healing targets (the tank or me or one of the other players from my team) drops below a specific value AND the crowd control lasts longer than x seconds (0 for instant using).

There's no reason to use trinket / racials if everyone is above 90%, there's no need to use trinket/racials if the crowd control lasts one second, and there's no need to use trinket / racials if crowd control lasts 2 seconds and everyone is above 85% (these are example numbers ... i prefer to keep this cd for bad situations and not to use it instant ... i know i'm able to disable the using completely)

so ... and now ... the rly BAD PART ... my mate died, and there were no problem with los, stun, fear or something else

everything starts with
[18:40:15:202] Healing: casting Divine Light on Tank Me**** at distance 15.69 with type Heal at hp 55.01
[18:40:15:204] Spell_C::CastSpell(82326, 0, 0x3000000033B2684, 0) [1252]
[18:40:15:392] tar Tank Me**** hp 53.55 distance 15.94 tank Tank Me**** hp 53.55 distance 15.94
[18:40:15:483] Performance: nothing decided on last cicle in 119.094 milliseconds
[18:40:15:510] tar Tank Me**** hp 53.55 distance 16.19 tank Tank Me**** hp 53.55 distance 16.19
[18:40:15:603] Performance: nothing decided on last cicle in 119.6586 milliseconds
[18:40:15:629] tar Tank Me**** hp 53.55 distance 16.32 tank Tank Me**** hp 53.55 distance 16.32
[18:40:15:721] Performance: nothing decided on last cicle in 117.5563 milliseconds
[18:40:15:748] tar Tank Me**** hp 53.55 distance 16.29 tank Tank Me**** hp 53.55 distance 16.29
[18:40:15:845] Performance: nothing decided on last cicle in 124.0251 milliseconds
[18:40:15:871] tar Tank Me**** hp 53.55 distance 16.05 tank Tank Me**** hp 53.55 distance 16.05
[18:40:15:963] Performance: nothing decided on last cicle in 117.9076 milliseconds
[18:40:15:989] tar Tank Me**** hp 53.55 distance 15.81 tank Tank Me**** hp 53.55 distance 15.81
[18:40:16:080] Performance: nothing decided on last cicle in 117.0936 milliseconds
[18:40:16:104] tar Tank Me**** hp 53.55 distance 15.61 tank Tank Me**** hp 53.55 distance 15.61
[18:40:16:196] Performance: nothing decided on last cicle in 116.7164 milliseconds
[18:40:16:223] tar Tank Me**** hp 45.72 distance 15.42 tank Tank Me**** hp 45.72 distance 15.42
[18:40:16:313] Performance: nothing decided on last cicle in 117.0001 milliseconds
Divine Protection ... (second time ... DP used, no healing done)
[18:40:21:370] tar Tank Me**** hp 8.51 distance 14.56 tank Tank Me**** hp 8.51 distance 14.56
[18:40:21:463] Performance: nothing decided on last cicle in 118.3138 milliseconds
[18:40:21:494] tar Myself hp 86.55 distance 0 tank Myself hp 86.55 distance 0
[18:40:21:585] Performance: nothing decided on last cicle in 122.4669 milliseconds
[18:40:21:612] tar Myself hp 86.55 distance 0 tank Myself hp 86.55 distance 0
[18:40:21:702] Performance: nothing decided on last cicle in 116.9998 milliseconds
[18:40:21:725] tar Myself hp 86.55 distance 0 tank Myself hp 86.55 distance 0
[18:40:21:815] Performance: nothing decided on last cicle in 112.9684 milliseconds
[18:40:21:842] tar Myself hp 86.55 distance 0 tank Myself hp 86.55 distance 0
[18:40:21:937] Performance: nothing decided on last cicle in 121.4338 milliseconds
[18:40:21:961] tar Myself hp 86.55 distance 0 tank Myself hp 86.55 distance 0
[18:40:22:052] Performance: nothing decided on last cicle in 114.9518 milliseconds
[18:40:22:074] tar Myself hp 86.55 distance 0 tank Myself hp 86.55 distance 0
[18:40:22:151] Performance: spell decided in 99.1483 milliseconds, average on 1233 casts: 100.489445660989, Latency 49
[18:40:22:151] Performance: first wait 148 second wait 348 third wait 248.489445660989
[18:40:22:164] Missing Beacon of light: casting Beacon of Light on Myself at distance 0 with type Buff at hp 86.55
[18:40:22:166] Spell_C::CastSpell(53563, 0, 0x30000000237EA41, 0) [1253]
My mate is dead, it took nearly 6 seconds to kill him, and nothing was decided ... that's really really bad

This happened a second time in this log, but we 're now at line 18106 and at the beginning of the next fight, my hb crashed (on opening the configure window i think, but i'm not sure).

The second log 06-10-2011_18_41 1928 Log.zip (18.6 KB) is much shorter, only one fight ... My mate died ... thats bad :)
[18:42:54:858] Noone to heal, dispelling: casting Cleanse on Tank Me**** at distance 15.5 with type Cleanse at hp 17.73
[18:42:54:860] Spell_C::CastSpell(4987, 0, 0x3000000033B2684, 0) [69]
[18:42:54:962] tar Tank Me**** hp 17.73 distance 15.5 tank Tank Me**** hp 17.73 distance 15.5
i can'T see what was tried to dispell, but my tank was soooo low, there's no reason to dispell him ... there's need to heal him

Maybe u could add an option to set the HP of the cleansetarget, where it stops using cleanse and do some more heal (maybe don't cleanse if target under 20%, heal up to 50%, use cleanse if necessary)

at this point i switched back to the current release of hb and to rev220 of this cc, because in my opinion it heals better in this version (or maybe these situations don't happens ... but the next 1.5 hours my mate doesn't die .. only one more time, while i was kiting an opponent and forget to stay in range / sight to heal my mate ... so this was absolutely my bad)
 

Attachments

Last edited:
the bot doesnt see your CC and i cannot choose it :(
how can i fix this?
 
@Lekaf: like.. upgrade your HB?
I was so so sure that was the problem even before reading your log.. sigh..
http://www.thebuddyforum.com/releases/34107-[test]-honorbuddy-2-0-0-5387-a.html
You have an outdated version, Upgrade, pls.
@theatristformallyknownasG: Happy is working good for you :)
@Stormchasing: Thank you very much for the outstanding bug report!
This is a very very good and helpful bug report, thank you :)
I'm already investigating on most of this problem.
The majority are just log problems introduced with rev 228 needed to log the performance issue :)
But there are at least 2 real problems and I'm tryng to figure out hard where the problem is exactly.. must be somewhere in the new intellywait..
The CC use a priority sistem, should never ever cleanse someone using the "noone to heal cleansing" if someone is under 85% so that's a big big problem :)
 
@Lekaf: like.. upgrade your HB?
I was so so sure that was the problem even before reading your log.. sigh..
http://www.thebuddyforum.com/releases/34107-[test]-honorbuddy-2-0-0-5387-a.html
You have an outdated version, Upgrade, pls.
@theatristformallyknownasG: Happy is working good for you :)
@Stormchasing: Thank you very much for the outstanding bug report!
This is a very very good and helpful bug report, thank you :)
I'm already investigating on most of this problem.
The majority are just log problems introduced with rev 228 needed to log the performance issue :)
But there are at least 2 real problems and I'm tryng to figure out hard where the problem is exactly.. must be somewhere in the new intellywait..
The CC use a priority sistem, should never ever cleanse someone using the "noone to heal cleansing" if someone is under 85% so that's a big big problem :)

When I try to set INtelliwait for arena it always go back to another option.

What is the best for arena?
 
i have the last stable release, dont want to test it :O is this a problem??
 
Yo,

Any way to make it interrupt certain spells? I see the option to use Rebuke.
 
@Zacharybinx34: I'd say Speed for arena, noob question but do you click save? and still is not updating your settings?
@lekaf: is a problem only if you want to use the newest revision of this CC, rev220 work with the stable revision of HB, rev 221+ only work with the test.
@Megser: rebuke code is actualy under a complete (and realy hard) rewrite for now is just non working
 
Status
Not open for further replies.
Back
Top