Discord bot written in Python, works with NextCord and PyCord, does not use slash commands, invoked with "~" or by mentioning the bot
Mostly usable as of v2.2.2, with ongoing improvements.
Angel$IX is a versatile Discord bot with the following features:
- Music: Play and manage music in voice channels.
- Fun: Enjoy random cat images, femboy wisdom/tutorial, create custom tags, roll dices.
- Moderation: Kick, ban, mute, and warn users.
- Utility: Show bot statistics, display server invites, get information about the server and more.
- Misc: perform various logging functions (experimental), check server statistics and show bot's uptime.
- And more!
Please note that this is not an exhaustive list, and the bot may have additional commands or features. For a complete list of commands and detailed usage instructions, refer to the bot's documentation or use the help command in Discord.
To set up and run Angel$IX for the first time, follow these steps:
-
Make sure you have Python 3.11+ installed.
it may work with older python versions however I offer no support for those nor do I guarantee compatibility
-
Clone the repository and navigate to the project directory.
-
Install the required dependencies by running the following command:
pip install -r requirements-linux.txt
orpip install -r requirements-windows.txt
-
Rename the
.env_example
file to.env
and make sure to add yourtoken
. -
Run the
angel6-rewrite.py
script using the following command:python angel6-rewrite.py
(depending on the OS you may need to launch it withpython3
)Note
The script will perform the first time setup, where you'll be prompted to input various channel IDs. -
Once the setup is complete, the bot will automatically reboot. You'll see the message "Setup complete, Rebooting" in the console.
Warning
If the bot goes back to the input logging/join/leave/general channel ID restart the bot manually.
But if it showsInput channel ID:
this is okay as it's the channel selector for talking thru the bot -
The bot is now ready to use. It will log in to Discord and display information about its settings and status.
- The bot version will be displayed.
- The logging channel, join/leave channel, and general channel will be mentioned.
- The API latency will be shown.
- Credits and additional information may also be sent to the logging channel.
-
You should now be able to interact with the bot using its available commands in Discord.
- Add ytdl playlist support (not heavily requested/used).
- Use slash commands
- Add API search support
- Add more APIs
- Put logging functions into main file
- Put warns, kicks and bans into a Json
- Migrate error handling to on_command_error and isinstance
- Verify support for Python 3.12
- Fix initing
YTDLSource
class - Verify what options in
YTDL_OPTIONS
are redundant - Fix Pylint errors/warnings
- De-duplicate logging code from
music.py