• Visit Rebornbuddy
  • [Funky] Another spawn of that GilesTrinity plugin!

    Discussion in 'Archives' started by herbfunk, Feb 28, 2013.

    1. submarine

      submarine New Member

      Joined:
      Apr 15, 2013
      Messages:
      65
      Likes Received:
      0
      Trophy Points:
      0
      Hi .
      Can it be the reason of stucks

      in cases if it executed from bool FoundRandomMovementLocation=Bot.NavigationCache.AttemptFindSafeSpot(out vSafeMovementLocation, Vector3.Zero);
      and lastsafepoint really close to current position and bot not had time to reach it yet.
      Sorry if i tell stupid things (i told that i am not an programmer)
      1)May be it will be good to have separate movement engines "Peace movement" & "battle movement". What it give "Peace movement" is nav point movement, take gold and another stuff . "battle movement" is fightting , complete realtime calculations in short area border configurations, monster places, their vectors of movements , finding free place to avoid damage, etc. Ie anything to be alive even if we will be forced to go far away from current possition where battle started.
      2) may be it will be good to have subsystem of checkpoints.
      A(xyz coords of checkpoint and 2 second from start movement),
      A2(xyz coords of checkpoint and 4 second from start movement),
      A3(xyz coords of checkpoint and 6 second from start movement), etc
      Logic of work following i guess
      1) We run from A to B and have a lot of nav points.
      2) We save current position and timestamp
      3) start movement
      4) if passed 2 seconds of movement without battle compare how far we are from last checkpoint and save next checkpoint (checkpoint number, position, and timestamp)
      5) if all good continue running and started to calculate next 2 seconds and goto step 4)
      6) if all bad then we stuck need to do something to unstuck and we can combine it with nearest checkpoints which we know already reachable . Also when we stuck we can use Wall follower algorithm to unstuck.


      I really not know how much data we can store during run in one area but i guess it is not problem to store 1000 or so checkpoints per area in 2013 year. 1000 checkpoints = almost half hour of real time per area if to place checkpoint every 2 seconds.
      What will give to us checkpoint subsystem . We will have total control and will have opportunity to run back whole path and generate new path to navpoint.

      I have also couple of question :
      1) Is it possible to get monsters coords and how they turned to player. Ie looking on player or not ?
      2) Is it possible to detect moment when monster kick and in what direction ?
      3) Is it possible to detect positions of everything on screen. Or bot just like in dark room where light points are monsters, shrines , bodyes, chests, and no walls and another stuff ?

      PS: I really not happy that i am not programmer. For me it started to be not just botting . For me it is started to be like creation bot which play better than human.
       
    2. herbfunk

      herbfunk Community Developer

      Joined:
      Oct 30, 2012
      Messages:
      238
      Likes Received:
      7
      Trophy Points:
      18
      Are you refereeing to stucks occurring after combat is done? If so.. I have implemented a quick solution that should solve this issue.

      It is possible to just use the Navigator to generate a path back to the starting location of combat.. however I don't think this would help much. It could have other uses though such as fleeing..

      Wall Follower Algorithm.. I'm not familiar with this.

      1 and 2: Yes its possible, the code to check these things already exists.. what would you use it for?
      2: When you say direction.. this could mean the direction the bot is moving.. the direction the current profile movement is.. or just the way the bot is currently facing.
      3: Its possible to determine if locations are navigable.. raycasts help determine if objects intersect or if navigation is possible.
       
    3. submarine

      submarine New Member

      Joined:
      Apr 15, 2013
      Messages:
      65
      Likes Received:
      0
      Trophy Points:
      0
      No i see some places where bot stuck almost always even if it not in battle. I am not know why it stuck but when i look on d3 screen i see that but quckly turn left and right (may be 3 -5 times per second) in the corner. It is hard to describe need to create video.


      No i mean to use checkpoints which already passed even for avoidance stucks. If stuck just return to old position and start from random direction ot so.

      Maze solving algorithm - Wikipedia, the free encyclopedia
      i also found very interesting article Local Path Planning Using Potential Field
      Not know is it easy to implement . But i think if to implement then it will be possible to create battle routing which will help to avoid damage before monsters kick bot. And also i thin will be possible to replace current nav point based movement.


      My dreams about avoid damage before got damage. Ie not "health lost avoidance" but "potential danger avoidance".

      I mean facing
      So it means that possible to detect for example wall between bot and shrine only if to check is it possible to reach by direct movement ?
      Not posible to get borders directly from D3 ?
       
    4. submarine

      submarine New Member

      Joined:
      Apr 15, 2013
      Messages:
      65
      Likes Received:
      0
      Trophy Points:
      0
      In following situation townrun never happen because of damage. Bot start teleport. Get damage and teleport canceled, Bot start again , endless loop
      View attachment 108260

      Is it possible to make trigger.
      If no pickup of gold more than 1 min than it is stuck.
       
    5. submarine

      submarine New Member

      Joined:
      Apr 15, 2013
      Messages:
      65
      Likes Received:
      0
      Trophy Points:
      0
      Lastest beta of DB. In case of completely fresh install
      When i started DB 1st time i found in request to choose battle routint 2 Funky routines with same name
       
    6. herbfunk

      herbfunk Community Developer

      Joined:
      Oct 30, 2012
      Messages:
      238
      Likes Received:
      7
      Trophy Points:
      18
      Yeah.. I forgot to remove the files in FunkyBot/CombatRoutine folder. This is the "other" routine.. although they are identical... Was there an issue running the bot?
       
    7. submarine

      submarine New Member

      Joined:
      Apr 15, 2013
      Messages:
      65
      Likes Received:
      0
      Trophy Points:
      0
      Bot works ok for now. Thanks for good job. Looking for new issues.

      What doing "Advanced Avoidance Projectile Test" ?
       
    8. herbfunk

      herbfunk Community Developer

      Joined:
      Oct 30, 2012
      Messages:
      238
      Likes Received:
      7
      Trophy Points:
      18
      Its just an alternative method to test projectile intersections... its more accurate but CPU intensive..
       
    9. submarine

      submarine New Member

      Joined:
      Apr 15, 2013
      Messages:
      65
      Likes Received:
      0
      Trophy Points:
      0
      I think really need to create bot stuck detection binded on gold pickup. Just now bot spent 2 hours just in moving from one position to another position untill i manually restarted profile.
      Too recent undetectable stucks. Is it possible to make if 1 minute no pickup gold then go to town and restart profile.

      may be possible to get some ideas from
      http://www.thebuddyforum.com/demonb...300-seconds-leave-game-reload-profile-14.html
       
    10. herbfunk

      herbfunk Community Developer

      Joined:
      Oct 30, 2012
      Messages:
      238
      Likes Received:
      7
      Trophy Points:
      18
      Well it would help to post your demonbuddy log.. and maybe more details on the profile/location of the stuck..

      Are you setting your Inactivity Timer above 0? (Demonbuddy Setting).
       
    11. submarine

      submarine New Member

      Joined:
      Apr 15, 2013
      Messages:
      65
      Likes Received:
      0
      Trophy Points:
      0
      HI. No DB inactivity timer is 2.
      But bot active it just run couple of meters to one side and couple of meters back.
      I ll send you part of log in PM.
       
    12. herbfunk

      herbfunk Community Developer

      Joined:
      Oct 30, 2012
      Messages:
      238
      Likes Received:
      7
      Trophy Points:
      18
      Okay.. 2615 uploaded.. which disables Line of Sight Target Behavior by default, and adds a checkbox under Advanced to enable it if desired.
       
    13. submarine

      submarine New Member

      Joined:
      Apr 15, 2013
      Messages:
      65
      Likes Received:
      0
      Trophy Points:
      0
      May be better not to remove it ? I can enable extra logging to find what is really coursing the issue. Just tell me please what to enable and we can get some extra statistics and find why it happeing.
       
    14. herbfunk

      herbfunk Community Developer

      Joined:
      Oct 30, 2012
      Messages:
      238
      Likes Received:
      7
      Trophy Points:
      18
      Actually I think I know exactly what is causing.. but until I can find a solution, its better to leave it disabled so you don't get hung up in the keeps for hours!
       
    15. submarine

      submarine New Member

      Joined:
      Apr 15, 2013
      Messages:
      65
      Likes Received:
      0
      Trophy Points:
      0
      It is ok. I found temp solution by installing exrta plugin which calculate time between gold pickup. if no gold pickup during 200 seconds it just exit game and reload profile. Of course i not like sush solution but for temporary purpose its work.
       
    16. herbfunk

      herbfunk Community Developer

      Joined:
      Oct 30, 2012
      Messages:
      238
      Likes Received:
      7
      Trophy Points:
      18
      Okay 2616 is uploaded but still requires enabling the setting to use Line of Sight behavior, but it shouldn't get stuck executing the behavior anymore.
      I also reverted back what units are added to the list of objects.. the settings under Targeting -> General are what determine if units are added. (See Unit Exceptions).

      Changes from 2611 to 2616 added to OP.
       
    17. herbfunk

      herbfunk Community Developer

      Joined:
      Oct 30, 2012
      Messages:
      238
      Likes Received:
      7
      Trophy Points:
      18
      v2620 Beta Uploaded.

      This improves both the avoidance and fleeing behaviors.
      New fleeing tab added under combat settings -- with unit trigger options..
       

    Share This Page