Git Product home page Git Product logo

brdybot's Introduction

brdybot

This is a bot adapted from chatbot-python-sample that I use for Twitch. The bot can be added to your Twitch channel by typing !join in the bot's channel on Twitch.

The bot uses a PostgreSQL database with data scraped and taken from Serebii.net, Bulbapedia, veekun's Pokedex, Smogon University, and pokemondb.net.

The IRC listener (chatbot) joins your channel, listens for and sends commands to the API to fetch data from the database, and prints the information gathered from the database in a channel message.

image

Bot

The bot has the following commands available:

Image Command Description Type Min Parameters Max Parameters
image abbrevs Returns all available game abbreviations to the chat. bot 0 0
image ability User sends an ability name as a parameter, and the bot returns information about it to the chat. ability 1
image basestats User sends the name of a Pokemon, and the bot fetches and returns all of its vanilla base stats for the currently selected game. pokemon 1
image botinfo The bot returns basic information and links related to the bot. bot 0 0
-- brdybotleave Make the bot leave your channel (channel owner only). bot 0 0
image bst User sends the name of a Pokemon as a parameter, and the bot returns the base stat total for that Pokemon for the current generation. pokemon 1
-- ccomb Alias for !coveragecomb: User sends a number between 2 and 4 (x) and a number of types at least 1 greater than x but no greater than 5. The bot will query the !coverage command for all the possible combinations of x types among the types given. Requires Mod or VIP priviliges to work effectively. bot 4 6
image coverage Takes one or more types as inputs, and outputs the number of Pokemon in the current game that fall into each maximum damage effectiveness bracket. type 1
image coveragecomb User sends a number between 2 and 4 (x) and a number of types at least 1 greater than x but no greater than 5. The bot will query the !coverage command for all the possible combinations of x types among the types given. Requires Mod or VIP priviliges to work effectively. bot 4 6
image evos User sends the name of a pokemon as a parameter, and the bot returns all evolutions for that pokemon available in the currently selected game. pokemon 1
image gamelist Lists the games available to be changed to with the !pokegame command. bot 0 0
image help User sends the name of a command, and the bot returns the description of that command to chat. commandselect 0 0
-- join Any user may type this in the bot's channel to have it join their channel. bot 0 0
image learnset User sends the name of a Pokemon as a parameter, and the bot returns the levels at which that Pokemon learns moves in the current game. pokemon 1
image learnsetshort User sends the name of a pokemon as a parameter, and the bot returns a list of levels at which it learns moves in the currently selected game. pokemon 1
image level User sends three (3) parameters - the name of a growth rate (either Erratic, Fast, Medium Fast, Medium Slow, Slow, Fluctuating), a starting level, and an ending level. The bot will return the total required experience to go from the starting level to the ending level. levelingrate 3 3
image listops Lists all operants for the current channel. bot 0 0
image lss Alias for !learnsetshort: User sends the name of a pokemon as a parameter, and the bot returns a list of levels at which it learns moves in the currently selected game. pokemon 1
image mon User sends a Pokemon name as a parameter, and the bot returns summary information about it to the chat. pokemon 1
image move User sends a move name as a parameter, and the bot returns information about it to the chat. move 1
image nature User sends a nature name as a parameter, and the bot returns the affected attributes to the chat. nature 1
image pokecom The bot retrieves and returns all pokemon commands available. commandselect 0 0
image pokegame User sends a game name or abbreviation as a parameter, and the bot changes the game for the channel. game 1
image pokeops Send a list of usernames separated by a single space to add as bot operators in your channel. ex: "!pokeops juicytoaster bayleef murkus iateyourpie" bot 1 20
image removeops Takes one or more usernames and removes permissions for them in the channel. bot 1
image revo User sends the name of a Pokemon and a number (x), and the bot fetches and returns a list of x Pokemon and the percentage chance the given Pokemon will evolve into each using the following Ajarmar's Universal Pokemon Randomizer options: Random, Similar Strength, Same Typing, Force Change, Change Impossible Evolutions, Remove Time-Based Evolutions. (Pokemon with multiple evos require an additional parameter of the vanilla evolution, e.g. "!revo eevee umbreon 5" (Gen 1-4 only. Shoutouts to Harkenn and jellisky for help parsing the log data.) pokemon 1
image revorev User sends the name of a Pokemon and a number (x), and the bot fetches and returns a list of x Pokemon and the percentage chance each will evolve into the given Pokemon using the following Ajarmar's Universal Pokemon Randomizer options: Random, Similar Strength, Same Typing, Force Change, Change Impossible Evolutions, Remove Time-Based Evolutions. (Gens 1-4 only. Shoutouts to Harkenn_ for the data.) pokemon 1
image type User sends the name of a Pokemon as a parameter, and the bot returns the type for the Pokemon in the current generation. pokemon 1
image weak User sends a Pokemon name as a parameter, and the bot returns type effectiveness information about it to the chat. pokemon 1
image xp User sends a pokemon's level, optionally the winning pokemon's level, and the name of the Pokemon. The bot will return the full xp value from fainting that pokemon in battle. pokemon 2 3

brdybot's People

Contributors

brdy1 avatar mauerbac avatar

Stargazers

 avatar  avatar  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.