2.0.1
Compatibility
Changes
🌍 Polish for the multi-language release
Six fixes from feedback after the 2.0 launch, plus the /cg lang command itself now speaks all 7 languages.
Fixes
- Diacritic-insensitive answers - Answer "București" with or without the ț, "José" with or without the é, "München" with or without the ü. The plugin normalizes accents so players on any keyboard layout can win. This was a big problem for non-English servers in 2.0; it's gone now.
- GUI no longer lag-spikes - Opening the leaderboard GUI used to hit the database synchronously every time. Now it uses the cached top (already updated off-thread by the PAPI cache), so opening GUI on a busy server is instant.
- Reward command errors don't tank the chain - A single broken reward command (typo in config, plugin not loaded, etc.) used to throw an exception and skip the rest of the rewards for that win. Now each command is isolated with a try/catch and a clear warning in console.
/cg langstops the active game - Switching language mid-game used to leave a question generated in the old language with an answer in the new one. Now the active question is cancelled before the switch./cg langnow speaks the active language - Ironically, the command that changes language was the only one with hardcoded English messages. Fixed in all 7 bundled languages (with skeleton PL/DE/FR falling back to English as expected).- "No data yet" leaderboard message is now translatable - One last hardcoded English string in the GUI is now in
gui.leaderboard-emptyacross all language files.
Small improvements
/cg langnow appears in the help menu (was implemented but not advertised in 2.0)- Internal comments cleaned up - no more stale references to the old
messages.ymlfile
No config changes needed. Drop in the new jar and reload (or restart).
If you have custom translated lang/<code>.yml files, the new keys (command.lang-status, command.lang-reloaded, command.lang-switched, command.lang-not-found, gui.leaderboard-empty) fall back to English until you translate them - no breakage.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:4MfyyqKa:sJs8NXA8"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:4MfyyqKa:sJs8NXA8"
}

