Files
MinecraftUpdates/WIKI_CONFIG.md
T
2026-03-11 23:24:42 +00:00

203 lines
4.9 KiB
Markdown

# Wiki Configuration Setup
The Minecraft Update Bot uses a subreddit wiki page to store customizable post templates. This allows you to configure different post formats for different release types (releases, snapshots, etc.) without restarting the bot.
## Quick Setup
1. **Create the wiki page on your subreddit**
- Go to your subreddit settings
- Navigate to "Edit wiki page"
- Create a new page named `minecraft_update_bot`
2. **Add the configuration in YAML format**
Copy and paste the following into your wiki page:
```yaml
release:
title: "Minecraft {version} Released!"
body: |
# Minecraft {version} Released
A new version of Minecraft is now available!
**Version:** {version}
**Released:** {release_date}
Download it from [minecraft.net](https://minecraft.net) or use the Minecraft launcher.
snapshot:
title: "Minecraft {version} Snapshot Available"
body: |
# Minecraft {version} Snapshot
A new snapshot is available for testing!
**Version:** {version}
**Released:** {release_date}
Try it in the launcher with the development profiles.
default:
title: "Minecraft {version} ({type})"
body: |
# Minecraft {version}
A new {type} build has been released!
**Version:** {version}
**Released:** {release_date}
```
3. **Save the wiki page**
- The bot will automatically load this config on startup
- Changes to the wiki are refreshed every 30 minutes
## Configuration Format
The wiki page must be valid YAML with this structure:
```yaml
release_type:
title: "Post title with {placeholders}"
body: |
Multi-line post body
with {placeholders}
```
### Available Placeholders
In both title and body, you can use:
- `{version}` - The Minecraft version (e.g., "1.21")
- `{release_date}` - The formatted release date (e.g., "June 13, 2024")
- `{type}` - The release type (e.g., "release", "snapshot")
### Release Types
Create sections for each release type you want custom posts for:
- `release` - Final releases
- `snapshot` - Snapshots
- `old_beta` - Old beta versions
- `old_alpha` - Old alpha versions
- `default` - Fallback for any unconfigured type
## Examples
### Example 1: Simple Setup (Releases Only)
```yaml
release:
title: "Minecraft {version} is Out!"
body: |
{version} is available now!
Get it at minecraft.net
```
### Example 2: Different Templates per Type
```yaml
release:
title: "🎉 Minecraft {version} Released"
body: |
# Minecraft {version}
The full release is here!
**Download:** [minecraft.net](https://minecraft.net)
**Date:** {release_date}
snapshot:
title: "📸 Minecraft {version} Snapshot"
body: |
# Snapshot Available
Test drive {version} before the official release!
**Date:** {release_date}
old_beta:
title: "[LEGACY] Minecraft {version} Beta"
body: |
Archive: Minecraft {version} beta
Released: {release_date}
```
### Example 3: Minimal Setup with Default
```yaml
default:
title: "Minecraft {version}"
body: |
New {type}: {version}
{release_date}
```
## Features
- **Multiple Configurations:** Different posts for releases, snapshots, legacy versions, etc.
- **Auto-Refresh:** Wiki changes are loaded every 30 minutes automatically
- **Fallback:** If a release type isn't configured, it uses the `default` config
- **No Restart Required:** Changes take effect on the next check cycle
- **Flexible:** Use any text, formatting, and placeholders you want
## Troubleshooting
### Configuration Not Loading
1. Check the bot logs:
```bash
docker-compose logs minecraft-bot
```
2. Verify the wiki page name is exactly `minecraft_update_bot`
3. Ensure the YAML is valid (use a YAML validator if needed)
4. Check that the bot has permissions to read the wiki
### Posts Not Formatting Correctly
- Verify placeholder names are correct: `{version}`, `{release_date}`, `{type}`
- Check that the YAML syntax is correct (indentation matters!)
- Use the pipe `|` for multi-line bodies
### Reverting to Default
If the wiki page is empty or invalid, the bot will use embedded defaults:
```yaml
release:
title: "Minecraft {version} Released!"
body: "# Minecraft {version}\n\nA new version is available!\n\n**Version:** {version}\n**Released:** {release_date}\n\nGet it at [minecraft.net](https://minecraft.net)"
```
## Advanced: Testing Your Configuration
To test without posting to your subreddit:
1. View the bot logs:
```bash
docker-compose logs -f
```
2. Watch for the line:
```
[WIKI_CONFIG] ✓ Loaded X configuration(s)
```
3. This confirms your configs were loaded successfully
4. When a new version is posted, you'll see:
```
[BOT] ✓ Posted Minecraft X.X (release_type)
```
## Wiki Permissions
Make sure the bot account:
- Has **write** permission to edit the subreddit
- Can access the wiki pages
- Has the right to post to the subreddit
If you get permission errors, add the bot account as a moderator with wiki permissions.