Files
Jakob Schulz f373e3d6d9
Deploy / Build (push) Skipped
Pull Request Build / Build (pull_request) Failing after 17s
Add ViaAxiom
2026-11-01 15:30:21 +01:00

1.7 KiB

ViaAxiom

Translates Axiom traffic between Axiom and Minecraft versions. The Velocity plugin does this on the proxy, so players only need Axiom. The Fabric client mod does the same on the client, for servers you don't run. Never use both on one connection, the IDs would be translated twice.

Velocity plugin

Needs Java 21 and ViaVersion on the proxy. Add ViaBackwards if clients can be older than a backend. Backends run AxiomPaper as usual, and it still decides permissions.

Build with JDK 21 or newer and put the jar in plugins/:

./gradlew :velocity:shadowJar

The jar ends up in velocity/build/libs. It bundles Zstd for Linux x64, Linux arm64 and Windows x64.

Client Backend Result
API 10 API 9 Bridged, with block IDs translated if the Minecraft versions differ
API 10 API 10, other Minecraft version Block IDs translated
API 10 API 10, same Minecraft version Passed through
API 9 any Passed through, not translated

Fabric mod

Needs ViaFabricPlus. Build with JDK 25, older JDKs skip this module:

./gradlew :fabric:build

Layout

core holds the protocol codecs and translation. velocity and fabric are thin adapters around it. Protocol notes are in docs/protocol.md.

License

MIT. See NOTICE.txt for credits and bundled libraries.