Skip to content

How the JAR works

Why ReplayCore is one self-contained JAR and how it detects your platform on start.

6 min read

ReplayCoreLoader

New installs use ReplayCoreLoader from Downloads. It installs the matching recorder and, on modern servers, PacketEvents for you. The rest of this page describes the classic ReplayCore JAR.

One JAR for every platform

ReplayCore uses one recorder JAR across supported platforms. The file is named `ReplayCore-<version>.jar`. It selects the matching recorder at startup. Modern servers still need the separate official PacketEvents plugin listed here.

On supported 1.13+ versions through 26.2, official PacketEvents 2.13.0+ must already be in the server plugins folder. Servers on 26.3 need 2.14.0+. Recording stays idle until the required version is present and ready. Paper and Spigot 1.8.8–1.12.2 do not need PacketEvents. Download PacketEvents from Modrinth (https://modrinth.com/plugin/packetevents) or GitHub releases (https://github.com/retrooper/packetevents/releases).

The ReplayCore JAR bundles the full recording engine. There is no separate ReplayCore implementation file to fetch and no plugins/ReplayCore/lib/ directory to manage.

How platform detection works

On first start the plugin inspects the running server to determine the platform (Paper, Purpur, Folia, Leaf or Spigot) and Minecraft version. It then activates the bundled recording engine that matches your environment, the legacy engine for 1.8.8 or the modern engine for 1.13 and above, all from inside the one JAR.

No network call is needed to load the bundled classes. Before recording starts, ReplayCore authenticates, verifies or establishes the private server binding and retrieves the managed configuration described in the Licence activation article.

Offline and air-gapped servers

Because the recording engine ships inside the JAR, a server with no internet access at boot can still load the plugin classes. A fresh install cannot authenticate or retrieve its managed policy, so ReplayCore fails closed and records nothing while the Minecraft server keeps running. A previously verified install may continue only while its matching authenticated grace and last-known-good state remain eligible.

If the JAR itself fails to load (for example after an interrupted download leaves a truncated file), delete it from plugins/, download a fresh copy from the Downloads page of your dashboard, and restart.