1.4.7
Compatibility
Changes
CamoWarfare 1.4.7 This stability release focuses on multiplayer and dedicated-server loading safety. It separates client-only GUI/rendering mixins from common loading and makes optional Copycats+ compatibility quieter and safer when the dependency is not installed.
Changes
- Split creative-inventory GUI mixins into a dedicated client-only mixin config.
- Split optional Copycats+ rendering mixins into a dedicated client-only mixin config.
- Added a Copycats+ mixin plugin that checks both client side and target class availability before applying compatibility mixins.
- Moved the creative-tab divider renderer into the client package to keep common/server code free of direct client GUI imports.
- Changed Copycats+ camouflage render state from a shared global boolean to thread-local state.
- Added explicit Mixin minVersion metadata to the CamoWarfare mixin configs. Notes
- This version is recommended for servers and LAN multiplayer.
- No gameplay balance or content changes are included.
- This should address server logs that mention loading AbstractContainerScreen, CreativeModeInventoryScreen, or Copycats+ model classes on a dedicated server.
- Minecraft 1.21.1 and NeoForge 21.1.227 are targeted.
QAQ Sorry for the multiplayer issues this caused. This version fixes client-side rendering code being loaded on servers. If you still run into startup, multiplayer, or compatibility problems, please open an issue on GitHub with your crash report, latest.log, or error log so I can investigate and fix it faster.
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:m0bvDj9D:qOLBrpCL"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:m0bvDj9D:qOLBrpCL"
}

