1.0.1-Fabric-1.21.1
Compatibility
Changes
Major Features:
Whitelist integration: the mod now reads whitelist.json and automatically adjusts requiredPlayers to the number of whitelisted players
Fully configurable UI: waiting text, color, size and positions of all elements can now be edited via commands
Separate counter colors: the "current" and "required" numbers in the player counter (4/10) now have independent configurable colors
Missing names display: when players are missing to start, the mod shows a list of missing names (configurable how many to show)
Commands Added:
/waitingscreen whitelistmode <true|false> — Enable/disable whitelist mode
/waitingscreen missingnames showatmost <n> — Limit of how many missing players there must be to show names
/waitingscreen missingnames max <n> — Maximum names to display on screen
/waitingscreen ui text <value> — Change the main text
/waitingscreen ui color <hex> — Change the main text color
/waitingscreen ui scale <float> — Change the main text size
/waitingscreen ui pos waitingtext <x> <y> — Position of the main text
/waitingscreen ui pos playercount <x> <y> — Position of the player counter
/waitingscreen ui pos missing <x> <y> — Position of the "missing..." text
/waitingscreen ui pos esc <x> <y> — Position of the ESC hint
/waitingscreen playercountcolor <current_hex> <required_hex> — Separate colors for the counter
Improvements & Fixes:
Thread safety: added volatile to shared fields and ConcurrentHashMap for collections accessed by multiple threads
Improved null checks: reinforced server/player null validations before sending packets
Language/Idiom fixes: improvements to strings and texts in commands
No Telemetry: removed MC telemetry dependency (removing TelemetryInfoScreen from allowed screens)
Death screen validation fix: fixed a case where the validation packet was sent when the player was on the death screen
Render color fix: fixed a bug where text color wasn't applied correctly (detected that parseColor with short inputs like 0x0000 gave alpha 0 → invisible)
Technical Changes:
Added UiConfigPayload to synchronize all visual config (text, color, scale, positions)
Added MissingNamesPayload to send the list of missing names to the client
Added getters in Waitingscreen.java and WaitingscreenClient.java for all UI fields
Refactored updatePlayerCount() to calculate whitelist differences and broadcast missing names only when they change
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:fsx1FjJG:mch5JkgB"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:fsx1FjJG:mch5JkgB"
}

