promotional bannermobile promotional banner

[DISCONTINUED] DiscordBridge [DISCONTINUED]

DiscordBridge links your Minecraft 1.21.x server chat to Discord in real-time via webhooks, enabling two-way messaging between in-game players and Discord members — no bot, no dependencies, server-side only.

File Details

discordbridge-1.0.7.jar

  • R
  • Mar 19, 2026
  • 12.67 MB
  • 14
  • 1.21.1
  • NeoForge

File Name

discordbridge-1.0.7.jar

Supported Versions

  • 1.21.1

Curse Maven Snippet

NeoForge

implementation "curse.maven:discordbridge-1486109:7782161"
Curse Maven does not yet support mods that have disabled 3rd party sharing

Learn more about Curse Maven

Changelog - Discord Bridge

[1.0.8] - 2026-03-19

Added

  • 🔐 Active Session Management: Implemented system to prevent duplicate logins across multiple servers
    • New ActiveSessionStorage class for tracking and managing player sessions across server instances
    • Prevents players from being logged in simultaneously on multiple servers
    • Shared session state via persistent JSON storage for multi-server consistency
    • Automatic session cleanup and expiration handling

Files Created

  • util/ActiveSessionStorage.java - Core player session tracking and management

Changed

  • Internal code cleanup (removed obsolete log files: jarJar_error.txt, jar_log.txt, package_output.txt)
  • .gitignore - Added .VsCodeCounter to ignore list

[1.0.7] - 2026-03-16

Fixed

  • 🐛 Discord Error 10062 - Unknown Interaction: Fixed critical timeout issue with /verify slash command
    • Problem: Blocking I/O operations (reading/writing verification file) and Discord API calls were causing responses to exceed Discord's 3-second deadline, resulting in "Error 10062: Unknown interaction"
    • Solution: Implemented asynchronous execution - Discord response is sent immediately, while file I/O and nickname changes occur in a background thread
    • DiscordEventHandler.onSlashCommandInteraction() now sends confirmation instantly via event.getHook(), then processes verification operations asynchronously
    • Added comprehensive error handling with try-catch and logging for background operations
    • Impact: Eliminates timeout errors, improves user experience with instant feedback, prevents cascade failures on high-traffic servers

Changed

  • discord/DiscordEventHandler.java - Refactored verification workflow to use background threading
  • Version suffix removed for stable release

Documentation

  • Added 10_ERROR_10062_FIX_EN.md - Complete technical documentation of the bug and its fix
  • Added 10_ERROR_10062_FIX_FR.md - French version of the error documentation

Changed

  • Internal changelog structure cleanup and version ordering normalization.

[1.0.5] - 2026-03-15

Added

  • Global Verification System: Players verified once on Discord can now connect to ALL servers without re-verifying

    • New VerificationManager class for centralized verification management with intelligent caching
    • 3-second TTL cache system to minimize file I/O on shared verification JSON
    • Updated /verify command with global cross-server verification confirmation
    • Automatic recognition across all connected server instances
  • 🚫 Ban Synchronization System: Complete ban management across Discord and Minecraft platforms

    • New BanStorage class for persistent ban storage with JSON persistence
    • New BanManager class providing easy ban/unban operations with audit trails
    • Automatic player kickback with customizable reason when banned
    • Ban checking at login (priority: before verification check)
    • Complete ban tracking: reason, timestamp, who banned the player, and platform
    • Bans instantly synchronized across all servers via shared JSON file
  • 📝 Configuration Enhancements:

    • ENABLE_BAN_SYNC - Toggle ban synchronization on/off
    • BANNED_PLAYERS_PATH - Shared ban file path (default: config/discordbridge-banned.json)
    • BAN_KICK_MESSAGE - Customizable ban kick message with {reason} variable support
  • 📚 Documentation:

    • Comprehensive documentation in 08_VERIFICATION_AND_BANS.md
    • Implementation guide in 09_COMMANDS_IMPLEMENTATION.md for future /ban command additions
    • Updated README with verification and ban system sections
    • Complete API documentation with developer examples
  • 🛠️ New API Methods:

    • BanManager.banPlayer(username, reason, bannedBy) - Ban player across all platforms
    • BanManager.banPlayerMinecraftOnly(username, reason, bannedBy) - Ban from Minecraft only
    • BanManager.unbanPlayer(username, unbannedBy) - Unban player
    • BanManager.isBanned(username) - Check ban status
    • VerificationManager.verifyGlobally(username, discordId, server) - Verify globally
    • VerificationManager.isVerifiedWithCache(username) - Cached verification check

Modified

  • mixin/PlayerListMixin.java - Now checks bans BEFORE verification on login (prioritizes ban detection)
  • discord/DiscordEventHandler.java - /verify message now clearly indicates global cross-server verification
  • config/BridgeConfig.java - Added complete ban-related configuration options
  • DiscordBridge.java - Now loads both verified players and bans at startup
  • README.md - Added comprehensive ban synchronization documentation and architecture explanation

Files Created

  • util/BanStorage.java - Core ban data management with JSON persistence
  • util/BanManager.java - High-level ban operations with synchronization
  • util/VerificationManager.java - Centralized verification management with intelligent caching
  • minecraft/commands/BridgeBanCommand.java - Skeleton for future ban command implementation
  • IMPLEMENTATION_SUMMARY.md - Technical implementation summary
  • RESUME_FR.md - French language summary

Technical Details

  • Ban checks use direct file I/O for immediate consistency across instances
  • Verification uses 3-second TTL cache to reduce I/O while maintaining near-instant updates
  • Ban and verification systems are completely independent and can be toggled separately
  • Both systems support network paths for true multi-server shared storage
  • Includes ban metadata (banner, timestamp, reason) for audit trails and future appeal systems

[1.0.3] - 2026-03-14

Fixed

  • Discord Timeout: Added deferReply() to fix the "Application not responding" red error on Discord.
  • SDLink Cleanup: Added automated cleanup of old global commands at startup.
  • Global Verification: Any server instance can now respond to a verification request, ensuring no instance ignores a command.
  • Shared Storage: Added verifiedPlayersPath to share the verification list between multiple local servers.

[1.0.2] - 2026-03-14

Fixed

  • Absolute Join Block: Implemented a Mixin on PlayerList#canPlayerLogin for absolute reliability. This blocks unverified players at the socket level, preventing world load and ensuring the kick message is always displayed (fixes "Connection reset").

[1.0.1] - 2026-03-14

Added

  • Dynamic /verify server selection from SERVER_LIST config.
  • Registration logging for slash commands.

[1.0.0] - 2026-03-14

Added

  • Initial release for NeoForge 1.21.1.
  • Bidirectional chat between Minecraft and Discord.
  • Join/Leave notifications.
  • Death messages relay.
  • Server start/stop notifications.
  • Automatic whitelist via Discord role.
  • Support for multi-server setups with per-channel routing.
  • /verify slash command for player validation.
  • Automatic nickname synchronization upon verification.

Fixed

  • Instant Slash Commands: Switched to Guild-level registration for /verify to bypass the 1-hour global propagation delay.
  • Verification Kick Logic: Moved verification check to PlayerNegotiationEvent and used event.getConnection().disconnect() to ensure the custom kick message is properly displayed instead of a "Connection reset" error.
  • Fat JAR Build: Replaced the problematic jarJar system with the Shadow Plugin to merge JDA and its dependencies flat into the mod JAR, bypassing JPMS class-loading isolation issues.
  • JPMS Conflicts: Implemented a comprehensive exclusion list (Kotlin, Gson, SLF4J, Netty, etc.) to prevent "split package" ResolutionExceptions when running alongside other mods.

For older changelog entries in French, see the repository history.