What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal

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

Status
Not open for further replies.
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.
 
Update 3 up!


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.

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.
 
Revenge doesn't seem to work for me in Update 3
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:
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 :)
 
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:
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]
 
hi joachim

thanks for your work

any "recommended" build to use with your updated versions?
 
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.
 
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%


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

 
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?
 

Attachments

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?

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.
 
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.

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:
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.

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:
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.


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.
 
Thanks man, amazing work. My Barbarian is slashing through enemies with no problems at all. Keep up the good work
 
I noticed that shielding elites and rares are ignored by the bot. Is this a CC issue?
 
By default Belphegor does not do anything to prioritize or manipulate what monsters are targeted/attacked.
 
Could you make it use Whirlwind, I love the skill becouse of it's AoE DMG :) Thanks
 
Status
Not open for further replies.
Back
Top