-
Notifications
You must be signed in to change notification settings - Fork 0
Configuration
Advanced configuration options for the MC Server Status Bot.
The bot uses two types of configuration files:
File: global-config.json
Location: Root directory
Purpose: Bot-wide settings
{
"token": "YOUR_BOT_TOKEN_HERE",
"language": "en"
}File: configs/[guild-id].json
Location: configs/ directory
Purpose: Per-Discord-server settings
{
"guildId": "123456789012345678",
"updateInterval": 60000,
"servers": []
}Edit global-config.json:
{
"language": "de"
}Available languages:
-
en- English -
de- German (Deutsch)
After changing: Run /reload in Discord
Control how often the bot checks server status.
Default: 60000 ms (1 minute)
Edit guild config:
{
"updateInterval": 120000
}Common values:
-
30000- 30 seconds (frequent updates) -
60000- 1 minute (default) -
120000- 2 minutes (less resource usage) -
300000- 5 minutes (minimal load)
⚠️ Note: Lower intervals = more API calls = higher resource usage
Customize status message colors:
{
"embedColors": {
"online": "#00FF00",
"offline": "#FF0000"
}
}Color formats:
- Hex:
#00FF00 - RGB: Not supported (use hex)
Popular colors:
- Green:
#00FF00(online) - Red:
#FF0000(offline) - Blue:
#0099FF(info) - Yellow:
#FFFF00(warning)
Use server emojis in status messages:
{
"emojis": {
"online": "<:online:123456789012345678>",
"offline": "<:offline:987654321098765432>"
}
}How to get emoji ID:
- Type
\:emoji_name:in Discord - Copy the ID from the output
- Format:
<:name:id>
Allow non-admins to use setup commands:
{
"setupRole": "123456789012345678"
}How to get role ID:
- Enable Developer Mode in Discord
- Right-click role → Copy ID
- Paste into config
Users with this role can:
- Use
/setup - Use
/reload - Use
/refresh
{
"showServerIcons": true
}Options:
-
true- Show server favicons (default) -
false- Hide icons
📝 Note: Only works for Java Edition servers
Edit guild config:
{
"servers": [
{
"id": "unique-server-id-1",
"name": "My Minecraft Server",
"ip": "play.example.com",
"port": 25565,
"type": "java",
"channelId": "123456789012345678"
}
]
}Server properties:
-
id- Unique identifier (any string) -
name- Display name -
ip- Server hostname or IP -
port- Server port (25565 for Java, 19132 for Bedrock) -
type-"java"or"bedrock" -
channelId- Discord channel for status messages
Add multiple servers to array:
{
"servers": [
{
"id": "server-1",
"name": "Survival Server",
"ip": "play.example.com",
"port": 25565,
"type": "java",
"channelId": "111111111111111111"
},
{
"id": "server-2",
"name": "Creative Server",
"ip": "creative.example.com",
"port": 25566,
"type": "java",
"channelId": "222222222222222222"
}
]
}Configure query timeout:
{
"queryTimeout": 5000
}Default: 5000 ms (5 seconds)
Adjust if:
- Server is slow to respond
- Network latency is high
- Getting frequent timeout errors
Configure retry attempts:
{
"maxRetries": 3,
"retryDelay": 1000
}-
maxRetries- Attempts before marking offline -
retryDelay- Milliseconds between retries
Before making changes:
cp global-config.json global-config.json.backup
cp -r configs/ configs-backup/Use JSONLint to check syntax before saving.
❌ Trailing commas:
{
"token": "abc123", // ← Remove this comma
}❌ Missing quotes:
{
token: "abc123" // ← Should be "token"
}✅ Correct:
{
"token": "abc123"
}After editing configuration:
- Save the file
- Run
/reloadin Discord - Verify changes took effect
Or restart the bot:
Windows:
# Stop bot (Ctrl+C)
# Then run:
start_bot.batLinux/Mac:
# Stop bot (Ctrl+C)
# Then run:
./start_bot.sh{
"token": "YOUR_TOKEN",
"language": "en"
}{
"token": "YOUR_TOKEN",
"language": "en",
"updateInterval": 60000,
"queryTimeout": 5000,
"maxRetries": 3,
"retryDelay": 1000,
"showServerIcons": true,
"embedColors": {
"online": "#00FF00",
"offline": "#FF0000"
}
}Solutions:
- Check JSON syntax
- Verify file location
- Check file permissions
- Run
/reload
Solutions:
- Verify you edited correct file
- Save the file
- Run
/reload - Restart bot if needed
- Installation - Getting started
- First Steps - Initial setup
- Commands - Available commands
- Troubleshooting - Fix issues