
Version Numbering Converter
Do you hate the new Apple-like version numbering system? Same! Do you like it? Don't care! Do you care about the version numbering and how to convert old versions to its new version or viceversa? This project is for you!
About this Mod
VNC (Version Numbering Converter)
Version Numbering Converter (VNC) is a Java 8 library for working with Minecraft versions across both numbering families:
- Classic Java-style versions such as
1.20.6and1.21.11 - Year-based drop versions such as
24.1,25.4, and26.1.1
The project is split so the common API can be used from any Java project without Bukkit on the classpath. Platform-specific runtime helpers live in separate modules and are selected through the bootstrap provider.
Modules
| Module | Artifact | Purpose |
|---|---|---|
bootstrap |
me.croabeast.vnc:VNC |
Final aggregate jar with VNC, core, and the provider implementations. |
core |
me.croabeast.vnc:core |
Common parser, provider contract, mapping tables, conversion schemes, protocol lookup, and generic runtime snapshots. |
bukkit |
me.croabeast.vnc:bukkit |
Internal Bukkit/Paper provider and ViaVersion-backed player protocol lookup. |
mod:fabric |
me.croabeast.vnc:fabric |
Fabric loader runtime version bridge. |
mod:quilt |
me.croabeast.vnc:quilt |
Quilt loader runtime version bridge. |
mod:forge |
me.croabeast.vnc:forge |
Forge runtime version bridge. |
mod:neoforge |
me.croabeast.vnc:neoforge |
NeoForge runtime version bridge compiled as Java 8 bytecode. |
mod:sponge |
me.croabeast.vnc:sponge |
Sponge runtime version bridge. |
mod:liteloader |
me.croabeast.vnc:liteloader |
Legacy LiteLoader bridge. |
proxy:bungee |
me.croabeast.vnc:bungee |
BungeeCord proxy version bridge. |
proxy:velocity |
me.croabeast.vnc:velocity |
Velocity proxy bridge for a supplied backend/support Minecraft version. |
Core API
MinecraftVersion classic = MinecraftVersion.parse("1.21.11");
MinecraftVersion drop = MinecraftVersion.parse("26.1");
classic.getVersion(); // "1.21.11"
classic.getProtocol(); // 774
classic.supportsHex(); // true
drop.getVersion(); // "26.1"
drop.getProtocol(); // 775
String dropName = VersionScheme.MOJANG.toDrop("1.20.3"); // "23.2"
String classicName = VersionScheme.MOJANG.toClassic("25.2.2"); // "1.21.8"
boolean modernRegistry = Versioning.isAtLeast(MinecraftVersion.parse("1.20.6"), "1.20.5");
int comparison = VNC.compare(MinecraftVersion.parse("26.1"), "1.21.11");
Platform Runtime API
Use bootstrap when you want VNC to detect the runtime provider:
VNCProvider provider = VNC.getProvider();
String platform = provider.getPlatform();
String classic = provider.getClassicVersion();
String drop = provider.getDropVersion();
int protocol = provider.getProtocol();
boolean modernRegistry = provider.isAtLeast("1.20.5");
VNC still exposes convenience methods for the detected provider:
MinecraftVersion server = VNC.SERVER_MINECRAFT_VERSION;
double legacy = VNC.SERVER_VERSION;
boolean modernRegistry = VNC.isAtLeast("1.20.5");
When the runtime may not have a supported provider, use the nullable accessor:
VNCProvider provider = VNC.getProviderOrNull();
if (provider != null && provider.isAtLeast("1.20.5")) {
// use modern behavior
}
Platform modules contain package-private provider implementations. Consumers should depend on bootstrap for runtime detection instead of calling loader-specific classes directly.
Velocity does not expose one global backend Minecraft version. Its provider is still detected from the Velocity API, but version methods need a minecraft.version system property.
Requirements
- Java 8 bytecode for every module
- Gradle 9.4.1 wrapper for local builds
- Optional platform APIs are
compileOnly; platform modules use direct APIs and guard runtime detection withThrowable/linkage protection - The NeoForge module targets NeoForge
21.1.230, compiles Maven-style withsource/target 1.8, and only resolves at runtime when Java21+and NeoForge are present
Build
./gradlew clean build
The final consumer jar is generated by the bootstrap module:
bootstrap/build/libs/VNC-${version}.jar
Maven repository publishing is handled only by .github/workflows/publish.yml.
Available Versions
How to Install Version Numbering Converter on Your Server
Order Server
Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).
Set bta-babric Loader
In the panel under "Egg", select the bta-babric loader and matching Minecraft version (26.2-snapshot-8).
Install Mod
Open the mod browser in the dashboard and search for "Version Numbering Converter". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.
Compatibility
Mod Loaders
Minecraft Versions
26.2-snapshot-8, 26.2-snapshot-7, 26.2-snapshot-6 (+886 more)
Server-side
~ OptionalRecommended RAM
4 GB(min. 3 GB)Frequently Asked Questions
Version Numbering Converter server crashes on startup – what to do?
Most common cause: wrong bta-babric version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (26.2-snapshot-8). You can switch loaders with one click in the panel.
Is Version Numbering Converter compatible with bta-babric and bukkit and bungeecord and fabric and folia and forge and liteloader and neoforge and nilloader and ornithe and paper and purpur and quilt and spigot and sponge and velocity and waterfall?
Version Numbering Converter officially supports bta-babric, bukkit, bungeecord, fabric, folia, forge, liteloader, neoforge, nilloader, ornithe, paper, purpur, quilt, spigot, sponge, velocity, waterfall for Minecraft 26.2-snapshot-8, 26.2-snapshot-7, 26.2-snapshot-6. Note: Forge and Fabric mods are NOT cross-compatible – pick one loader and stick with it. The Mado dashboard automatically detects incompatible loader combinations.
Server lagging with Version Numbering Converter – how to optimize performance?
Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if Version Numbering Converter consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.
Similar Mods
Rent Modded Server
Install Version Numbering Converter with just one click on your server.