Giter Site home page Giter Site logo

pokemon-catch-guide's Introduction

Pokemon Catching Guide

Banner

Generate a CSV file of the best Pokemon locations in specific generation. Used to help catch em' all in every generation.

Using .NET 5.0 and consuming data from PokeAPI by using the PokeAPI .NET wrapper.

Limitations

Currently games from generations 1 to 6 are supported:

  • I - Red, Blue, Yellow
  • II - Gold, Silver, Crystal
  • III - FireRed, LeafGreen, Ruby, Sapphire, Emerald, Colloseum, XD Gale Of Darkness
  • IV - Diamond, Pearl, Platinum, HeartGold, SoulSilver
  • V - Black, White, Black 2, White 2,
  • VI - X, Y (Omega Ruby and Alpha Sapphire are missing a lot of data).

Generations 7 (VII - Sun, Moon, Ultra Sun, Ultra Moon, Let's Go Pikachu, Let's Go Eevee) and 8 (VIII - Sword, Shield) lack encounter data that is provided by PokeAPI (as of 2021-10-11). However, those encounters should be generated correctly when the data does get updated eventually.

Please note that games like Pokemon Go are not supported.

Installation

You will need to have .NET 5.0 installed to build and run the console application from source.

If you download the executable you will not need anything else as it comes prepackaged and ready to go (Windows only at the moment).

Usage

Generate a CSV file for your generation by downloading the executable or building from the source. It will generate a CSV file with the best encounters for each game in the current directory.

You may use the following arguments:

.\PokeGuideGenerator.exe --help

# -g, --generation    Required. Set Pokemon generation (1-6). Generations 7 and 8 currently lack encounter data in
#                     PokeApi (as of 2021-10-11), however, they should be supported just fine by this generator once the
#                     data is there.
# 
# -s, --side-games    Optional. Include side games (like XD/Colloseum).
#
# -a, --all-encounters    Include every single encounter from each game. By default only the best (highest chance) encounter from
#                          each game is included.
#
# 
# -f, --from          Optional. Start generating from this pokedex number (including this one).
# 
# -t, --to            Optional. Generate until this pokedex number (including this one).
# 
# -o, --output        Optional (Default: encounters.csv). Output CSV file path, e.g. ~\dir\pokemon.csv. Default is encounters.csv in current directory.
# 
# --help              Display this help screen.
# 
# --version           Display version information.

Executable

cd executable-dir
.\PokeGuideGenerator.exe --generation 3 --side-games --from 1 --to 151 --output ~\pokemon.csv --all-encounters

Build from source

cd pokemon-catch-guide\PokeGuideGenerator
dotnet restore
dotnet build
dotnet run -- --generation 3 --side-games --from 1 --to 151 --output ~\pokemon.csv --all-encounters

CSV

The generated CSV file contains headers:

  • id (Pokemon National Pokedex number),
  • name (Pokemon name),
  • location (encounter location in the game),
  • version (game version),
  • conditions (condition to trigger the encounter),
  • method (encounter method),
  • chance (chance of encounter in percentage),
  • minLvl (minimum possible level of the Pokemon for this encounter),
  • maxLvl (maximum possible level of the Pokemon for this encounter),
  • trigger (type of evolution),
  • evolution_method (how to evolve the Pokemon),
  • baby (is this Pokemon a baby),
  • generation (video game generation encounter appears in).

Example of 20 Pokemon from generation III CSV:

id;name;location;version;conditions;method;chance;minLvl;maxLvl;trigger;evolution_method;baby;
232;donphan;no-location;;;;;;;level-up;min_level:25;no;
233;porygon2;no-location;;;;;;;trade;held_item:up-grade;no;
234;stantler;hoenn-altering-cave-h;E;;walk;20%;24;24;;;no;
234;stantler;kanto-altering-cave-h;FR/LG;;walk;20%;24;24;;;no;
235;smeargle;artisan-cave-area;E;;walk;20%;41;41;;;no;
235;smeargle;kanto-altering-cave-i;FR/LG;;walk;20%;24;24;;;no;
236;tyrogue;no-location;;;;;;;;;yes;
237;hitmontop;no-location;;;;;;;level-up;min_level:20/stats:0;no;
238;smoochum;no-location;;;;;;;;;yes;
239;elekid;no-location;;;;;;;;;yes;
240;magby;no-location;;;;;;;;;yes;
241;miltank;hoenn-safari-zone-expansion-north;E;;walk;4%;37;37;;;no;
242;blissey;no-location;;;;;;;level-up;min_happiness:220;no;
243;raikou;roaming-kanto-area;FR/LG;story-progress-beat-elite-four-round-two,starter-squirtle;only-one;100%;50;50;;;no;
244;entei;roaming-kanto-area;FR/LG;story-progress-beat-elite-four-round-two,starter-bulbasaur;only-one;100%;50;50;;;no;
245;suicune;roaming-kanto-area;FR/LG;story-progress-beat-elite-four-round-two,starter-charmander;only-one;100%;50;50;;;no;
246;larvitar;sevault-canyon-area;FR/LG;;walk;4%;15;15;;;no;
247;pupitar;no-location;;;;;;;level-up;min_level:30;no;
248;tyranitar;no-location;;;;;;;level-up;min_level:55;no;
249;lugia;navel-rock-area;E/FR/LG;;only-one;100%;70;70;;;no;
250;ho-oh;navel-rock-area;E/FR/LG;;only-one;100%;70;70;;;no;
251;celebi;no-location;;;;;;;;;no;

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

Apache License 2.0

pokemon-catch-guide's People

Contributors

peroxy avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.