Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature request: FollowPath with different vehicles #5620

Open
janpascal opened this issue Sep 22, 2016 · 5 comments
Open

Feature request: FollowPath with different vehicles #5620

janpascal opened this issue Sep 22, 2016 · 5 comments

Comments

@janpascal
Copy link
Contributor

Short Description

It would be nice if, for every point in the path for the FollowPath task, you could indicate which vehicle should be simulated.

  • walking (default)
  • bicycle (speed around 20 km/h)
  • car (max speed as indicated by the google maps api?)
  • plane (900 km/h, no connection to the API for the flying time)

Possible solution

In the FollowTask walker, use a different speed depending on the vehicle for the current stretch. When 'flying', pause for the flying time.

How it would help others

Helps to get to an interesting location more quickly without teleporting. Combine with loitering to, e.g. fly to California, walk around there from pokestop to pokestop, catching pokemon on the way, for a couple of hours, then drive to another city (no egg incubating during the trip), walk around there for another couple of hours, then fly back home.

@alexyaoyang
Copy link
Contributor

Sounds interesting, could be useful! How should it work with walk_min and walk_max?

@janpascal
Copy link
Contributor Author

I imagine those would only be used if mode==walking. The speed implied by the Google directions reply (it gives time and distance for each step) can be used for driving and bicycling. For flying a constant can be used.

On 27 September 2016 07:58:29 CEST, Alex Yao notifications@github.com wrote:

Sounds interesting, could be useful! How should it work with walk_min
and walk_max?

You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
#5620 (comment)

Sent from my Android device with K-9 Mail. Please excuse my brevity.

@janpascal
Copy link
Contributor Author

I'm working on this. The path.json would look like this:

[
        {"location": "Lindelaan 33, Leiderdorp", "mode": "walking"},
        {"location": "Eikenlaan 25, Leiderdorp", "mode": "walking"},
        {"location": "Hoofdstraat 2, Leiderdorp", "mode": "walking"},
        {"location": "Aankomstpassage, Schiphol", "mode": "driving"},
        {"location": "Hartmann Road, London", "mode": "flying"},
        {"location": "4 Cannon Street, Londeon", "mode": "driving"}
]

The speed while walking is as before, using walk_min and walk_max. While driving (using directions from the Google directions API with the appropriate mode set) the speed per element of the directions is used, with a uniform random distribution of plus or minus five percent. While flying a sleep() is used for the time needed to fly to the next location at a typical airliner cruise speed, around 290 m/s. Flying speed is configurable using fly_min and fly_max in config.js.

Does that sound ok?

@janpascal
Copy link
Contributor Author

One question: should we take special measures when simulating driving? Does the app limit api calls? Does the app pop-up "You're going too fast! I'm a passenger" lead to any api calls?

@janpascal
Copy link
Contributor Author

Maybe mode should be vehicle or transport_mode?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants