All Projects → tehp → Openpogobot

tehp / Openpogobot

Licence: mit
A PokemonGo Python bot - NO LONGER MAINTAINED

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Openpogobot

Gastly
👻 Create screenshots or previews of web pages
Stars: ✭ 89 (-25.83%)
Mutual labels:  pokemon
Pkmn Chest
A Pokémon Bank for the 3rd through 5th generation Pokémon games for the Nintendo DS(i).
Stars: ✭ 107 (-10.83%)
Mutual labels:  pokemon
Pkhex
Pokémon Save File Editor
Stars: ✭ 1,781 (+1384.17%)
Mutual labels:  pokemon
Polished Map
A map and tileset editor for pokecrystal, pokered, and hacks based on them like Polished Crystal. Written in C++ with FLTK.
Stars: ✭ 100 (-16.67%)
Mutual labels:  pokemon
Pokemonkit
Pokeapi wrapper, written in Swift
Stars: ✭ 105 (-12.5%)
Mutual labels:  pokemon
Pokecrystal
Disassembly of Pokémon Crystal
Stars: ✭ 1,549 (+1190.83%)
Mutual labels:  pokemon
Capturesight
Applet and Overlay to view Pokemon, Raid seeds, Future shiny frames/IVs, and more!
Stars: ✭ 81 (-32.5%)
Mutual labels:  pokemon
Ipokemon Server
iPokeMon Server.
Stars: ✭ 119 (-0.83%)
Mutual labels:  pokemon
Pokemongodiy
Project to create your own pokemon go plus
Stars: ✭ 107 (-10.83%)
Mutual labels:  pokemon
Makefile.venv
Seamlessly manage Python virtual environment with a Makefile
Stars: ✭ 114 (-5%)
Mutual labels:  virtualenv
Pkhex.mobile
Pokémon save editor on the go!
Stars: ✭ 101 (-15.83%)
Mutual labels:  pokemon
Clean Arch Pokemon
Clean Architecture de um modo divertido e prático integrando uma API com uma API de Pokémon.
Stars: ✭ 103 (-14.17%)
Mutual labels:  pokemon
Pokediamond
Decompilation of Pokémon Diamond/Pearl
Stars: ✭ 110 (-8.33%)
Mutual labels:  pokemon
Nodeenv
Virtual environment for Node.js & integrator with virtualenv
Stars: ✭ 1,297 (+980.83%)
Mutual labels:  virtualenv
Pokevision Cli
PokéVision has shutdown (for now). Follow @PokeVisionGo on Twitter for updates.
Stars: ✭ 118 (-1.67%)
Mutual labels:  pokemon
Pokegraphs
Pokemon pixel color graphs in javascript.
Stars: ✭ 87 (-27.5%)
Mutual labels:  pokemon
Poketraveler
Let's walk through Pokemon World!
Stars: ✭ 110 (-8.33%)
Mutual labels:  pokemon
Pokemon Go Xposed
📱 Xposed module for Pokemon Go - Circumvents the certificate pinning by injecting the expected SSL trust chain, allows you to MITM and to configure a custom API endpoint.
Stars: ✭ 120 (+0%)
Mutual labels:  pokemon
Pkhex Plugins
Plugins for PKHeX
Stars: ✭ 118 (-1.67%)
Mutual labels:  pokemon
Pokedex
3D Printed Pokédex smartphone case
Stars: ✭ 112 (-6.67%)
Mutual labels:  pokemon

OpenPoGoBot

Build Status Build status codecov Dependency Status

A quick note:

This is a fork of the project PokemonGo-Bot by PokemonGoF.

The goal of this fork is to progress the bot in an organized manner, and to promote a clean and functional codebase. As a result, OpenPoGoBot will be more reliable and secure than PokemonGo-Bot.


Table of Contents

Contributing

See CONTRIBUTING.md

Features

  • Spin Pokestops
  • Catch Pokemon
  • Release low cp pokemon
  • Walk to a location
  • Catch nearby pokemon when you have pokeballs available
  • Switch between catching pokemon and farming pokestops automatically
  • Filter certain pokemon
  • Use superior ball types when necessary
  • When out of normal pokeballs, use the next type of ball unless there are less than 10 of that type, in which case start automatically farming pokestops
  • Bot Navigation via Google Directions API
  • Incubate eggs

Installation

Requirements

Encrypt shared library

With the changes to the API on 3 August 2016, API map requests are required to have a Signature field in the request body. This requires that the encrypt shared library is in the bot directory, as it is needed to encrypt one of the fields.

You will need to either find encrypt.c or the appropriate shared library for your system. The bot will automatically attempt to load the following filenames; another filename can be specified using config options as described below. We can not distribute encrypt.c for legal reasons. Check pgoapi.com.

  • OS X: libencrypt-darwin.so
  • Windows: encrypt.dll
  • Linux: libencrypt.so

To build the shared library for Windows, run lib/build_dll.bat, rename the resulting binary to encrypt.dll and move to the bot folder.

To build the shared library for OS X or Linux, in the lib folder run make, rename the resulting binary as needed and move to the bot folder.

Note that if you are running a 32-bit version of Python, you must have a 32-bit version of the library, and vice versa for 64-bit. On Windows, failure to do so will result in WindowsError: [Error 193] %1 is not a valid Win32 application.

Protobuf 3 installation

  • OS X: brew update && brew install --devel protobuf
  • Windows: Download protobuf 3.0: here and unzip bin/protoc.exe into a folder in your PATH.
  • Linux: apt-get install python-protobuf

Install

git clone --recursive https://www.github.com/OpenPoGo/OpenPoGoBot
cd OpenPoGoBot
virtualenv env

## For Linux Users
source env/Scripts/activate
## For Windows Users
env/Scripts/activate.bat

pip install -r requirements.txt

Usage

$ python pokecli.py [path to config yml]

What happened to the command line arguments?! The command line arguments have been removed in favour of yml config files.

Command Line Example

$ python pokecli.py config/config.yml

Bot Configuration via JSON

To load arguments for the bot from a JSON file, use the --config-json argument with the name of a file. Any other command line arguments specified will override the parameters specified in the loaded JSON file.

Example - this will load config.json but use cp=1000 and iv=0.7 even if already defined in config.json:

$ python2 pokecli.py --config-json config.json -cp 1000 -iv 0.7

JSON Options

Advance Releasing Configuration

To edit the pokemon release configuration, copy the file release_config.json.example and rename it to release_config.json

Edit this file however you want, but keep in mind:

  1. Pokemon names should always be capitalized and are case-sensitive
  2. The any configuration effects every pokemon

FAQ

What's IV ?

Here's the introduction

Losing Starter Pokemon and others

You can use -cp 1 to protect your first stage low CP pokemon.

Set GEO Location

Use either -l "lat, long" or --location "lat, long"

Google login issues (Login Error, Server busy)?

Try to generate an app password and set is as

-p "<your-app-password>"

This error is mostly occurs for those who using 2 factor authentication but either way for the purpose of security would be nice to have a separate password for the bot app.

FLEE

The status code "3" corresponds to "Flee" - meaning your Pokemon has ran away. {"responses": { "CATCH_POKEMON": { "status": 3 } }

Why aren't my pokemon showing up in my Pokedex?

Finish the tutorial on a smartphone. This will then allow everything to be visible.

Where's --mode/-m?

Now, instead of using --mode you need to exclude plugins. If you don't want to catch pokemon, exclude the catch_pokemon plugin (-ep catch_pokemon), and if you don't want to farm pokestops just exclude the spin_pokestop plugin (-ep spin_pokestop). Alternatively, you can modify your configuration JSON file to do the same thing.

How can I have the bot ignore certain pokemon?

Create the following filter

./data/catch-ignore.yml

Its a yaml file with a list of names so make it look like

ignore:
  - Pidgey
  - Rattata
  - Pidgeotto
  - Spearow
  - Ekans
  - Zubat

How do I use the map?

Socket Plugin

The socket plugin exposes a server on port 8000 that allow communication to your browser. Once launched, just to to http://openpogoui.nicontoso.eu to show progress on a map. You can then click on settings (lower right) to modify map settings.


Plugins

Here are the available plugins:

Plugins
collect_rewards
catch_pokemon
egg_incubator
recycle_items
spin_pokestop
transfer_pokemon
socket

Testing

Please see the testing documentation on how to run and write the tests.

Credits

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].