From e8d25602a4c7491d641de74d56569a10fa44de0f Mon Sep 17 00:00:00 2001 From: Cole Greenlee Date: Sun, 24 Jul 2016 23:50:14 -0500 Subject: [PATCH 1/7] Run configs from a config directory People are able to throw all of their test configs into this folder and they are ignored whilst doing a commit, minimizing the risk that someone uploads a password-containing file to GitHub This commit creates the configs folder --- .../config.json.example | 0 configs/release_config.json.example | 174 ++++++++++++++++++ pokecli.py | 4 +- 3 files changed, 176 insertions(+), 2 deletions(-) rename config.json.example => configs/config.json.example (100%) create mode 100644 configs/release_config.json.example diff --git a/config.json.example b/configs/config.json.example similarity index 100% rename from config.json.example rename to configs/config.json.example diff --git a/configs/release_config.json.example b/configs/release_config.json.example new file mode 100644 index 0000000000..06d4687e9a --- /dev/null +++ b/configs/release_config.json.example @@ -0,0 +1,174 @@ +{ + "any": { + "release_under_cp": 400, + "release_under_iv": 0.9, + "cp_iv_logic": "and" + }, + + "Bulbasaur": { "release_under_cp": 374, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Ivysaur": { "release_under_cp": 571, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Venusaur": { "release_under_cp": 902, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Charmander": { "release_under_cp": 333, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Charmeleon": { "release_under_cp": 544, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Charizard": { "release_under_cp": 909, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Squirtle": { "release_under_cp": 352, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Wartortle": { "release_under_cp": 552, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Blastoise": { "release_under_cp": 888, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Caterpie": { "release_under_cp": 156, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Metapod": { "release_under_cp": 168, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Butterfree": { "release_under_cp": 508, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Weedle": { "release_under_cp": 156, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Kakuna": { "release_under_cp": 170, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Beedrill": { "release_under_cp": 504, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Pidgey": { "release_under_cp": 237, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Pidgeotto": { "release_under_cp": 427, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Pidgeot": { "release_under_cp": 729, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Rattata": { "release_under_cp": 204, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Raticate": { "release_under_cp": 504, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Spearow": { "release_under_cp": 240, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Fearow": { "release_under_cp": 609, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Ekans": { "release_under_cp": 288, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Arbok": { "release_under_cp": 616, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Pikachu": { "release_under_cp": 309, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Raichu": { "release_under_cp": 708, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Sandshrew": { "release_under_cp": 278, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Sandslash": { "release_under_cp": 631, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Nidoran F": { "release_under_cp": 304, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Nidorina": { "release_under_cp": 489, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Nidoqueen": { "release_under_cp": 868, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Nidoran M": { "release_under_cp": 295, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Nidorino": { "release_under_cp": 480, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Nidoking": { "release_under_cp": 864, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Clefairy": { "release_under_cp": 420, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Clefable": { "release_under_cp": 837, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Vulpix": { "release_under_cp": 290, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Ninetales": { "release_under_cp": 763, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Jigglypuff": { "release_under_cp": 321, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Wigglytuff": { "release_under_cp": 760, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Zubat": { "release_under_cp": 225, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Golbat": { "release_under_cp": 672, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Oddish": { "release_under_cp": 400, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Gloom": { "release_under_cp": 590, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Vileplume": { "release_under_cp": 871, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Paras": { "release_under_cp": 319, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Parasect": { "release_under_cp": 609, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Venonat": { "release_under_cp": 360, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Venomoth": { "release_under_cp": 660, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Diglett": { "release_under_cp": 158, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Dugtrio": { "release_under_cp": 408, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Meowth": { "release_under_cp": 264, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Persian": { "release_under_cp": 568, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Psyduck": { "release_under_cp": 386, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Golduck": { "release_under_cp": 832, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Mankey": { "release_under_cp": 307, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Primeape": { "release_under_cp": 650, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Growlithe": { "release_under_cp": 465, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Arcanine": { "release_under_cp": 1041, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Poliwag": { "release_under_cp": 278, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Poliwhirl": { "release_under_cp": 468, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Poliwrath": { "release_under_cp": 876, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Abra": { "release_under_cp": 208, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Kadabra": { "release_under_cp": 396, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Alakazam": { "release_under_cp": 633, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Machop": { "release_under_cp": 381, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Machoke": { "release_under_cp": 614, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Machamp": { "release_under_cp": 907, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Bellsprout": { "release_under_cp": 391, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Weepinbell": { "release_under_cp": 602, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Victreebel": { "release_under_cp": 883, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Tentacool": { "release_under_cp": 316, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Tentacruel": { "release_under_cp": 775, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Geodude": { "release_under_cp": 297, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Graveler": { "release_under_cp": 501, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Golem": { "release_under_cp": 804, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Ponyta": { "release_under_cp": 530, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Rapidash": { "release_under_cp": 768, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Slowpoke": { "release_under_cp": 424, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Slowbro": { "release_under_cp": 907, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Magnemite": { "release_under_cp": 312, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Magneton": { "release_under_cp": 657, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Farfetch'd": { "release_under_cp": 441, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Doduo": { "release_under_cp": 297, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Dodrio": { "release_under_cp": 640, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Seel": { "release_under_cp": 386, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Dewgong": { "release_under_cp": 748, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Grimer": { "release_under_cp": 448, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Muk": { "release_under_cp": 909, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Shellder": { "release_under_cp": 288, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Cloyster": { "release_under_cp": 717, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Gastly": { "release_under_cp": 280, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Haunter": { "release_under_cp": 482, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Gengar": { "release_under_cp": 724, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Onix": { "release_under_cp": 300, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Drowzee": { "release_under_cp": 374, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Hypno": { "release_under_cp": 763, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Krabby": { "release_under_cp": 276, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Kingler": { "release_under_cp": 636, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Voltorb": { "release_under_cp": 292, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Electrode": { "release_under_cp": 576, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Exeggcute": { "release_under_cp": 384, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Exeggutor": { "release_under_cp": 1032, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Cubone": { "release_under_cp": 352, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Marowak": { "release_under_cp": 578, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Hitmonlee": { "release_under_cp": 520, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Hitmonchan": { "release_under_cp": 530, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Lickitung": { "release_under_cp": 568, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Koffing": { "release_under_cp": 403, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Weezing": { "release_under_cp": 784, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Rhyhorn": { "release_under_cp": 412, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Rhydon": { "release_under_cp": 782, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Chansey": { "release_under_cp": 235, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Tangela": { "release_under_cp": 607, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Kangaskhan": { "release_under_cp": 712, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Horsea": { "release_under_cp": 278, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Seadra": { "release_under_cp": 597, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Goldeen": { "release_under_cp": 336, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Seaking": { "release_under_cp": 712, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Staryu": { "release_under_cp": 326, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Starmie": { "release_under_cp": 763, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Mr. Mime": { "release_under_cp": 520, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Scyther": { "release_under_cp": 724, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Jynx": { "release_under_cp": 600, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Electabuzz": { "release_under_cp": 739, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Magmar": { "release_under_cp": 792, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Pinsir": { "release_under_cp": 741, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Tauros": { "release_under_cp": 643, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Magikarp": { "release_under_cp": 91, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Gyarados": { "release_under_cp": 938, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Lapras": { "release_under_cp": 1041, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Ditto": { "release_under_cp": 321, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Eevee": { "release_under_cp": 376, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Vaporeon": { "release_under_cp": 984, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Jolteon": { "release_under_cp": 746, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Flareon": { "release_under_cp": 924, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Porygon": { "release_under_cp": 590, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Omanyte": { "release_under_cp": 391, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Omastar": { "release_under_cp": 780, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Kabuto": { "release_under_cp": 386, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Kabutops": { "release_under_cp": 744, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Aerodactyl": { "release_under_cp": 756, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Snorlax": { "release_under_cp": 1087, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Articuno": { "release_under_cp": 1039, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Zapdos": { "release_under_cp": 1087, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Moltres": { "release_under_cp": 1132, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Dratini": { "release_under_cp": 343, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Dragonair": { "release_under_cp": 609, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Dragonite": { "release_under_cp": 1221, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Mewtwo": { "release_under_cp": 1447, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Mew": { "release_under_cp": 1152, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + + "exceptions": { + "always_capture": [ + "Arcanine", + "Lapras", + "Dragonite", + "Snorlax", + "Blastoise", + "Moltres", + "Articuno", + "Zapdos", + "Mew", + "Mewtwo" + ] + } +} diff --git a/pokecli.py b/pokecli.py index 07cf746c06..11335caf1f 100755 --- a/pokecli.py +++ b/pokecli.py @@ -46,8 +46,8 @@ def init_config(): parser = argparse.ArgumentParser() - config_file = "config.json" - release_config_json = "release_config.json" + config_file = "configs/config.json" + release_config_json = "configs/release_config.json" # If config file exists, load variables from json load = {} From 080852a68b3780d7f90b34208135a9a61db97089 Mon Sep 17 00:00:00 2001 From: Cole Greenlee Date: Sun, 24 Jul 2016 23:52:05 -0500 Subject: [PATCH 2/7] Allow config files to be ignored in git This just makes the config directory to be ignored. Had to do this in two sets to actually put the example files into the folder first. --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index cb30b978fa..2a0aab24b7 100644 --- a/.gitignore +++ b/.gitignore @@ -114,3 +114,4 @@ data/catch-ignore.yml release_config.json web/userdata.js location.json +configs/ \ No newline at end of file From c9550763115966ac39678fc21753f890ed6aa922 Mon Sep 17 00:00:00 2001 From: Cole Greenlee Date: Mon, 25 Jul 2016 00:07:48 -0500 Subject: [PATCH 3/7] Updated git ignore to allow the two example configs Also changed the directory for the release config to look for --- .gitignore | 6 +- pokemongo_bot/__init__.py | 2 +- release_config.json.example | 174 ------------------------------------ 3 files changed, 6 insertions(+), 176 deletions(-) delete mode 100644 release_config.json.example diff --git a/.gitignore b/.gitignore index 2a0aab24b7..82129ccf7b 100644 --- a/.gitignore +++ b/.gitignore @@ -114,4 +114,8 @@ data/catch-ignore.yml release_config.json web/userdata.js location.json -configs/ \ No newline at end of file + +#config directory +configs/ +!release_config.json.example +!config.json.example \ No newline at end of file diff --git a/pokemongo_bot/__init__.py b/pokemongo_bot/__init__.py index d6df1a38d7..5b69eef768 100644 --- a/pokemongo_bot/__init__.py +++ b/pokemongo_bot/__init__.py @@ -123,7 +123,7 @@ def _setup_api(self): # check if the release_config file exists try: - with open('release_config.json') as file: + with open('config/release_config.json') as file: pass except: # the file does not exist, warn the user and exit. diff --git a/release_config.json.example b/release_config.json.example deleted file mode 100644 index 06d4687e9a..0000000000 --- a/release_config.json.example +++ /dev/null @@ -1,174 +0,0 @@ -{ - "any": { - "release_under_cp": 400, - "release_under_iv": 0.9, - "cp_iv_logic": "and" - }, - - "Bulbasaur": { "release_under_cp": 374, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Ivysaur": { "release_under_cp": 571, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Venusaur": { "release_under_cp": 902, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Charmander": { "release_under_cp": 333, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Charmeleon": { "release_under_cp": 544, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Charizard": { "release_under_cp": 909, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Squirtle": { "release_under_cp": 352, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Wartortle": { "release_under_cp": 552, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Blastoise": { "release_under_cp": 888, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Caterpie": { "release_under_cp": 156, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Metapod": { "release_under_cp": 168, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Butterfree": { "release_under_cp": 508, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Weedle": { "release_under_cp": 156, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Kakuna": { "release_under_cp": 170, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Beedrill": { "release_under_cp": 504, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Pidgey": { "release_under_cp": 237, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Pidgeotto": { "release_under_cp": 427, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Pidgeot": { "release_under_cp": 729, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Rattata": { "release_under_cp": 204, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Raticate": { "release_under_cp": 504, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Spearow": { "release_under_cp": 240, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Fearow": { "release_under_cp": 609, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Ekans": { "release_under_cp": 288, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Arbok": { "release_under_cp": 616, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Pikachu": { "release_under_cp": 309, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Raichu": { "release_under_cp": 708, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Sandshrew": { "release_under_cp": 278, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Sandslash": { "release_under_cp": 631, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Nidoran F": { "release_under_cp": 304, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Nidorina": { "release_under_cp": 489, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Nidoqueen": { "release_under_cp": 868, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Nidoran M": { "release_under_cp": 295, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Nidorino": { "release_under_cp": 480, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Nidoking": { "release_under_cp": 864, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Clefairy": { "release_under_cp": 420, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Clefable": { "release_under_cp": 837, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Vulpix": { "release_under_cp": 290, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Ninetales": { "release_under_cp": 763, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Jigglypuff": { "release_under_cp": 321, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Wigglytuff": { "release_under_cp": 760, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Zubat": { "release_under_cp": 225, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Golbat": { "release_under_cp": 672, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Oddish": { "release_under_cp": 400, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Gloom": { "release_under_cp": 590, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Vileplume": { "release_under_cp": 871, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Paras": { "release_under_cp": 319, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Parasect": { "release_under_cp": 609, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Venonat": { "release_under_cp": 360, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Venomoth": { "release_under_cp": 660, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Diglett": { "release_under_cp": 158, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Dugtrio": { "release_under_cp": 408, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Meowth": { "release_under_cp": 264, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Persian": { "release_under_cp": 568, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Psyduck": { "release_under_cp": 386, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Golduck": { "release_under_cp": 832, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Mankey": { "release_under_cp": 307, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Primeape": { "release_under_cp": 650, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Growlithe": { "release_under_cp": 465, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Arcanine": { "release_under_cp": 1041, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Poliwag": { "release_under_cp": 278, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Poliwhirl": { "release_under_cp": 468, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Poliwrath": { "release_under_cp": 876, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Abra": { "release_under_cp": 208, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Kadabra": { "release_under_cp": 396, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Alakazam": { "release_under_cp": 633, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Machop": { "release_under_cp": 381, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Machoke": { "release_under_cp": 614, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Machamp": { "release_under_cp": 907, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Bellsprout": { "release_under_cp": 391, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Weepinbell": { "release_under_cp": 602, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Victreebel": { "release_under_cp": 883, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Tentacool": { "release_under_cp": 316, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Tentacruel": { "release_under_cp": 775, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Geodude": { "release_under_cp": 297, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Graveler": { "release_under_cp": 501, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Golem": { "release_under_cp": 804, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Ponyta": { "release_under_cp": 530, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Rapidash": { "release_under_cp": 768, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Slowpoke": { "release_under_cp": 424, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Slowbro": { "release_under_cp": 907, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Magnemite": { "release_under_cp": 312, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Magneton": { "release_under_cp": 657, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Farfetch'd": { "release_under_cp": 441, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Doduo": { "release_under_cp": 297, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Dodrio": { "release_under_cp": 640, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Seel": { "release_under_cp": 386, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Dewgong": { "release_under_cp": 748, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Grimer": { "release_under_cp": 448, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Muk": { "release_under_cp": 909, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Shellder": { "release_under_cp": 288, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Cloyster": { "release_under_cp": 717, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Gastly": { "release_under_cp": 280, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Haunter": { "release_under_cp": 482, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Gengar": { "release_under_cp": 724, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Onix": { "release_under_cp": 300, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Drowzee": { "release_under_cp": 374, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Hypno": { "release_under_cp": 763, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Krabby": { "release_under_cp": 276, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Kingler": { "release_under_cp": 636, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Voltorb": { "release_under_cp": 292, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Electrode": { "release_under_cp": 576, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Exeggcute": { "release_under_cp": 384, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Exeggutor": { "release_under_cp": 1032, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Cubone": { "release_under_cp": 352, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Marowak": { "release_under_cp": 578, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Hitmonlee": { "release_under_cp": 520, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Hitmonchan": { "release_under_cp": 530, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Lickitung": { "release_under_cp": 568, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Koffing": { "release_under_cp": 403, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Weezing": { "release_under_cp": 784, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Rhyhorn": { "release_under_cp": 412, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Rhydon": { "release_under_cp": 782, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Chansey": { "release_under_cp": 235, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Tangela": { "release_under_cp": 607, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Kangaskhan": { "release_under_cp": 712, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Horsea": { "release_under_cp": 278, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Seadra": { "release_under_cp": 597, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Goldeen": { "release_under_cp": 336, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Seaking": { "release_under_cp": 712, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Staryu": { "release_under_cp": 326, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Starmie": { "release_under_cp": 763, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Mr. Mime": { "release_under_cp": 520, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Scyther": { "release_under_cp": 724, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Jynx": { "release_under_cp": 600, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Electabuzz": { "release_under_cp": 739, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Magmar": { "release_under_cp": 792, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Pinsir": { "release_under_cp": 741, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Tauros": { "release_under_cp": 643, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Magikarp": { "release_under_cp": 91, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Gyarados": { "release_under_cp": 938, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Lapras": { "release_under_cp": 1041, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Ditto": { "release_under_cp": 321, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Eevee": { "release_under_cp": 376, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Vaporeon": { "release_under_cp": 984, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Jolteon": { "release_under_cp": 746, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Flareon": { "release_under_cp": 924, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Porygon": { "release_under_cp": 590, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Omanyte": { "release_under_cp": 391, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Omastar": { "release_under_cp": 780, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Kabuto": { "release_under_cp": 386, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Kabutops": { "release_under_cp": 744, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Aerodactyl": { "release_under_cp": 756, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Snorlax": { "release_under_cp": 1087, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Articuno": { "release_under_cp": 1039, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Zapdos": { "release_under_cp": 1087, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Moltres": { "release_under_cp": 1132, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Dratini": { "release_under_cp": 343, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Dragonair": { "release_under_cp": 609, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Dragonite": { "release_under_cp": 1221, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Mewtwo": { "release_under_cp": 1447, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - "Mew": { "release_under_cp": 1152, "release_under_iv": 0.8, "cp_iv_logic": "and" }, - - "exceptions": { - "always_capture": [ - "Arcanine", - "Lapras", - "Dragonite", - "Snorlax", - "Blastoise", - "Moltres", - "Articuno", - "Zapdos", - "Mew", - "Mewtwo" - ] - } -} From 6e99169d963bd8637dfb55426650f2fe15e694bd Mon Sep 17 00:00:00 2001 From: Steffan Long Date: Sun, 24 Jul 2016 22:54:26 -0700 Subject: [PATCH 4/7] remove file exist checks to fix webview, remove gmaps api key write to html (#730) --- pokecli.py | 16 +++++++------- pokemongo_bot/__init__.py | 21 ++++++++----------- .../cell_workers/initial_transfer_worker.py | 6 ++---- 3 files changed, 18 insertions(+), 25 deletions(-) diff --git a/pokecli.py b/pokecli.py index 07cf746c06..963b96bf20 100755 --- a/pokecli.py +++ b/pokecli.py @@ -48,6 +48,7 @@ def init_config(): parser = argparse.ArgumentParser() config_file = "config.json" release_config_json = "release_config.json" + web_dir = "web" # If config file exists, load variables from json load = {} @@ -172,15 +173,12 @@ def init_config(): with open(release_config_json) as data: config.release_config.update(json.load(data)) - web_index = 'web/index.html' - if config.gmapkey and os.path.isfile(web_index): - find_url = 'https:\/\/maps.googleapis.com\/maps\/api\/js\?key=\S*' - replace_url = "https://maps.googleapis.com/maps/api/js?key=%s&callback=initMap\"" - #Someone make this pretty! (Efficient) - with open(web_index, "r+") as sources: # r+ is read + write - lines = sources.readlines() - for line in lines: - sources.write(re.sub(r"%s" % find_url, replace_url % config.gmapkey, line)) + # create web dir if not exists + try: + os.makedirs(web_dir) + except OSError: + if not os.path.isdir(web_dir): + raise if config.evolve_all: config.evolve_all = [str(pokemon_name) for pokemon_name in config.evolve_all.split(',')] diff --git a/pokemongo_bot/__init__.py b/pokemongo_bot/__init__.py index d6df1a38d7..0c3acd1d8a 100644 --- a/pokemongo_bot/__init__.py +++ b/pokemongo_bot/__init__.py @@ -1,6 +1,5 @@ # -*- coding: utf-8 -*- -import os import logging import googlemaps import json @@ -57,15 +56,14 @@ def work_on_cell(self, cell, position, include_fort_on_path): lambda x: distance(self.position[0], self.position[1], x['latitude'], x['longitude'])) user_web_catchable = 'web/catchable-%s.json' % (self.config.username) - if os.path.isfile(user_web_catchable): # only write to file if it exists - for pokemon in cell['catchable_pokemons']: - with open(user_web_catchable, 'w') as outfile: - json.dump(pokemon, outfile) + for pokemon in cell['catchable_pokemons']: + with open(user_web_catchable, 'w') as outfile: + json.dump(pokemon, outfile) - if self.catch_pokemon(pokemon) == PokemonCatchWorker.NO_POKEBALLS: - break - with open(user_web_catchable, 'w') as outfile: - json.dump({}, outfile) + if self.catch_pokemon(pokemon) == PokemonCatchWorker.NO_POKEBALLS: + break + with open(user_web_catchable, 'w') as outfile: + json.dump({}, outfile) if (self.config.mode == "all" or self.config.mode == "poke" ) and 'wild_pokemons' in cell and len(cell['wild_pokemons']) > 0: @@ -237,9 +235,8 @@ def pokeball_inventory(self): 'inventory_delta']['inventory_items'] user_web_inventory = 'web/inventory-%s.json' % (self.config.username) - if os.path.isfile(user_web_inventory): - with open(user_web_inventory, 'w') as outfile: - json.dump(inventory_dict, outfile) + with open(user_web_inventory, 'w') as outfile: + json.dump(inventory_dict, outfile) # get player balls stock # ---------------------- diff --git a/pokemongo_bot/cell_workers/initial_transfer_worker.py b/pokemongo_bot/cell_workers/initial_transfer_worker.py index f09b91e07c..026e79ddaa 100644 --- a/pokemongo_bot/cell_workers/initial_transfer_worker.py +++ b/pokemongo_bot/cell_workers/initial_transfer_worker.py @@ -1,5 +1,4 @@ import json -import os from pokemongo_bot.human_behaviour import sleep from pokemongo_bot import logger @@ -51,9 +50,8 @@ def _initial_transfer_get_groups(self): 'inventory_delta']['inventory_items'] user_web_inventory = 'web/inventory-%s.json' % (self.config.username) - if os.path.isfile(user_web_inventory): - with open(user_web_inventory, 'w') as outfile: - json.dump(inventory_dict, outfile) + with open(user_web_inventory, 'w') as outfile: + json.dump(inventory_dict, outfile) for pokemon in inventory_dict: try: From 6370f9b4a5e1326f4a6794a053ef7d984d9332cd Mon Sep 17 00:00:00 2001 From: Cole Greenlee Date: Mon, 25 Jul 2016 01:45:48 -0500 Subject: [PATCH 5/7] Added PR to features list --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c5b0ab1f3d..1a77d0e674 100644 --- a/README.md +++ b/README.md @@ -54,7 +54,7 @@ No PR on master branch to keep things easier. * Google Map API key setup (Readme update needed) * Show all objects on map (In Testing) * Evolve pokemons (Code in, Need input, In Testing) - + * Use multiple config files to support separate accounts ## TODO List - [ ] Standalone Desktop APP From 50361e4c698c60272cdcd9a4259d9337cadbe707 Mon Sep 17 00:00:00 2001 From: Cole Greenlee Date: Mon, 25 Jul 2016 02:12:52 -0500 Subject: [PATCH 6/7] Revert "Added PR to features list" This reverts commit 6370f9b4a5e1326f4a6794a053ef7d984d9332cd. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1a77d0e674..c5b0ab1f3d 100644 --- a/README.md +++ b/README.md @@ -54,7 +54,7 @@ No PR on master branch to keep things easier. * Google Map API key setup (Readme update needed) * Show all objects on map (In Testing) * Evolve pokemons (Code in, Need input, In Testing) - * Use multiple config files to support separate accounts + ## TODO List - [ ] Standalone Desktop APP From 2c302780f5a04d16982c4ae265784f94aba08c66 Mon Sep 17 00:00:00 2001 From: Cole Greenlee Date: Mon, 25 Jul 2016 02:20:43 -0500 Subject: [PATCH 7/7] Revert "Updated git ignore to allow the two example configs" This reverts commit c9550763115966ac39678fc21753f890ed6aa922. --- .gitignore | 6 +- pokemongo_bot/__init__.py | 2 +- release_config.json.example | 174 ++++++++++++++++++++++++++++++++++++ 3 files changed, 176 insertions(+), 6 deletions(-) create mode 100644 release_config.json.example diff --git a/.gitignore b/.gitignore index 82129ccf7b..2a0aab24b7 100644 --- a/.gitignore +++ b/.gitignore @@ -114,8 +114,4 @@ data/catch-ignore.yml release_config.json web/userdata.js location.json - -#config directory -configs/ -!release_config.json.example -!config.json.example \ No newline at end of file +configs/ \ No newline at end of file diff --git a/pokemongo_bot/__init__.py b/pokemongo_bot/__init__.py index 32da211ce7..410bdac704 100644 --- a/pokemongo_bot/__init__.py +++ b/pokemongo_bot/__init__.py @@ -158,7 +158,7 @@ def _setup_api(self): # check if the release_config file exists try: - with open('config/release_config.json') as file: + with open('release_config.json') as file: pass except: # the file does not exist, warn the user and exit. diff --git a/release_config.json.example b/release_config.json.example new file mode 100644 index 0000000000..06d4687e9a --- /dev/null +++ b/release_config.json.example @@ -0,0 +1,174 @@ +{ + "any": { + "release_under_cp": 400, + "release_under_iv": 0.9, + "cp_iv_logic": "and" + }, + + "Bulbasaur": { "release_under_cp": 374, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Ivysaur": { "release_under_cp": 571, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Venusaur": { "release_under_cp": 902, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Charmander": { "release_under_cp": 333, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Charmeleon": { "release_under_cp": 544, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Charizard": { "release_under_cp": 909, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Squirtle": { "release_under_cp": 352, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Wartortle": { "release_under_cp": 552, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Blastoise": { "release_under_cp": 888, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Caterpie": { "release_under_cp": 156, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Metapod": { "release_under_cp": 168, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Butterfree": { "release_under_cp": 508, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Weedle": { "release_under_cp": 156, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Kakuna": { "release_under_cp": 170, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Beedrill": { "release_under_cp": 504, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Pidgey": { "release_under_cp": 237, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Pidgeotto": { "release_under_cp": 427, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Pidgeot": { "release_under_cp": 729, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Rattata": { "release_under_cp": 204, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Raticate": { "release_under_cp": 504, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Spearow": { "release_under_cp": 240, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Fearow": { "release_under_cp": 609, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Ekans": { "release_under_cp": 288, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Arbok": { "release_under_cp": 616, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Pikachu": { "release_under_cp": 309, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Raichu": { "release_under_cp": 708, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Sandshrew": { "release_under_cp": 278, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Sandslash": { "release_under_cp": 631, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Nidoran F": { "release_under_cp": 304, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Nidorina": { "release_under_cp": 489, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Nidoqueen": { "release_under_cp": 868, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Nidoran M": { "release_under_cp": 295, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Nidorino": { "release_under_cp": 480, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Nidoking": { "release_under_cp": 864, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Clefairy": { "release_under_cp": 420, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Clefable": { "release_under_cp": 837, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Vulpix": { "release_under_cp": 290, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Ninetales": { "release_under_cp": 763, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Jigglypuff": { "release_under_cp": 321, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Wigglytuff": { "release_under_cp": 760, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Zubat": { "release_under_cp": 225, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Golbat": { "release_under_cp": 672, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Oddish": { "release_under_cp": 400, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Gloom": { "release_under_cp": 590, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Vileplume": { "release_under_cp": 871, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Paras": { "release_under_cp": 319, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Parasect": { "release_under_cp": 609, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Venonat": { "release_under_cp": 360, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Venomoth": { "release_under_cp": 660, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Diglett": { "release_under_cp": 158, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Dugtrio": { "release_under_cp": 408, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Meowth": { "release_under_cp": 264, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Persian": { "release_under_cp": 568, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Psyduck": { "release_under_cp": 386, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Golduck": { "release_under_cp": 832, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Mankey": { "release_under_cp": 307, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Primeape": { "release_under_cp": 650, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Growlithe": { "release_under_cp": 465, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Arcanine": { "release_under_cp": 1041, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Poliwag": { "release_under_cp": 278, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Poliwhirl": { "release_under_cp": 468, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Poliwrath": { "release_under_cp": 876, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Abra": { "release_under_cp": 208, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Kadabra": { "release_under_cp": 396, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Alakazam": { "release_under_cp": 633, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Machop": { "release_under_cp": 381, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Machoke": { "release_under_cp": 614, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Machamp": { "release_under_cp": 907, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Bellsprout": { "release_under_cp": 391, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Weepinbell": { "release_under_cp": 602, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Victreebel": { "release_under_cp": 883, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Tentacool": { "release_under_cp": 316, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Tentacruel": { "release_under_cp": 775, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Geodude": { "release_under_cp": 297, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Graveler": { "release_under_cp": 501, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Golem": { "release_under_cp": 804, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Ponyta": { "release_under_cp": 530, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Rapidash": { "release_under_cp": 768, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Slowpoke": { "release_under_cp": 424, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Slowbro": { "release_under_cp": 907, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Magnemite": { "release_under_cp": 312, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Magneton": { "release_under_cp": 657, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Farfetch'd": { "release_under_cp": 441, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Doduo": { "release_under_cp": 297, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Dodrio": { "release_under_cp": 640, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Seel": { "release_under_cp": 386, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Dewgong": { "release_under_cp": 748, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Grimer": { "release_under_cp": 448, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Muk": { "release_under_cp": 909, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Shellder": { "release_under_cp": 288, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Cloyster": { "release_under_cp": 717, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Gastly": { "release_under_cp": 280, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Haunter": { "release_under_cp": 482, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Gengar": { "release_under_cp": 724, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Onix": { "release_under_cp": 300, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Drowzee": { "release_under_cp": 374, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Hypno": { "release_under_cp": 763, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Krabby": { "release_under_cp": 276, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Kingler": { "release_under_cp": 636, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Voltorb": { "release_under_cp": 292, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Electrode": { "release_under_cp": 576, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Exeggcute": { "release_under_cp": 384, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Exeggutor": { "release_under_cp": 1032, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Cubone": { "release_under_cp": 352, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Marowak": { "release_under_cp": 578, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Hitmonlee": { "release_under_cp": 520, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Hitmonchan": { "release_under_cp": 530, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Lickitung": { "release_under_cp": 568, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Koffing": { "release_under_cp": 403, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Weezing": { "release_under_cp": 784, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Rhyhorn": { "release_under_cp": 412, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Rhydon": { "release_under_cp": 782, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Chansey": { "release_under_cp": 235, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Tangela": { "release_under_cp": 607, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Kangaskhan": { "release_under_cp": 712, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Horsea": { "release_under_cp": 278, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Seadra": { "release_under_cp": 597, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Goldeen": { "release_under_cp": 336, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Seaking": { "release_under_cp": 712, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Staryu": { "release_under_cp": 326, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Starmie": { "release_under_cp": 763, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Mr. Mime": { "release_under_cp": 520, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Scyther": { "release_under_cp": 724, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Jynx": { "release_under_cp": 600, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Electabuzz": { "release_under_cp": 739, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Magmar": { "release_under_cp": 792, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Pinsir": { "release_under_cp": 741, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Tauros": { "release_under_cp": 643, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Magikarp": { "release_under_cp": 91, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Gyarados": { "release_under_cp": 938, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Lapras": { "release_under_cp": 1041, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Ditto": { "release_under_cp": 321, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Eevee": { "release_under_cp": 376, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Vaporeon": { "release_under_cp": 984, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Jolteon": { "release_under_cp": 746, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Flareon": { "release_under_cp": 924, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Porygon": { "release_under_cp": 590, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Omanyte": { "release_under_cp": 391, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Omastar": { "release_under_cp": 780, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Kabuto": { "release_under_cp": 386, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Kabutops": { "release_under_cp": 744, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Aerodactyl": { "release_under_cp": 756, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Snorlax": { "release_under_cp": 1087, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Articuno": { "release_under_cp": 1039, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Zapdos": { "release_under_cp": 1087, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Moltres": { "release_under_cp": 1132, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Dratini": { "release_under_cp": 343, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Dragonair": { "release_under_cp": 609, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Dragonite": { "release_under_cp": 1221, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Mewtwo": { "release_under_cp": 1447, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + "Mew": { "release_under_cp": 1152, "release_under_iv": 0.8, "cp_iv_logic": "and" }, + + "exceptions": { + "always_capture": [ + "Arcanine", + "Lapras", + "Dragonite", + "Snorlax", + "Blastoise", + "Moltres", + "Articuno", + "Zapdos", + "Mew", + "Mewtwo" + ] + } +}