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

Question about public override void Combat()

Truman422

Member
Joined
Jan 10, 2011
Messages
198
Reaction score
14
CC development. I use if statements instead of composites. But it seems that the use of public override void Combat() through if statements doesn't work in Arenas, where composite usage does. From my experience. Does anyone know why this might be? I can send you what I'm working on if you would be kind enough to take a look at it and see what I might have done wrong.
 
It may depend on the bot, I suppose you're using different ones, right?
 
Different bots? No. I only ever use Combat Bot. I never let Honorbuddy steer my character for me.
 
a GOOD botbase, all the ones developed by the buddy team, all have support for BTTrees and Classic CC's so if your writing a bot base you need to take that into account. but if your only setting the bot to grind or using lazy raider as long as your Classic Style CC is programed in a way where it wont bottleneck, you should get the same performance if not better.

the thing is, when honor buddy "Pulls a Target" it runs Pull() then Combat() only gets run when you are actually in combat So Me.Combat = True
if your just running the Grind bot in the arena its not going to know what to do since its ment to grind on mobs, but you can write what i call a "Retargeting" method to look for targets and Run your Combat() or Pull() method to initiate combat, that should help because most of the time it will only fight back if your CC knows how.

theres a lot of factors.
 
can we see your code and the error given? what does not work while in arena? we are quite blind witout a code to look at :)
 
can we see your code and the error given? what does not work while in arena? we are quite blind witout a code to look at :)

Yeah, its not giving any error at all, it just doesn't do anything if I'm in arenas, however it works perfectly in battlegrounds, raids and solo stuff. Like CodenameG was talking about, I don't have any calls for pulls or anything like that, only a call for combat via the public override void combat() then it goes based on my settings file for class spec stuff.

Here is my CC I've been building the last few days. I'm not quite sure what's wrong with it... Like I said, works perfectly everywhere except for arenas. Only warrior is fully done. There's a little rogue programming done too, but not much. Only warrior and hunter are mostly done, and rogue is kinda done, none are too thoroughly tested yet.

Thanks in advance for trying to help me.
 

Attachments

/* End of cowdude's shit. */
Meh, C# is a bitch.

Anyway, you can use standard if/loop statements inside a BT if needed...
dumbTreeRoot = new Action(a => RunMyCombatRoutine());

And by the way, you can use Me.WoWClass to know the current player's class, and guess its spec by running some LUA callbacks or detect if the player knows the main talent tree's unique spell (like Penance for disco priests).
 
Yeah, I know. I just like being able to click it manually. That allows me to use the same honorbuddy for whatever class I log in to.
 
I have not yet looked at all your code BUT this is a big problem
if (Me.Dead || Me.Mounted || Me.CurrentTarget == null || Me.CurrentTarget.Dead || !Me.IsSafelyFacing(Me.CurrentTarget) || Me.CurrentTarget.IsFriendly || Me.HasAura("Trap Launcher"))
{
return;
}
In Arena Me.currenttarget.isfrindly will be true.
IsFriendly does not check if they are friendly _now_, it check if they would be friendly in a PVE context.
you cannot walk around this problem if you want to use Me.CurrentTarget. (and still check for friendly creature outside arena)
best way i found to check for a target is with a direct call to ObjectManager
 
also no need for lua, just check SpellManager.HasSpell("Penance") for example to know the spec of your character :)
 
Oh, of course. That would explain why it worked the first time... I was fighting ally, then the next few times I was like WTF! But I was fighting other hordies... Omg, I'm stupid. Thanks, that has to be it. I'll remove that and try it later. Keep looking, see if you can find other dimwitted things my noob programmer ass put in there. Thanks for helping.
 
Back
Top