Tags
Creators
Details
1.1.0
Compatibility
Required content
Changes
GPExpansion v1.1.0
Bug Fixes
Mailbox Creation with GP3D
Fixed mailbox creation failing silently with GP3D. The create1x1SubdivisionAt method was passing an incorrect argument count to GP3D's createClaim method (12 args instead of 13).
Root cause: GP3D added an is3D boolean parameter (13th param) to DataStore.createClaim(). GPExpansion was still using the 12-parameter version, causing the reflection-based method lookup to fail.
Fix: Updated GPBridge.create1x1SubdivisionAt() to:
- Pass
truefor theis3Dparameter (13th argument) - Look for the 13-parameter method signature instead of 12
Mailboxes now create successfully as 1x1x1 3D subdivisions with public container trust.
Buyable Mailbox Subdivision Creation Flow
Changed buyable mailbox subdivision creation from purchase-time to sign-placement-time.
Before: Subdivision was created when a player clicked to buy. This could fail if the area changed between listing and purchase (e.g., blocks placed, claim resized).
Now: Subdivision is created immediately when the owner places the [Mailbox] sign with a price. The purchase flow only transfers ownership from seller to buyer.
Benefits:
- Owner knows immediately if mailbox can't be created (area blocked, overlap, etc.)
- Buyer can't be charged and then fail to receive mailbox
- Area changes between listing and purchase don't break the sale
- Consistent with self-mailbox behavior
Pairing
This release should be paired with GriefPrevention3D v17.4.6.
Notes
- No configuration changes required
- Existing mailboxes are unaffected
- Non-GP3D servers continue to use 2D subdivision logic (unaffected)
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:7IRb19K2:blJbzLvT"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:7IRb19K2:blJbzLvT"
}

