Tags
Creators
Details
1.1.1
Compatibility
Required content
Changes
MagicCoins – Version 1.1.1
Overview
Version 1.1.1 of MagicCoins focuses on structural refactoring, improved server–client configuration synchronization, and simplification of networking and GUI button handling. There are no user-facing gameplay changes, but the codebase is now more organized, extensible, and reliable.
Main Changes
🌐 Networking and Synchronization
-
Introduced MagicNetwork, a dedicated helper to centralize and standardize network registration.
-
Migrated all message/packet registrations to use
MagicNetwork. -
Added the SyncServerConfigS2C payload for synchronizing server configuration to clients.
-
Introduced:
ServerConfigSyncServerConfigSyncEvents
-
Server configuration is now synchronized:
- When the client loads
- When a player logs in
-
Added ClientSyncedConfig to store synchronized values on the client side.
-
ServerConfignow automatically broadcasts configuration changes. -
MagicCoinsApinow reads client-synced values on the client, avoiding invalid server-side config access.
🧩 GUI and Button Refactoring
-
Added the MagicCoinsButtonAction enum:
- Centralizes packet creation and sending logic
- Explicitly defines reusable button actions
-
Updated
CustomButtonto support:- Left-click actions
- Right-click actions
-
Simplified
HandlerButton:- Now only delegates execution to
MagicCoinsButtonAction
- Now only delegates execution to
-
Removed redundant handlers and duplicated logic.
🔄 Network Registration
- Replaced individual packet registration calls with unified registration via MagicNetwork.
- Improves readability, maintainability, and reduces the risk of inconsistencies.
📦 Dependencies
-
Updated sg_economy dependency:
- Version bump in
build.gradlefiles - Related import and formatting updates
- Version bump in
Impact for Developers
- More modular and maintainable codebase.
- Single, consistent pattern for network communication.
- Foundation prepared for future client/server synchronization features.
- More flexible button system for extending GUI actions.
Compatibility
- Compatible with existing saves.
- No manual migration steps required.
Notes
This release is primarily technical and refactoring-focused. It is recommended for developers planning to extend the mod or maintain custom forks.
Version: 1.1.1
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:qgQomU7L:tEQQgtl8"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:qgQomU7L:tEQQgtl8"
}

