-
Master Sergeant
Developing API Alternative Bot
Hello everyone. I am developing one of the first non API dependent bots for the next time the API is down. I am sorry I held out during the break. But I am not proud right now. It works great, but only gets about 15k exp per hour. It needs to catch Pokemon! Right now, it works off the Nox Emulator.
Setup;
- Set Nox size to "custom"
- Set fixed size "on"
- Set remember size and location "on"
- Start Bot
What I currently have working beautifully;
- Movement thread
- Controls the bots movement in Nox
- Scanning thread
- Scans for Pokestops (&Pokemon in future)
- Set a starting location to farm
- Farm around starting location
- Begins walking and scanning for PokeStops
- Spin Pokestop collect Items, continues walking & scan
- Changes locations
- Reset location in Nox every X minutes
- Reset Nox every 30 minutes (avoid Nox freeze bug)
What I need help with
- Distinguishing a Pokemon
My PokeStop detection can detect a PokeStop 90% of the time. So it wont be viable enough to simply say if not PokeStop, is Gym or Pokemon.
I have tried the following;
Pixel Color detection - This wont be efficient enough. The graphics in the game that appear to be a solid color, are actually thousands of different shades to make up the appearance of a solid color. It is rare that there are two pixels in a short distance that are the exact same color. I assume this was done on purpose to prevent just this type of object detection. Also, the colors slightly change through out the day to to Night / Daytime shading.
Picture Detection - I have captured a screen shot, then done a picture scan to find a picture location within the screen shot. Again, this does not always work due to shading and pixel color, and is often tricky with 3D objects.
So, what have some of you master developers come up with for making such a detection. Thank you.
EDIT: I'm using C#.
Last edited by clamchoda; 08-31-2016 at 11:13 PM.
-
Post Thanks / Like - 2 Thanks
-
Member
Originally Posted by
clamchoda
Hello everyone. I am developing one of the first non API dependent bots for the next time the API is down. I am sorry I held out during the break. But I am not proud right now. It works great, but only gets about 15k exp per hour. It needs to catch Pokemon! Right now, it works off the Nox Emulator.
Setup;
- Set Nox size to "custom"
- Set fixed size "on"
- Set remember size and location "on"
- Start Bot
What I currently have working beautifully;
- Movement thread
- Controls the bots movement in Nox
- Scanning thread
- Scans for Pokestops (&Pokemon in future)
- Set a starting location to farm
- Farm around starting location
- Begins walking and scanning for PokeStops
- Spin Pokestop collect Items, continues walking & scan
- Changes locations
- Reset location in Nox every X minutes
- Reset Nox every 30 minutes (avoid Nox freeze bug)
What I need help with
- Distinguishing a Pokemon
My PokeStop detection can detect a PokeStop 90% of the time. So it wont be viable enough to simply say if not PokeStop, is Gym or Pokemon.
I have tried the following;
Pixel Color detection - This wont be efficient enough. The graphics in the game that appear to be a solid color, are actually thousands of different shades to make up the appearance of a solid color. It is rare that there are two pixels in a short distance that are the exact same color. I assume this was done on purpose to prevent just this type of object detection. Also, the colors slightly change through out the day to to Night / Daytime shading.
Picture Detection - I have captured a screen shot, then done a picture scan to find a picture location within the screen shot. Again, this does not always work due to shading and pixel color, and is often tricky with 3D objects.
So, what have some of you master developers come up with for making such a detection. Thank you.
EDIT: I'm using C#.
might be worthwhile to head on to pokemongodev subreddit and discord chats. I do see the value of this bot tho, when APIs go down and I suspect they will be frequently, your tool will shine. Sorry I can't add any more value
-
Member
This is was a great alternative bot in case all bots been down in future.
-
Member
There's a project of a bot similar to what you want to do. It is written in Python, though. You can find it here: https://github.com/tellomichmich/PokeNoxBot
-
Post Thanks / Like - 1 Thanks
clamchoda (1 members gave Thanks to sinek for this useful post)
-
Master Sergeant
Thanks for the reply guys.
I am not looking for the python alternative but thank you. Is that solution fully API independent? How does it switch locations without interfacing to NOX instead of PokemonGo? Can you verify that this bot was working during the recent bot outage?
I just looked through the code and I will be doing similar image detection using OpenCV in .NET
I had manually wrote the image detection before and it wasn't* working so well. This library is proving work wonders!
Thank you very much!!!!!!!
Last edited by clamchoda; 08-09-2016 at 03:22 PM.
-
Member
I like this more than the Pyhton alternative because it's C# 
Do you plan to make this bot public? Any github link?
-
Master Sergeant
Originally Posted by
rejoin
I like this more than the Pyhton alternative because it's C#
Do you plan to make this bot public? Any github link?
Yes I do. I plan to surprise everyone nextime that API is hit. Although, it's more of a self learning curve for my self, I probably wont put the development of it up to the public. Let me tell you though... learn that link I posted very well if your interested in c# bot development. Because my lord, I got distracted coding aimbots as well right shortly after learning this lol!
Since I love to program, and I love to cheat at games. This has been my favorite library I've learned in the bast 12 years!
Updates:
- Pokestop Detection now closer to 98%
- POKEMONS DETECTED
- Pokemon distance detection from ball
- Coding throws later, wooohoo!!
Edit: Let me give you some details though before you get excited. This bot wont be like the API bots that can get you 200-500k per hour. I'm aiming for 50-100k per hour as this is a more life like bot (Currently ~20k per hour but I can't wait to try catching pokemon).
It does not alter the code files or game state, it does not click the screen a kabillion times, nor does it inject anything raunchy that shouldn't be there.
It simply, plays the game on an emulator, and sends every command as if it coming from a mobile device. That being said, it won't fly around on your jet at 450 KM/H and slowdown to 10 KM/H and catch every pokemon within a 100 KM range. It will only do what you can do through a mobile device. (See pokemon within the route your walking)
Last edited by clamchoda; 08-09-2016 at 01:39 PM.
-
Post Thanks / Like - 1 Thanks
wizardingo (1 members gave Thanks to clamchoda for this useful post)
-
Member
Originally Posted by
clamchoda
Yes I do. I plan to surprise everyone nextime that API is hit. Although, it's more of a self learning curve for my self, I probably wont put the development of it up to the public. Let me tell you though... learn that link I posted very well if your interested in c# bot development. Because my lord, I got distracted coding aimbots as well right shortly after learning this lol!
Since I love to program, and I love to cheat at games. This has been my favorite library I've learned in the bast 12 years!
I hope your successful brother
Updates:
- Pokestop Detection now closer to 98%
- POKEMONS DETECTED
- Pokemon distance detection from ball
- Coding throws later, wooohoo!!
I hope ur successful brother
-
Active Member
Keep up the work on this! This will be a great alternative to API bots in the future.
-
Master Sergeant
Originally Posted by
Nine1Sickness
Keep up the work on this! This will be a great alternative to API bots in the future.
Just posted a sneak peak!
Anyone with a good blob detection suggestion for pokemon let me hear it. Or if anyone knows where the bitmaps are for the pokemon from the game that would be really helpful.