This project is intended as an improvement on the functionalities of Pokemon Infinite Fusion Calculator.
It shows full evolution lines of fusions between Pokemon.
- Spearow [1-19]
- Fearow [20-100]
- Ekans [1-21]
- Arbok [22-100]
- Ekans + Spearow [1-19]
- Ekans + Fearow [20-21]
- Arbok + Fearow [22-100]
The typing of a Fusion is simply deductible from the colors of the box at the right of the Fusion Sprite.
If that's not enough, hovering a fusion with the mouse allows a Tooltip to appear.
This tooltip will display:
- The type (or types) of the Fusion
- The stats of the Fusion
This application has 3 modes:
Performs fusion between two Pokemon as described in the Example .
Given a list ok pokemon, calculates all the possible pairs and performs fusion between them.
Given two types and, optionally, a base pokemon, it will show all possible fusions with that typing (and base pokemon). Here you can also order the evolutions by stat. The ordering is done by taking the maximum stat for each fusion evoline. Only fusion pokemon matching the required types are taken into account for this calculation.
If you just want to run the program read App .exe.
If you want to open the project in an IDE read Python project.
If you edited the program and want to rebuild the .exe read Rebuild .exe.
If your only goal is to run the app, what you really need is to download the dist/IFC.zip folder.
Click here to download the zip.
Once downloaded, run the IFC.exe
file that you'll find inside.
If you are editing the app and want to recompile the IFC.exe
,
run
python build_exe.py
and the program will be recompiled to an exe (and its zip version) inside the dist/
folder using auto-py-to-exe
.
To run the python project, first create a venv
with Python 3.8
Activate it and run the command
pip install -r requirements.txt
.
This will install the required libraries.
Then run
python main.py
PokeAPI was used to gather data about pokemon, such as minimum and maximum levels, typings, evolution lines and stats.
Stats are calculated as stated here: https://infinitefusion.fandom.com/wiki/Pok%C3%A9mon_Fusion#Stats
Typing takes into account this: https://infinitefusion.fandom.com/wiki/Pok%C3%A9mon_Fusion#Typing
Pokemon sprites are dynamically downloaded from here:
https://img.pokemondb.net/sprites/black-white/normal/<pokemon_name>.png
https://img.pokemondb.net/sprites/black-white/normal/bulbasaur.png
Fusion sprites are dynamically downloaded from here:
https://raw.githubusercontent.com/Aegide/custom-fusion-sprites/main/CustomBattlers/<head_pokedex_id>.<body_pokedex_id>.png
https://raw.githubusercontent.com/Aegide/custom-fusion-sprites/main/CustomBattlers/9.6.png
(If the app can't find the sprite, it will try look under master/Battlers
, master/Battlers/<head_dex_id>
and
autogen-fusion-sprites/master/Battlers/<head_dex_id>
)
The application is compiled to an .exe using auto-py-to-exe