Links
Tags
Creators
Details
Licensed LGPL-3.0-only
Published 3 months ago
Updated 2 weeks ago
All versions
2.2.1
Release
ChatSphere 2.2.1-1.20.12 months ago 17
Compatibility
Minecraft: Java Edition
1.20.1
Platform
Fabric
Supported environments
Client-side
Server-side
Client and server
Required content
Any compatible version
Changes
2.2.1
Added
- Multi-platform build (Architectury): Fabric support alongside NeoForge for Minecraft 1.21.1, plus a Fabric 1.20.1 port
- Bare URLs in messages are auto-linkified and clickable, subject to the URL whitelist config
- Quoting an item-show message now displays the item name instead of the raw slot placeholder
- Server config:
voiceStorageMax(voice retention cap, 16–10000) - Voice history re-delivery: players who join receive recent voice messages from their conversations
Changed
- Voice playback resolution is event-driven (audio arrival registers the playback directly) with a failure short-circuit — no per-frame reflection in the render loop
- Voice uploads deduplicated server-side: multiple recipients uploading the same message are recorded and relayed once
- Config screens debounce per-keystroke saves / config-update packets
- Bundled presets carry a version marker; stale or corrupt presets are reinstalled from the jar automatically
- Date formatters precompiled (removes per-frame allocations)
- Hardcoded UI strings moved to lang keys
Fixed
- Server security: voice packets validated before history writes, private-channel join requires membership/invite, forged command-message UUIDs dropped, config-update ints range-checked, item NBT capped on the server and parsed with a size-limited
NbtAccounteron the client - Corrupted config JSON no longer crashes the game (backed up as
.corrupt, defaults used) - Server data files (channels/messages/voice index) written atomically (tmp + atomic move)
- Lock-order inversion between message history and channel state removed
- Theme
preset-stream.cthemehad invalid 10-digit hex values in its light block, rejecting the whole theme - Malformed voice frames rejected (frame length validated, no OOM)
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:rbuDt8Bs:PoDBbcLz"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:rbuDt8Bs:PoDBbcLz"
}

