• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Server-Side LCP Detection (2) Solution

    Discussion in 'Ban Section - Ban Reports' started by ZipZap, May 9, 2013.

    1. TheNemic

      TheNemic New Member

      Joined:
      Jun 28, 2012
      Messages:
      56
      Likes Received:
      0
      Trophy Points:
      0
      Could be awesome feature to get :)
       
    2. favor98

      favor98 New Member

      Joined:
      Feb 5, 2013
      Messages:
      104
      Likes Received:
      0
      Trophy Points:
      0
      I had a really wild idea just now, was testing my mining profile with randomized hotspots and it occured to me this solution.

      IF bliz is tracking us via hotspots / waypoints that means they are tracking where the bot is clicking with click-to-move right? So why can't we just make like 2-3 hotspots per zone and put them apart a lot, like on seperate ends or sth. Then we increase the loot radius to 100yards so while bot is moving from spot A to spot B it will pick up any random herbs that are in his way. That way there will be no specified waypoints, well there will but still if you use randomized hotspots it will not since you will be flying zig-zag all around the pandaria.

      Any thoughts on this idea?
       
    3. SKing

      SKing New Member

      Joined:
      Oct 30, 2012
      Messages:
      53
      Likes Received:
      0
      Trophy Points:
      0
      I was just thinking the same thing! Did you test your theory? If you have 2 waypoints and a very wide loot radius how does the bot behave?

      I was testing a different method of randomizing but it's kindoff stupid and time consuming - create multiple versions of the same multizone profile (manualy shuffle the hotspots in the profile usinf a txt editor and also randomly adding/removing hotspots), run each 2-3 times, when you get through all of them, create more! ...
       
    4. jordana252

      jordana252 New Member

      Joined:
      Sep 5, 2011
      Messages:
      25
      Likes Received:
      0
      Trophy Points:
      0
      I am not sure how Math heavy the Devs are, but there is a potential solution if indeed Blizzard is tracking out movements to determine if bots are being used.

      Basically, for an autopilot on a UAV, if you give it a Waypoint, the autopilot has serious problems when the UAV gets close. As it gets close, the Autopilot attempts to make corrections to the course, and it causes the UAV to go haywire and crash. Basically, you cannot actually let your UAV reach a given waypoint, the waypoint always has to be ahead of the UAV. The issue comes up though, if the UAV is somehow not able to generate a new waypoint, it will eventually reach the last one it had and crash the UAV. The solution, is something called a Lyapunov Field.

      A Lyapunov field is a vector field with a central waypoint with a radius around it. Basically, the field generates a bunch of vectors that guide the plane into a circle around a waypoint. The autopilot is following the vectors, not the waypoint, but the vectors eventually lead to the circle around the waypoint. This way, if the autopilot cannot generate a new waypoint, it ends up flying in a circle around the waypoint, not actually flying to the direct waypoint.

      To apply this to Gatherbuddy, your profile would have a waypoint, and then Gatherbuddy would assign a random value for the radius. This generates a Lyapunov field, and the bot follows the vectors and gathers along the way. Once it reaches the circle (but before it flies on it for any length of time), it goes to the new waypoint.

      The true power of this method is in the vector fields. Basically, since the radius is randomized, each waypoint has a unique vector field. This means the path your bot takes will be different for some the waypoint each time it comes around. This also means that when the bot drops to gather a node, it won't take the same route back up to continue gathering. It becomes incredibly powerful if you randomize the order of the waypoints. Not only are you on a unique vector field, but it doesn't even remotely resemble a repeating path. In addition, profiles aren't insanely difficult to write, because you still give the bot waypoints, you just prevent the bot from acting like they are waypoints.

      Here is a pretty in depth article into Lyapunov fields: http://recuv.colorado.edu/netuas/data/publications/2007-[frew]-lyapunov_guidance.pdf

      Figure 2 in that article is especially good at portraying what I am saying. The vector field gives you a unique flight path, and if Gatherbuddy is randomizing the radius of the field, the vector field will be different each time even in the same botting session.
       
    5. favor98

      favor98 New Member

      Joined:
      Feb 5, 2013
      Messages:
      104
      Likes Received:
      0
      Trophy Points:
      0
      No I didn't test the theory because I know already that bot would just get stuck on first tree/wall because of it's current condition...I didn't give it much thought since I will probably stop botting since I see no and by that I mean NO, like freakin 0 big 0000 effort from hb side.... it's literaly useless to try to change sth and/or give them ideas if they don't want to move a damn finger to acomplish them... it's unprofitable to bot now for money and completly retarded if you wanna bot for "fun" on your main char = it's 2risky since it's instant ban.

      @jordana252 your idea is good yes, but I don't think that HB devs have any ambition to do sth like that.

      Update for my post from before on this thread.
      -> If we were to test the A -> B waypoint profile across the entire area we would need to blackspot any mountains/trees/doors/houses generaly any obsticles that bot might interfere with on it's way. I never quite understood blackspots since no matter how many I make bot always goes to that 1 wrong spot so I just gave up on them. If any1 might wanna try this theory out I would be very grateful if he/she would share the results ^^
       
    6. SKing

      SKing New Member

      Joined:
      Oct 30, 2012
      Messages:
      53
      Likes Received:
      0
      Trophy Points:
      0
      I've actually gave it some thought.
      Here's the thing. The blizz alleged LCP detection supposedly follows you around and record your paths and your waypoints, and if you keep hitting the same coords over and over, it bans you. If we take all ideeas about randomizing the profiles waypoint database (so every time the bot goes to a new waypoint, it should be a random one) there is still a problem. You will STILL HIT THE WAYPOINT! and blizz will flag you for repeatedly hitting the waypoint no matter what order you farm the nodes in. So an obvious solution would be either the one jordana252 has provided with the Lyapunov fields or the one ZipZap talked about at the begining of the thread - the one with the farming zones, rather than profiles and waypoints.
      Don't get me wrong, I still think that randomizing the order of waypoints is a step forward, but I think one would still be banned by the blizz LCP detection, just not as quickly as with the curent setup.

      View attachment 92880

      On the other hand favor98, I wouldn't get discouraged. There are many other ways than mining/herb to make gold in wow... like skinning, or fishing or simply flipping stuff on AH. Whatever happens, this is not the end of botting.
       
    7. devestator

      devestator New Member

      Joined:
      Feb 9, 2010
      Messages:
      64
      Likes Received:
      0
      Trophy Points:
      0
      While the Lyapunov is flashy and works great for UAVs, I do not believe it would solve the problem with this type of detection. I've questioned for a while now, why Blizzard had not implemented this type of detection since it's so easy to do (I guess I now know they did implement it and just haven't really started *****ing down with it until recently). The problem with Lyapunov is even though you have a random radius, it's still based around one central waypoint and over time the LCP detection system can still spot that. In order to make it so that a LCP system couldn't eventually spot a Lyapunov waypoint system your radius's around the waypoint would have to be so large that you greatly risk the integrity of the path, and then you are caught for other reasons (bot getting stuck, etc).

      The way to get around this IMO is for each current "waypoint" instead to be able to define 3d waypoint "areas". The truth is even players when they are out manually gathering are going to follow a somewhat generic path. But they aren't going to be precise enough to hit the same single waypoint every time. Instead what I imagine is there would be a defined area say like a rectangle stretching perpendicular to your flight direction. The bot would choose a completely random location in that rectangle.

      To go even further though, paths would need some logic ability to them. For example the ability to have multiple rectangles to go around something and the logic in the path to tell the bot to choose 1 of a set of waypoint areas to fly toward. Perhaps even breaking it down further to have complete if and or condition sets, so that if it chooses to go to one rectangle it has to go to another specified one, etc. Also the ability to set some waypoint areas as completely bypassable, then the bot randomly decides whether or not to bypass that area. Things like this, with the above all goal to maintain some semblance of a predetermined path but be random enough with enough differentiation to not be trackable by an LCP system.

      Further the bot needs to stop using click to move. Instead it needs to toggle auto-run and update it's vector more fluidly.

      Add in some more things like the ability to randomly decide to reverse course or to simply skip nodes.. have percentage chance of certain waypoint areas being visited etc...

      Such a system as this could maintain the same high efficiency, while giving the ability to have paths much more like a player flown path. Then you still need to do the common sense things like making sure you aren't being TOO efficient, not doing it for to long each time, etc.

      All in all it requires a lot more complexity and logic capability in the path following. It has to be so imprecise to not be differentiated with a player, but precise enough to maintain the path integrity to avoid getting stuck.

      EDIT: Also if you notice in that LCP document. Part of the detection comes from the timing of movement packets received. I'm assuming it only sends a movement pack each time you change direction or start moving / stop moving etc (could be wrong here of course). But if this is the case, it would make auto run toggle that much better than using ctm and just adjusting the vector when necessary.
       
      Last edited: May 21, 2013
    8. Owneth

      Owneth Member

      Joined:
      Jan 15, 2010
      Messages:
      723
      Likes Received:
      5
      Trophy Points:
      18
      Do the dev's even give a hoot? I mean there isn't a response from them as of yet... least they could do is respond saying they are monitoring or thinking about the logistics in this argument/topic.
       
    9. buzzerbeater

      buzzerbeater Well-Known Member

      Joined:
      Mar 21, 2011
      Messages:
      5,419
      Likes Received:
      28
      Trophy Points:
      48
    10. kelvin

      kelvin New Member

      Joined:
      Apr 17, 2012
      Messages:
      36
      Likes Received:
      0
      Trophy Points:
      0
    11. ZipZap

      ZipZap New Member

      Joined:
      Oct 1, 2012
      Messages:
      45
      Likes Received:
      0
      Trophy Points:
      0
      After reading whats been posted so far, I want to make a comment, maybe just a reminder on LCP to keep the discussion of solutions on the right track. My point here, that no waypoint pathing system will be successful in circumventing LCP detection.

      (LCP = Longest Common Prefix)

      Once the analysis of your historical coordinates have been analyzed, your path is formed. From there, there are two ways to identify a bot.
      (read the description under the image for more details)
      path creation.jpg
      The first way is to track the number of times a segment was passed. This IS NOT LCP, just simply tracking the number of segments passed, and is less reliable an indicator.
      path segments passed.jpg

      The second, and more reliable way is LCP. This tells them how many 'waypoints' IN A ROW that you've crossed. Much more reliable method of identifying bots.
      lcp.jpg

      The end result, ANY pathing system that includes waypoint navigation can/will lead the grouping of your coords around those waypoints, and will lead to analysis or your coords and development of a path from which to measure your future movements against. I can't emphasize this enough! I see lots of discussion that still includes the use of Waypoint navigation (with some random variation to the coord) These won't work. In fact, even my Option1, while circumventing LCP, won't circumvent the technology, since your still clustering your coords around waypoints, and as in Attachment#2 above, they can still track the number of waypoints crossed.
      Which is why I strongly recommend that we move to Option2 'farming zone' style GB3 that simply keeps you within a zone (or multiple) and includes a 'redirection' process to turn you at the edge of a zone without looking like a bot. This 'farming zone' can be defaulted to the zone mesh coords, or created by the user by flying/recording a circular path, or inputting the corner coords of your triangular/rectangular/pentagonal area..ect, . I can see several instance where user defined 'farming zone' would be attractive, say to keep you from flying over the ocean looking for nodes while still in Jade Forest...

      The result, no repeated waypoints from which Blizz can develop a 'path', since you've really got no true path. And no way to bust you using a Longest Common Prefix.

      In short, Waypoint=BAD / 'Farming Zone' & Random Redirection = GOOD
       
      Last edited: May 22, 2013
    12. devestator

      devestator New Member

      Joined:
      Feb 9, 2010
      Messages:
      64
      Likes Received:
      0
      Trophy Points:
      0
      A waypoint path system with enough variation can still work. It just has to have enough variation that in order for LCP to catch it, would cause to many false positives with catch real players. I know for me personally if I'm manually gathering, I'm stilling following waypoints in my head. It's natural when navigating to use landmarks and such to navigate by. I'd almost say that doing something like your option 2 might be TOO random, leading to another form of detection. What player do you know will fly in random directions constantly while farming?

      I'm not saying there isn't any player that would do it, but it definitely would not be the norm.
       
    13. Owneth

      Owneth Member

      Joined:
      Jan 15, 2010
      Messages:
      723
      Likes Received:
      5
      Trophy Points:
      18
      So there's another simple solution...

      Make the bot quest/hunt rares/grind/gather and everything all in 1 profile. No more "modes" as it's put.
       
    14. Lorilei

      Lorilei New Member

      Joined:
      May 22, 2013
      Messages:
      22
      Likes Received:
      1
      Trophy Points:
      3

      Hi ZipZap,

      Good paper; I read it last year while doing research for a comp sci class assignment.
      Anyway, here are just a few thoughts on waypoint detection:

      Picking a random waypoint or "bouncing in random directions" may be insufficient. Any pseudo random selection of a waypoint would still be made from a relatively small and finite number of waypoints where gathering nodes exist in a zone. This limited pool of waypoint possibilities, and an increasing number of botters using the same software and technique, causes other issues; like creating a different detectable pattern of behaviour (in other words, the pseudo randomness of the bot becomes detectable).

      For example, if a human player is farming a region for materials from gathering nodes, the expected human behavior would be to move to the next node nearby. But if a bot is used to farm and takes you to a pseudo randomly selected waypoint further away when closer gathering node options are clearly available, then the pseudo random selection would appear to be making poor decisions while farming, which ultimately creates a different detectable pattern of behavior. Conceptually, this could be optimized by limiting the pseudo random selection within a subset of a larger farming region, but then it would be a relatively small derivation from the original and detectable course of common waypoints.

      So, it seems to me that dev'ing the sort of features you suggest wouldn't solve the problem of avoiding detection of common waypoints. And the safest way to farm would be create your own scripts; with your own starting point, tertiary points, ending point, and other decisions that you might make individually (when you farm? for how long? etc.); which, may be similar in path, but would still be unique in comparison to other botters.


      L
       
      Last edited: May 22, 2013
    15. kavlantis

      kavlantis New Member

      Joined:
      Nov 20, 2012
      Messages:
      468
      Likes Received:
      2
      Trophy Points:
      0
      Thats pretty much the best thing.
      Have options in the profile.

      example
      1. farm herbs/minerals.
      2. kill mobs for cloth/motes/cooking mats/etc. (pick up herbs/ore if they are close by)
      3. do few daily quests in the area. (pick up herbs/ore if they are close by)
      4. kill that rare elite if possible. (pick up herbs/ore if they are close by)
      5. fish a bit from schools. (pick up herbs/ore if they are close by)
      6. ...........

      All those options should be interlocking with each other. Not to do option 1 for 30 mins then option 2 for another 30 mins.
      It should do them all together.

      Basically you need to combine grinding, questing, gatherbuddy and auto angler in 1 bot base.


      Is it possible?
       
    16. ZipZap

      ZipZap New Member

      Joined:
      Oct 1, 2012
      Messages:
      45
      Likes Received:
      0
      Trophy Points:
      0
      Hey Lori, good feedback! Couple comments, and I risk being TL;DR :/

      If I understand you correct, are you saying that the detection system could eventually, with enough data points recorded, establish your 'path' as the perimeter of the farming area, then use that perimeter as the path on which to detect waypoint occurances, or path segments passed?

      This would mean Jade Forest as a 'farming zone' could not be used because the perimeter coordinates would then be established as a path, and used to detect 'path segments passed', not in sequence like LCP, but still an indication of botting activity. Your perimeter X/Y, as well as your Z would need to be changed frequently enough so as to no allow for development of a 'path' or for detection of 'path segments passed' once a path/perimeter is established server side.

      Option#2 with a manual process requiring users to define/record their own tertiary would suffice, but only if modified weekly, or after a suggested X-hours of farming. Not entirely difficult, but a bit of a nuisance.


      GB2 moves to the closest detectable node within "X"yards. Only when none are detectable would it resume navigating, pseudo random angle from node at departure. Although appearing as a poor decision, it would not be detectable by either LCP or Path Segments Passed, which is the ultimate goal. Additionaly, WoW is full of players that don't farm efficiently. This also leads into a Nodes Per Hour (NPH) discussion. This would certainly reduce the NPH to levels that are in line with humans, thereby again reducing the amount of risk of detection using NPH as an indicator.


      Private profiles may minimally extend your account life, but only until your waypoints recorded server side are analyzed, and a 'waypoint path' established. Then its just a matter of time before your LCP is developed, and your flagged for investigation. Private profiles are defiantly not the solution.

      I'll wrap this up by citing from the article some valuable points.
      Page 24 - "One evasion vector for bots would be to use very long paths, which makes the number of repetitions rise more slowly. However, the player must create those long paths, which means that the amount of time that a person saves by using a bot decreases drastically. Simply using paths shared on the Internet increases the risk that those paths are also known to the game provider?s bot-detection system"

      What does 'rise more slowly' mean? It means instead of rising to 10+Path Segments Passed, or Longest Common Prefix within 4,000 movement packets received, it will required 40,000 movement packets, but in the process becoming more similar to human behavior. Using the current system, we should be using multi-zone private profiles. Ones that take 3-4 hours to cover. This can be done by simply editing a farming profile, pasting all your waypoints from continent zones into one profile, or better yet by recording a giant profile with Zaprecorder. This is STILL NOT undetectible. It just requires more movement packets to detect you, which is a variable in the server side analysis of your data. How many movement packets does blizz choose to collect before analysis? Do they every stop collecting it, and reanalyzing it? Does old data ever drop off into the recycle bin? Lots of unknown variables there.

      Page 24 - "Another way for bots to evade detection would be to move the character more randomly than it does already. However, the crucial point remains that all current bots for WoW use a navigation system that relies on waypoints, which inherently makes them susceptible to our and related approaches. Even though randomizing the movement along a path would impact the LCP values, the number of average line passes would hardly change."

      --My Summary--, Waypoint oriented navigation systems will be detected. point blank.
       
      Last edited: May 22, 2013
    17. devestator

      devestator New Member

      Joined:
      Feb 9, 2010
      Messages:
      64
      Likes Received:
      0
      Trophy Points:
      0
      I'll say again, a waypoint system with enough variance to produce to many false positives will work. It's not so much a waypoint system at that point as a generic area to travel through, just like a real player.

      While a completely random system would indeed defeat the documented LCP system, it would be a simple change to look for movements that are too eratic / random. No player is going to fly from point a to b, b to d, d to b, b to d, d to c. That is to chaotic and will be just as easily detected as flying the exact same waypoints over and over. The same can be said for randomly bouncing around in an area, except instead of looking at points you are looking at vectors. No player is going to eratically change their vector a huge amount that often, they are going to fly a more gradual somewhat defined path.
       
    18. Owneth

      Owneth Member

      Joined:
      Jan 15, 2010
      Messages:
      723
      Likes Received:
      5
      Trophy Points:
      18
      Why are any of us squirming about this? We all know the bot needs a better base, we all know we WANT a better base... then all of HB base should are belong to us.
       
    19. Lorilei

      Lorilei New Member

      Joined:
      May 22, 2013
      Messages:
      22
      Likes Received:
      1
      Trophy Points:
      3
      I'm a new buddyforum user, so I'm not yet familiar with the established forum etiquette. Does it bother you that other people are engaged in a polite, considerate, non-flame, and non-troll conversation on a relevant topic on the forums?

      Open discussion != squirming. :p
       
    20. Aetheric

      Aetheric Member

      Joined:
      Jul 25, 2012
      Messages:
      576
      Likes Received:
      2
      Trophy Points:
      18

      I wouldn't pay too much attention to those kind of remarks, if I were you.
      Your input is very much appreciated :)
       

    Share This Page