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 Test Edition

Status
Not open for further replies.
So little update, i pushed all updates from the last posts to Github. We only need to edit the following:
Basic:
  • Agent.cs
  • BountyHunter.cs
  • Inquisitor.cs
  • Smugler.cs

Advanced:
  • Gunslinger
  • Mercenary
  • Operative
  • Powertech
  • Sage
  • Scoundrel
  • Sniper
  • Sorceror

Rest should be running but finetuned for patch 5.x to improve dps
 
So little update, i pushed all updates from the last posts to Github. We only need to edit the following:

Rest should be running but finetuned for patch 5.x to improve dps

Wow,thank you so very much. And I can also confirm that the Sentinel and Consular ones works very well. Going to try my Commando when servers come back on after yet another patch.
 
And the second:

Jedi Sentinel - Combat:
Code:
// Copyright (C) 2011-2016 Bossland GmbH
// See the file LICENSE for the source code's detailed license

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

namespace DefaultCombat.Routines
{
	internal class Combat : RotationBase
	{
		public override string Name
		{
			get { return "Sentinel Combat"; }
		}

		public override Composite Buffs
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Ataru Form"),
					Spell.Buff("Force Might")
					);
			}
		}

		public override Composite Cooldowns
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Resolute"),
					Spell.Buff("Rebuke", ret => Me.HealthPercent <= 90),
					Spell.Buff("Saber Reflect", ret => Me.HealthPercent <= 70),
					Spell.Buff("Guarded by the Force", ret => Me.HealthPercent <= 50),
					Spell.Buff("Unity", ret => Me.HealthPercent <= 30),
					Spell.Buff("Saber Ward", ret => Me.HealthPercent <= 50),
					Spell.Buff("Valorous Call", ret => Me.BuffCount("Centering") < 5),
					Spell.Buff("Zen", ret => Me.CurrentTarget.Distance <= 0.4f)
					);
			}
		}

		public override Composite SingleTarget
		{
			get
			{
				return new PrioritySelector(
					Spell.Cast("Saber Throw",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 0.5f && Me.CurrentTarget.Distance <= 3f),
					Spell.Cast("Force Leap",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 1f && Me.CurrentTarget.Distance <= 3f),
					Spell.Cast("Dual Saber Throw",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 1f && Me.CurrentTarget.Distance <= 3f),

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

					//Rotation
					Spell.Cast("Force Kick", ret => Me.CurrentTarget.IsCasting && !DefaultCombat.MovementDisabled),
					Spell.Cast("Dispatch", ret => Me.HasBuff("Hand of Justice") || Me.CurrentTarget.HealthPercent <= 30),
					Spell.Cast("Precision", ret => Me.CurrentTarget.Distance <= 0.4f),
					Spell.Cast("Blade Barrage", ret => Me.HasBuff("Precision")), // Renamed in patch 5.0 from Blade Dance
					Spell.Cast("Clashing Blast", ret => Me.HasBuff("Opportune Attack") && Me.Level >= 57),
					Spell.Cast("Blade Storm", ret => Me.HasBuff("Opportune Attack") && Me.Level < 57),
					Spell.Cast("Blade Rush"),
					Spell.Cast("Lance"), //New patch 5.0 ability
					Spell.Cast("Slash", ret => Me.ActionPoints >= 7 && Me.Level < 26),
					Spell.Cast("Zealous Strike", ret => Me.ActionPoints <= 7),
					Spell.Cast("Strike", ret => Me.ActionPoints <= 10)
					);
			}
		}

		public override Composite AreaOfEffect
		{
			get
			{
				return new Decorator(ret => Targeting.ShouldPbaoe,
					new PrioritySelector(
						Spell.Cast("Force Sweep"),
						Spell.Cast("Cyclone Slash")
						));
			}
		}
	}
}

Jedi Sentinel - Concentration:
Code:
// Copyright (C) 2011-2016 Bossland GmbH
// See the file LICENSE for the source code's detailed license

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

namespace DefaultCombat.Routines
{
	internal class Concentration : RotationBase
	{
		public override string Name
		{
			get { return "Sentinel Concentration"; }
		}

		public override Composite Buffs
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Shii-Cho Form"),
					Spell.Buff("Force Might")
					);
			}
		}

		public override Composite Cooldowns
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Rebuke", ret => Me.HealthPercent <= 50),
					Spell.Buff("Guarded by the Force", ret => Me.HealthPercent <= 10),
					Spell.Buff("Saber Ward", ret => Me.HealthPercent <= 30)
					);
			}
		}

		public override Composite SingleTarget
		{
			get
			{
				return new PrioritySelector(
					//Movement
					CombatMovement.CloseDistance(Distance.Melee),

					//Rotation
					Spell.Cast("Force Leap"),
					Spell.Cast("Dispatch", ret => Me.CurrentTarget.HealthPercent <= 30),
					Spell.Cast("Force Sweep", ret => Me.HasBuff("Singularity") && Me.HasBuff("Felling Blow")),
					Spell.Cast("Force Exhaustion"),
					Spell.Cast("Zealous Leap", ret => Me.HasBuff("Singularity")),
					Spell.Cast("Blade Storm", ret => Me.HasBuff("Battle Cry") || Me.Energy >= 5),
					Spell.Cast("Dual Saber Throw"),
					Spell.Cast("Blade Barrage"),
					Spell.Cast("Force Stasis"),
					Spell.Cast("Slash", ret => Me.HasBuff("Zen")),
					Spell.Cast("Zealous Strike"),
					Spell.Cast("Strike")
					);
			}
		}

		public override Composite AreaOfEffect
		{
			get
			{
				return new Decorator(ret => Targeting.ShouldPbaoe,
					new PrioritySelector(
						));
			}
		}
	}
}

Jedi Guardian - Watchman:
Code:
// Copyright (C) 2011-2016 Bossland GmbH
// See the file LICENSE for the source code's detailed license

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

namespace DefaultCombat.Routines
{
	internal class Watchman : RotationBase
	{
		public override string Name
		{
			get { return "Sentinel Watchman"; }
		}

		public override Composite Buffs
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Juyo Form"),
					Spell.Buff("Force Might")
					);
			}
		}

		public override Composite Cooldowns
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Rebuke", ret => Me.HealthPercent <= 50),
					Spell.Buff("Guarded by the Force", ret => Me.HealthPercent <= 10),
					Spell.Buff("Saber Ward", ret => Me.HealthPercent <= 30)
					);
			}
		}

		public override Composite SingleTarget
		{
			get
			{
				return new PrioritySelector(
					//Movement
					CombatMovement.CloseDistance(Distance.Melee),

					//Rotation
					Spell.Cast("Force Kick", ret => Me.CurrentTarget.IsCasting && !DefaultCombat.MovementDisabled),
					Spell.Buff("Zen", ret => Me.BuffCount("Centering") > 29),
					Spell.Buff("Valorous Call", ret => Me.BuffCount("Centering") < 5),
					Spell.Buff("Overload Saber", ret => !Me.HasBuff("Overload Saber")),
					Spell.DoT("Cauterize", "Burning (Cauterize)"),
					Spell.DoT("Force Melt", "Burning (Force Melt)"),
					Spell.Cast("Dispatch", ret => Me.CurrentTarget.HealthPercent <= 30),
					Spell.Cast("Merciless Slash"),
					Spell.Cast("Zealous Strike", ret => Me.ActionPoints <= 5),
					Spell.Cast("Blade Barrage"),
					Spell.Cast("Slash", ret => Me.Level < 41),
					Spell.Cast("Strike", ret => Me.ActionPoints <= 10)
					);
			}
		}

		public override Composite AreaOfEffect
		{
			get
			{
				return new Decorator(ret => Targeting.ShouldPbaoe,
					new PrioritySelector(
						Spell.Cast("Force Sweep"),
						Spell.Cast("Twin Saber Throw"),
						Spell.Cast("Cyclone Slash")
						));
			}
		}
	}
}

I added this to GitHub .. made some corrections: removed Shii-Cho Form from Concentration and Juyo Form from Watchman
 
These specs need to be double checked on the "Vicious Throw" ability. Vengeance got it renamed to Hew, but i still find Vicious Throw naming in the Data mining.

Vengeance:
Code:
// Copyright (C) 2011-2016 Bossland GmbH
// See the file LICENSE for the source code's detailed license

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

namespace DefaultCombat.Routines
{
	internal class Vengeance : RotationBase
	{
		public override string Name
		{
			get { return "Juggernaut Vengeance"; }
		}

		public override Composite Buffs
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Unnatural Might")
					);
			}
		}

		public override Composite Cooldowns
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Unleash", ret => Me.IsStunned),
					Spell.Buff("Enraged Defense", ret => Me.HealthPercent <= 70),
					Spell.Buff("Saber Reflect", ret => Me.HealthPercent <= 60),
					Spell.Buff("Saber Ward", ret => Me.HealthPercent <= 50),
					Spell.Buff("Endure Pain", ret => Me.HealthPercent <= 30),
					Spell.Buff("Enrage", ret => Me.ActionPoints <= 6)
					);
			}
		}

		public override Composite SingleTarget
		{
			get
			{
				return new PrioritySelector(
					Spell.Cast("Saber Throw",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 0.5f && Me.CurrentTarget.Distance <= 3f),
					Spell.Cast("Force Charge",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 1f && Me.CurrentTarget.Distance <= 3f),

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

					//Rotation
					Spell.Cast("Disruption", ret => Me.CurrentTarget.IsCasting && !DefaultCombat.MovementDisabled),
					Spell.Cast("Force Scream", ret => Me.BuffCount("Savagery") == 2),
					Spell.Cast("Hew" ret => Me.HasBuff("Destroyer") || Me.CurrentTarget.HealthPercent <= 30), //New patch 5.0 ability, renamed from Vicious Throw
					Spell.Cast("Shatter"),
					Spell.Cast("Impale"),
					Spell.Cast("Sundering Assault", ret => Me.ActionPoints <= 7),
					Spell.Cast("Ravage"),
					Spell.Cast("Vicious Slash", ret => Me.ActionPoints >= 11),
					Spell.Cast("Assault"),
					Spell.Cast("Retaliation")
					);
			}
		}

		public override Composite AreaOfEffect
		{
			get
			{
				return new Decorator(ret => Targeting.ShouldPbaoe,
					new PrioritySelector(
						Spell.Cast("Vengeful Slam"),
						Spell.Cast("Smash"),
						Spell.Cast("Sweeping Slash")
						));
			}
		}
	}
}

Rage:
Code:
// Copyright (C) 2011-2016 Bossland GmbH
// See the file LICENSE for the source code's detailed license

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

namespace DefaultCombat.Routines
{
	internal class Rage : RotationBase
	{
		public override string Name
		{
			get { return "Juggernaut Rage"; }
		}

		public override Composite Buffs
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Shii-Cho Form"),
					Spell.Buff("Unnatural Might")
					);
			}
		}

		public override Composite Cooldowns
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Unleash", ret => Me.IsStunned),
					Spell.Buff("Saber Reflect", ret => Me.HealthPercent <= 90),
					Spell.Buff("Saber Ward", ret => Me.HealthPercent <= 70),
					Spell.Buff("Endure Pain", ret => Me.HealthPercent <= 30),
					Spell.Buff("Enrage", ret => Me.ActionPoints <= 6)
					);
			}
		}

		public override Composite SingleTarget
		{
			get
			{
				return new PrioritySelector(
					Spell.Cast("Saber Throw",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 0.5f && Me.CurrentTarget.Distance <= 3f),
					Spell.Cast("Force Charge",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 1f && Me.CurrentTarget.Distance <= 3f),

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

					//Rotation
					Spell.Cast("Vicious Throw", ret => Me.CurrentTarget.HealthPercent <= 30), //Is this renamed to Hew in patch 5.0?
					Spell.Cast("Smash",
						ret => Me.BuffCount("Shockwave") == 3 && Me.HasBuff("Dominate") && Me.CurrentTarget.Distance <= 0.5f),
					Spell.Cast("Force Choke", ret => Me.BuffCount("Shockwave") < 4),
					Spell.Cast("Force Crush", ret => Me.BuffCount("Shockwave") < 4),
					Spell.Cast("Obliterate", ret => Me.HasBuff("Shockwave")),
					Spell.Cast("Force Scream", ret => Me.HasBuff("Battle Cry") || Me.ActionPoints >= 5),
					Spell.Cast("Ravage"),
					Spell.Cast("Vicious Slash"),
					Spell.Cast("Sundering Assault", ret => Me.CurrentTarget.DebuffCount("Armor Reduced") <= 5),
					Spell.Cast("Assault")
					);
			}
		}

		public override Composite AreaOfEffect
		{
			get
			{
				return new Decorator(ret => Targeting.ShouldPbaoe,
					new PrioritySelector(
						Spell.Cast("Smash"),
						Spell.Cast("Sweeping Slash")
						));
			}
		}
	}
}

Immortal:
Code:
// Copyright (C) 2011-2016 Bossland GmbH
// See the file LICENSE for the source code's detailed license

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

namespace DefaultCombat.Routines
{
	internal class Immortal : RotationBase
	{
		public override string Name
		{
			get { return "Juggernaut Immortal"; }
		}

		public override Composite Buffs
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Unnatural Might"),
					Spell.Cast("Guard", on => Me.Companion,
						ret => Me.Companion != null && !Me.Companion.IsDead && !Me.Companion.HasBuff("Guard"))
					);
			}
		}

		public override Composite Cooldowns
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Unleash"),
					Spell.Buff("Saber Reflect", ret => Me.HealthPercent <= 90),
					Spell.Buff("Endure Pain", ret => Me.HealthPercent <= 80),
					Spell.Buff("Enraged Defense", ret => Me.HealthPercent < 70),
					Spell.Buff("Invincible", ret => Me.HealthPercent <= 50),
					Spell.Buff("Saber Ward", ret => Me.HealthPercent <= 30),
					Spell.Buff("Enrage", ret => Me.ActionPoints <= 6)
					);
			}
		}

		public override Composite SingleTarget
		{
			get
			{
				return new PrioritySelector(
					Spell.Cast("Saber Throw",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 0.5f && Me.CurrentTarget.Distance <= 3f),
					Spell.Cast("Force Charge",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 1f && Me.CurrentTarget.Distance <= 3f),

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

					//Rotation
					Spell.Cast("Retaliation"),
					Spell.Cast("Crushing Blow"),
					Spell.Cast("Force Scream"),
					Spell.Cast("Aegis Assault", ret => Me.ActionPoints <= 7 || !Me.HasBuff("Aegis")),
					Spell.Cast("Smash", ret => !Me.CurrentTarget.HasDebuff("Unsteady (Force)") && Targeting.ShouldPbaoe),
					Spell.Cast("Backhand", ret => !Me.CurrentTarget.IsStunned),
					Spell.Cast("Ravage"),
					Spell.Cast("Vicious Throw", ret => Me.CurrentTarget.HealthPercent <= 30 || Me.HasBuff("War Bringer")), //Is this renamed to Hew in patch 5.0?
					Spell.Cast("Vicious Slash", ret => Me.ActionPoints >= 9),
					Spell.Cast("Assault"),
					Spell.Cast("Saber Throw", ret => Me.CurrentTarget.Distance >= 0.5f && Me.InCombat)
					);
			}
		}

		public override Composite AreaOfEffect
		{
			get
			{
				return new Decorator(ret => Targeting.ShouldPbaoe,
					new PrioritySelector(
						Spell.Cast("Smash"),
						Spell.Cast("Crushing Blow", ret => Me.HasBuff("Aegis")),
						Spell.Cast("Aegis Assault", ret => !Me.HasBuff("Aegis")),
						Spell.Cast("Retaliation"),
						Spell.Cast("Force Scream"),
						Spell.Cast("Sweeping Slash")
						));
			}
		}
	}
}

Fury:
Code:
// Copyright (C) 2011-2016 Bossland GmbH
// See the file LICENSE for the source code's detailed license

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

namespace DefaultCombat.Routines
{
	internal class Fury : RotationBase
	{
		public override string Name
		{
			get { return "Marauder Fury"; }
		}

		public override Composite Buffs
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Unnatural Might")
					);
			}
		}

		public override Composite Cooldowns
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Cloak of Pain", ret => Me.HealthPercent <= 50),
					Spell.Buff("Undying Rage", ret => Me.HealthPercent <= 10),
					Spell.Buff("Saber Ward", ret => Me.HealthPercent <= 30)
					);
			}
		}

		public override Composite SingleTarget
		{
			get
			{
				return new PrioritySelector(
					Spell.Cast("Force Charge",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 1f && Me.CurrentTarget.Distance <= 3f),

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

					//Rotation
					Spell.Cast("Vicious Throw", ret => Me.CurrentTarget.HealthPercent <= 30),
					Spell.Cast("Smash", ret => Me.BuffCount("Shockwave") == 3 && Me.HasBuff("Dominate")),
					Spell.Cast("Force Crush"),
					Spell.Cast("Obliterate", ret => Me.HasBuff("Shockwave")),
					Spell.Cast("Force Scream", ret => Me.HasBuff("Battle Cry") || Me.ActionPoints >= 5),
					Spell.Cast("Dual Saber Throw"),
					Spell.Cast("Ravage"),
					Spell.Cast("Force Choke"),
					Spell.Cast("Vicious Slash", ret => Me.HasBuff("Berserk")),
					Spell.Cast("Battering Assault"),
					Spell.Cast("Assault")
					);
			}
		}

		public override Composite AreaOfEffect
		{
			get
			{
				return new Decorator(ret => Targeting.ShouldPbaoe,
					new PrioritySelector(
						Spell.Cast("Smash"),
						Spell.Cast("Sweeping Slash")
						));
			}
		}
	}
}

Carnage:
Code:
// Copyright (C) 2011-2016 Bossland GmbH
// See the file LICENSE for the source code's detailed license

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

namespace DefaultCombat.Routines
{
	internal class Carnage : RotationBase
	{
		public override string Name
		{
			get { return "Marauder Carnage"; }
		}

		public override Composite Buffs
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Unnatural Might")
					);
			}
		}

		public override Composite Cooldowns
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Unleash"),
					Spell.Buff("Cloak of Pain", ret => Me.HealthPercent <= 90),
					Spell.Buff("Force Camouflage", ret => Me.HealthPercent <= 70),
					Spell.Buff("Saber Ward", ret => Me.HealthPercent <= 50),
					Spell.Buff("Undying Rage", ret => Me.HealthPercent <= 10),
					Spell.Buff("Frenzy", ret => Me.BuffCount("Fury") < 5),
					Spell.Buff("Berserk")
					);
			}
		}

		public override Composite SingleTarget
		{
			get
			{
				return new PrioritySelector(
					Spell.Cast("Saber Throw",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 0.5f && Me.CurrentTarget.Distance <= 3f),
					Spell.Cast("Force Charge",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 1f && Me.CurrentTarget.Distance <= 3f),
					Spell.Cast("Dual Saber Throw",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 1f && Me.CurrentTarget.Distance <= 3f),

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

					//Rotation
					Spell.Cast("Disruption", ret => Me.CurrentTarget.IsCasting && !DefaultCombat.MovementDisabled),
					Spell.Cast("Massacre", ret => !Me.HasBuff("Massacre")),
					Spell.Cast("Ferocity"), // Renamed in patch 5.0 from Gore
					Spell.Cast("Gore"), // New ability in patch 5.0: New Active Ability: Gore. Impales the target with both lightsabers, dealing weapon damage and hindering the target for 1.5 seconds, preventing the use of high mobility actions and escapes. Requires two lightsabers.  
					Spell.Cast("Ravage", ret => Me.HasBuff("Gore")),
					Spell.Cast("Vicious Throw"),
					Spell.Cast("Force Scream", ret => Me.HasBuff("Execute") && Me.Level < 58),
					Spell.Cast("Devastating Blast", ret => Me.HasBuff("Execute") && Me.Level > 57),
					Spell.Cast("Massacre"),
					Spell.Cast("Dual Saber Throw"),
					Spell.Cast("Battering Assault"),
					Spell.Cast("Assault")
					);
			}
		}

		public override Composite AreaOfEffect
		{
			get
			{
				return new Decorator(ret => Targeting.ShouldPbaoe,
					new PrioritySelector(
						Spell.Cast("Smash"),
						Spell.Cast("Sweeping Slash")
						));
			}
		}
	}
}

Annihilation:
Code:
// Copyright (C) 2011-2016 Bossland GmbH
// See the file LICENSE for the source code's detailed license

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

namespace DefaultCombat.Routines
{
	internal class Annihilation : RotationBase
	{
		public override string Name
		{
			get { return "Marauder Annihilation"; }
		}

		public override Composite Buffs
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Unnatural Might")
					);
			}
		}

		public override Composite Cooldowns
		{
			get
			{
				return new PrioritySelector(
					Spell.Buff("Cloak of Pain", ret => Me.HealthPercent <= 90),
					Spell.Buff("Undying Rage", ret => Me.HealthPercent <= 20),
					Spell.Buff("Saber Ward", ret => Me.HealthPercent <= 50),
					Spell.Buff("Deadly Saber", ret => !Me.HasBuff("Deadly Saber")),
					Spell.Buff("Frenzy", ret => Me.BuffCount("Fury") < 5),
					Spell.Buff("Berserk", ret => Me.CurrentTarget.DebuffCount("Bleeding (Deadly Saber)") == 3)
					);
			}
		}

		public override Composite SingleTarget
		{
			get
			{
				return new PrioritySelector(
					Spell.Cast("Dual Saber Throw",
						ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 1f && Me.CurrentTarget.Distance <= 3f),
					Spell.Cast("Force Charge",
						ret =>
							!DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= Distance.Melee && Me.CurrentTarget.Distance <= 3f),

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

					//Rotation
					Spell.Cast("Disruption", ret => Me.CurrentTarget.IsCasting && !DefaultCombat.MovementDisabled),
					Spell.DoT("Force Rend", "Force Rend"),
					Spell.DoT("Rupture", "Bleeding (Rupture)"),
					Spell.Cast("Dual Saber Throw", ret => Me.HasBuff("Pulverize")),
					Spell.Cast("Annihilate"),
					Spell.Cast("Vicious Throw", ret => Me.CurrentTarget.HealthPercent <= 30),
					Spell.Cast("Ravage"),
					Spell.Cast("Vicious Slash", ret => Me.ActionPoints >= 9),
					Spell.Cast("Battering Assault", ret => Me.ActionPoints <= 6),
					Spell.Cast("Force Charge", ret => Me.ActionPoints <= 8),
					Spell.Cast("Assault", ret => Me.ActionPoints < 9)
					);
			}
		}

		public override Composite AreaOfEffect
		{
			get
			{
				return new Decorator(ret => Targeting.ShouldPbaoe,
					new PrioritySelector(
						Spell.Cast("Dual Saber Throw",
							ret => !DefaultCombat.MovementDisabled && Me.CurrentTarget.Distance >= 1f && Me.CurrentTarget.Distance <= 3f),
						Spell.Cast("Smash",
							ret => Me.CurrentTarget.HasDebuff("Bleeding (Rupture)") && Me.CurrentTarget.HasDebuff("Force Rend")),
						Spell.DoT("Force Rend", "Force Rend"),
						Spell.DoT("Rupture", "Bleeding (Rupture)"),
						Spell.Cast("Sweeping Slash")
						));
			}
		}
	}
}


added to GitHub made composite buff form corrections in Rage, Vicious Throw was not renamed for Immortal, this is why it can still be data mined.
 
So little update, i pushed all updates from the last posts to Github. We only need to edit the following:
Basic:
  • Agent.cs
  • BountyHunter.cs
  • Inquisitor.cs
  • Smugler.cs

Advanced:
  • Gunslinger
  • Mercenary
  • Operative
  • Powertech
  • Sage
  • Scoundrel
  • Sniper
  • Sorceror

Rest should be running but finetuned for patch 5.x to improve dps

Basic
Agent.cs - done
BountyHunter.cs - done
Inquisitor.cs - done
Smuggler.cs - done
 
Sorry old buddy returning. I'm not sure what github is but how do I download these routines to SVN?
 
Here are the routine changes that need to be made for the Assassin specs. There are probably more, based on new utilities, but this should get them working in 5.0

Darkness:
Removed line 22 - Spell.Buff("Dark Charge")

Deception:
Removed line 22 - Spell.Buff("Surging Charge")
Removed line 38 - Spell.Buff("Blackout", ret => Me.ForcePercent <= 40)

Hatred:
Removed line 22 - Spell.Buff("Lightning Charge")
Updated line 59 - Spell.Cast("Eradicate", ret => Me.HasBuff("Raze") && Me.Level >= 57), // "Eradicate" - Replaces Demolish
Updated line 76 - Spell.DoT("Discharge", "Shocked (Discharge)"), // Debuff was not named correctly, should be "Shocked (Discharge)"
Updated line 81 - Me.CurrentTarget.HasDebuff("Shocked (Discharge)") && Me.CurrentTarget.HasDebuff("Creeping Terror") && // Debuff was not named correctly, should be "Shocked (Discharge)"

There are a lot more, these changes will not get it working but I'm working on this now since you started it.
 
Here is an updated Default Combat that contains all changes with the exception of the following:

Advanced

  • Gunslinger
  • Mercenary
  • Operative
  • Powertech
  • Sage
  • Scoundrel
  • Sniper

The attachment has been added to the latest release, attachment has been deleted
 
Last edited:
Assassin Specs - Updated with Pull Requests

There are a lot more, these changes will not get it working but I'm working on this now since you started it.

I put these all in with Pull Requests on the github site. Not sure I did them right, but hopefully someone can figure out my mess :)
 
I put these all in with Pull Requests on the github site. Not sure I did them right, but hopefully someone can figure out my mess :)

I did them, Assassin should be fine in the latest release. If not post a log so we can see what is going on.
 
Okay I lied, I put in pulls for all bounty hunter specs. The assassin updates for hatred and deception are working for me. I only posted those on this thread.
 
Okay I lied, I put in pulls for all bounty hunter specs. The assassin updates for hatred and deception are working for me. I only posted those on this thread.

Yes I took what you posted and added the missing stuff and removed some form code. At this point your best bet is to post BH here because I've already started it so Aevitas isn't going to know which to commit at this point. Also before doing the pulls make sure they are all tested.
 
How do I disable movement with this routine? I am currently running the routine with combat bot profile but when i enter combat routine takes over all movement.
 
Yes I took what you posted and added the missing stuff and removed some form code. At this point your best bet is to post BH here because I've already started it so Aevitas isn't going to know which to commit at this point. Also before doing the pulls make sure they are all tested.

Sounds good, ty for you work on this. I did test each of the specs for Bounty Hunter before submitting the pull requests. I will post future change requests in the forum.
 
How do I disable movement with this routine? I am currently running the routine with combat bot profile but when i enter combat routine takes over all movement.

I would check your profile. Routines do not cause movement, profiles do.

Combat Bot.xml

Code:
<Profile>
<Name>Combat Bot</Name> 
</Profile>
 
Latest Combat Routine

Latest Default Combat - includes all advanced classes (not 100% optimized), until a new release of BW is pushed out that contains these changes.
 

Attachments

Status
Not open for further replies.
Back
Top