Tags
Creators
Details
All versions
4.1.0-fabric-1.21.11
Release
HomeGui 4.1.0 for Fabric 1.21.112 weeks ago 37
Compatibility
Minecraft: Java Edition
1.21.11
Platform
Fabric
Supported environments
Client-side
Required content
Changes
4.1.0
Changed
- New architecture. The mod is no longer one module.
coreholds the domain (parsing, validation, request state, storage),uiholds the interface kernel (layout, focus, states, icons, translations),mc-common/mc-modernhold the Minecraft bridge, and each published artifact is its own module.coreanduiare plain Java 17 with no Minecraft on the classpath, so 140 JUnit tests run without a client. - One screen instead of four. Homes, History, Stats and Settings are views in a single screen with a tab bar, rather than four separate screens opened from each other.
- Translations moved to Minecraft's own format. The 17 built-in locales are now
standard
assets/homegui/lang/*.jsonfiles instead of a Java map, so a resource pack can override any string, and every locale carries all 87 keys. - Icons are drawn, not typed. The fragile Unicode glyphs (including a surrogate pair medal) are replaced by 19 procedural 9×9 bitmaps rendered as fills.
- Artifact naming. Release files are now
homegui-{version}-{loader}-{minecraft}.jar, for examplehomegui-4.1.0-fabric-1.21.11.jar. - No sources JAR is produced. The release artifact is the single file a player installs.
Fixed
HomeGui could not understand thatwas parsed as a heading naming five homes ("HomeGui", "could", "not", "understand", "that"). A heading now requires a separator after the homes word.- EssentialsX's counted heading
Homes (3): base, farm, minewas read as a single home called "Homes" in a world called "3". A parenthesised number is a count, not a world name. - Prose following a heading was split on whitespace into one-word homes, so
Homes: safe, ok_name, two wordsproduced phantom homestwoandwords. The inline body now splits on punctuation only. - Replies spread over several chat messages were lost; only the first message was read. Parsing is now a session that accumulates lines until the reply is complete.
- Statistics were counted when
/homewas sent, so a refused or failed teleport still incremented the counters. They are now counted only after the player has actually moved at least 3 blocks within the confirmation window. - Destination coordinates were sampled 20 ticks after the command regardless of outcome. They are captured from the player's position at confirmation.
- A name containing a control character was silently trimmed into a different
name (
\u0000nulbecamenul). It is now rejected. - Server keys kept stray punctuation, so
../exa\u0000mple.netproduced the bucket..example.net. Repeated dots collapse and leading or trailing punctuation is dropped. - History ignored the pre-server-scoped bucket that favourites and use counts already merged, so a migrated 4.0.x install showed an empty History tab, and "clear history" would not have cleared those entries either.
- Arrow-key navigation stopped at the last row that happened to be on screen, so homes below the fold were unreachable by keyboard.
- Typing in the search field did not refilter the list until the interface was rebuilt for another reason.
- A settings change that could not be written to disk was accepted silently. A failed write is now reported in the interface and to the narrator.
compactModeandthemeIndexwere stored but changed nothing on screen.- Export and import results were discarded. Both now report what happened, including a missing export file.
clearHistory()ran without confirmation. Destructive actions now ask, and the confirmation can be turned off in Settings.- Buttons narrated only the generic default text. Every control now carries its own accessible name, which is also what the screen reader announces.
- The search field was recreated on every keystroke and lost focus.
- Panel widths were fixed at 320/280/310 pixels and clipped on small windows or high GUI scale. The layout is now derived from the window size.
Compatibility
- Built and validated for Minecraft 1.21.11 on Fabric (Java 21). This is the only target claimed in this release.
- Compiling against a Minecraft version is not the same as working in it. No
in-game run was possible in the build environment, so screen opening,
/homescapture and/homedispatch are unverified for every target, including this one. Seedocs/SMOKE_TESTS.mdfor the procedure anddocs/AUDIT.mdfor what is and is not claimed. - Minecraft 1.16.5 is not supported: it is Java 8 with pre-
GuiGraphicsrendering, which would be a second codebase rather than a third module.
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:AyBYdiRl:8TRDZqil"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:AyBYdiRl:8TRDZqil"
}

