All Mods Resource Packs Data Packs Shaders Modpacks Plugins
AstralBot

AstralBot

by Erdragh • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

AstralBot

build workflow License Environment

This is a Minecraft mod and Discord Bot in one package. It's intended for the Create: Astral Modpack's official server, but it's implemented cross-platform to be usable by others too. The goal is to be easy-to-use and accessible for non-technical server admins, while allowing true complexity for power users.

Features

These features are the core of what this bot will do. See the Status section to see how much is already implemented.

  • Discord and Minecraft account linking, optionally requiring this to be whitelisted
  • Discord and Minecraft chat synchronization, optionally via webhook for improved readability
  • FAQ commands using Markdown files without needing to restart the server

Dependencies

This mod has a few dependencies, some of which are not specified directly as they're technically optional:

Implementation

  • JDA library to communicate with the Discord API.
  • Kotlin for the improved development experience over Java
  • JetBrains Exposed to communicate with the Database

Configuration

The following things will be configurable:

  • Required linking to be whitelisted (default: off)

  • Chat synchronization with imitated Discord Users:

    1. No user imitation (The bot will write the messages under its own name)
    2. (If possible) Minecraft user imitation (The Minecraft usernames and heads will be used for messages)
    3. (Only available if requiring linking for whitelist) Discord user imitation (The messages will be written under the linked Discord name)

    Default: Minecraft user imitation (if webhook available is set, otherwise no imitation)

  • Managing FAQs through a command interface (default: off)

  • Database connection. Uses an SQLite database by default

Status

  • [x] Whitelisting
  • [ ] FAQ Commands
    • [x] Reading Markdown files
    • [x] Updating suggestions without restart
    • [ ] Management/Creation via commands
  • [x] Chat synchronization
    • [x] Minecraft to Discord
    • [x] Discord to Minecraft
    • [x] User imitation on Discord. Either uses Minecraft avatars or Discord avatars

Running

There is no public instance of this bot/mod available. To use it, create a new Application on the Discord Developer Portal and configure it to have the three privileged gateway intents: PRESENCE, SERVER MEMBERS and MESSAGE CONTENT.

Copy the bot token and store it somewhere safe (like a Password Manager) and never show it to anybody else. To make sure the token gets read by the bot, it has to be in either an Environment Variable DISCORD_TOKEN where the running Minecraft server can access it or in the config file under the key token. You could for example modify a start.sh script on a Unix-like system to export it or start the shell script with it set directly:

startmc.sh:

export DISCORD_TOKEN=<place token here>

java ... # java command that starts the server

or

DISCORD_TOKEN=<place token here> startmc.sh # Start the script with the env variable set

After starting the server, you can go into the OAuth2 URL builder on the Discord Developer Portal and generate a URL with the bot and applications.command permissions. Use the generated URL to have the bot join your server.

To be able to use user imitation, which makes the chat synchronization more readable, the bot will try and create a webhook in the configured chat synchronization channel. This means it will need to have the permission to manage webhooks. If you don't want that you can manually create a webhook in the channel where you want the messages synchronized and set it in the webhook.url option in the config for the mod.

How to Install AstralBot (Mod)

AstralBot by Erdragh is verified for Fabric, Forge, Neoforge across Minecraft versions 1.18.2, 1.19.2, 1.20.1, 1.20.4, 1.21, 1.21.1 (latest release: 1.5.5-mc1.18.2-forge, file size: 25.3 MB). Follow the steps below to install it safely from ModCraft.tv:

  1. Click the Download button above and select your Minecraft version (1.18.2, 1.19.2, 1.20.1, 1.20.4, 1.21, 1.21.1) and platform (Fabric, Forge, Neoforge).
  2. Make sure you have the compatible loader or environment installed for Fabric, Forge, Neoforge.
  3. Move the downloaded AstralBot file into your Minecraft .minecraft/mods folder and launch the game.

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
1.18.2
Forge
last yr. 1
1.18.2
Fabric
last yr. 1
1.20.1
Fabric
last yr. 1
1.20.1
Forge
last yr. 1
1.19.2
Forge
last yr. 1
1.19.2
Fabric
last yr. 1
1.21.1
Neoforge
last yr. 1
1.21.1
Fabric
last yr. 1
1.18.2
Fabric
last yr. 1
1.18.2
Forge
last yr. 1
1.20.1
Fabric
last yr. 1
1.20.1
Forge
last yr. 1
1.19.2
Forge
last yr. 1
1.19.2
Fabric
last yr. 1
1.21.1
Neoforge
last yr. 1
1.21.1
Fabric
last yr. 1
1.21
Fabric
last yr. 1
1.21
Neoforge
last yr. 1
1.18.2
Forge
last yr. 1
1.19.2
Forge
last yr. 1
1.18.2
Fabric
last yr. 1
1.19.2
Fabric
last yr. 1
1.20.1
Fabric
last yr. 1
1.20.1
Forge
last yr. 1
1.20.4
Fabric
last yr. 1
1.20.4
Neoforge
last yr. 1
1.19.2
Forge
last yr. 1
1.20.1
Forge
last yr. 1
1.19.2
Fabric
last yr. 1
1.20.1
Fabric
last yr. 1
1.18.2
Forge
last yr. 1
1.18.2
Fabric
last yr. 1
1.20.4
Fabric
last yr. 1
1.20.4
Neoforge
last yr. 1
1.18.2
Forge
last yr. 1
1.18.2
Fabric
last yr. 1
1.19.2
Forge
last yr. 1
1.19.2
Fabric
last yr. 1
1.20.1
Fabric
last yr. 1
1.20.4
Fabric
last yr. 1
1.20.1
Forge
last yr. 1
1.20.4
Neoforge
last yr. 1
1.18.2
Fabric
last yr. 1
1.18.2
Forge
last yr. 1
1.19.2
Fabric
last yr. 1
1.19.2
Forge
last yr. 1
1.20.1
Fabric
last yr. 1
1.20.1
Forge
last yr. 1
1.19.2
Fabric
last yr. 1
1.18.2
Fabric
last yr. 1
1.19.2
Forge
last yr. 1
1.18.2
Forge
last yr. 1
1.20.1
Fabric
last yr. 1
1.20.1
Forge
last yr. 1
1.19.2
Fabric
last yr. 1
1.19.2
Forge
last yr. 1
1.18.2
Fabric
last yr. 1
1.18.2
Forge
last yr. 1
1.20.1
Fabric
last yr. 1
1.20.1
Forge
last yr. 1
1.20.1
Forge
last yr. 1
1.19.2
Forge
last yr. 1
1.18.2
Forge
last yr. 1
1.20.1
Fabric
last yr. 1
1.19.2
Fabric
last yr. 1
1.18.2
Fabric
last yr. 1
1.19.2
Fabric
last yr. 1
1.19.2
Forge
last yr. 1
1.18.2
Forge
last yr. 1
1.20.1
Forge
last yr. 1
1.18.2
Fabric
last yr. 1
1.20.1
Fabric
last yr. 1
1.18.2
Forge
last yr. 1
1.20.1
Forge
last yr. 1
1.18.2
Fabric
last yr. 1
1.20.1
Fabric
last yr. 1
1.18.2
Fabric
last yr. 1
1.18.2
Forge
last yr. 1
1.20.1
Fabric
last yr. 1
1.20.1
Forge
last yr. 1
Update JetBrains' Exposed to prevent issues with Ledger
Update JetBrains' Exposed to prevent issues with Ledger
Update JetBrains' Exposed to prevent issues with Ledger
Update JetBrains' Exposed to prevent issues with Ledger
Update JetBrains' Exposed to prevent issues with Ledger
Update JetBrains' Exposed to prevent issues with Ledger
Update JetBrains' Exposed to prevent issues with Ledger
Update JetBrains' Exposed to prevent issues with Ledger
Fix wrong jar being published for Forge
Fix wrong jar being published for Forge
Fix wrong jar being published for Forge
Fix wrong jar being published for Forge
Fix wrong jar being published for Forge
Fix wrong jar being published for Forge
  • Unlink users on leave
  • Update Dependencies
  • Show better error message if FAQ is too long
  • Limit the autocomplete suggestion return value length to fix no options showing up
  • Added the /listfaq command
  • Fixed the config wrongly storing guild and role id
  • Fixed the config getting synced to the client (You may need to move the config from world/serverconfig to config)
  • Headpat command now outputs a GIF thanks to @femmeromantic
AstralBot Icon
Download AstralBot
Select game version
Select platform