Skip to content

A small-scale Discord bot with a full-fledged economy system and global leaderboards.

License

Notifications You must be signed in to change notification settings

RingoOrigo/Moebius-JS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

90 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Moebius-JS

Moebius JS is a full rewrite of Moebius within discord.js! Not only will all of the features from the original pycord build of Moebius be ported over, but a slew of new features will be implemented (exclusive to Moebius JS) as well!

Roadmap

Complete Moebius Re-Integration

The first step toward this bot's finished project is to completely rebuild the Moebius bot from this archived repository in discord.js.

All features present in the original Moebius repository have been properly integrated into this repository!

Economy System

Ideally, there would be some way to implement a global economy system, where users can earn a fictional currency and earn spots on global and server-based leaderboards with their balance.

  • Progress: 80% (Nearing Completion)
List of Current Features:
  • Database organised by user IDs to keep track of user balances
  • Haul (used to gain currency)
  • Balance (used to view your balance or that of another user)
  • Global Leaderboard
  • Shop System
  • Pay other users (You can no longer steal by paying a negative quantity)
Planned Features:
  • Gamble your money via a myriad of methods
    • Coin flip (2x bet)
    • Predict dice roll (3x bet)
    • (Earning multiplier will scale with risk factor)

Profile Cards

Each user has a customizable image-based profile card generated by Moebius. They can use their earnings from /haul to purchase new backgrounds, fonts, and text colours to make their profile card more unique.

  • Progress: 75% (Nearing Completion)
List of Current Features:
  • Purchaseable Backgrounds, Fonts, Text Colours from /shop command
  • Customizable Background, Font, Text Colours on the profile card itself
Planned Features:
  • Purchaseable and Customizable Profile Frames
  • More fonts
  • More text colors

Make It Yourself

Before doing anything with this repository on your local machine, install Node.js from the following link: https://nodejs.org/en. Once you've installed Node.js, you're free to begin following the rest of these instructions!

Clone the project

  git clone https://github.com/RingoOrigo/Moebius-JS

Go to the project directory

  cd your/project/directory

Install dependencies

  npm install discord.js mongoose @napi-rs/canvas

Optional: Install ESLint

While not required, a linter can be incredibly useful. ESLint can be fully configured with a JSON file in your project's directory.

  npm install --save-dev eslint

Making the config file

Your bot will not run without a proper config.json. You are responsible for creating your own config file, but a guide can be found on the wiki's Making Your Config File page.

Run the bot

Before running the bot, deploy your commands to your test guild by running the following command in your directory's terminal.
This will only deploy commands for your test token. To test in-place, without a second bot, you can just set the testToken key to the same value as your token key in congif.json.

  npm run testDeploy

You can then start the bot with the following command to ensure all of its commands are working as intended within your test guild.

  npm run start

Upon confirmation that everything is working as intended, deploy your commands globaly for use in every server containing your bot.
This will delete all of your local test commands associated with your main ID, replacing them with global counterparts.

  npm run deploy

About

A small-scale Discord bot with a full-fledged economy system and global leaderboards.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published