GithubHelp home page GithubHelp logo

yi-jiayu / rotom-pokedex-bot-2 Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 3.0 129 KB

Rotom Pokédex bot evolved

Home Page: https://t.me/rotom_pokedex_bot

Python 97.47% Shell 2.12% Dockerfile 0.41%
pokemon telegram

rotom-pokedex-bot-2's Introduction

CircleCI codecov

Rotom Pokédex Bot 2

A rewrite of https://github.com/yi-jiayu/rotom-pokedex-bot to use data from https://github.com/veekun/pokedex.

Find it on Telegram: @rotom_pokedex_bot

Screenshot of Rotom Pokédex Bot displaying an entry for Turtwig

Roadmap

  • Pokémon summary

  • Abilities

  • Moves

  • Pokémon forms

  • Items

  • Pokémon locations

  • Pokémon base stats

  • Pokémon evolutions

  • Pokémon learnsets

  • Inline mode

Dependencies

  • Python 3.7
  • Pipenv

Setup

pipenv install
pipenv run pokedex setup -v

This sets up a virtual environment, installs dependencies and loads Pokédex data.

rotom-pokedex-bot-2's People

Contributors

yi-jiayu avatar

Stargazers

 avatar

Watchers

 avatar  avatar

rotom-pokedex-bot-2's Issues

Show conditions for Pokémon evolutions

Currently, evolutions are displayed similarly to (but with the current Pokémon highlighted in bold):

Oddish (#043)
└ Gloom (#044)
  └ Vileplume (#045)
  └ Bellossom (#182)

This should also include the conditions for the evolution, for example:

Oddish (#043)
└ Gloom (#044) at level 21
  └ Vileplume (#045) upon using a Leaf Stone
  └ Bellossom (#182) using a Sun Stone

However, we should keep in mind that there are many different conditions for evolution, as can be seen from the schema of the pokemon_evolution table:

cid name type notnull dflt_value pk
0 id INTEGER 1 NULL 1
1 evolved_species_id INTEGER 1 NULL 0
2 evolution_trigger_id INTEGER 1 NULL 0
3 trigger_item_id INTEGER 0 NULL 0
4 minimum_level INTEGER 0 NULL 0
5 gender_id INTEGER 0 NULL 0
6 location_id INTEGER 0 NULL 0
7 held_item_id INTEGER 0 NULL 0
8 time_of_day VARCHAR(5) 0 NULL 0
9 known_move_id INTEGER 0 NULL 0
10 known_move_type_id INTEGER 0 NULL 0
11 minimum_happiness INTEGER 0 NULL 0
12 minimum_beauty INTEGER 0 NULL 0
13 minimum_affection INTEGER 0 NULL 0
14 relative_physical_stats INTEGER 0 NULL 0
15 party_species_id INTEGER 0 NULL 0
16 party_type_id INTEGER 0 NULL 0
17 trade_species_id INTEGER 0 NULL 0
18 needs_overworld_rain BOOLEAN 1 NULL 0
19 turn_upside_down BOOLEAN 1 NULL 0

Some of these are extremely obscure, for example 'known_move_type_id` is only used by one Pokémon (Sylveon).

To begin with, we can just implement this for the common evolution methods such as levelling up, using an item and trading with or without an item, and incrementally add the rest of the evolution conditions.

Handle start command properly

The first time a user talks to a bot on Telegram, a "/start" message will be sent. Currently, this causes Rotom Pokédex bot responds with the Pokédex entry for Staryu. While this isn't a bad way of introducing Rotom Pokédex bot's features to new users, ideally we should handle the start command properly.

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.