minebot

Crates.iominebot
lib.rsminebot
version1.0.0
sourcesrc
created_at2024-07-31 17:12:21.04172
updated_at2024-07-31 17:12:21.04172
descriptionA simple Discord bot to interact with your Minecraft server
homepagehttps://github.com/The-Noah/minebot
repositoryhttps://github.com/The-Noah/minebot
max_upload_size
id1321123
size56,032
Noah Dunbar (The-Noah)

documentation

README

minebot

A simple Discord bot to interact with your Minecraft server.

Installation

There are multiple ways to run the bot, or you can build from source.

Docker Compose (recommended)

  1. Create a compose.yaml file with the following content:
version: "3.8"
services:
  minebot:
    image: ghcr.io/the-noah/minebot:latest
    container_name: minebot
    restart: unless-stopped
    environment:
      - DISCORD_TOKEN=your_discord_bot_token
      - GUILD_ID=your_discord_guild_id
      - MINECRAFT_IP=your_minecraft_server_ip
  1. Run the bot
docker compose up -d

Docker

  1. Run the bot
docker run -d --name minebot \
  -e DISCORD_TOKEN=your_discord_bot_token \
  -e GUILD_ID=your_discord_guild_id \
  -e MINECRAFT_IP=your_minecraft_server_ip \
  ghcr.io/the-noah/minebot:latest

Binary (via Cargo)

  1. Install the bot
cargo install minebot
  1. Create a .env file in the root of the project and add the following:
DISCORD_TOKEN=your_discord_bot_token
GUILD_ID=your_discord_guild_id
MINECRAFT_IP=your_minecraft_server_ip
  1. Run the bot
minebot

Usage

The bot will automatically register slash commands when it starts. You can use the following commands:

  • /ping - Check if the bot is online
  • /status - Get the status of the Minecraft server with player info
  • /say - Send a message in Minecraft chat as the server (requires admin permissions on Discord)
  • /whitelist
    • /whitelist add <username> - Add a player to the whitelist (requires admin permissions on Discord)
    • /whitelist remove <username> - Remove a player from the whitelist (requires admin permissions on Discord)
    • /whitelist list - List all players on the whitelist (requires admin permissions on Discord)

The bot will also automatically update its status to show the number of players online.

Build from source

  1. Clone the repository
git clone https://github.com/The-Noah/minebot.git
  1. Build bot
cd minebot
cargo build --release
  1. Create a .env file in the root of the project and add the following:
DISCORD_TOKEN=your_discord_bot_token
GUILD_ID=your_discord_guild_id
MINECRAFT_IP=your_minecraft_server_ip
  1. Run the bot
./target/release/minebot

License

MIT

Commit count: 0

cargo fmt