• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • FelMaster - the anti-button-mashing CC for LazyRaider/Combat bots

    Discussion in 'Archives' started by cowdude, Aug 20, 2011.

    1. Mysigt.

      Mysigt. New Member

      Joined:
      Sep 18, 2011
      Messages:
      107
      Likes Received:
      0
      Trophy Points:
      0
      Just two quick questions for my warlock.

      1. Would it be using Shadowburn if I specced it?
      2. Possible to make it use Bane of Havoc on a random add or boss? Or should I just unlearn it? :p
       
    2. cowdude

      cowdude Active Member

      Joined:
      Feb 17, 2010
      Messages:
      337
      Likes Received:
      27
      Trophy Points:
      28
      Most of the rotations here are only viable on single target fights (modulo some heavy AOE stuff) => No bane of havoc yet.
      Yes, Shadowburn is supported.


      Alright Apoc, I understand. Having access to the camera projection matrix would be a nice toy to play with. That would allow us to paint useful information on the screen.
       
      Last edited: Sep 27, 2011
    3. falldown

      falldown Member

      Joined:
      May 15, 2011
      Messages:
      453
      Likes Received:
      8
      Trophy Points:
      18
      Hey, I noticed CastUniqueSpell doesn't work.

      I checked out the code and it appears what you do is add cast time to the spell at hand but this doesn't stop it from casting that spell again right after it's done so it keeps spamming as usual. I'm not sure how it's supposed to work but I'm guessign its based on that "CanCast" has condition !Me.IsMoving || CastTime == 0

      But the "Not moving OR" Sorta ruins it, doesn't it? as long as you don't move it doesnt matter what the cast time is, it will still spam as usual. Though removing the !me.IsMoving doesn't actually help, it just stops shooting casted spells all together, least that's what I got out of it with short testing.

      So if you have any ideas how to fix this that'd be awesome :D or since you're busy maybe someone else would have some ideas how to fix this little issue?
      *Looks at apoc* ;)
       
    4. wulf

      wulf Community Developer

      Joined:
      Dec 29, 2010
      Messages:
      1,832
      Likes Received:
      128
      Trophy Points:
      63
      Have done 7/7 as ret (Although we haven't downed Rag yet).

      These are all kills - with the exception of Ragnaros - so FINAL dps.

      ILVL 370
      Beth'tilac 10N===============11073.0 (I was on little spiders - and also noticed i had to stand within 5 ft to hit him in last phase)
      Shannox 10N===============16407.6
      Alysrazor 10N===============11406.8 (I was on druid duty)
      Lord Rhyolith 10N============11610.5 (On the legs)
      Baleroc 10N================24635.5 (This is tank and spank so i think 24k is about 85% on WoL. Not bad for my shitty gear (No T12, just crafted and firelands shit)
      Ragnaros 10N===============13350.3 (6minute avg fight length 10 samples.)

      No issues to report, everything went smooth.
       

      Attached Files:

      Last edited: Sep 29, 2011
    5. cowdude

      cowdude Active Member

      Joined:
      Feb 17, 2010
      Messages:
      337
      Likes Received:
      27
      Trophy Points:
      28
      Thanks wulf, will add it on next release.

      I'm roughly 95% done on my healer logic. Main points are:
      - switched to spellmanager for casting. Less LUA code pressure, and easy way to handle spell targeting :)
      - added new behaviors related to targeting. Applies for healers but also for DPS, like affliction warlock (think about 2 lines of code to implement a pvp multi dots logic...)
      - a friendly unit health tracker computing TTL for given players (TTL -> time to live)
      - Healer targeting helpers, allowing to easily find party/raid targets based on their role. Allows custom sorting, like sort by current health, time to live, or whatever you like...
      - talent parsing
      - some bug fixes (thanks for reports :))

      Some snippets (disco priest):

      Code:
      //heal player if we're going down in less than 5 seconds, and we are under 50% health
      //note that this behavior will be skipped if you don't have the talent (like CastSpell does)
      Healer.HealMe("Desperate Prayer", a => Health.TimeToDie(Me) < 5 && Me.HealthPercent < 50, "Desperate Prayer")
      
      //does the player build supports smite healing?
      private bool HasAtonement { get { return SC.HasTalent("Atonement"); } }
      
      //party AOE heals
      //FindParty means: find a new target to cast a heal on, and run children (CastSpell) if such a target was found
      //it automatically look for a target for each raid party, given the restrictions (distance between players, min. targets to be hit, etc.)
      Healer.FindParty(a => true, 
                              10, //players must be at least at X % of their life (average)
                              80, //players must have less than X % of life (average)
                              30f, //max distance between party members to trigger the spell
                              4, //min number of players to hit
                              SC.CastSpell("Prayer of Healing", a => true, "Prayer of healing")
                          )
      
      //should I cast a flash or greater heal on target?
      SC.CastSpell("Flash Heal", a => Health.TimeToDie(SC.SpellTarget) < 3, "Flash heal (emergency)")
      SC.CastSpell("Greater Heal", a => true, "Greater Heal")
      
      //and much more toys to play with...
      
       
      Last edited: Sep 29, 2011
    6. falldown

      falldown Member

      Joined:
      May 15, 2011
      Messages:
      453
      Likes Received:
      8
      Trophy Points:
      18
      Since you're fixing bugs and all I found that my hunter didn't actually move back when bot mode is enabled, it looks like it tries but as soon as it tries to it stops and this keeps on repeating, so he's just jerking around on his spot.

      I fixed it by maybe removing some condition like !me.IsMoving and replacing the automatically fetched numbers for min and max distances for the class with some real values of like 5 and 40, that way it works just fine, anyway you might wanna take a look at that.

      Another thing I noticed was that it seems to sort of randomly chooses its target?
      Just seems to be there's no real logic to it, it doesn't attack the target my pet is already in combat with, it doesn't attack the nearest one, it takes someone at random usually from further away when there are plenty of other ones near by, and it can go off running really far to get to that target, pulling other mobs around... and then I'm dead. So kind of hard to quest/grind with the bot mode.
       
    7. cowdude

      cowdude Active Member

      Joined:
      Feb 17, 2010
      Messages:
      337
      Likes Received:
      27
      Trophy Points:
      28
      The basic auto-target idea that is used right now is to target the most focused unit around if you got no target.

      Works well while in group/raid. I'll be working a bit on custom targeting on next release, so that should help fixing those weird issues you're talking about.
       
    8. froggystyle

      froggystyle New Member

      Joined:
      Jan 8, 2011
      Messages:
      305
      Likes Received:
      0
      Trophy Points:
      0
      can't wait for disc 2 be 100% done :)
       
    9. mariox

      mariox Member

      Joined:
      Sep 19, 2011
      Messages:
      220
      Likes Received:
      1
      Trophy Points:
      18
      thanks that worked great :D
       
    10. mrwowbuddy

      mrwowbuddy New Member

      Joined:
      Mar 9, 2011
      Messages:
      60
      Likes Received:
      0
      Trophy Points:
      0
      Rogue

      Ok, this is my implementation of singulars ToTT targeting, its very messy but it was the best i could come up with, as my coding skills are somewhat.... Bad.

      Rupture still requires a bleed damage debuff as this is optimal for my rogue and raid comp + fights. Its easy to remove for less geared rogues.

      I have not tried my assasination setup in raids yet, but so far.

      Sub has scored me a top 10 placing and combat several top 100 rankings on WoL

      Muti should be similar, im pulling around 20k on target dummies.
      Ill test assas in raid on sunday, (Am using 378MH 391OH)


      Edit: Thanks Apoc for the energy regen check doobly doo, that helped solve some of my biggest energy capping problems I was having.


      View attachment Rogue.zip
       
      Last edited: Sep 30, 2011
    11. flippyirl

      flippyirl New Member

      Joined:
      Feb 9, 2010
      Messages:
      62
      Likes Received:
      0
      Trophy Points:
      0
      ???

      I have been trying to run the updater but when I "hit any button to continue " it tells me that my client is too old , to update to new version
      ????
       
    12. Venus112

      Venus112 New Member

      Joined:
      Jun 17, 2010
      Messages:
      1,509
      Likes Received:
      13
      Trophy Points:
      0
      Am i correct when i say you haven't done Fan of Knives yet? or is this not possible?
      Been looking at code and i dont understand all the numbers in SC.CastAreaSpell("Fan of Knives", 8, false, 8, 0.0, 0.0, ret => !SC.PlayerHasBuff("Blade Flurry"), "Fan of Knives"),
       
      Last edited: Oct 1, 2011
    13. Rinus4

      Rinus4 Guest

      I love your BM-cc. _O_ You're a God to me.

      It's not casting bestial wrath.
       
      Last edited by a moderator: Oct 1, 2011
    14. cowdude

      cowdude Active Member

      Joined:
      Feb 17, 2010
      Messages:
      337
      Likes Received:
      27
      Trophy Points:
      28
      I've been talking to Apoc recently. I'm sure you already got issues like the following using this CC:

      I often saw spell Y being cast instead of spell X, even though the condition was true. This is actually happening because most of the helpers of this CC are using LUA, which is a bit too slow (around 100ms).

      The Behavior Tree should match two conditions:
      1. Fast conditionals (which is not really the case)
      2. The most important one, conditionals must not change while running through the tree.

      Let me explain a bit further by considering this example:
      It may actually happen that NONE spells X and Y are cast, because Foo() changes during the execution time. Think about Foo() returning the time left of a debuff. LUA calls are real time, whereas the ObjectManager takes a snapshot of the game environement before running the tree.

      I'm now thinking about a way to overcome this issue. In any case, I don't want to alter the current way of coding these rotations, which means, sticking to Behavior Trees and understandable helpers taking care of the common conditions you need to check.
       
    15. mrwowbuddy

      mrwowbuddy New Member

      Joined:
      Mar 9, 2011
      Messages:
      60
      Likes Received:
      0
      Trophy Points:
      0
      That will do FoK on 8 targets within 8 yards (Assuming the player does not have Blade Flurry active)

      FoK as combat is just shitty in nearly all situations, as far as testing damage points where it is good to swap to FoK, I couldn't find a suitable encounter to test over extended duration. The amount of mobs are just rough guesses, but should be reasonably close to the mark.
       
      Last edited: Oct 2, 2011
    16. Venus112

      Venus112 New Member

      Joined:
      Jun 17, 2010
      Messages:
      1,509
      Likes Received:
      13
      Trophy Points:
      0
      I thank you alot for clarifying. Now it actually makes sence
       
    17. TiCt3

      TiCt3 New Member

      Joined:
      Aug 27, 2011
      Messages:
      36
      Likes Received:
      1
      Trophy Points:
      0
      Im having problems with frost dk aoe. Sometimes it uses howling blast all the time on singeltarget with no other mobs in sight.
       
    18. Algamish

      Algamish New Member

      Joined:
      Mar 7, 2011
      Messages:
      180
      Likes Received:
      1
      Trophy Points:
      0
      Frost DK's are suppose to use Howling blast on single target.
       
    19. imdasandman

      imdasandman Active Member

      Joined:
      Feb 2, 2011
      Messages:
      1,207
      Likes Received:
      6
      Trophy Points:
      38
      Yes but what the poster you quoted was saying is it is spamming it which is not what a dk does single target. A dk single target should only use hb to put frost debuff up and to maintain it. That is it unless you get rime procs. Reasoning you use the same frost/death runes for obliterate.

      Sent from my SAMSUNG-SGH-I997 using Tapatalk
       
    20. Algamish

      Algamish New Member

      Joined:
      Mar 7, 2011
      Messages:
      180
      Likes Received:
      1
      Trophy Points:
      0
      He didn't say anything about it being spam-cast in his post. His post made it sound like it was being used on single-targets when he thought it was only for AoE and I assume he was talking about rime procs.

      Maybe you understood him better than I did, though.
       

    Share This Page