Tags
Creators
Details
Licensed MIT
Published 4 months ago
Updated 3 months ago
All versions
1.7.24
Release
Create-Aeronautics:Compatibility + Bug fixes 1.7.243 months ago 44
Uploaded by
Compatibility
Minecraft: Java Edition
1.21.1
Platform
NeoForge
Supported environments
Server-side
Client and server
Required content
Any compatible version
Changes
[1.7.24] - 2026-08-10
Bug 修复 / Bug Fixes
- SubLevelStorage storageCache 并发崩溃修复 / SubLevelStorage storageCache concurrent crash fix (Issue #20): 修复
SubLevelStorage.getRegionStorageFile中Long2ObjectLinkedOpenHashMap(storageCache)并发访问导致ArrayIndexOutOfBoundsException: Index -1 out of bounds for length N崩溃的问题。当 async-save 修复项启用时,attemptSaveSubLevel在异步线程执行访问 storageCache,若主线程同时通过getOrLoadHoldingChunk→attemptLoadSubLevel→getRegionStorageFile访问 storageCache,会导致 FastUtil 链表 map 的 prev/next 指针状态损坏。新增SubLevelStorageRegionCacheSyncMixin,用synchronized(map)保护getAndMoveToFirst、removeLast、putAndMoveToFirst三个链表修改操作,确保并发安全。/ FixedArrayIndexOutOfBoundsException: Index -1 out of bounds for length Ncrash caused by concurrent access toLong2ObjectLinkedOpenHashMap(storageCache) inSubLevelStorage.getRegionStorageFile. When async-save fix is enabled,attemptSaveSubLevelruns on async thread accessing storageCache; if main thread simultaneously accesses it viagetOrLoadHoldingChunk→attemptLoadSubLevel→getRegionStorageFile, the FastUtil linked-map's prev/next pointer state gets corrupted. AddedSubLevelStorageRegionCacheSyncMixinto protectgetAndMoveToFirst,removeLast,putAndMoveToFirstchain-modification operations withsynchronized(map), ensuring concurrent safety.
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:YS1hdEUp:C72hyy0M"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:YS1hdEUp:C72hyy0M"
}

