Keep combat & pings ahead of chunk bursts.

A single universal .jar for Paper, Purpur, Folia, Velocity, Fabric, and NeoForge. Vanilla clients connect on port 25565 with nothing installed.

1 MB Burst Express P99 (rust-native) 100 us vs 44,390 us
TCP Loopback 1 MB Burst KA P50 0.82 ms vs 13.07 ms
Paper 26.3 Live Wire Savings 78.7% 0 disconnects

Why chunk bursts spike ping on TCP

Standard Minecraft servers push chunks, light updates, combat hits, and KeepAlive pings into one FIFO Netty queue and an uncapped OS socket send buffer.

Vanilla Netty FIFO Head-of-line blocked
Chunk 0..15 (512 KB) LightUpdate KeepAlive DamageEvent

KeepAlive and PvP packets sit behind hundreds of kilobytes of queued chunk bytes in user space and the kernel socket buffer.

Celeris Express + Kernel Clamp Bundle-safe preemption
KeepAlive DamageEvent ChunkBatchStart Chunk 0..N (32 KB slices)

Express traffic cuts ahead between chunk slices without splitting BundleDelimiter trains. Linux TCP_NOTSENT_LOWAT=16KB caps kernel buffer bloat.

Measured Benchmarks

Hover any bar, dot, or point for exact measurements parsed from docs/benchmarks/data/*.csv.

Where Vanilla TCP Matches Celeris

Packet scheduling cannot bend physics or fix an overloaded main thread. Here is what Celeris does not change.

Idle Connections

When no chunk burst is queued, TCP loopback KeepAlive P50 is 0.59 ms on Vanilla FIFO vs 0.72 ms on Celeris Rust. Empty pipes are already fast.

Geographic Fiber Distance

On roxaura.mcsh.gg (EU) from Morocco, base mcPing stays 136 ms. Celeris stops /tp chunk floods from inflating that to 400+ ms spikes.

Main-Thread TPS Lag

If entity AI or worldgen drops server TPS below 20, Netty transport tuning will not speed up tick computation.

Deploy & Developer Coordinates

Drop Celeris-0.1.0-beta.jar into plugins/ (Paper/Velocity) or mods/ (Fabric/NeoForge), or depend on it via GitHub Packages.

build.gradle.kts (GitHub Packages)
repositories {
    maven("https://maven.pkg.github.com/fy2ne/Celeris")
}

dependencies {
    compileOnly("dev.fy2ne:celeris:0.1.0-beta")
}
In-Game & Console Commands
/celeris stats       # Express P50/P95/P99 + wire saved %
/celeris bench 512 30
/celeris ping        # mcPing vs kernel TCP_INFO RTT
/celeris debug       # Netty pipeline + ViaVersion order