Tags
Creators
Details
Licensed GPL-3.0-only
Published 3 years ago
Updated yesterday
All versions
2.0-snapshot.2
Beta
RailOptimization 2.0-snapshot 22 weeks ago 490
Compatibility
Minecraft: Java Edition
26.2
26.1.x
Platforms
Fabric
Quilt
Supported environments
Server-side
Singleplayer
Required content
Any compatible version
Changes
RailOptimization v2.0-snapshot 2
This snapshot hardens the new v2.0 rail update engine, improving cache performance and vanilla parity for dynamic redstone sources and concurrent dimension ticking.
🚀 Performance
- Local release-build benchmarks measured state-changing updates at 7.56x faster on straight lines and 9.90x faster on mixed slopes than vanilla
- In the same release build, unchanged updates measured 5.41x faster when unpowered, 3.45x faster when directly powered, and 32.36x faster at distance 8 from an indirect power source
- Reworked rail-search hashing to mix all
BlockPoscoordinate bits, eliminating direction-dependent collisions on flat rail lines - At
powerLimit=64, state-changing updates measured 176-191 microseconds per operation on straight lines across both axes and 241 microseconds per operation on mixed slopes - Connected straight and sloped paths are now collected once during depowering instead of being scanned repeatedly
- Cached powered-rail shape and power metadata and streamlined update-memo probing
- Fixed search generations periodically losing reusable cached results
- Benchmark results vary with hardware and server load
🛠 Improvements
- Isolated update memos by world and thread, with atomic invalidation for safer operation when dimensions tick concurrently
- Split rail traversal, lane updates, signal checks, and notifications into focused components without changing update behavior
🐞 Fixes
- Fixed memoized unchanged updates potentially ignoring signal changes from trapped chests, jukeboxes, and other block-entity, analog-output, or direct-signal sources
- Fixed memo entries being reused in another world at the same coordinates
- Fixed stale or duplicate update-memo entries after block changes
- Fixed packed search-cache metadata and generation edge cases that could disable reuse or misread cached state
⚠️ Snapshot Notes
- This is a snapshot intended for testing before the final v2.0 release
- Snapshot builds are only provided for selected Minecraft versions; all supported versions will be updated with the final release
- There are no intentional gameplay behavior changes; the fixes restore vanilla parity in edge cases
Supplementary resources
| File | Type | Size | |
|---|---|---|---|
| railoptimization-2.0-snapshot.2+mc26.1.2-fabric-sources.jar | Sources jar | 71.05 KiB |
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:QSvN5pBU:yC5Q3q75"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:QSvN5pBU:yC5Q3q75"
}

