A Discord bot heavily inspired by Ultimate Bravery to spice up your Pokemon Unite experience.

Overview

Kotlin DiscordKt License

UniteBraveryBot 🎲

A Discord bot heavily inpired by Ultimate Bravery to spice up your Pokemon Unite experience.

Required Permissions 🧰

  • View Channels
  • Send Messages
  • Embed Links
  • Read Message History

Features 🚀

  • Ultimate Bravery for Pokemon Unite
    • Get a random Pokemon you have to pick in your next match
    • Get a random lane you have to play on in your next match (if enabled for the guild)
    • Get randomized Held Items you have to pick for the given Pokemon (if enabled for the guild)
    • Get a random Battle Item you have to use in your next match (if enabled for the guild)
    • Get a randomized move set you have to use in your next match (if enabled for the guild)
    • Go shiny! For each roll there's the chance to get the shiny Pokemon sprite¹ (chance 1:4096)
  • A permission system protects UniteBraveryBot to be abused by your members
  • Command invocations are logged (given a configured logging channel)
  • Multi Guild support
    • Easy initial guild configuration via a conversation
    • Each guild can configure its own bot prefix
    • Each guild can configure UniteBraveryBot's permission system to work with its respective Admin role
    • Each guild can configure its respective logging channel
    • Each guild can configure its own randomization options
  • Dockerize the bot easily via the provided Dockerfile and docker-compose.yml file

¹ Sprites are provided by https://pokemondb.net

Commands 🤖

Refer to commands.md for a general list and explanation of all available commands. To learn about commands during runtime, use the help command!

Getting Started ⚙️

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Requirements

  • Java
  • Docker
  • Docker-Compose (compatible with docker-compose version 3.8)

Get the Docker version you need here!

Setup

Since this bot has a docker-compose.yml file and is hosted on DockerHub, all you need to start your own version of UniteBraveryBot locally is to clone this repository and set up the .env file.

The .env file is used to configure the bot token and the bot default prefix, in the following format:

BOT_TOKEN=<insert-bot-token>
DEFAULT_PREFIX=brave!

For Linux and Mac run

$ cp .env.example .env

For Windows run

> Copy-Item .env.example .env

Edit the .env file with your favourite editor, filling out the following properties:

  • BOT_TOKEN (you can find the bot token under https://discord.com/developers/applications/{application-id}/bot for an overview of all your bots visit https://discord.com/developers/applications)
  • DEFAULT_PREFIX (the default prefix is brave!)

Run the bot via docker-compose

$ docker-compose up --build --detach

Versioning 🏷️

This project uses Semantic Versioning for versioning. For the versions available, see the tags on this repository.

Author 👤

Alexander Deledda

See also the list of contributors who participated in this project.

Contributing 🤝

Contributions, issues and feature requests are welcome! Feel free to check the issues page.

Setup development environment 🛠️

For development, you don't necessarily need Docker and Docker-Compose but Java

  • clone this repository
  • Open the project in your favourite Java / Kotlin IDE (JetBrains IntelliJ IDEA is the recommended IDE for Kotlin projects)
  • For running the bot within your IDE you need to add your bot token as program argument or environment variable (You might have to figure out how to do that in your IDE. IntelliJ let's you do that under Run -> Edit Configurations...)

Show your support ⭐️

Give a ⭐️ if this project helped you!

License 📝

Copyright © 2022 Alexander Deledda
This project is MIT licensed.

You might also like...
:blue_book: A diary application optimized for user experience.
:blue_book: A diary application optimized for user experience.

Easy Diary README of Korean(한국어) This is a diary application optimized for user experience. Demo videos Basic function preview Support Features 01. Wr

Experience Minecraft in a different way

tesseract Experience Minecraft in a different way. Tesseract is a server software for Minecraft: Bedrock Edition. But it uses a different concept then

Load the online comic content supported by any plug-in project to provide a convenient online comic viewing experience
Load the online comic content supported by any plug-in project to provide a convenient online comic viewing experience

kinoko Awesome manga reader. Download Description Load the online comic content supported by any plug-in project to provide a convenient online comic

Added more features to app's crash dialog, fixed custom rom deleted dialog, the best experience to Android developer.

AppErrorsTracking 应用异常跟踪 Added more features to app's crash dialog, fixed custom rom deleted dialog, the best experience to Android developer. 为原生 FC

Dev Experience is a set of projects to make life easier for developers, in order to import, configure and use.

Dev Experience The experience that all developer need Dev Experience is a set of projects to make life easier for developers, in order to import, conf

This repo provides a sample application that demonstrates how you can speed up the authentication experience for frontline workers on shared devices using QR codes.

Project This repo has been populated by an initial template to help get you started. Please make sure to update the content to build a great experienc

🐦 Loritta's Social media relayer via Discord Webhooks micro-service

🐦 SocialRelayer 🐦 SocialRelayer is a social media relayer to Discord via webhooks, pulling Loritta's guild configurations to automatically register

An open-source reimplementation of the Discord Android app

OpenCord An open source reimplementation of the Discord Android app. Why does this exist? Current discord app sucks as it looks ugly and doesn't suppo

Experimental Discord Mobile Rich Presence (Android)

MRPC Experimental Discord Mobile Rich Presence (Android) How does it work? It's pretty simple. Connect to the Discord Gateway as a normal Discord Clie

Owner
Alexander Deledda
Software engineer always trying to improve ❤ software architecture ❤ .NET ❤ web technologies 🧠 agile minded. .NET guy sometimes using other languages too.
Alexander Deledda
Synapse Moderation Bot - A bot for managing and moderating our community Discord server

Synapse Moderation Bot A bot for managing and moderating our community Discord server. Note This bot is not public. While you can host it on your own,

Synapse Technologies, LLC 1 Jul 16, 2022
A lightweight, feature-rich wrapper for the Telegram Bot API, providing a handy Kotlin DSL to quickly build your bot.

Kotlin Telegram Bot Kotlin based wrapper over Telegram API. Current version of the Telegram Api: 6.0 Principles Annotations Magic. The basic interacti

Jey 61 Dec 27, 2022
AsukaBot - A simple Kotlin Discord Bot

The Discord bot of the serber, a private Discord server. Asuka is a Discord But running on the JDA API but made in kotlin.

Yann ItzPeaxel 2 Apr 24, 2022
Urban Dictionary discord bot.

Urban Dictionary Installation & Setup 1. Clone the repository git clone https://github.com/thexxiv/urbandictionary-discord-bot.git 2. Navigate to the

XXIV 0 Jan 17, 2022
DiscordBot - Small Discord bot using JDA

Discord bot written in kotlin and using JDA Use it yourself ./gradlew build crea

chell 2 Feb 2, 2022
TimmyBot is a discord bot based on Discord4J and LavaPlayer

TimmyBot TimmyBot is a discord bot based on Discord4J and LavaPlayer Invite Click here to invite Timmy to your server Commands ?play - Plays a song, e

Ian de Villiers 0 Apr 21, 2022
A simple Discord bot that aims to provide a snapshot of the join logs given a range of time for servers.

?? What is Humpy Dumpy? Humpy Dumpy is a simple Discord bot that aims to provide a snapshot of the join logs given a range of time for servers. It was

Miu 2 Aug 29, 2022
All things generative! Discord Bot

Thingy Discord bot to generate images based on a text prompt - way more than just that! Through a wide variety of tools, you can alter your generated

Peter Willemsen 17 Dec 15, 2022
GitFlame is the ultimate GitHub client for Android.

GitFlame Yet another open-source GitHub client app built from scratch using latest and best Android practices. Tech stack & Open-source libraries Mini

Klejvi Kapaj 11 Dec 27, 2022
Twidere-Android Twidere is a powerful twitter client for Android 1.6+ 1 , which gives you a full Holo experience and nearly full Twitter's feature.

Twidere for Android Material Design ready and feature rich Twitter/Mastodon/Fanfou app for Android 4.1+. Enjoy Fediverse now! Twidere-Android is maint

Twidere Project 2.7k Jan 2, 2023