AstralBot

Quick rating

AstralBot

No reviews yet

Minecraft Mod doubling as a Discord Bot, initially made for Create: Astral

QoL & Tweaks
Mod Loaders
Forge
NeoForge
Fabric
Minecraft

Community voices

Reviews

Versions
Loading versions…
Match includes

Click once to include, again to exclude, again to clear

Rating Any
Any 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Min
Max
Play Status
Reviews
Time Played
hrs+
Verified developers only
Has developer response
List view
Grid view
Compact view
Sort by
Date
Rating
Helpful
Unhelpful
Edited
Sort ascending
Delete this review?

This removes your review from the project. You can write a new review after.

Review submitted for moderation

Your review has been sent to moderators, who will check that it meets our guidelines before it appears publicly.

No reviews yet. Be the first to review this project!

Get it on

Available Platforms

Compatibility

Supported Environments

Dev Environment
Client Unsupported
Server Required

About

Project Details

Type
Mod
License
MIT License
Latest Version
AstralBot 1.5.5 Fabric 1.18.2
Authors
CurseForge
Modrinth

For authors

Embed Badge

If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.

Custom banner text
ModDex rating badge preview

Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.

Identifiers

Platform IDs

CurseForge ID
Modrinth ID

Resources

External Links

About

Description

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 things are implemented.

  • Discord and Minecraft account linking, optionally requiring this to be whitelisted
  • Discord and Minecraft chat synchronization
  • 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
  • Architectury for multiplatform development
  • JetBrains Exposed to communicate with the Database

Configuration

The following things are configurable:

  • Required linking to be whitelisted (default: off)
  • Chat synchronization with imitated Discord Users

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 an Environment Variable DISCORD_TOKEN where the running Minecraft server can access it. 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.

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.

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

  • Whitelisting
  • FAQ Commands
    • Reading Markdown files
    • Updating suggestions without restart
    • Management/Creation via commands
    • Chat synchronization
      • Minecraft to Discord
      • Discord to Minecraft
      • 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.

Screenshots

Gallery

  • Markdown converted to Minecraft Chat
    Markdown converted to Minecraft Chat Since AstralBot 1.3.0 Discord messages get parsed as markdown and converted to Minecraft's Chat Components
  • Chat Synchronization in Minecraft
    Chat Synchronization in Minecraft Sample while on the official Create: Astral sister server
  • Chat Synchronization on Discord
    Chat Synchronization on Discord Sample from the Create: Astral official sister server.
  • FAQs with Markdown
    FAQs with Markdown The `/faq` command can print the contents of any Markdown file in the faq folder. New FAQs can be added by creating a new file, no server restart needed.
  • Default whitelist screen
    Default whitelist screen Default message a user gets shown if they're not whitelisted yet.
  • User Imitation
    User Imitation When enabled, chat messages from Minecraft players will be sent via webhook to allow custom avatars and names
  • Default whitelist screen
    Default whitelist screen Default message a user gets shown if they're not whitelisted yet.
  • Chat Synchronization on Discord
    Chat Synchronization on Discord Sample from the Create: Astral official sister server.
  • FAQs with Markdown
    FAQs with Markdown The `/faq` command can print the contents of any Markdown file in the faq folder. New FAQs can be added by creating a new file, no server restart needed.
  • Markdown converted to Minecraft Chat
    Markdown converted to Minecraft Chat Since AstralBot 1.3.0 Discord messages get parsed as markdown and converted to Minecraft's Chat Components

Versions

Files

Relations

Project Relations

More like this

Similar Mods

Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.

On ModDex

Community snapshot

0
Ratings
0
Followers
0
In stacks

By the numbers

Statistics

~7,000
Total Downloads
CurseForge
~2,000
Modrinth
~5,000
Last Updated
CurseForge
Modrinth
Created
CurseForge
Modrinth
Last synced
When ModDex last fetched this project from CurseForge or Modrinth. Every project is re-checked on a schedule, and any project that ships a new file is synced automatically within hours of the release.
New file updates sync automatically
How syncing works