Pokemon Run Evolved is a fan-made fitness companion for Pokemon Go-style motivation, built as two separate apps:
- Android app: this repository.
- Watch app: https://github.com/MulleMjau/pokemon-run-evolved-garmin
- Pokedex UI with rarity and type boosts.
- Weather-aware boosts (location-based).
- Garmin integration and local Ktor backup/restore.
- Open this folder in Android Studio.
- Let Gradle sync and build.
- Run on a physical device (location + Bluetooth permissions are required).
If you use the met.no APIs, update the email in the User-Agent here (towards the bottom):
app/src/main/java/com/pokemonrunandroid3/WeatherManager.kt.
This project was tuned around my local climate and seasonal patterns. If you live
somewhere very different, you may want to tweak the temperature thresholds,
wind thresholds, and boosted type mappings in:
app/src/main/java/com/pokemonrunandroid3/WeatherManager.kt.
The Android app runs a local Ktor webserver for debugging, backups, and the spawning guide UI.
- Open the app, go to the Debug screen, and tap START Ktor.
- Open
http://127.0.0.1:8080/orhttp://127.0.0.1:8080/weatherin a browser.
Example rulebook (matches the UI you will see at /weather):
| Condition | Boost | Boosted Types |
|---|---|---|
| Arctic Cold (< -5 C) | 10x | Ice |
| Heatwave (> 25 C) | 10x | Fire, Ground |
| Windy (> 10 m/s) | 10x | Flying, Dragon |
| Thunderstorm | 10x | Electric |
| Clear / Fair | 5x | Fire, Grass, Ground, Fighting |
| Rain | 5x | Water, Electric, Bug |
| Cloudy | 5x | Fighting, Poison, Steel |
| Partly Cloudy | 5x | Normal, Rock |
| Snow | 5x | Ice, Steel |
| Fog | 5x | Ghost, Dark, Fairy, Rock |
| Night | 5x | Dark, Ghost, Psychic, Fairy |
| Mild (10-25 C) | 5x | Grass, Bug, Normal |
| Cool (0-10 C) | 5x | Normal |
| Frost (-5 to 0 C) | 5x | Ice |
You can also hit these endpoints directly (also described directly in the webserver):
GET /weatherto open the spawning guide.GET /exportto download a JSON backup of your Pokedex.POST /importto restore a JSON backup of your Pokedex.POST /catchto send/simulate catches from the watch app.GET /pokemonto fetch the latest catch payload (legacy polling).GET /pokedex/{pokemonId}for details on a specific Pokemon.GET /pokedex/caughtto list caught IDs (supportsoffsetandlimit).GET /pokedex/totalfor total unique caught.
The watch app is not in this repository. See the watch app repository for setup instructions.
This project was heavily AI-assisted. Treat it as a learning resource and review the code before reusing it in production.
Pokemon is a trademark of Nintendo/Creatures Inc./GAME FREAK inc. This is an unofficial, non-commercial fan project and is not affiliated with or endorsed by the trademark holders.
MIT. See LICENSE.