KingWaffleIII / Plane

An extremely modular Discord bot designed to help RAF students with their RAFK (RAF Knowledge) and aircraft recognition.
GNU General Public License v3.0
2 stars 0 forks source link

Plane

An extremely modular Discord bot designed to help RAF students with their RAFK (RAF Knowledge) and aircraft recognition, especially for (m)RAST.

Usage & Invite

If you want to use the bot, we heavily recommend you use the bot hosted by Planet Waffle; you can do so here. This bot will always use the latest version from the main branch (I update the bot every time I merge a PR). You can join the Planet Waffle server here so you can subscribe to Plane announcements (e.g. when I update the bot, etc.)

If you really want to host the bot yourself, you can do so by following these steps: (note: Docker and Docker Compose are required to run the bot)

  1. clone the repo
  2. create src/config.json like so:
{
    "token": "YOUR BOT TOKEN HERE",
    "clientId": "YOUR BOT CLIENT ID HERE"
}
  1. run the npm build script to compile the TypeScript code (optional)
  2. run docker compose up -d to start the bot

Aircraft

You can see the aircraft supported in the bot here.

Images

If you have any issues with the images given for /airrec and /airrec-quiz, please understand that these are randomly picked from a website. There is no way to control the quality of the images so if you find a bad image, just try again.

Waifus

Waifus are a gacha feature of the bot. There are two types of waifus: aircraft and weapon, with 50 in total.

Note: waifus are not enabled by default. To enable them, a user with the Manage Server permission should run /enable-waifus status:True.

Aircraft waifus

Aircraft waifus are the main type of waifu. They have an ATK (1-10), HP (50-100), and SPD (1-10) stat, which are randomly generated and used for dogfighting. There is no bias for the stats - fighters can have high DEF stats but low ATK/SPD and utility aircraft can have high ATK/SPD but low DEF.

Weapon waifus

Weapon waifus are the secondary type of waifu. They have just a randomly generated ATK (1-10) stat which is intended to be used in conjunction with aircraft waifus in dogfighting, as well as a special ability.

Weapon abilities

Adder: Punisher - After equipping this weapon, the next time your opponent fails an evade, your next attack will deal 1.5x damage (you are still able to crit as well for a 3x bonus if you are lucky).

AMRAAM: Precision Strike - After equipping this weapon, your next attack will be guaranteed to crit.

HARM: Lock-on - After equipping this weapon, the next time the opponent attempts to evade, your attack is guaranteed to hit.

Hellfire: Fire and Forget - After equipping this weapon, this missile will deal 50% of the aircraft's and this weapon's combined ATK to the opponent every round, on top of any attacks the aircraft may have made.

Paveway II: Heavy Payload - After equipping this weapon, your next attack will deal 3x damage but you can no longer evade attacks.

Phoenix: Long Distance - After equipping this weapon, after your next attack, you will be guaranteed to evade your opponent's next attack.

Sidewinder: Stunwave - After equipping this weapon, your next attack will stun your opponent, meaning they cannot do anything that round.

Sparrow: Exclusivity - If this weapon is equipped on an American aircraft, it will add an extra 50% of this weapon's ATK to the total ATK.

Trident II: Call for Support - After equipping this weapon, your next attack will call in a support strike, dealing 2x this weapon's ATK to the opponent, on top of any attacks this round.

Obtaining waifus

Waifus can be obtained by winning airrec quizzes. There is a ~33% chance of getting a waifu when you win a quiz. To stop people spamming quizzes, the quiz must have at least 5 rounds and the winner needs to have gained at least 1/4 of the total points (e.g. if there are 10 rounds, there are 20 points available and 2.5 are needed) to be eligible for a waifu.

Guaranteeing waifus

RNGesus can be a bitch, so you can target a waifu to unlock. Once you do that, you will be guaranteed to get that waifu after 10 other waifus obtained from the above two methods. If you get your targeted waifu earlier, rejoice!

Trading & Duplicates

Duplicate waifus can be obtained, each with their own unique stats. Waifus can be traded with other users. Once the first user submits a type of waifu for trading and then a dupe of that waifu, the second user is able to accept and put up their own waifu dupe for trade. If both users agree, the waifus are traded.

Note: due to Discord limitations, only 25 items can be in a dropdown menu at once. This means that if a user has more than 25 waifus, they will only be able to trade the 25 waifus with the highest ATK stat.

Dogfighting

Dogfighting is a duel between users. Once a dogfight request is accepted, users can select an aircraft waifu and begin the dogfight. The dogfight works like this:

Weapon waifus also have unique abilities to help win the dogfight.

Note: due to Discord limitations, only 25 items can be in a dropdown menu at once. This means that if a user has more than 25 waifus, they will only be able to fight with the 25 waifus (copies) with the highest ATK stat.

Dogfighting META

There are three builds that are currently considered the best:

Changelog

See pull requests here.

Credits

Versioning

Roadmap

https://github.com/KingWaffleIII/plane/issues

Licence

This project is licensed under the GNU General Public Licence 3.0 - see the LICENCE file for details