1.0.2+mc1.21.11
Compatibility
Changes
Changelog
All notable changes to the Acrophobia mod will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[1.0.2] - 2025-12-22
Fixed
- Fixed armor toughness detection failing on Minecraft 1.21.11 (was returning 0.0 instead of actual toughness values)
- Fixed armor toughness detection broken on Minecraft 1.20.1 after initial 1.21.11 fix attempt
- Fixed armor toughness detection broken on Minecraft 1.21.1 after initial 1.21.11 fix attempt
- Heavy armor detection (toughness ≥ 9) now works correctly on all supported versions
Added
- New
FearOfHeightsEffect_1_20_1class for MC 1.20.1-specific armor toughness detection - New
FearOfHeightsEffect_1_21_1class for MC 1.21.0-1.21.10 specific armor toughness detection - New
FearOfHeightsEffect_1_21_11class for MC 1.21.11+ specific armor toughness detection - New
StatusEffectHandlerutility class for improved effect management - New
VersionConstantsutility class for version-specific constants - Version-specific JAR outputs:
acrophobia-1.0.2+mc1.20.1.jar,acrophobia-1.0.2+mc1.21.1.jar,acrophobia-1.0.2+mc1.21.11.jar
Changed
- Replaced fragile reflection-based armor toughness detection with direct API access
- Each Minecraft version now has its own implementation class with proper attribute access:
- MC 1.20.1: Uses
EntityAttributes.GENERIC_ARMOR_TOUGHNESS - MC 1.21.0-1.21.10: Uses
EntityAttributes.GENERIC_ARMOR_TOUGHNESS - MC 1.21.11+: Uses
EntityAttributes.ARMOR_TOUGHNESS(renamed constant)
- MC 1.20.1: Uses
- Updated Minecraft version compatibility range:
>=1.20.0 <1.22.0(previously>=1.20.0 <1.21.0) - Improved code architecture with cleaner inheritance chain and better separation of concerns
- Enhanced build system with true multi-version support (separate version-specific classes per version)
- Updated author name in mod metadata: "MidnightSP"
Technical Details
- New Classes: 3 version-specific implementations + 2 utility classes
- Removed: Complex reflection-based fallback code from base class
- File Size: Varies by version (~300-400KB per version-specific JAR)
- Compilation: Each version compiles independently with its own Fabric Yarn version
- Version Detection: No runtime version checking needed - compile-time separation ensures correct APIs
Version Support
- MC 1.20.1: ✅ Fully supported and tested
- MC 1.21.0-1.21.10: ✅ Fully supported and tested
- MC 1.21.11+: ✅ Fully supported and tested
[1.0.1] - Previous Release
Features
- Initial multi-version support for Minecraft 1.20.x and 1.21.x
- Basic armor toughness detection (using reflection)
- Heavy armor detection feature (Level I→V jump after 10 seconds with armor > 20 OR toughness ≥ 9)
- Single unified JAR per version range (1.0.1-mc-1.20.x.jar, 1.0.1-mc-1.21.x.jar)
Known Issues
- MC 1.21.11 armor toughness detection broken (returns 0.0 instead of actual values)
- Relies on reflection which is fragile across Minecraft versions
Version Support
- MC 1.20.x: ✅ Working
- MC 1.21.x: ⚠️ Partially working
Version Support Summary
| Version | 1.20.1 | 1.21.1 | 1.21.11 |
|---|---|---|---|
| 1.0.1 | ✅ | ✅ | ❌ |
| 1.0.2 | ✅ | ✅ | ✅ |
Breaking Changes
None - Version 1.0.2 maintains full backward compatibility with all existing worlds and configurations.
Migration Guide
From 1.0.1 to 1.0.2:
- Download the version-specific JAR for your Minecraft version
- Use
acrophobia-1.0.2+mc1.20.1.jarfor MC 1.20.1 - Use
acrophobia-1.0.2+mc1.21.1.jarfor MC 1.21.0-1.21.10 - Use
acrophobia-1.0.2+mc1.21.11.jarfor MC 1.21.11+
- Use
- Remove old JAR file from mods folder
- Add new JAR to mods folder
- Launch game - no config changes needed, old worlds work as-is
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:QRJdQpSS:vCen1k3R"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:QRJdQpSS:vCen1k3R"
}

