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!

Default Combat Discussion

Quick question.. worded weird, sorry for it

When I play, say a ranged class (bounty hunter/sniper etc) any time I select a friendly unit.. the game lags insanelyhas huge FPS drops during any in game chat cinematic (as though the combat bot is trying to run the rotation on the friendly unit but it can't complete) so doing quests and missions is slightly jarring due to that

Is there a way to toggle it or anything so it doesn't try to combo friendlies without actively alt-tabbing out to buddywing and pushing 'stop' ? This doesn't happen on people like Sith Warrior; just ranged classes

Edit:
Ok so not just friendly targets, but apparently every 'actor' that's targeted causes extreme fps loss even at low resolution when using a ranged class
 
Last edited:
for sniper engineering you people might wanna change

Code:
                    //Movement
                    CombatMovement.CloseDistance(Distance.Melee),

into

Code:
                    //Movement
                    CombatMovement.CloseDistance(Distance.Ranged),

@day7: you need to clarify it more specific, each class has 2 specializations and each specialization has 3 specs. every spec has their own specific routine file.
 
Last edited:
Ok, well

For example I was playing on the beginner class version of what can eventually become a sniper

anything I targeted (friend or enemy) killed FPS even on 1024x768 windowed

which does not happen for example, on my sith warrior


Now, I am Jedi Consular and it does the same thing as the other ranged class mentioned above
 
does the bounty hunter pre level 10 do the same? both agent and consular is made as melee in the routine, this can actually be the reason as they are prioritising ranged "spells" at these levels. funny thing is that BH, trooper and smuggler is actually set as ranged but not the agent or consular/inquisitor.
I haven't tried it myself, but it sounds like the exact same issue i was having with the sniper before fixing the distance code as posted in my previous post.
 
does the bounty hunter pre level 10 do the same? both agent and consular is made as melee in the routine, this can actually be the reason as they are prioritising ranged "spells" at these levels. funny thing is that BH, trooper and smuggler is actually set as ranged but not the agent or consular/inquisitor.
I haven't tried it myself, but it sounds like the exact same issue i was having with the sniper before fixing the distance code as posted in my previous post.
How would I be able to change the code myself as you've done?
 
in the folder \BuddyWing\Routines\DefaultCombat\Routines\Basic you will find a file for each primary class. these are used before you choose specialization.
you can edit the .cs files in notepad or another basic text editor.
 
does the bounty hunter pre level 10 do the same? both agent and consular is made as melee in the routine, this can actually be the reason as they are prioritising ranged "spells" at these levels. funny thing is that BH, trooper and smuggler is actually set as ranged but not the agent or consular/inquisitor.
I haven't tried it myself, but it sounds like the exact same issue i was having with the sniper before fixing the distance code as posted in my previous post.

I've seen a lot of problems with Distance.Ranged. A lot of "Cannot see target" blinking problems because the objects are in the way of the char and the mob and bot just go idle specially if you AFK bot. Melee works best even for Ranged classes.
 
Ok, finally got a bounty hunter going, and it also has the problem of trying to attack any actor, friendly or otherwise

I'll talk to a trainer, for example
and it'll try to use flamethrower

If I loot a corpse, it uses flamethrower on empty space


I think the problem is that the combat routine is literally always trying to use the combat rotation even when not in active combat

is there not a syntax that checks for combat/non-combat modes?
 
Ok, finally got a bounty hunter going, and it also has the problem of trying to attack any actor, friendly or otherwise

I'll talk to a trainer, for example
and it'll try to use flamethrower

If I loot a corpse, it uses flamethrower on empty space


I think the problem is that the combat routine is literally always trying to use the combat rotation even when not in active combat

is there not a syntax that checks for combat/non-combat modes?

What level are you? What is this flamethrower skill called?
 
What level are you? What is this flamethrower skill called?
This was pre-10 (afterOnce I'd decided on my path after 10 it works fine)

but the skill is "Spell.Cast("Flame Thrower", ret => Me.CurrentTarget.Distance <= 1f),"

It would cast on everything as long as I was in range for it to cast.. even if the target was, y'know, a trainer or corpse :P
 
That check wouldn't be advanced class routine but the base bounty hunter routine.
 
Is there a way to toggle it or anything so it doesn't try to combo friendlies without actively alt-tabbing out to buddywing and pushing 'stop' ?

Forgot to answer this question. but "F8" usually toggles combat for the bot.
 
Here are my suggestions to the Merc Innovative Ordnance rotation: (This is a really difficult rotation, but insane dps numbers if done right)

-Added Emergency Scan to cooldowns, its fairly cheap (15 heat), and nice for survivability
-Took out Rail Shot from Low Resource handler, this just may be my own preference, but I like to regain resource as fast as possible
-Added Mag Shot to rotation - lvl 57 replacement for Railshot
-Added Missle Blast as a sub 30% ability, used with Volatile Warhead buff only
-Added a second Mag Shot ability because I didn't know how to create an 'or' contition for the 'Superheated Shot' buff the procs, this could likely be combined with the first Mag Shot line
-Added Power Shot to instant proc from Speed to Burn buff, alternatively Serrated Shot can be instant proc as well, I just choose power shot for overall damage
-Added Serrated Shot lvl 41 DOT
-Added debuff handler to Incendiary Missle
-Added SuperCharged Gas with InCombat handler
-Moved up Electo Net to take advantage of SuperCharged Gas buff
-Added Unload to rotation, this is used to provide crit on Mag Shot every 60 sec, plus its decent dps
-Disabled Fusion Missle because of low damage output compared to Death from Avove and Sweeping Blasters, however, is useful for Dot spreading, for some fights this is better

Code:
using Buddy.BehaviorTree;
using DefaultCombat.Core;
using DefaultCombat.Helpers;

namespace DefaultCombat.Routines
{
    public class InnovativeOrdnance : RotationBase
    {
        public override string Name { get { return "Mercenary Innovative Ordnance"; } }

        public override Composite Buffs
        {
            get
            {
                return new PrioritySelector(
                    Spell.Buff("Combustible Gas Cylinder"),
                    Spell.Buff("Hunter's Boon")
                    );
            }
        }

        public override Composite Cooldowns
        {
            get
            {
                return new LockSelector(
                    Spell.Buff("Determination", ret => Me.IsStunned),
                    Spell.Buff("Vent Heat", ret => Me.ResourcePercent() >= 50),
                    Spell.Buff("Energy Shield", ret => Me.HealthPercent <= 40),
	            Spell.Buff("Emergency Scan", ret => Me.HealthPercent <= 35),
                    Spell.Buff("Kolto Overload", ret => Me.HealthPercent <= 30)
                    );
            }
        }

        public override Composite SingleTarget
        {
            get
            {
                return new LockSelector(

                    //Movement
                    CombatMovement.CloseDistance(Distance.Ranged),

                    new Decorator(ret => Me.ResourcePercent() > 40,
                        new LockSelector(
                            //Spell.Cast("Rail Shot", ret => Me.HasBuff("Prototype Particle Accelerator")),
                            Spell.Cast("Rapid Shots")
                    )),

                    //Rotation
		    Spell.Cast("Disabling Shot", ret => Me.CurrentTarget.IsCasting && Me.CurrentTarget.Distance <= Distance.Melee && !DefaultCombat.MovementDisabled),
		    Spell.Cast("Mag Shot", ret => Me.HasBuff("Innovative Particle Accelerator") && Me.Level >= 57),
		    Spell.Cast("Rail Shot", ret => Me.Level < 57),
		    Spell.Cast("Missle Blast", ret => Me.CurrentTarget.HealthPercent <= 30 && Me.HasBuff("Volatile Warhead")),
		    Spell.Cast("Mag Shot", ret => Me.HasBuff("Superheated Shot")),
		    Spell.Cast("Power Shot", ret => Me.HasBuff("Speed to Burn")),
		    Spell.DoT("Serrated Shot", "", 15000, ret => !Me.CurrentTarget.HasDebuff("Marked (Physical)")),
		    Spell.DoT("Incendiary Missile", "", 12000, ret => !Me.CurrentTarget.HasDebuff("Burning (Incendiary Round)")),
	            Spell.Cast("Supercharged Gas", ret => Me.BuffCount("Supercharge") == 10 && Me.InCombat),
		    Spell.Cast("Electro Net", ret => Me.HasBuff("Supercharged Gas") && Me.CurrentTarget.HealthPercent > 30),
		    Spell.Cast("Unload"),
                    Spell.Cast("Thermal Detonator"),
                    Spell.Cast("Power Shot")
                    );
            }
        }

        public override Composite AreaOfEffect
        {
            get
            {
                return new Decorator(ret => Targeting.ShouldAOE,
                    new LockSelector(
                        Spell.CastOnGround("Death from Above", ret => Me.CurrentTarget.Distance > Distance.MeleeAoE),
                        //Spell.Cast("Fusion Missle", ret => Me.HasBuff("Thermal Sensor Override")),
		        Spell.CastOnGround("Sweeping Blasters", ret => Me.CurrentTarget.Distance > Distance.MeleeAoE),
                        Spell.Cast("Explosive Dart"))
                );
            }
        }
    }
}

Raiding Notes: (these are just suggestions, you may have to adjust for your style of play - passive abilities, etc.)
-This is one of the most difficult rotations in the game, but can produce insane DPS
-Resouces management is the biggest issue; you may have to tweek the low resource handler percentage a bit to get better results, however, overall I am pretty satisfied
-Some fights with lots of adds, Dot spreading with Explosive Dart and Fusion Missle are necessary, so you may want to tweek which AOE's you use
-I also take the ranged distance check off for the AOE's, this didnt work well in previous versions of Pure, but seem more realiable in the current Default routine.

Please let me know if anyone figures out how to combine some of my repeated lines. I am not brilliant with code, suggestions welcome :) Thanks

EDIT: I think I have found a way to combine the Mag Shot lines, still not sure on Power Shot:

Mag Shot line should look something like this I think:

Code:
Spell.Cast("Mag Shot", ret => Me.HasBuff("Innovative Particle Accelerator") || Me.HasBuff("Superheated Shot") && Me.Level >= 57),

I've tried this with Mag Shot & debuffs fix as in the upper code it doesn't use Mag Shot :) I am reading on dulfy that Innovative Ordnance is top for single target DPS. Though I am getting much lower average DPS compared to Arsenal. about 2/3 of what Arsenal produces with BW.
 
With Operative Medic, sometimes when the bot tries to cast Kolto Injection or Kolto Infusion on the companion, it will cast it on the Operative instead. Not sure how to "log" that besides observing the fact the bot targets the companion, casts the ability, then will switch back to the enemy target before the ability casts.
 
Companion targeting has been a bane of this bot for a while and has never been perfect.
 
so any ideas on how to make it stop lagging at 12 fps it makes the whole routine unusable
 
Back
Top