• Visit Rebornbuddy
  • Routines

    Discussion in 'Rebornbuddy Forum' started by CNsinger, Dec 31, 2013.

    1. CNsinger

      CNsinger New Member

      Joined:
      Jan 18, 2010
      Messages:
      7
      Likes Received:
      0
      Trophy Points:
      0
      Is there an easy way to change the current routines and add some abilities to the rotation?
       
    2. Exmortem

      Exmortem Community Developer

      Joined:
      Mar 28, 2010
      Messages:
      799
      Likes Received:
      16
      Trophy Points:
      18
      This is currently the rotation for Gladiator Paladin, found in the Kupo folder -> rotations -> GladiatorPaladin.cs



      Code:
              protected override Composite CreateCombat()
              {
                  return new PrioritySelector(
      
      
                      Cast("Riot Blade", r => Actionmanager.LastSpell.Name == "Savage Blade"),
                      Cast("Savage Blade", r => Actionmanager.LastSpell.Name == "Fast Blade"),
                      Cast("Fast Blade", r => true)
      
      
      
      
                      );
              }
      
      r => means return if

      It will evaluate the first spell starting at the top. So in english this translates to...

      Code:
      Use Riot Blade if the last ability I used was Savage Blade.
      Use Savage Blade if the last ability I used was Fast Blade.
      Use Fast Blade.
      
      Here's a few abilities added so you get the idea...

      Code:
              protected override Composite CreateCombat()
              {
                return new PrioritySelector(
                      Apply("Rampart", r => Core.Player.CurrentHealthPercent < 60),
                      Cast("Riot Blade", r => Actionmanager.LastSpell.Name == "Savage Blade" && Core.Player.CurrentManaPercent < 10),
                      Cast ("Rage of Halone", r=> Actionmanager.LastSpell.Name == "Savage Blade"),
                      Cast("Savage Blade", r => Actionmanager.LastSpell.Name == "Fast Blade"),
                      Cast("Fast Blade", r => true)
      
                      );
             {
      
      To Riot Blade I added a check that the last skilled used has to be Savage Blade AND the current mana percent has to be less than 10%. Under that is Rage of Halone if Savage Blade was the last skill used, but it's under Riot Blade because we want Riot Blade to be evaluated first or it'll never get used.

      We use Apply instead of Cast for abilities that add buffs/debuffs/hots/dots on targets. Since Rampart is a damage reducation buff on the player we're applying it when his health percent gets below 60%.

      This by no means comes close to covering it all, but without knowledge of programming it's a start. It's not easy but it's also not hard.
       
    3. DroidFanBoyJP

      DroidFanBoyJP Member

      Joined:
      Aug 13, 2011
      Messages:
      515
      Likes Received:
      0
      Trophy Points:
      16
      Awesome, thanks for this. Wanted to start looking into modifying / building onto the BLM one, as it is fine for pulling upper level mobs, but it's not that great if you are farming lower level mobs for mats, as it is resting all the time, without casting Blizzard or Transpose.
       

    Share This Page