All versions
1.1.2
Release
MtnEnderFix 1.1.2last week 14
Compatibility
Minecraft: Java Edition
26.2
1.20.x
Platforms
Paper
Purpur
Spigot
Changes
MtnEnderFix v1.1.2 — Performance Overhaul & Critical Bug Fixes
A major update focusing on zero-lag performance, resolving false positives on wall decorations, preventing pearl loss, and introducing full dual-language support (English & Spanish).
Bug Fixes & False Positive Corrections
- Wall Decoration False Positives Fixed: Fixed an issue where wall torches, redstone torches, wall signs, wall banners, player heads/skulls, and coral wall fans were falsely identified as solid walls due to a broad name check. Wall glitch detection now strictly targets actual wall blocks (
*_WALL). - Point-Blank Pearl Refund: Fixed an issue where cancelled point-blank throws permanently consumed the player's Ender Pearl even when
refund-pearl: truewas enabled. Cancelled throws now properly refund the item to the player's inventory (or drop it at their feet if full). - Head-Level Suffocation & Clipping Prevention:
hasAdjacentWallOverlappreviously only checked feet-level blocks. It now validates both feet (Y) and head (Y+1) heights across all 8 cardinal and diagonal directions, completely preventing head-suffocation in stairs, overhangs, and diagonal corners. - Long-Distance / TP Desync Protection (>120 blocks): If a player throws a pearl and is teleported far away before it lands (e.g., via
/rtp,/tpa,/home), the plugin now verifies whether the pearl landing spot is safe. If unsafe or inside a wall, the teleport is safely cancelled with a refund, preventing players from suffocating or glitching into claims.
Performance & Server TPS Optimizations
- Zero Synchronous Chunk Loading: All block lookups and path raytraces now perform bitwise chunk loaded checks (
isChunkLoaded) before querying blocks, ensuring the main thread never stalls waiting for chunk generation or loading. - Massive Garbage Collector (Heap) Reduction:
- Replaced repeated
.clone().subtract(...)and.clone().multiply(...)chains inside backtracking loops with primitivedoublecoordinate calculations. - Replaced
to.clone().add(0, 1, 0).getBlock()with direct relative block fetching (feetBlock.getRelative(BlockFace.UP)). - Converted adjacent face arrays into a cached
static final BlockFace[]constant, eliminating array re-allocation on every collision.
- Replaced repeated
- Faster Math: Replaced
Math.pow(dx, 2) + Math.pow(dz, 2)with direct primitive multiplicationdx * dx + dz * dz. - Raytrace Distance Capping: Capped
isPathClearchecks to a maximum of 6 blocks, discarding unnecessary world raytracing calculations.
Dual-Language & Clean-up
- English & Spanish Localization: Full native language files (
en.ymlandes.yml). - Empty Prefix Bug Fixed: Resolved an issue where disabled or empty messages still displayed the plugin prefix in chat.
- Command Help Localization: Added
{label}placeholder support and localized help strings for/mtnenderfix. - Memory Leak Clean-up: Properly invalidated static instance references in
onDisable().
Compatibility
- Minecraft Versions: 1.20 - 1.20.4+
- Server Software: Paper, Purpur, Pufferfish, Spigot
- Java: 17+
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:jAA84ahd:2sDWCiIS"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:jAA84ahd:2sDWCiIS"
}

