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.1.0.jar

  • R
  • Apr 11, 2026
  • 15.23 MB
  • 10
  • 1.21.1
  • NeoForge

File Name

discordbridge-1.1.0.jar

Supported Versions

  • 1.21.1

Curse Maven Snippet

NeoForge

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

Learn more about Curse Maven

[1.1.0] - 2026-04-11

Added

  • HikariCP Connection Pool — Replaced the single shared JDBC connection with a proper HikariCP thread-safe connection pool. Configurable pool size, timeouts, and lifetime. Zero resource leaks guaranteed via try-with-resources on every query.
  • Auto-Create Tables — Database tables (verified_players, banned_players, staff_players, active_sessions) are automatically created on first startup. No manual SQL required.
  • JSON File Fallback — When database is disabled (enableDatabase = false), all storage operates via thread-safe JSON files with atomic writes. Both modes are fully functional.
  • JSON Error Recovery — Corrupt JSON files are automatically detected, backed up (timestamped .bak), and reset. No crash, no data loss, clear error logs.
  • Re-Verification System — Players can re-verify with a different MC username. The old username is automatically removed. One Discord ID = one MC username at all times.
  • i18n System (FR/EN) — All user-facing messages available in French and English. Language configurable via language.language = "fr" or "en" in config.
  • LuckPerms Integration — Optional runtime detection of LuckPerms. Permission nodes: discordbridge.admin, discordbridge.ban, discordbridge.verify, discordbridge.staff, discordbridge.status, discordbridge.reload, discordbridge.debug. Add/remove groups on staff promotion/demotion.
  • Discord Guild Ban Sync — When banning a player in-game, their Discord account is also banned from the guild (if enableDiscordGuildBan = true and their Discord ID is known via verification). Works both ways: MC ban -> Discord ban, Discord ban -> MC ban.
  • New Commands:
    • /discordbridge servers — Show all connected servers with player counts (queries active sessions across network)
    • /discordbridge debug — Show debug info: Java version, memory, threads, JDA status, pool stats
    • /discordbridge test — Full diagnostic: tests DB connection, Discord bot, chat/verify channels, LuckPerms
    • /discordbridge test db — Test database connection with latency
    • /discordbridge test discord — Test Discord bot with ping and guild count
  • Session Kick Message Config — New sessions.kickMessage with {server} variable.
  • Verification Cache Config — Configurable TTL (verification.cacheSeconds).
  • Session Timeout Config — Configurable timeout (sessions.timeoutMinutes) and cache refresh interval.
  • HikariCP Pool Config — Full control over pool size, connection timeout, idle timeout, max lifetime.
  • Thread Pool Config — Configurable async DB thread pool and Discord command thread pool sizes.
  • Debug Modeadvanced.debugMode toggle for verbose logging.
  • Pool Statistics/discordbridge status shows HikariCP pool stats.
  • Ban Cleanup Interval — Configurable auto-cleanup for expired temp bans.
  • Discord Guild Ban Configbans_discord.enableDiscordGuildBan to enable cross-platform bans.

Fixed

  • CRITICAL: Thread-Safe Database — Replaced single java.sql.Connection (non thread-safe, shared across 10+ threads) with HikariCP pool. Root cause of random crashes and connection losses.
  • CRITICAL: Resource Leaks — All PreparedStatement and ResultSet objects properly closed via try-with-resources. Previously leaked on every query() call.
  • CRITICAL: Server Startup Freezejda.awaitReady() moved to async CompletableFuture. Server starts instantly.
  • CRITICAL: ENABLE_DATABASE=false NPE — JSON fallback mode fully implemented.
  • Bot Reload Brokenshutdown() properly resets initialized flag (AtomicBoolean), /discordbridge reload works.
  • Discord Permission Logic — OR instead of AND for permission checks. Moderators no longer locked out.
  • Verification Duplicates — Re-verification overwrites old MC username. One Discord user = one MC account.
  • Temp-Ban Race Condition — Single atomic INSERT with expiration instead of two separate queries.
  • Active Sessions Unreliable — Thread-safe CAS refresh, per-server cleanup on shutdown.
  • Chat Relay Silent Failures — Error callbacks on all Discord message sends.
  • PlayerListMixin Typo — Fixed French error message.
  • JSON Corruption — Atomic file writes (temp + rename). On parse error: backup + reset.

Changed

  • Config Path — Moved to config/discordbridge/discordbridge-server.toml.
  • /verify Command — Removed server selection. Just /verify pseudo:<name>, verified globally.
  • All Messages — i18n via Messages.java (FR/EN). No more hardcoded French strings.
  • All Storage Classes — Dual-mode: DB (HikariCP) or JSON (thread-safe atomic writes).
  • BotManager — Async init, proper lifecycle, guild ban/unban methods.
  • DiscordEventHandler — Configurable thread pool, i18n messages, OR permission logic.

Performance

  • Zero Server Tick Impact — All DB/Discord operations off main thread.
  • No Memory Leaks — All JDBC resources closed. HikariCP manages pool lifecycle.
  • Optimized Cache — ConcurrentHashMap with configurable TTL, ~90% fewer DB queries on login.
  • Atomic JSON Writes — Temp file + atomic rename prevents corruption on crash.
  • Configurable Thread Pools — Tune async DB and Discord pools for your load.

Ajouts

  • Pool HikariCP — Remplacement de la connexion unique par un pool thread-safe. Zero fuite de ressources.
  • Creation Auto Tables — Les tables DB sont creees automatiquement au demarrage.
  • Fallback JSON — Stockage fichiers JSON thread-safe quand la DB est desactivee.
  • Recuperation JSON — Detection des fichiers corrompus, backup automatique, pas de crash.
  • Systeme i18n (FR/EN) — Tous les messages en francais et anglais, configurable.
  • Integration LuckPerms — Detection automatique, permissions: discordbridge.admin, .ban, .verify, .staff, .status, .reload, .debug.
  • Sync Ban Discord — Ban en jeu = ban sur le serveur Discord (si active).
  • Nouvelles Commandes/discordbridge servers, debug, test, test db, test discord.
  • Re-Verification — Les joueurs peuvent changer de pseudo MC.

Correctifs

  • CRITIQUE: Base de Donnees Thread-Safe — Pool HikariCP au lieu d'une connexion partagee.
  • CRITIQUE: Fuites de Ressources — try-with-resources sur tous les PreparedStatement/ResultSet.
  • CRITIQUE: Freeze au Demarrage — Init bot async via CompletableFuture.
  • CRITIQUE: NPE sans DB — Mode JSON completement fonctionnel.
  • Reload Bot — Flag initialized correctement reinitialise.
  • Permissions Discord — Logique OR au lieu de AND.
  • Duplications Verify — Ecrasement correct de l'ancien pseudo.
  • Ban Temporaire Atomique — Une seule requete SQL.
  • Sessions Fiables — Cache CAS thread-safe, nettoyage par serveur.
  • Corruption JSON — Ecriture atomique + backup des fichiers corrompus.

Modifications

  • Config — Deplace vers config/discordbridge/discordbridge-server.toml.
  • /verify — Plus de selection serveur, verification globale.
  • Messages — Systeme i18n FR/EN complet.
  • Stockage — Mode dual DB/JSON dans toutes les classes.

Performance

  • Zero Impact Ticks — Toutes les operations DB/Discord hors thread principal.
  • Zero Fuites — Toutes les ressources JDBC fermees correctement.
  • Cache Optimise — ~90% de requetes DB en moins sur les connexions.
  • Ecriture JSON Atomique — Pas de corruption en cas de crash.