From a08dfaaf44a32d8c1ae005b3dd7500e580b9a4da Mon Sep 17 00:00:00 2001 From: Tobias Stumm Date: Mon, 25 Jul 2016 09:05:11 +0200 Subject: [PATCH 1/6] Fixed sleep to use floats again --- pokemongo_bot/human_behaviour.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/pokemongo_bot/human_behaviour.py b/pokemongo_bot/human_behaviour.py index 6d4c434f92..018fea8fa7 100644 --- a/pokemongo_bot/human_behaviour.py +++ b/pokemongo_bot/human_behaviour.py @@ -1,13 +1,12 @@ # -*- coding: utf-8 -*- import time -from math import ceil -from random import random, randint +from random import random def sleep(seconds, delta=0.3): - jitter = ceil(delta * seconds) - sleep_time = randint(int(seconds - jitter), int(seconds + jitter)) + jitter = delta * seconds + sleep_time = random.uniform(seconds - jitter, seconds + jitter) time.sleep(sleep_time) From 96fc4444c1a3f63ea9d62d67383fcb983953d395 Mon Sep 17 00:00:00 2001 From: Tobias Stumm Date: Mon, 25 Jul 2016 09:09:15 +0200 Subject: [PATCH 2/6] Fixed sleep to use floats again #2 --- pokemongo_bot/human_behaviour.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pokemongo_bot/human_behaviour.py b/pokemongo_bot/human_behaviour.py index 018fea8fa7..18d8fb47f4 100644 --- a/pokemongo_bot/human_behaviour.py +++ b/pokemongo_bot/human_behaviour.py @@ -1,12 +1,12 @@ # -*- coding: utf-8 -*- import time -from random import random +from random import random, uniform def sleep(seconds, delta=0.3): jitter = delta * seconds - sleep_time = random.uniform(seconds - jitter, seconds + jitter) + sleep_time = uniform(seconds - jitter, seconds + jitter) time.sleep(sleep_time) From 9f32989b7dac6b30537bd4f7abce80fb852720e3 Mon Sep 17 00:00:00 2001 From: Tobias Stumm Date: Mon, 25 Jul 2016 10:13:32 +0200 Subject: [PATCH 3/6] Refactored jitter to have its own function to be used elsewhere --- pokemongo_bot/human_behaviour.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pokemongo_bot/human_behaviour.py b/pokemongo_bot/human_behaviour.py index 18d8fb47f4..2da9d1e365 100644 --- a/pokemongo_bot/human_behaviour.py +++ b/pokemongo_bot/human_behaviour.py @@ -5,9 +5,11 @@ def sleep(seconds, delta=0.3): - jitter = delta * seconds - sleep_time = uniform(seconds - jitter, seconds + jitter) - time.sleep(sleep_time) + time.sleep(jitter(seconds,delta)) + +def jitter(value, delta=0.3): + jitter = delta * value + return uniform(value-jitter, value+jitter) def random_lat_long_delta(): From 755bb62158697c65b7cc22ec1f4b16bb42d660ac Mon Sep 17 00:00:00 2001 From: Tobias Stumm Date: Mon, 25 Jul 2016 14:32:58 +0200 Subject: [PATCH 4/6] Fixes SpiralNavigation skipping waypoints --- pokemongo_bot/spiral_navigator.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/pokemongo_bot/spiral_navigator.py b/pokemongo_bot/spiral_navigator.py index 6fb174b0e9..8ed7417931 100644 --- a/pokemongo_bot/spiral_navigator.py +++ b/pokemongo_bot/spiral_navigator.py @@ -78,6 +78,12 @@ def take_step(self): if self.x == self.y or self.x < 0 and self.x == -self.y or self.x > 0 and self.x == 1 - self.y: (self.dx, self.dy) = (-self.dy, self.dx) - (self.x, self.y) = (self.x + self.dx, self.y + self.dy) - sleep(10) + if distance( + i2f(self.api._position_lat), + i2f(self.api._position_lng), + position[0], + position[1] + ) < 1: + (self.x, self.y) = (self.x + self.dx, self.y + self.dy) + sleep(2) return position[0:2] From e081a501394e609cc4cc3727e38ffa52b83001e3 Mon Sep 17 00:00:00 2001 From: Tobias Stumm Date: Mon, 25 Jul 2016 14:44:05 +0200 Subject: [PATCH 5/6] Fixing stationary movements --- pokemongo_bot/spiral_navigator.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pokemongo_bot/spiral_navigator.py b/pokemongo_bot/spiral_navigator.py index 8ed7417931..56d8eee03c 100644 --- a/pokemongo_bot/spiral_navigator.py +++ b/pokemongo_bot/spiral_navigator.py @@ -83,7 +83,7 @@ def take_step(self): i2f(self.api._position_lng), position[0], position[1] - ) < 1: + ) <= 1 or (self.config.walk > 0 and self._step_walker == None): (self.x, self.y) = (self.x + self.dx, self.y + self.dy) - sleep(2) + sleep(1) return position[0:2] From 5425a7eb72eed1fae4609cd0ba3fa23061384888 Mon Sep 17 00:00:00 2001 From: Tobias Stumm Date: Mon, 25 Jul 2016 15:02:29 +0200 Subject: [PATCH 6/6] Improved StepWalker (distances lower than speed should be walked directly) --- pokemongo_bot/step_walker.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pokemongo_bot/step_walker.py b/pokemongo_bot/step_walker.py index e0fb64bf00..378c31fd43 100644 --- a/pokemongo_bot/step_walker.py +++ b/pokemongo_bot/step_walker.py @@ -25,7 +25,7 @@ def __init__(self, bot, speed, initLat, initLng, destLat, destLng): self.steps = (dist + 0.0) / (speed + 0.0) - if dist < 0.01 or self.steps < 1: + if dist < speed or self.steps < 1: self.dLat = 0 self.dLng = 0 self.magnitude = 0; @@ -44,7 +44,8 @@ def step(self): # print 'distance' # print dist - if (self.dLat == 0 and self.dLng == 0) or dist < 15: + if (self.dLat == 0 and self.dLng == 0) or dist < self.speed: + self.api.set_position(self.destLat, self.destLng, 0) return True totalDLat = (self.destLat - i2f(self.api._position_lat))