Hello! I posted some data a while ago, but I started a new account and this is what I've got after 36 days of botting. Most of the time was spent in the San Francisco area, but a few days in Michigan as well. I bot about 10 hours a day with a 7km/hr walking speed. I'm currently level 32. If you have any ideas for other metrics I could try to get from the logs, let me know! Some summary data [table="width: 500, class: grid"] [tr] [td]Total Caught[/td] [td]12,782[/td] [/tr] [tr] [td]Unique Caught[/td] [td]146[/td] [/tr] [tr] [td]Most Common Poke[/td] [td]Psyduck (1,298)[/td] [/tr] [tr] [td]Total Hatched[/td] [td]186[/td] [/tr] [tr] [td]Unique Hatched[/td] [td]60[/td] [/tr] [tr] [td]Most Common Egg[/td] [td]Nidoran (10)[/td] [/tr] [tr] [td]Total Loots[/td] [td]10,795[/td] [/tr] [tr] [td]Total Items[/td] [td]36,060[/td] [/tr] [tr] [td]Most Common Item[/td] [td]Pokeball (17,656)[/td] [/tr] [tr] [td]Least Common Item[/td] [td]Sun Stone (3)[/td] [/tr] [/table] Here's the spreadsheet Source code: Code: import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.IOException; import java.util.LinkedHashMap; public class Counter { public static void main(String[] args) throws IOException { //SETTINGS //this is where your logs are located. use full path. String logLocation = "C:/.../PokeFarmer/Logs"; //lines are everything preceding the pokemon's name //phrases are the phrases used to tell us what was done. in english, catch is "Caught" and hatch is "hatched from egg" String catchPokemonLine = "INFO <b><font color=\"#0094FF\">[00:22:41]</font></b> Caught <b><font color=\"#0094FF\">"; String catchPokemonPhrase = "Caught"; String hatchPokemonLine = "INFO <b><font color=\"#0094FF\">[13:38:09]</font></b> Pokemon <font color=\"#FFB200\"><b>"; String hatchPokemonPhrase = "hatched from egg"; String lootLine = "INFO <b><font color=\"#0094FF\">[04:57:00]</font></b> Looting <font color=\"#0094FF\"><b>"; String lootPhrase = "Looting"; String receiveLine = "INFO <b><font color=\"#0094FF\">[04:57:01]</font></b> Received item <font color=\"#0094FF\"><b>1</b>x <b>"; String receivePhrase = "Received item <font "; //use this if you want to specify a date. leave blank if you don't. format the same as a log file (ex. 2017-01-11) String date = ""; LinkedHashMap<String, Integer> caught = new LinkedHashMap<String, Integer>(); LinkedHashMap<String, Integer> hatched = new LinkedHashMap<String, Integer>(); LinkedHashMap<String, Integer> received = new LinkedHashMap<String, Integer>(); int lootCount = 0; File f = new File(logLocation); File[] files = f.listFiles(); for (File file : files) { //filter directories and non .txt if(file.isDirectory() || !file.getCanonicalPath().contains(".txt")) continue; if(!date.isEmpty() && !file.getName().contains(date)) continue; try(BufferedReader br = new BufferedReader(new FileReader(file))) { for(String line; (line = br.readLine()) != null; ) { //caught if(line.toLowerCase().contains(catchPokemonPhrase.toLowerCase())){ String pokemon = line.substring(catchPokemonLine.length(), line.indexOf(" CP(")); addValue(caught, pokemon); } //hatched if(line.toLowerCase().contains(hatchPokemonPhrase.toLowerCase())){ String pokemon = line.substring(hatchPokemonLine.length(), line.indexOf("</b></font>")); addValue(hatched, pokemon); } //looted if(line.toLowerCase().contains(lootPhrase.toLowerCase())){ lootCount++; } //looted - received item if(line.toLowerCase().contains(receivePhrase.toLowerCase())){ String item = line.substring(receiveLine.length(), line.indexOf("</b></font>")); item = item.replace(" Ball", "ball").replace(">", ""); addValue(received, item); } } } } //sort caught = sortHash(caught); hatched = sortHash(hatched); received = sortHash(received); //print results System.out.println("Results for " + (date.isEmpty() ? "all dates" : date) + ":\n"); System.out.println("CAUGHT:"); for (String key : caught.keySet()) { System.out.println(key + "\t" + caught.get(key)); } System.out.println("\n\n\nHATCHED:"); for (String key : hatched.keySet()) { System.out.println(key + "\t" + hatched.get(key)); } System.out.println("\n\nITEMS LOOTED FROM " + lootCount + " LOOTS:"); for (String key : received.keySet()) { System.out.println(key + "\t" + received.get(key)); } } //add values to hashtables static void addValue(LinkedHashMap<String, Integer> map, String word) { if (map.containsKey(word)) { map.put(word, map.get(word) + 1); } else { map.put(word, 1); } } static LinkedHashMap<String, Integer> sortHash(LinkedHashMap<String, Integer> map){ LinkedHashMap<String, Integer> ret = new LinkedHashMap<String, Integer>(); while(!map.isEmpty()){ String kmax = ""; int max = 0; for (String key : map.keySet()) { if(map.get(key) >= max){ max = map.get(key); kmax = key; } } ret.put(kmax, max); map.remove(kmax); } return ret; } } Example output: Code: Results for all dates: CAUGHT: Pidgey 1249 Psyduck 1180 Magikarp 1139 Rattata 1138 Tentacool 1076 Weedle 557 Sentret 447 Ledyba 338 Eevee 321 Spinarak 278 Paras 255 Venonat 237 Spearow 233 Murkrow 173 Hoothoot 170 Natu 143 Zubat 127 Onix 125 Caterpie 125 Nidoran? 122 Krabby 117 Goldeen 94 Pidgeotto 92 Wooper 88 Jigglypuff 88 Horsea 85 Sandshrew 83 Staryu 83 Poliwag 79 Dratini 78 Tauros 76 Ekans 74 Kakuna 65 Marill 57 Oddish 55 Bellsprout 53 Swinub 51 Gastly 46 Shellder 42 Meowth 42 Exeggcute 41 Slowpoke 39 Seaking 38 Hoppip 33 Chikorita 32 Magnemite 29 Drowzee 28 Cyndaquil 27 Clefairy 27 Rhyhorn 26 Sunkern 25 Pinsir 25 Raticate 24 Abra 24 Golduck 21 Lickitung 21 Chinchou 20 Golbat 20 Mantine 19 Tentacruel 19 Totodile 18 Furret 18 Aipom 17 Ledian 16 Metapod 16 Slugma 15 Teddiursa 15 Geodude 15 Pidgeot 15 Squirtle 14 Bulbasaur 14 Koffing 13 Snubbull 12 Pikachu 12 Machop 11 Houndour 10 Wobbuffet 10 Remoraid 10 Dragonair 10 Voltorb 9 Sudowoodo 9 Seel 9 Growlithe 9 Vulpix 9 Beedrill 9 Yanma 8 Ariados 7 Qwilfish 7 Gligar 7 Shuckle 6 Nidorino 5 Charmander 5 Diglett 5 Venomoth 5 Electabuzz 4 Cubone 4 Noctowl 4 Misdreavus 4 Mankey 4 Ponyta 4 Kingler 4 Bayleef 3 Azumarill 3 Phanpy 3 Doduo 3 Octillery 3 Parasect 3 Vaporeon 3 Tangela 3 Fearow 3 Kabuto 2 Ursaring 2 Dunsparce 2 Crobat 2 Xatu 2 Kadabra 2 Omanyte 2 Gyarados 2 Pineco 1 Meganium 1 Dodrio 1 Miltank 1 Scyther 1 Magcargo 1 Lanturn 1 Blastoise 1 Magneton 1 Graveler 1 Charmeleon 1 Houndoom 1 Mareep 1 Wigglytuff 1 Chansey 1 Weezing 1 Rhydon 1 Dragonite 1 Wartortle 1 Nidorina 1 Arbok 1 Seadra 1 Starmie 1 Weepinbell 1 Poliwhirl 1 Hitmonchan 1 Magmar 1 Dewgong 1 HATCHED: Nidoran? 10 Sandshrew 9 Meowth 6 Poliwag 6 Oddish 6 Charmander 6 Caterpie 5 Exeggcute 5 Horsea 5 Paras 5 Ponyta 5 Goldeen 5 Psyduck 4 Bellsprout 4 Abra 4 Pichu 4 Staryu 4 Weedle 4 Magnemite 4 Spearow 4 Krabby 4 Natu 3 Smoochum 3 Slowpoke 3 Geodude 3 Voltorb 3 Diglett 3 Cubone 3 Magikarp 3 Tentacool 3 Bulbasaur 2 Elekid 2 Mankey 2 Seel 2 Cleffa 2 Onix 2 Igglybuff 2 Growlithe 2 Ekans 2 Zubat 2 Venonat 2 Scyther 2 Eevee 2 Qwilfish 1 Squirtle 1 Phanpy 1 Girafarig 1 Pineco 1 Tyrogue 1 Rhyhorn 1 Drowzee 1 Omanyte 1 Doduo 1 Shellder 1 Hitmonchan 1 Pinsir 1 Snorlax 1 Porygon 1 Vulpix 1 Kabuto 1 ITEMS LOOTED FROM 9735 LOOTS: Pokeball 16022 Greatball 4470 Potion 3734 Razz Berry 2135 Revive 1665 Super Potion 1431 Ultraball 1328 Hyper Potion 632 Nanab Berry 441 Pinap Berry 418 Max Potion 267 Max Revive 67 Lucky Egg 9 Incubator 9 Incense 7 Lure Module 6 Incense Ordinary 4 Troy Disk 3 Metal Coat 3 Sun Stone 2
That is so cool, I like the chart you made, everything is so organized. By the way, could you show us the medals and pokedex? I am interest in how many pokemons will be registered at one bot location.
As this is all taken from log data (Pokefarmer Folder -> Logs), I don't think this is possible, unfortunately. This is all from the log data. I'll edit the post and give the source code used to extract the data.