▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Плагины/ConsoleDiscord
ConsoleDiscord

ConsoleDiscord

Mirrors your Paper server console log to a Discord channel and lets you run Minecraft console commands from Discord via /mc or !mc, with access control and configurable log batching.

191
2

ConsoleDiscord 1.4.0

release10 апреля 2026 г.

[1.4.0] - 2026-04-10 🚀 Folia Support & Stability Release

✨ New Features

Folia Compatibility

  • Full Folia support - Plugin now works on both Paper and Folia servers
  • Automatic detection - Detects server type and uses appropriate scheduler API
  • Zero configuration - Works out of the box on both platforms
  • Region-aware scheduling - Uses global region scheduler for console commands on Folia
  • Async scheduler migration - All async tasks use Folia's new scheduler when available

Modrinth Update Checker

  • Automatically checks for new versions on startup via Modrinth API
  • Notification in server console and optionally in Discord channel
  • Configurable: update-checker.enabled

Config Auto-Merge

  • New config options from updates are automatically added to existing config
  • User values are never overwritten - only missing keys are added
  • No more manual config migration needed after updates

🐛 Bugfixes

  • Fixed: MAX_EMBED_SIZE_EXCEEDED error - Embeds are now split into groups that respect Discord's 6000 character total limit per message. Previously, multiple embeds could exceed this limit and cause ErrorResponseException: 50035
  • Fixed: Thread.sleep(1000) blocking server shutdown - Removed unnecessary sleep in onDisable(). The shutdown notification already uses blocking complete() call
  • Fixed: CommandSecurity race condition - Static fields are now thread-safe using AtomicBoolean and AtomicReference. Config reloads during command checks no longer cause inconsistent state
  • Fixed: SchedulerAdapter.isCancelled() always returning false - Folia tasks now properly track cancel state via AtomicBoolean, Paper tasks delegate to BukkitTask.isCancelled()
  • Fixed: Potential NullPointerException in MessageCleanup - Added null-safety check for jda.getSelfUser() during message cleanup
  • Fixed: Fragile JSON parsing in ModrinthUpdateChecker - Replaced manual indexOf()/substring() parsing with Gson for robust Modrinth API response handling

🔄 Changes

Scheduler Refactoring

  • New SchedulerAdapter class provides unified API for Paper and Folia
  • Replaced all Bukkit.getScheduler() calls with adapter methods
  • Console commands now use GlobalRegionScheduler on Folia
  • Removed busy-wait loops when cancelling tasks (cleaner shutdown)

Code Cleanup

  • Removed legacy org.example package (outdated duplicate code from pre-1.3.0)
  • Added Gson as provided dependency (shipped by Paper at runtime)

Technical Details

  • Auto-detection via io.papermc.paper.threadedregions.RegionizedServer class check
  • folia-supported: true flag in plugin.yml
  • Backwards compatible with Paper/Spigot servers

📦 Build Information

JAR File: consolediscord-1.4.0.jar Size: ~16 MB (with JDA shaded) Java Version: 21 Paper Version: 1.21.4-R0.1-SNAPSHOT (also supports Folia) JDA Version: 6.1.0


Migration Guide from 1.3.0 → 1.4.0

✅ Automatic Migration

All changes are 100% backwards compatible. Simply replace the JAR file!

New config options (like update-checker) are automatically merged into your existing config.yml on first startup - no manual editing needed.

ConsoleDiscord 1.3.0

release10 марта 2026 г.

[1.3.0] - 2026-03-10 🎉 The Big Feature Update

✨ New Features

📋 Intelligent Log Forwarding

1. Discord Embeds instead of Code Blocks

  • Color-coded embeds for better readability (Green=INFO, Orange=WARN, Red=ERROR)
  • Structured presentation with timestamps
  • Batch processing: Up to 10 log lines per embed
  • Configurable: log-formatting.use-embeds

2. Emoji Encoding for Log Levels

  • 💀 FATAL - Critical errors
  • ❌ ERROR - Errors
  • ⚠️ WARN - Warnings
  • ℹ️ INFO - Information
  • 🔍 DEBUG - Debug output
  • 🔬 TRACE - Trace logs
  • Configurable: log-formatting.use-emojis

3. Log-Level Filtering

  • Send only specific log levels to Discord
  • Default: INFO, WARN, ERROR, FATAL
  • Configurable: log-levels: [INFO, WARN, ERROR]

4. Regex Filters for Logs

  • Filter out annoying spam logs ("Can't keep up", UUID warnings)
  • Unlimited regex patterns
  • Configurable: log-filters.ignore-patterns

5. Log Categories with Separate Channels

  • Security logs in separate channel (op, ban, kick, etc.)
  • Performance logs in separate channel (TPS, Memory)
  • Unlimited categories definable
  • Pattern-based routing
  • Configurable: log-categories

🎮 Remote Commands

6. Command Autocomplete

  • Intelligent suggestions while typing
  • Pre-configured common commands (gamemode, weather, time, difficulty, etc.)
  • Also shows command aliases
  • Automatic Discord slash command integration

7. Command Aliases

  • Define shortcuts: tpsspark tps
  • Unlimited aliases
  • Autocomplete shows aliases with arrow: tps → spark tps
  • Configurable: command-aliases.aliases

🔒 Security & Monitoring

8. Command Audit Logging

  • Logs every command with user, timestamp, and status
  • File-based: plugins/ConsoleDiscord/audit.log
  • Optionally also in Discord channel
  • Format: [2026-03-10 19:30:45] User#123 (Name) executed: cmd [SUCCESS]
  • Configurable: command-audit

9. Performance Alerts

  • TPS warning at < 15.0 TPS (adjustable)
  • Memory warning at > 90% RAM (adjustable)
  • Cooldown system prevents spam (default: 5min)
  • Color-coded embeds: 🟡 Warning / 🔴 Critical
  • Configurable: performance-alerts

🛠️ Management

10. Startup/Shutdown Notifications

  • 🟢 Server Start: Shows version & plugin count
  • 🔴 Server Stop: Shows uptime
  • Beautiful embeds with timestamp
  • Configurable: notifications.startup & notifications.shutdown

11. Auto-Cleanup for Old Messages

  • Automatically deletes old log messages
  • Default: After 7 days (adjustable)
  • Check every 24 hours (adjustable)
  • Only bot's own messages are deleted
  • Configurable: auto-cleanup

12. Batch Embeds

  • Groups up to 10 log lines per embed
  • Discord limit: Max 10 embeds per message
  • Reduces API calls and rate limits
  • Better performance with many logs
  • Configurable: log-formatting.embed-batch-size

13. Configurable Command Blacklist

  • Fully customizable: You decide which commands to block
  • Default recommendation: Only op and deop blocked (changeable)
  • Flexible: Add commands like stop, restart, whitelist as needed
  • Disableable: Security can be completely turned off
  • Namespace protection: Prefixes like minecraft:, bukkit: are always blocked
  • Configurable: command-security.enabled & command-security.blocked-commands

🔄 Changes

Package Refactoring

Before: org.example
Now:    dev.boondocksulfur.consolediscord

New Package Structure:

  • dev.boondocksulfur.consolediscord - Main plugin
  • dev.boondocksulfur.consolediscord.audit - Audit logging
  • dev.boondocksulfur.consolediscord.cleanup - Message cleanup
  • dev.boondocksulfur.consolediscord.i18n - Internationalization
  • dev.boondocksulfur.consolediscord.listener - Discord events
  • dev.boondocksulfur.consolediscord.logging - Log appender & formatter
  • dev.boondocksulfur.consolediscord.performance - Performance monitoring
  • dev.boondocksulfur.consolediscord.security - Security & rate limiting

Maven Configuration

  • groupId: dev.boondocksulfur (previously: org.example)
  • artifactId: consolediscord (previously: console-discord)
  • JDA relocation adjusted

Config Extensions

The config.yml has been extended with 58 new options:

  • Advanced logging options (17 options)
  • Command features (10 options)
  • Performance alerts (4 options)
  • Notifications & cleanup (5 options)

📚 Documentation

  • JavaDoc: Complete documentation for all classes and methods
  • README.md: Completely revised with feature matrix and examples
  • CHANGELOG.md: Detailed changelog with migration guide

🐛 Improvements

  • Better error messages with i18n support
  • More informative Discord responses (emojis for feedback)
  • Cleaner code structure with separation of concerns
  • Improved type safety with proper generics
  • More consistent logging practices
  • Optimized performance through batch processing
  • NEW: Thread-safe reconnect logic with synchronized lock - no more race conditions
  • NEW: Discord bot token format validation on startup
  • NEW: Configurable command blacklist - you decide which commands to block

🔒 Security

  • Blocks execution of server-critical commands
  • Prevents command spam via rate limiting
  • Validates user permissions before execution
  • Filters commands with namespace prefixes
  • Audit trail for all commands
  • NEW: Configurable command blacklist - blocks only dangerous operations you specify
  • NEW: Discord bot token validation - checks format and length on startup
  • NEW: Race condition protection for Discord reconnects through synchronized lock

📦 Build Information

JAR File: consolediscord-1.3.0.jar Size: ~8 MB (with JDA shaded) Java Version: 21 Paper Version: 1.21.4-R0.1-SNAPSHOT JDA Version: 6.1.0


Migration Guide from 1.2.0 → 1.3.0

✅ Automatic Migration

Most changes are backwards compatible. Your old config.yml will continue to work!

📝 New Config Options

On first startup with 1.3.0, these options will be automatically added:

# New options with defaults
language: "en"
max-commands-per-minute: 5
command-security:
  enabled: true
  blocked-commands: ["op", "deop"]
log-levels: [INFO, WARN, ERROR, FATAL]
log-formatting:
  use-embeds: true
  use-emojis: true
  embed-batch-size: 10
log-filters:
  ignore-patterns: []
log-categories:
  enabled: false
command-aliases:
  enabled: true
  aliases: {}
command-audit:
  enabled: true
  log-file: "audit.log"
performance-alerts:
  enabled: true
  low-tps-threshold: 15.0
  high-memory-threshold: 90
notifications:
  startup: true
  shutdown: true
auto-cleanup:
  enabled: false

⚙️ Recommended Post-Migration Steps

  1. Enable Discord Embeds:

    log-formatting:
      use-embeds: true
      use-emojis: true
    
  2. Filter Spam Logs:

    log-filters:
      ignore-patterns:
        - "Can't keep up! Is the server overloaded\\?"
    
  3. Configure Command Aliases:

    command-aliases:
      enabled: true
      aliases:
        tps: "spark tps"
        save: "save-all"
    
  4. Reload Plugin:

    /cdr reload
    

⚠️ Breaking Changes

None! All changes are backwards compatible.

ConsoleDiscord 1.2.0

release22 ноября 2025 г.

[1.2.0] - 2025-01-22

Bugfixes

  • Discord Slash-Command Interaction Fix: Behoben, dass beim Ausführen von /mc cdr reload der Fehler IllegalStateException: This interaction has already been acknowledged auftrat

    • Slash-Commands verwenden jetzt deferReply() um Discord sofort zu bestätigen
    • Antworten werden nun über getHook().sendMessage() gesendet
    • JDA-Status wird geprüft bevor Antworten gesendet werden, um Race Conditions beim Reload zu vermeiden
  • Verbesserte Fehlerbehandlung: Alle Discord-API-Aufrufe haben jetzt Error-Handler, die Fehler loggen statt Exceptions zu werfen

Technische Details

  • DiscordListener.java: Refactoring der runMinecraftCommand() Methode
  • Neue Helper-Methode sendResponse() für saubere Trennung von Slash-Command und Message-Antworten

[1.1.0] - Initiale Version

Features

  • Server-Konsolen-Logs werden automatisch in einen Discord-Channel gepostet
  • Minecraft-Befehle können über Discord ausgeführt werden:
    • /mc <befehl> - Slash-Command
    • !mc <befehl> - Text-Prefix
  • Konfigurierbare Berechtigungen (User-IDs)
  • Optionaler Command-Channel für eingeschränkte Nutzung
  • Watchdog für automatische JDA-Reconnects
  • Debug-Modus für JDA-Status-Logging

ConsoleDiscord 1.1.0

release20 ноября 2025 г.

Changelog

Fixed an issue where ConsoleDiscord could throw an IllegalStateException: zip file closed when handling the Discord WebSocket shutdown.

Improved plugin classloader handling to prevent crashes and unnecessary error stacktraces in the console.

ConsoleDiscord 1.0.0

release18 ноября 2025 г.

Нет описания изменений

Совместимость

Minecraft: Java Edition

1.21.x

Платформы

Поддерживаемые окружения

Сервер

Детали

Лицензия:MIT
Опубликован:5 месяцев назад
Обновлён:1 неделю назад
Главная