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!

YourRaidingBuddy - Coming Soon

Can anyone that understands this please remove Gauss Barrel as a requirement for buffs and wildfire on MCH? Simply removing the check in the code didn't seem to work.
 
So, I've been working on a bit of a warrior routine designed to be able to be swapped between stances manually. It takes advantage of the warrior debuffs, aiming for 100% uptime on Storm's Eye and Storm's Path on your primary target, however, this does mean as the target changes, it can have a bit of a painful time as it reapplies both of these. If another warrior already has them up, it won't attempt to apply, and goes straight into a DPS rotation. This is designed with several cross-classes in mind, including Internal Release, Provoke (Manual use only), Convalescence, Flash, Awareness. At 75% health it triggers off Foresight/Awareness for defense while healers heal you, at 35%, it kicks off Thrill of Battle, Convalescenese, equib if you're in tank stance, infuriate, blood bath, and inner beast if you're infuriated and in tank stance. I've mostly been running as an i180 warrior tank in A1-A3, and it's allowed me to keep up threat pretty closely with the current rounds of i200-i210 geared DPS in the raids.

This also supports some basic AoE rotations, taking advantage of Decimate or Steel Cyclone, and will use Infuriate if you're at 3 stacks or below of Wrath/Abandon to trigger these two off. Out of ApE, it prefers to use it on Fell Cleave if you're in DPS stance, to keep your aggro high.

At my current iLevel, whacking the training dummies, I'm around 650 DPS in DPS stance, 350-400 in Tank, though my gear is awful, so take it as you will. This also tends to keep my TP relatively high, completely whacking the training dummy, I'm hitting around 4-5 minutes before I run out of TP, and DPS is stable through that time. Running in A1-A3, I'm not having any TP issues at all, likely because of the phase changes and buffs from the various people around me.

Comments and suggestions are welcome, and I'm glad to try out other rotations that may be suggested.

Code:
using System.Net.Configuration;
using System.Threading.Tasks;
using ff14bot;
using ff14bot.Enums;
using ff14bot.Managers;
using ff14bot.Objects;
using YourRaidingBuddy.Helpers;
using YourRaidingBuddy.Settings;
using YourRaidingBuddy.Books;

namespace YourRaidingBuddy.Rotations
{
    public class Warrior : Root
    {
        private static LocalPlayer Me { get { return Core.Player; } } //Core.Player.CurrentTarget as BattleCharacter

        public override ClassJobType[] Class
        {
            get { return new[] { ClassJobType.Warrior }; }
        }

        public override void OnInitialize()
        {
            ;
        }

        #region NewRotation


        public static async Task<bool> AutoMode()
        {
            return await MainRotation();
        }

        public static async Task<bool> HotkeyMode()
        {
            return await MainRotation();
        }

        public static async Task<bool> MainRotation()
        {
            if (!Me.CurrentTarget.IsViable())
                return false;
            if (Me.CurrentHealthPercent < 75) await MitigationRotation();
            if (Me.CurrentHealthPercent < 35) await HealingRotation();
            if (VariableBook.HkmMultiTarget && await AoeRotation()) return true;
            if (await
                Spell.CastSpell("Fell Cleave",
                    () => Me.HasAura("Uncontrollable") && (Actionmanager.LastSpell.Name == "Skull Sunder" ||
                                                           Actionmanager.LastSpell.Name == "Butcher's Block")))
                return true;
            if (!Me.CurrentTarget.HasAura("Storm's Eye") && await StormEyeRotation()) return true;
            if (!Me.CurrentTarget.HasAura("Storm's Path") && await StormPathRotation()) return true;
            // if (await Spell.CastSpell("Fracture", () => !Me.CurrentTarget.HasAura("Fracture"))) return true;
            return await DpsRotation();
        }

        public static async Task<bool> StormEyeRotation()
        {
            if (await Spell.CastSpell("Storm's Eye", () => Actionmanager.LastSpell.Name == "Maim")) return true;
            if (await Spell.CastSpell("Maim", () => Actionmanager.LastSpell.Name == "Heavy Swing")) return true;
            if (await Spell.CastSpell("Heavy Swing", () => true)) return true;

            return false;
        }

        public static async Task<bool> StormPathRotation()
        {
            if (await Spell.CastSpell("Storm's Path", () => Actionmanager.LastSpell.Name == "Maim")) return true;
            if (await Spell.CastSpell("Maim", () => Actionmanager.LastSpell.Name == "Heavy Swing")) return true;
            if (await Spell.CastSpell("Heavy Swing", () => true)) return true;

            return false;
        }
        // Me.HasAura("Deliverance") ; !Me.HasAura("Abandon") && !Me.HasAura("Abandon II") && !Me.HasAura("Abandon III") ; Me.HasAura("Uncontrollable")
        // Me.HasAura("Defiance") ; !Me.HasAura("Wrath") && !Me.HasAura("Wrath II") && !Me.HasAura("Wrath III") ; Me.HasAura("Infuriated")

        public static async Task<bool> DpsRotation()
        {
            await Spell.CastSpell("Internal Release", Me, () => true);
            await Spell.CastSpell("Berserk", Me, () => Me.HasAura("Deliverance"));
            if (await Spell.CastSpell("Flash", Me, () => Me.HasAura("Defiance") && Me.CurrentMana > 800)) return true;
            await Spell.CastSpell("Unchained", Me, () => Me.HasAura("Infuriated"));
            if (await Spell.CastSpell("Steel Cyclone", Me, () => Me.HasAura("Infuriated"))) return true;
            await Spell.CastSpell("Brutal Swing", () => true);
            await
                Spell.CastSpell("Mercy Stroke", () =>
                        Me.CurrentTarget.CurrentHealthPercent < 20 && Me.CurrentTarget != null &&
                        (Actionmanager.LastSpell.Name == "Skull Sunder" ||
                         Actionmanager.LastSpell.Name == "Butcher's Block"));
            await Spell.CastSpell("Infuriate", Me, () => (Me.HasAura("Abandon") || Me.HasAura("Abandon II") || Me.HasAura("Abandon III")) && (Actionmanager.LastSpell.Name == "Skull Sunder" ||
                                                           Actionmanager.LastSpell.Name == "Butcher's Block"));
            if (await
                Spell.CastSpell("Fell Cleave",
                    () => Me.HasAura("Uncontrollable") && (Actionmanager.LastSpell.Name == "Skull Sunder" ||
                                                           Actionmanager.LastSpell.Name == "Butcher's Block")))
                return true;
            if (await Spell.CastSpell("Butcher's Block", () => Actionmanager.LastSpell.Name == "Skull Sunder")) return true;
            if (await Spell.CastSpell("Skull Sunder", () => Actionmanager.LastSpell.Name == "Heavy Swing")) return true;
            if (await Spell.CastSpell("Heavy Swing", () => true)) return true;
            return false;
        }

        public static async Task<bool> AoeRotation()
        {
            if (Me.HasAura("Deliverance"))
            {
                await Spell.CastSpell("Infuriate", Me, () => Me.HasAura("Abandon") || Me.HasAura("Abandon II") || Me.HasAura("Abandon III"));
                if (await Spell.CastSpell("Decimate", () => Me.HasAura(734))) return true;
            }
            else if (Me.HasAura("Defiance"))
            {
                await Spell.CastSpell("Infuriate", Me, () => Me.HasAura("Wrath") || Me.HasAura("Wrath II") || Me.HasAura("Wrath III"));
                if (await Spell.CastSpell("Steel Cyclone", () => Me.HasAura("Infuriated"))) return true;
            }
            return false;
        }

        public static async Task<bool> MitigationRotation()
        {
            await Spell.CastSpell("Foresight", Me, () => true);
            await Spell.CastSpell("Awareness", Me, () => true);

            return true;
        }

        public static async Task<bool> HealingRotation()
        {
            await Spell.CastSpell("Thrill of Battle", Me, () => true);
            await Spell.CastSpell("Convalescence", Me, () => true);
            await Spell.CastSpell("Equilibrium", Me, () => Me.HasAura("Defiance"));
            await Spell.CastSpell("Infuriate", Me, () => true);
            await Spell.CastSpell("Bloodbath", Me, () => true);
            await Spell.CastSpell("Inner Beast", Me, () => Me.HasAura("Infuriated"));
            return true;
        }

        #endregion

    }
}

I cannot run the multi-target mode.
I parametrized well touches! And the mode AOE shows activated! But he does not make AOE.
When I am in position Deliverance. He is going to continue has cast Fell Cleave. But will never make Decimate.
 
[12:11:47.982 D] Reloading AssemblyLoader<ff14bot.Interfaces.ICombatRoutine> - Initializing
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Helpers\Logging.cs(8,13) : error CS0234: 'Buddy' 네임스페이스에 'Overlay' 형식 또는 네임스페이스 이름이 없습니다. 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Helpers\Logging.cs(30,35) : error CS0246: 'ToastUIComponent' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\Overlay.cs(1,13) : error CS0234: 'Buddy' 네임스페이스에 'Overlay' 형식 또는 네임스페이스 이름이 없습니다. 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\OverlayControl.cs(6,13) : error CS0234: 'Buddy' 네임스페이스에 'Overlay' 형식 또는 네임스페이스 이름이 없습니다. 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\OverlayControl.cs(7,13) : error CS0234: 'Buddy' 네임스페이스에 'Overlay' 형식 또는 네임스페이스 이름이 없습니다. 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\OverlayControl.cs(16,39) : error CS0246: 'OverlayUIComponent' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\Overlay.cs(9,25) : error CS0246: 'OverlayUIComponent' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\OverlayControl.cs(18,25) : error CS0246: 'OverlayControl' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\OverlayControl.cs(756,25) : error CS0246: 'OverlayControl' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하십시오.
 
[12:11:47.982 D] Reloading AssemblyLoader<ff14bot.Interfaces.ICombatRoutine> - Initializing
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Helpers\Logging.cs(8,13) : error CS0234: 'Buddy' 네임스페이스에 'Overlay' 형식 또는 네임스페이스 이름이 없습니다. 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Helpers\Logging.cs(30,35) : error CS0246: 'ToastUIComponent' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\Overlay.cs(1,13) : error CS0234: 'Buddy' 네임스페이스에 'Overlay' 형식 또는 네임스페이스 이름이 없습니다. 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\OverlayControl.cs(6,13) : error CS0234: 'Buddy' 네임스페이스에 'Overlay' 형식 또는 네임스페이스 이름이 없습니다. 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\OverlayControl.cs(7,13) : error CS0234: 'Buddy' 네임스페이스에 'Overlay' 형식 또는 네임스페이스 이름이 없습니다. 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\OverlayControl.cs(16,39) : error CS0246: 'OverlayUIComponent' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\Overlay.cs(9,25) : error CS0246: 'OverlayUIComponent' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\OverlayControl.cs(18,25) : error CS0246: 'OverlayControl' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하십시오.
[12:11:55.126 N] Compiler Error: d:\RebornbuddyKR 1.0.18.0\Routines\RaidingBuddy\Core\Interface\Overlay\OverlayControl.cs(756,25) : error CS0246: 'OverlayControl' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하십시오.

Log.
 
Nice, looking forward to this. You do/have done an awsome work in HB sir :) PM sent!

/Regardes

Dreamteam
 
How's the status of this going? On the front page is says rotations are at 0%, but in the folder I see quite a few done.

As for healing, does this work pretty well?
 
How is the MCH rotation? The Monk Rotation? Ninja Rotation? Are they all Midas Savage competent?

You could just grab it and go kill a striking dummy while paying attention to the rotations.. or alternatively go play with the stone sky sea or whatever those are called =)
 
hey Xcesius how do you turn off the overlay on the screen ? this is what im talking about asdfasdfa.png
 
Last edited:
Anyone have idea how to implement "opener" in YRB? or Ultima?
i.e. sequential execution of skill order at the beginning of the fight
 
I've got to be dumb or something but, is there like a download link somewhere or am I missing something on how to get this? Any help would be appreciated.
 
hello :)... how does this work for warriors? i plan to use it for tanking raids... does it keep buffs and combos up all the time? can i chose between tanking and off-tanking (more dps)?
 
Hello
Nice work with this CR
Is there a way to implement opener's and let warrior pull with tomahawk?
 
Where can i download this CR nowdays? Svn access is password needed.
Want to look at it for learning purpose.
 
Back
Top