A basic announcement bot for posting updates about modding libraries, tools, and Minecraft to Discord.
- Minecraft: Java edition updates.
- Modding Tools: Blockbench updates.
- Mod Loaders: NeoForge, Forge, and Fabric updates.
- Mappings: Parchment mappings updates.
To add the official public instance of Patchy to your Discord server, use this invite link.
You must have the Manage Server permission to add the bot.
Once the bot is in your server, you need to configure it.
By default, only users with the Manage Server permission can change the bot's settings. If you want to allow other users to manage the bot, you can assign a specific role.
/patchy-config set-role role:<role-name>- Permission:
Manage Server - Example:
/patchy-config set-role role:@BotManager
- Permission:
Tell the bot where to send update notifications.
-
/patchy-config set type:<update-type> channel:<#channel-name>- Permission:
Manage Serveror Controller Role - Sets the notification channel for a specific update type.
- Example:
/patchy-config set type:minecraft channel:#mc-updates
- Permission:
-
/patchy-config unset type:<update-type>- Permission:
Manage Serveror Controller Role - Disables notifications for a specific update type.
- Example:
/patchy-config unset type:forge
- Permission:
-
/patchy-config view- Permission:
Manage Serveror Controller Role - Shows the current notification channel settings for all update types.
- Permission:
| Command | Subcommand | Description | Permissions Required |
|---|---|---|---|
/version |
Shows the bot's current version and info. | Everyone | |
/shutdown |
Shuts down the bot safely. | Bot Owner Only | |
/patchy-config |
set |
Sets a notification channel for an update type. | Manage Server or Controller Role |
unset |
Disables notifications for an update type. | Manage Server or Controller Role |
|
view |
Views the current notification settings. | Manage Server or Controller Role |
|
set-role |
Sets the role that can manage the bot. | Manage Server |
It is recommended to set up the bot in its own dedicated folder. This will help contain the bot's executable, along with the folders and files it generates.
- Go to the Discord Developer Portal and create a new bot application.
- Navigate to the "OAuth2" -> "URL Generator" section.
- Select the following scopes:
botapplications.commands
- Under "Bot Permissions", select the following:
View Channels(to be able to view the channels ready to send update notifications in)Send Messages(to be able to send messages in the channels you set)Manage Messages(for publishing in announcement channels)Manage Webhooks(so the bot can use custom names and images for each update type)Read Message History(no we don't care about message history, it's to help commands work correctly)
- Copy and use the generated URL to invite the bot to your server(s).
- Go to the "Bot" tab and copy your bot's token.
It is recommended to run the bot in its own dedicated folder.
- To run this bot, you will need Java 25 or newer.
- When launching the bot, you must include the
--enable-native-access=ALL-UNNAMEDargument to prevent a warning error from one of the bot's dependencies. Example:java --enable-native-access=ALL-UNNAMED -jar patchy-<VERSION>-all.jar
On the first run, the bot will generate a patchy-bot-configs directory. Inside, you will find patchy-config.json. You must edit this file and provide your bot's token and your user ID for the owner-only commands.
{
"botOwnerId": "<THE_BOT_OWNERS_ID>",
"discordToken": "<THE_BOTS_TOKEN>"
}Once configured you should be able to launch the bot!
For questions or support, please visit the official Mod Dev Zone Discord server or open an issue on the GitHub repository.