Tags
Creators
Details
1.3.2
Compatibility
Changes
[CHANGELOG] Version: 1.3.2 (Forge)
Complete client/server architecture separation โ dedicated server compatibility finally achieved for Forge 1.20.1, eliminating all startup crashes while keeping every client feature intact.
Core Architecture & Server Safety:
-
Full Client/Server Decoupling โ Every screen, renderer, and input handler now strictly lives behind client-only boundaries. The server no longer attempts to load GUI classes, preventing the infamous Screen loading crash on startup.
-
Safe Screen Opener Proxy โ A dedicated client-side bridge now handles opening the book interface without ever exposing screen subclasses to common server code, completely removing BootstrapMethodError risks.
-
Clean Event Bus Registrations โ Removed all manual client-side registrations from the mod constructor and switched entirely to automatic EventBusSubscriber with explicit client-side distribution flags, ensuring projection and rendering hooks never load on dedicated servers.
-
DistExecutor-Free Item Logic โ Replaced ambiguous DistExecutor calls in book items with direct safe invocations to the client-only opener, guaranteeing zero classloading violations when the book is used on a server.
-
Persistent Multiplayer Sync โ Quest states, favorites, and network synchronization remain fully functional through the existing SimpleChannel pipeline, keeping multiplayer compatibility robust.
What This Means for Players & Server Owners:
โ Forge 1.20.1 servers no longer crash when Guide is installed โ the mod is now fully dedicated-server safe.
โ All client-side features (animated GIFs, 3D mobs, soundscapes, placement projector) continue to work flawlessly in singleplayer and for connected clients on multiplayer servers.
โ The mod can be safely added to any modpack without requiring server-side workarounds or removal of the JAR.
Optional dependencies
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:ubKIGRC6:WC8xGh3J"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:ubKIGRC6:WC8xGh3J"
}

