GithubHelp home page GithubHelp logo

mhuggins7278 / corvo-astral Goto Github PK

View Code? Open in Web Editor NEW

This project forked from markkop/corvo-astral

0.0 1.0 0.0 29.4 MB

A Discord Bot that serves as an Wakfu helper

Home Page: https://github.com/Markkop/corvo-astral

JavaScript 3.78% Shell 0.03% TypeScript 96.20%

corvo-astral's Introduction

πŸŒ™ Corvo Astral

build Repo status servers contributions welcome

Corvo Astral is a Discord Bot that provides information about the Wakfu MMORPG game.

If you wish to add this bot to your server, access this link.

Most features support Wakfu community languages: en, es, pt and fr.

If you need help or want to report bugs, feel free to join the bot's discord: https://discord.gg/aX6j3gM8HC

This bot is now featured in top.gg: https://top.gg/bot/750529201161109507

To keep the bot running, please consider donating <3

Commands

  • /alma: returns the Almanax Bonus for the current day
  • /calc: calculates the damage for an attack given some values
  • /subli: search for sublimations by name, slot combination or source
  • /recipe: search for recipes by name and rarity
  • /equip: search for equipment by name and rarity
  • /party: create, update, join or leave a party listing
  • /about: get information about this bot
  • /config: configure custom settings for each discord channel
  • /help: get help for available commands

Features

⛅️ Almanax

Find out the current Almanax bonus and optimize your farming with /alma command.

image

πŸ•° Daily Almanax Notification

At 00:01 Europe/France Timezone (GMT+2) (server time), the bot will send the /alma command to a channel named almanax or any other named defined by the /config command.
If you wish to disable this behavior, simply deny permission to this bot on that channel.

image

πŸ‘₯ Party Listing

When using /party-create command, the bot will create a new party list and it'll post it on the channel defined by the /config command (listagem-de-grupos by default).
It'll also listen to reactions so members can join or leave groups.
To make use of this feature, make sure that the bot has enough permissions to the configured channel.

Examples:

/party-create name: Boss Smasher
/party-create name: Ogrest description: If it's your first time, it's okay date: Tomorrow 8PM level: 200 slots: 3

image

🌎 Internationalization

Most commands accept lang: <lang> and translate: <lang> options.
A server administrator can also set the default language with /config command.
Available languages are en, es, pt and fr.

image

image

πŸ›‘ Equipment search

An equipment search is available with /equip name: <name> command.
It's also possible to filter them by a rarity option. If a recipe is associated, it can be displayed by reacting with πŸ› οΈ

Examples:

/equip name: martelo de osamodas lang: pt
/equip name: the eternal rarity: mythical

image

πŸ’Ž Sublimation search

The command /subli can search by sublimation name, type, rarity and slots combination.
When searching by slots combination, it's possible to match with white slots and/or by random ordering.

Examples:

/subli by-name name: bruta
/subli by-name name: bruta translate: fr
/subli by-name name: talho lang: pt
/subli by-slots slots: rwb
/subli by-slots slots: rgbg random: true
/subli by-slots slots: epic

image

image

πŸ“œ Recipe search

Similar to the commands above, you can search for recipes by name and rarity.
Recipes with same results are shown together.

Examples:

/recipe name: brakmar sword
/recipe name: espada de brakmar lang: pt
/recipe name: peace pipe rarity: mythical
/recipe name: o eterno rarity: mΓ­tico lang: pt

image

πŸ₯Š Damage Calculator

It's possible to simulate an attack by providing some numbers to the .calc commands.
Maybe in the future we can add new options to it.

Examples:

/calc dmg:3000 base:55 res:60%
/calc dmg:5000 base:40 res:420 crit:30%

image

πŸ‘· Builder Integration

By sending a Zenith's build link, the bot will access the link, take a printscreen and send it as a preview to the chat.
It'll also sum the highest elemental damage with all other non-negative secundary masteries and display it on the message.
You can disable this behavior by using .config set buildPreview=disabled
Note: this feature is currently disabled since Zenith has changed their interface. If you wish it back, please consider supporting.

buildPreviewEx

βš™οΈ Configurable options

Some bot options can be configurable according to each server using .config.
Options:

  • lang: default bot language between fr, en, es and pt (default: en)
  • almanaxChannel: channel to receive the .alma command daily (default: almanax)
  • partyChannel: channel to receive the .party command (default: listagem-de-grupos)
  • buildPreview: enabled (default) or disabled to show a build printscreen and other info

Examples:

/config get
/config set lang: en
/config set almanax-channel: #temple-bonus
/config set party-channel: #party-listing

Disabled Features

The following features are currently disabled due to external limitations, such as scrapping protection in Ankama's websites.

🌌 Krosmoz Almanax

Inspired by wakmanax, the /alma command used to scrap Krosmoz Almanax page and returned tons of cool stuff such as Protector of the Day, Zodiac, Trivia, Event and Forecast.

🐲 Monster search

When Wakfu's web scrapping was working, we could search for monsters by typing /mob name: ogrest, for example
It would show their characteristics, damage, resistances, drops and spells.

papatudoMob

🚧 Roadmap

  • Slash commands βœ…
  • Almanax Bonus Forecast
  • Zenith Build Preview
  • Sublimation Custom Drop Information
  • Extended internationalization
  • Extended configuration

πŸ“ˆ How to contribute

If find a wrong translation or want to try fixing a bug by yourself, feel free to open a Pull Request to this project.
In case you just want to report a bug or submit a suggestion, join us in the bot's Discord server.

# Install system dependencies
sudo apt install nodejs npm git

# Clone this repository
git clone https://github.com/Markkop/corvo-astral.git

# Install project dependencies
cd corvo-astral
npm install

# Setup environment variables
cp .env.example .env

# Create a Discord bot and set it's DISCORD_BOT_TOKEN for local testing

# After coding, run tests and lint
npm run test
npm run lint

# Create a new branch and push it to make a Pull Request
git checkout -b <branch name>
git add .
git commit -m "<commit name>"
git push origin <branch name>

# Deploy is made automatically on master via Travis-CI to Heroku

corvo-astral's People

Contributors

markkop avatar santiagojimenezq avatar luizgadel avatar

Watchers

 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.