• Visit Rebornbuddy
  • Summon Golem

    Discussion in 'Archives' started by dirin, Dec 4, 2016.

    1. dirin

      dirin Member

      Joined:
      May 16, 2014
      Messages:
      55
      Likes Received:
      1
      Trophy Points:
      8
      Summon Flame Golem

      Hi.

      I'm using OldRoutine that comes with Bot, and there is nothing for Golems. When I run the bot it doesn't summon my Flame Golem. This is a mess after death, my damage suffers. How can I make it summon my Golem?

      Thanks!
       
      Last edited: Dec 9, 2016
    2. dirin

      dirin Member

      Joined:
      May 16, 2014
      Messages:
      55
      Likes Received:
      1
      Trophy Points:
      8
      Also Desecrate is not casting either. It is a skill to create dead bodies on the ground for summoning Zombies etc. It's helpful at first.
       
    3. pushedx

      pushedx Moderator Moderator Buddy Core Dev

      Joined:
      Sep 24, 2013
      Messages:
      4,258
      Likes Received:
      290
      Trophy Points:
      83
      That's not happening by design because my golem is always on the bottom slot row. Check your skill key bindings and make sure it's actually on the skill bar though. I'll need a log though or more info on your key setup because the only thing that matters placement wise is stuff on Left Mouse Button.
       
    4. dirin

      dirin Member

      Joined:
      May 16, 2014
      Messages:
      55
      Likes Received:
      1
      Trophy Points:
      8
      Hey PushedX. Turns out that Edit didn't work, it summoned the Stone Golem when I had it on the skill bar by accident. I changed it back to Flame Golem, and it will not summon that skill. Regardless of where on the skill tree I put it, it will not cast the skill. I would attach a log, but I'm not sure it will help. I scanned the log for anything to do with Golem or Flame and nothing comes up other than a mob name with Flame in it. The bot will also not cast Desecrate (I'm a summoner) as an initial method to create zombies, instead it attacks manually to revive corpse.
       
    5. dirin

      dirin Member

      Joined:
      May 16, 2014
      Messages:
      55
      Likes Received:
      1
      Trophy Points:
      8
      Summon Flame Golem will not cast. All other Golems work fine. Any reason Flame Golem is not working?
       
    6. IeU

      IeU Member

      Joined:
      Jul 20, 2010
      Messages:
      831
      Likes Received:
      11
      Trophy Points:
      18
      Mine Flame Golem is working fine, not sure whats up for u
       
    7. dirin

      dirin Member

      Joined:
      May 16, 2014
      Messages:
      55
      Likes Received:
      1
      Trophy Points:
      8
      I have no idea either. Are you using a Combat Routine? I'm using OldRoutine, It's a fresh install, and still doesnt work.
       
    8. Unknown Buddy

      Unknown Buddy Member

      Joined:
      May 20, 2015
      Messages:
      604
      Likes Received:
      17
      Trophy Points:
      18
      Im going to take a stab at this and guess you are using Clayshaper Rock Breaker weapons.

      If you are using these weapons, then yes it will break summoning flame golems. Take off the weapons and OldRoutine will start summoning your golems again.


      The only logic coded for golems currently is the _sgSlot code, which just summons a golem you have on your bar. The framework for _summonFlameGolemSlot , _summonIceGolemSlot, _summonChaosGolemSlot, _summonStoneGolemSlot, _summonLightningGolemSlot is already setup, but no logic was ever added to specific golems.

      All you need to do to fix summoning your Flame Golems is simply add:

      Code:
      if (_summonFlameGolemSlot != -1)                    {
                          // See if we can use the skill.
                          var skill = LokiPoe.InGameState.SkillBarHud.Slot(_summonFlameGolemSlot);
                          if (skill.CanUse())
                          {
                              var max = skill.GetStat(StatTypeGGG.NumberOfGolemsAllowed);
                              if (skill.NumberDeployed < max)
                              {
                                  await DisableAlwaysHiglight();
      
      
                                  await Coroutines.FinishCurrentAction();
      
      
                                  var err1 = LokiPoe.InGameState.SkillBarHud.UseAt(_summonFlameGolemSlot, true, myPos);
                                  if (err1 == LokiPoe.InGameState.UseResult.None)
                                  {
                                      _summonGolemStopwatch.Restart();
      
      
                                      await Coroutines.FinishCurrentAction(false);
      
      
                                      return true;
                                  }
      
      
                                  Log.ErrorFormat("[Logic] UseAt returned {0} for {1}.", err1, skill.Name);
                              }
                          }
                      } 
      Just add that code chunk under the _sgSlot code (will look very similar to the above, around line 1400ish.

      Have been working on a 5/6 golem only routine for a few days now. Its coming along pretty nicely. Setup to ignore everything except bosses, so it just runs through maps pretty fast ignoring everything (golems destroy everything on their own). Still have a lot more to add before i can release it, but its a fun build.


      Anyways, hopefully the above solves your flame golem issues, took me awhile myself to figure out the problem with them :(
       
    9. dirin

      dirin Member

      Joined:
      May 16, 2014
      Messages:
      55
      Likes Received:
      1
      Trophy Points:
      8
      Awesome! Thanks a lot! That fixes my Flame Golem! :D It also summons more flame golems when I use the Clayshaper just as you said! Thanks a lot man!
       
    10. Cjswe

      Cjswe New Member

      Joined:
      Aug 6, 2016
      Messages:
      6
      Likes Received:
      0
      Trophy Points:
      1
      Would you mind sharing a working version of that file with the above code? I dont seem to get it working.. ends up eventually with 2 stone golems all the time anyhow :(

      Edit: When putting the above code under _sgslot i end up with:
      So it won't start the routine at all for me.. =(
       
      Last edited: Dec 15, 2016
    11. veej69

      veej69 New Member

      Joined:
      Aug 23, 2012
      Messages:
      2
      Likes Received:
      0
      Trophy Points:
      0
      Me too, routine won't load at all. I must be pasting it in wrong place. Where to put in the code exactly?
       
    12. Unknown Buddy

      Unknown Buddy Member

      Joined:
      May 20, 2015
      Messages:
      604
      Likes Received:
      17
      Trophy Points:
      18
      Code:
                      // If we have a Summon Golem skill, we can cast it if we havn't cast it recently.
                      if (_sgSlot != -1 && _summonGolemStopwatch.ElapsedMilliseconds > 10000)
                      {
                          // See if we can use the skill.
                          var skill = LokiPoe.InGameState.SkillBarHud.Slot(_sgSlot);
                          if (skill.CanUse())
                          {
                              var max = skill.GetStat(StatTypeGGG.NumberOfGolemsAllowed);
                              if (skill.NumberDeployed < max)
                              {
                                  await DisableAlwaysHiglight();
      
      
                                  await Coroutines.FinishCurrentAction();
      
      
                                  var err1 = LokiPoe.InGameState.SkillBarHud.UseAt(_sgSlot, true, myPos);
                                  if (err1 == LokiPoe.InGameState.UseResult.None)
                                  {
                                      _summonGolemStopwatch.Restart();
      
      
                                      await Coroutines.FinishCurrentAction(false);
      
      
                                      return true;
                                  }
      
      
                                  Log.ErrorFormat("[Logic] UseAt returned {0} for {1}.", err1, skill.Name);
                              }
                          }
                      }
                      
      [COLOR=#00ff00]                //if (_summonFlameGolemSlot != -1 && _summonGolemStopwatch.ElapsedMilliseconds > 4000)
                      if (_summonFlameGolemSlot != -1)    
                      {
                          // See if we can use the skill.
                          var skill = LokiPoe.InGameState.SkillBarHud.Slot(_summonFlameGolemSlot);
                          if (skill.CanUse())
                          {
                              var max = skill.GetStat(StatTypeGGG.NumberOfGolemsAllowed);
                              if (skill.NumberDeployed < max)
                              {
                                  await DisableAlwaysHiglight();
      
      
                                  await Coroutines.FinishCurrentAction();
      
      
                                  var err1 = LokiPoe.InGameState.SkillBarHud.UseAt(_summonFlameGolemSlot, true, myPos);
                                  if (err1 == LokiPoe.InGameState.UseResult.None)
                                  {
                                      _summonGolemStopwatch.Restart();
      
      
                                      await Coroutines.FinishCurrentAction(false);
      
      
                                      return true;
                                  }
      
      
                                  Log.ErrorFormat("[Logic] UseAt returned {0} for {1}.", err1, skill.Name);
                              }
                          }
                      }           [/COLOR]     
      
      
                      // If we have Raise Zombie, we can look for dead bodies to use for our army as we move around.
                      if (_raiseZombieSlot != -1)
                      {
                          // See if we can use the skill.
                          var skill = LokiPoe.InGameState.SkillBarHud.Slot(_raiseZombieSlot);
                          if (skill.CanUse())
                          {
                              var max = skill.GetStat(StatTypeGGG.NumberOfZombiesAllowed);
                              if (skill.NumberDeployed < max)
                              {
                                  // Check for a target near us.
                                  var target = BestDeadTarget;
                                  if (target != null)
                                  {
                                      await DisableAlwaysHiglight();
      
      
                                      await Coroutines.FinishCurrentAction();
      
      
                                      Log.InfoFormat("[Logic] Using {0} on {1}.", skill.Name, target.Name);
      
      
                                      var uaerr = LokiPoe.InGameState.SkillBarHud.UseAt(_raiseZombieSlot, false,
                                          target.Position);
                                      if (uaerr == LokiPoe.InGameState.UseResult.None)
                                      {
                                          await Coroutines.LatencyWait();
      
      
                                          await Coroutines.FinishCurrentAction(false);
      
      
                                          await Coroutines.LatencyWait();
      
      
                                          return true;
                                      }
      
      
                                      Log.ErrorFormat("[Logic] UseAt returned {0} for {1}.", uaerr, skill.Name);
                                  }
                              }
                          }
                      }
      
      
      Above is an example of where you can put the code. Just add it between the sgSlot code and Raise Zombie code.
       
    13. Cjswe

      Cjswe New Member

      Joined:
      Aug 6, 2016
      Messages:
      6
      Likes Received:
      0
      Trophy Points:
      1

      Thanks! Definately going in the right direction as the routine loads with the program now and is able to launch.

      However, it does not summon a single golem(not even stone, which is a good thing tho!)
      But it's rather hard for a flamegolem bot to bot without summoning any flame golems.. :p

      It just buff up and then run to pack, using fall back skill(phase run in my case) and ye, that's about what it does.

      Wish i knew more of this stuff so i didn't have to feel so dumb :(
       

    Share This Page