Discord bot, which uses ansible to create a Minecraft server or a VPN server on https://www.hetzner.com/cloud. It can also generate a link for Watch2Gether by using the node library puppeteer.
Based on the two parameters location and type, the bot creates for example your VPN server in Hillsboro 🇺🇸 :
VPN-Command.MP4
Or a minecraft server in Nürnberg 🇩🇪 :
Minecraft-Command.mp4
If you want to get information about the servers, which currently run, you can type in the info command:
Info-Command.mp4
The Watch2Gether link generator comes in handy if you are in a discord voice channel and you want to get a new W2G link quickly:
W2G-Command.mp4
You can start your container with the following command: (Fill in your credential at the respective "<>" position)
docker run --name kbkm-bot -e DISCORD_BOT_TOKEN=<> -e GUILD_ID=<> -e HCLOUD_TOKEN=<> -e DUCKDNS_TOKEN=<> -e DUCKDNS_DOMAIN_VPN=<> -e DUCKDNS_DOMAIN_MINECRAFT=<> -d ghcr.io/gittgres/kbkm-bot:latest
How to fill out your credentials:
- DISCORD_BOT_TOKEN -> Go to Discord Developer Portal and create a new application. In the setting
Bot
you can find your Bot token - GUILD_ID -> Right-click on the server, where the bot should run and than click on
copy id
- HCLOUD_TOKEN -> Go to Hetzner Cloud Console and create a new project. In the setting
security
create a new api-token - DUCKDNS_TOKEN -> Go to Duck DNS and copy the
token
from the dashboard - DUCKDNS_DOMAIN_VPN -> Create a subdomain for your vpn server and copy it (Only copy the subdomain!!!)
- DUCKDNS_DOMAIN_MINECRAFT -> Create a subdomain for your minecraft server and copy it (Only copy the subdomain!!!)
This bot provides the following commands:
/w2g
generates a Watch2Gether link/server info
gives you the server address, server status and server location/server start type=<vpn, minecraft> location=<🇺🇸 Ashburn,🇺🇸 Hillsboro,🇩🇪 Falkenstein,🇩🇪 Nürnberg, 🇫🇮 Helsinki>
creates a server in the respective location and configures the server according to the type/server delete type=<vpn, minecraft>
deletes the desired server
Every command has the optional parameter hidden=true
. When you specify it, the result of the command is only shown to you.