• Visit Rebornbuddy
  • [Custom Class] Mammon - The Prince of Greed, All-In-One Combat Routine

    Discussion in 'Archives' started by j0achim, Jun 11, 2012.

    Thread Status:
    Not open for further replies.
    1. j0achim

      j0achim New Member

      Joined:
      Jan 15, 2010
      Messages:
      532
      Likes Received:
      15
      Trophy Points:
      0
      Update 3 up!

      Not sure what changes i really get to make this build i have had so much trouble running the bot last few hours, and the new builds the buddyteam have been sending out made a big mess. So have had to go back and forth just to manage get some skills working.

      But revenge is added!


      On a side note i might need to find a better spot when doing development because Core of Arreat is just terrible to watch and impossible to really debug because of the horrible lag bot gets there.
       
    2. rsanviral

      rsanviral New Member

      Joined:
      Jun 2, 2010
      Messages:
      46
      Likes Received:
      0
      Trophy Points:
      0
      So it isn't just me then? I notice when I load demonbuddy my client just stutters to hell and back while running this routine. Will run smooth and then every 2 or 3 seconds, freezes for a second etc etc.
       
    3. nucleotides

      nucleotides Active Member

      Joined:
      Jun 2, 2012
      Messages:
      1,060
      Likes Received:
      11
      Trophy Points:
      38
      Me either but I decided to stop trolling this thread for a while.

      For those who were talking about looting blues. I recently switch to a profile to loot blues and sell all but legendaries and jumped from 170ishk an hour to 220k. It fluctuates widely based on selling blues (at one point it said 300k at the start of my current session) I also managed to pull out my enchantress since it seems i forgot her all day. So those two together seem to be very lucrative. Now I just gotta figure out or find a profile that won't pick up these damn gems and pages.

      stats:
      GF: 202
      Radius: 28
      Movespeed: 0%
       
      Last edited: Jun 11, 2012
    4. tozededao

      tozededao Community Developer

      Joined:
      Jan 15, 2010
      Messages:
      1,225
      Likes Received:
      5
      Trophy Points:
      38
      Hey, at the moment im trying to make a simple CC for Monk using these abilities:

      Fists of Thunder -> Thunderclap (it teleports to target if not on melee, spirit generator)
      Mantra of Evasion -> Wind through the Reeds(5% movement speed)

      Breath of Heaven -> Infused with light (it heals for 7k, 5 seconds after activation I generate additional 6 spirit per spirit generator ability)
      Blinding Flash -> Self Reflection (Blinds enemies for 4 seconds)
      Serenity -> Ascension (Immune for 4 seconds)
      Sweeping Wind -> Bladestorm (Now this ability is hard to put into a CC, when you use it it gives you a 6second buff that deals damage AOE, its refreshed by attacking or using ability again, if you critical hit an enemy it gains 1 stack dealing more damage, stacks up to 3 times)

      This is my edit so far:

      Code:
      
      using System;
      using Belphegor.Dynamics;
      using Belphegor.Helpers;
      using Zeta;
      using Zeta.Common;
      using Zeta.CommonBot;
      using Zeta.Internals.Actors;
      using Zeta.TreeSharp;
      using Action = Zeta.TreeSharp.Action;
      
      
      namespace Belphegor.Routines
      {
          public class Monk
          {
              [Class(ActorClass.Monk)]
              [Behavior(BehaviorType.OutOfCombat)]
              [Priority(2)]
              public static Composite MonkBuffs()
              {
                  return 
                      new PrioritySelector(
                      Spell.Buff(SNOPower.Monk_SweepingWind),
                      Spell.Buff(SNOPower.Monk_MantraOfEvasion,
                                      require => ZetaDia.Me.HasBuff(SNOPower.Monk_SweepingWind)
                                  )
                      
                      );
              }
      
      
              [Class(ActorClass.Monk)]
              [Behavior(BehaviorType.Combat)]
              [Priority(1)]
              public static Composite MonkCombat()
              {
                  return
                      new PrioritySelector(ctx => CombatTargeting.Instance.FirstNpc,
                          MonkBuffs(),
                          new Decorator(ctx => ctx != null,
                              new PrioritySelector(
                              
                              
                                  Spell.Buff(SNOPower.Monk_BreathOfHeaven,
                                      require => ZetaDia.Me.HitpointsCurrentPct <= 80 || Clusters.GetClusterCount(ZetaDia.Me, CombatTargeting.Instance.LastObjects, ClusterType.Radius, 12f) >= 2
                                  ),
                                  // Defence low hp or many attackers.
                                  Spell.Buff(SNOPower.Monk_Serenity,
                                      require => ZetaDia.Me.HitpointsCurrentPct <= 25 || Clusters.GetClusterCount(ZetaDia.Me, CombatTargeting.Instance.LastObjects, ClusterType.Radius, 12f) >= 6
                                  ),
      
      
                                  // Pull phase.
                                  new Decorator(ctx => ctx != null && ((DiaUnit)ctx).Distance > 15f,
                                       new PrioritySelector(
                                          Spell.CastAtLocation(SNOPower.Monk_FistsofThunder, ret => CombatTargeting.Instance.FirstNpc.Position)
                                      )
                                  ),
      
      
                                  // Move to the unit.
                                  new Decorator(ctx => ctx != null && ((DiaUnit)ctx).Distance > 15f,
                                      CommonBehaviors.MoveTo(ctx => ((DiaUnit)ctx).Position, "Moving towards unit")
                                  ),
                                  
                                  
                                  
                                  Spell.CastAOESpell(SNOPower.Monk_BlindingFlash, 
                                  extra => Clusters.GetClusterCount(ZetaDia.Me, CombatTargeting.Instance.LastObjects, ClusterType.Radius, 20f) >= 5
                                  ),
                                  
      
      
                                  // AOE
                                  Spell.CastAOESpell(SNOPower.Monk_SweepingWind,
                                      require => !ZetaDia.Me.HasBuff(SNOPower.Monk_SweepingWind)
                                  ),
                                  
                                   Spell.CastAtLocation(SNOPower.Monk_FistsofThunder, ret => CombatTargeting.Instance.FirstNpc.Position)
                                  
      
      
      
      
                                 
                              )
                          ),
      
      
                          new Action(ret => RunStatus.Success)
                          );
              }
      
      
              public static void MonkOnLevelUp(object sender, EventArgs e)
              {
                  if (ZetaDia.Me.ActorClass != ActorClass.Monk)
                      return;
      
      
                  int myLevel = ZetaDia.Me.Level;
      
      
                  Logger.Write("Player leveled up, congrats! Your level is now: {0}",
                      myLevel
                      );
      
      
                  // Set Lashing tail kick once we reach level 2
                  if (myLevel == 2)
                  {
                      ZetaDia.Me.SetActiveSkill(SNOPower.Monk_LashingTailKick, -1, 1);
                      Logger.Write("Setting Lash Tail Kick as Secondary");
                  }
      
      
                  // Set Dead reach it's better then Fists of thunder imo.
                  if (myLevel == 3)
                  {
                      ZetaDia.Me.SetActiveSkill(SNOPower.Monk_DeadlyReach, -1, 0);
                      Logger.Write("Setting Deadly Reach as Primary");
                  }
      
      
                  // Make sure we set binding flash, useful spell in crowded situations!
                  if (myLevel == 4)
                  {
                      ZetaDia.Me.SetActiveSkill(SNOPower.Monk_BlindingFlash, -1, 2);
                      Logger.Write("Setting Binding Flash as Defensive");
                  }
      
      
                  // Binding flash is nice but being alive is even better!
                  if (myLevel == 8)
                  {
                      ZetaDia.Me.SetActiveSkill(SNOPower.Monk_BreathOfHeaven, -1, 2);
                      Logger.Write("Setting Breath of Heaven as Defensive");
                  }
      
      
                  // Make sure we set Dashing strike, very cool and useful spell great opener.
                  if (myLevel == 9)
                  {
                      ZetaDia.Me.SetActiveSkill(SNOPower.Monk_DashingStrike, -1, 3);
                      Logger.Write("Setting Dashing Strike as Techniques");
                  }
              }
          }
      }
      
      
      I am encountering these problems:
      - It is using Thunderclap with the Shift modifier so it is not teleporting but it's atacking on melee range only.
      - When there are mobs at melee range it seems it is not spamming Fists of Thunder.

      Maybe you can help me :)
       
    5. Tjann

      Tjann New Member

      Joined:
      Jun 9, 2012
      Messages:
      79
      Likes Received:
      0
      Trophy Points:
      0
      Hey I installed the update and all.
      When I try to run the bot he just stands in townand does nothing. The other routine with my Dh works like a charm.
      What am i doing wrong?

      EDIT:Works now but sometimes he runs around mobs without hitting them. and pnly 100k GHP.
      Got 220kwith my DH and he only gets a lil more dmg from the same gear.
       
      Last edited: Jun 11, 2012
    6. j0achim

      j0achim New Member

      Joined:
      Jan 15, 2010
      Messages:
      532
      Likes Received:
      15
      Trophy Points:
      0
      Update 4!


      Revenge is now actually used :)



      tozededao make sure you use my version of
      Belphegor.cs becuase i had to add some code that was yet not added to that file yet to make the buff routine work. It ONLY contains added code so its base is exact same as the one shipped with Demonbuddy.[FONT=arial, helvetica, sans-serif]
      [/FONT]
       
    7. sol

      sol New Member

      Joined:
      Jun 11, 2012
      Messages:
      14
      Likes Received:
      0
      Trophy Points:
      0
      hi joachim

      thanks for your work

      any "recommended" build to use with your updated versions?
       
    8. j0achim

      j0achim New Member

      Joined:
      Jan 15, 2010
      Messages:
      532
      Likes Received:
      15
      Trophy Points:
      0
      That's the thing, i cannot really recommend any "perfect" builds since there are so many things that makes up the end result, in the sense what stats you have. Best thing to do would be finding a spot that is not as hectic as Core of Arreat because of the stuttering bot+diablo will generate when running it there, then just play around with different skills. Note that its not the routine that generates the lag/stuttering.

      (I am planning to optimize this for the most common builds and see if i can make some good GPH)

      In one of my first posts in this thread i posted a image with my skills that i am quite happy with.
       
    9. Haaken

      Haaken New Member

      Joined:
      Mar 11, 2012
      Messages:
      96
      Likes Received:
      0
      Trophy Points:
      0

      Loots magic items and ^
      Sells Blue and Rare
      Keep Legendary and Set
      Does NOT loot Health Pots, Gems, Pages/Tomes.

       
    10. 99dsimonp

      99dsimonp Member

      Joined:
      Jan 15, 2010
      Messages:
      587
      Likes Received:
      0
      Trophy Points:
      16
      With your latest release I started the bot and once it got to town it started spamming:
      [10:34:20.863 N] [Belphegor] Blah!
      about a hundred times.

      I fixed the error below that it threw at me. Have you got any clue why it would spam like this?
       

      Attached Files:

    11. Haaken

      Haaken New Member

      Joined:
      Mar 11, 2012
      Messages:
      96
      Likes Received:
      0
      Trophy Points:
      0
      Has happened to all of us, when you start from menu.

      When you get in game, and see... Blah!Blah!Blah!
      Just press stop, then start it again from inside the game, works.
       
    12. 99dsimonp

      99dsimonp Member

      Joined:
      Jan 15, 2010
      Messages:
      587
      Likes Received:
      0
      Trophy Points:
      16
      Alright, thanks.

      Is it possible to add an option to prioritize rares/elites for low difficulty profiles where it doesn't matter if the bot runs through a million mobs to catch one?
      Also, if possible I would love to see improved behavior when chasing mobs. Right now it just keeps up with them untill they stop running so it can kill them.
       
      Last edited: Jun 12, 2012
    13. Haaken

      Haaken New Member

      Joined:
      Mar 11, 2012
      Messages:
      96
      Likes Received:
      0
      Trophy Points:
      0
      Ye, have noticed that too, bit annoying watching my toon chase a goblin or a succubus but not hit it until the mob get's stuck somewhere... :/
       
      Last edited: Jun 12, 2012
    14. nawdik

      nawdik New Member

      Joined:
      Feb 27, 2012
      Messages:
      153
      Likes Received:
      0
      Trophy Points:
      0
      agreed
       
    15. j0achim

      j0achim New Member

      Joined:
      Jan 15, 2010
      Messages:
      532
      Likes Received:
      15
      Trophy Points:
      0

      I had originally started on a Demon Hunter already to get some ideas, but bth i cannot afford to loose my DH with its precious GF gear so it'll cool down till the storm has passed. On that note, i found several bugs that will improve this routine because the bugs themselves were only visible when i was playing around with a ranged class.


      So yea chasing down npc's that is a huge issue, i could battle this in the routine, but its more of a core feature that needs that fix, otherwise it might become a overlaying problem in future builds. But more importantly i found several minor issues tied upto how the AOE damage is done right now. And hopefully with a little effort i will make it use AOE skills as expected and not as randomly as it's been doing it so far.


      As for npc prioritization that is most def something the routine core should handle, I will see what i can hack together because its something that is needed asap. The one that comes shipped i feel is made for characters can one-shot anything it hits, and when it does that it does a great job. But once the fights gets a little harder it stats to get confused and start messing up.
       
    16. Hoof

      Hoof Member

      Joined:
      Jan 15, 2010
      Messages:
      308
      Likes Received:
      0
      Trophy Points:
      16
      Thanks man, amazing work. My Barbarian is slashing through enemies with no problems at all. Keep up the good work
       
    17. 99dsimonp

      99dsimonp Member

      Joined:
      Jan 15, 2010
      Messages:
      587
      Likes Received:
      0
      Trophy Points:
      16
      I noticed that shielding elites and rares are ignored by the bot. Is this a CC issue?
       
    18. j0achim

      j0achim New Member

      Joined:
      Jan 15, 2010
      Messages:
      532
      Likes Received:
      15
      Trophy Points:
      0
      By default Belphegor does not do anything to prioritize or manipulate what monsters are targeted/attacked.
       
    19. Hoof

      Hoof Member

      Joined:
      Jan 15, 2010
      Messages:
      308
      Likes Received:
      0
      Trophy Points:
      16
      Could you make it use Whirlwind, I love the skill becouse of it's AoE DMG :) Thanks
       
    20. Solnaciente

      Solnaciente New Member

      Joined:
      Mar 20, 2012
      Messages:
      39
      Likes Received:
      0
      Trophy Points:
      0
      Isnt working for me after update -.-
       
    Thread Status:
    Not open for further replies.

    Share This Page