Links
Tags
Creators
Details
0.3.5+mc26.1
Compatibility
Required content
Changes
[0.3.5] — 2026-05-19
Hard block on merges that would silently produce broken output.
Added
OverlapValidator— pre-merge guard that probes each selected replay for itsClientboundSetTimePacketanchor, computes its server-gameTime interval ([start, start + totalTicks]), and checks every pair for non-empty intersection. If any pair is disjoint, the Merge button stays disabled and a localised tooltip explains why. Wired into bothMergeUi-classic(1.21.x) andMergeUi-modern(26.1+).multiview.button.merge_selected.no_overlapi18n key inen_us.jsonandfr_fr.json.
Fixed
- Validator transparently mounts
.flashbackzip files viaFileSystems.newFileSystem(...)instead of expecting a pre-extracted folder — matches the on-disk layout Flashback actually produces.
Why
A real user case surfaced the bug: someone ran a merge across two .flashback files recorded 11 days apart. The merge succeeded but produced visually broken output — entities vanished, others stuck with default rotations and no equipment. Root cause: server-side entity IDs are local to each recording client and there is no UUID-based matching for non-player entities, so any merge of non-overlapping POVs guarantees cross-source ID collisions. The fix is defensive: refuse upfront rather than emit silent garbage.
Internals
- Validation is memoised per selection (
Map<Set<Path>, Result>) so checkbox toggles stay responsive. - Returns
UNKNOWN(notNO_OVERLAP) when an anchor is missing or the file cannot be read — we never block what we cannot verify.
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:ja9dG9KW:t0Rb4R9j"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:ja9dG9KW:t0Rb4R9j"
}

