Git Product home page Git Product logo

experienced's Introduction

Experienced

A powerful, flexible discord leveling bot

How to Self-Host Experienced

The easiest way to self-host experienced is on Debian or Ubuntu Linux. Thus, this is how this tutorial will set up Experienced.

If you'd rather just have a hosted bot, that's fine! I really appreciate it. Click here to invite the official instance.

While you are legally within your rights to do so, please do not self-host public instances of Experienced.

Preparing your server

To run experienced, you need docker or podman. We'll use docker for this tutorial.

Using Docker Compose

You can grab the file from here

Env File:

You can grab the variables from here

Make sure you replace <token> and <db_pass> with your own bot token and database password for postgres.

Finally, start the docker with:

docker compose up

If there are any errors, ping valkyrie_pilot on the official discord here

Invite the bot with:

https://discord.com/oauth2/authorize?client_id=<yourclientid>&permissions=414733126656&scope=bot+applications.commands

Make sure to replace the <yourclientid> with your bots.

experienced's People

Contributors

dependabot[bot] avatar pbowner avatar randomairborne avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

experienced's Issues

Bot management dashboard

There should be a dashboard to manage the bot, along with its nodes and what shards they occupy. It should also be able to manage zero-downtime upgrades.

Ephemeral level cards

Level cards get in the way and interrupt conversation, there’s often not much reason for anyone besides the one checking the level to see it.
Still, it may be desirable to be able to show off your level card, and having the response be ephemeral should hence be an optional toggle in the slash command.

The same applies to the leaderboard.

Fetch never returns

the card fetch command never ends up making a reply to discord for some reason

Refactor cache into seperate crate

The recently added caching functionality of the gateway could pretty easily be refactored into a different crate, that could even be reused for generic permissions calculations. More methods would need to be added.

Bot cannot fetch the guild ID

The problem

Whenever either the “Get level” or “Get author level” app commands are used, the bot responds with a “Discord did not send a guild ID!“ error message.

Screenshots

response

Discord-native leaderboard

I feel like the leaderboard would make more sense (and be easier to host) if it were directly in the embed within discord.

Considerations:

Pros:

No need to cache user info in redis
Nicer UX, no browser needed

Cons:

May be less accessible on old clients &| desktop
Potentially less scalable?

XP multipliers

Maybe XP multipliers for certain roles and channels can be added?

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.