Gym Egg Exploit
The Exploit:
Eggs are considered pokemon, they maintain a pokemon_id. They can be added to gyms which in essence breaks the gym. It can no longer be prestiged, nor can it be beaten. Pokemon can be added upto it's cap, however you cannot scroll through to see what is inside. It is stuck with a picture of a 0 CP egg.
Requirements:
Python *I use 2.7.12, can use either 32bit or 64bit but DLL differs depending on install version*
encrypt32bit.dll :: Free File Hosting - File Dropper: File Host for Mp3, Videos, Music, Documents. - 32bit python install dll required, put in root directory of api
encrypt64bit.dll :: Free File Hosting - File Dropper: File Host for Mp3, Videos, Music, Documents. - 64bit python install dll required, put in root directory of api
Depending on if you have 32 or 64 bit, you'll have to modify the script to reflect it, look at notes of script to figure it out
Python Required Libraryies:
geopy==1.11.0
protobuf>=3.0.0a3
requests==2.10.0
s2sphere==0.2.4
gpsoauth==0.3.0
sixxxhash
future - install this
pycryptodomex-3.4.2 - install this
GitHub - CyberSecurityUSC/pgoapi: Pokemon Go API lib - this is the api it's self
as a side note, if you need help finding your egg pokemon_id, api.get_inventory() will display all ids including egg ids
I have attached 2 scripts, one is for finding nearby gyms, it prints to console a big blob of map cell information with details on the nearby forts, the other is for deploying your egg into a gym
I would suggest getting more creative with it if you where to use in any quick manner, filtering through non gym forts etc - as it stands I just checked current xp of gym, ran command like Gym2.py > gym.txt, searched through text and found lat, long and gym id that way.
Imgur Gym Library
Finding nearby gyms
Code:
import os
import sys
import json
import time
import pprint
import logging
import getpass
import argparse
# add directory of this file to PATH, so that the package will be found
sys.path.append(os.path.dirname(os.path.realpath(__file__)))
# import Pokemon Go API lib
from pgoapi import pgoapi
from pgoapi import utilities as util
log = logging.getLogger(__name__)
def main():
# instantiate pgoapi
api = pgoapi.PGoApi()
startLat = 40.754546
startLon = -73.995361
# set player position on the earth
#set lat and lon
api.set_position(startLat, startLon, 0.0)
#set login info, using ptc
api.login('ptc', 'username', 'password')
#required, sets signature, encrypt.dll for 32bit python install, encrypt64.dll for 64bit python install
api.activate_signature("encrypt64.dll")
# This gathers the cells located around your given coords
cell_ids = util.get_cell_ids(startLat, startLon)
# generates timestamp based on cell-ids
timestamps = [0,] * len(cell_ids)
# pulls in all nearby objects, pokestops, gyms etc
response_dict = api.get_map_objects(latitude = startLat, longitude = startLon, since_timestamp_ms = timestamps, cell_id = cell_ids)
print response_dict
if __name__ == '__main__':
main()
Deploying Egg to Gym
Code:
import os
import sys
import json
import time
import pprint
import logging
import getpass
import argparse
# add directory of this file to PATH, so that the package will be found
sys.path.append(os.path.dirname(os.path.realpath(__file__)))
# import Pokemon Go API lib
from pgoapi import pgoapi
from pgoapi import utilities as util
log = logging.getLogger(__name__)
def main():
# instantiate pgoapi
api = pgoapi.PGoApi()
startLat = 40.757001
startLon = -74.001953
# set player position on the earth
#set lat and lon
api.set_position(startLat, startLon, 0.0)
#set login info, using ptc
api.login('ptc', 'username', 'password')
#required, sets signature, encrypt.dll for 32bit python install, encrypt64.dll for 64bit python install
api.activate_signature("encrypt64.dll")
#print response_dict
time.sleep(1)
count = 1
while count <= 100:
gymTest2 = api.fort_deploy_pokemon(fort_id = '57e956d492a34f23a139b1356dc47a97.16', pokemon_id = 6666666, player_latitude = startLat, player_longitude = startLon)
print gymTest2
time.sleep(1)
count = count + 1
if __name__ == '__main__':
main()
If anyone would like to make all of Manhattan instinct with me, pm me