Skip to content

Common errors

Diagnose and fix the most frequently reported plugin startup errors.

6 min read

RC-KEY-000 and RC-KEY-001 to RC-KEY-004

These codes appear in the server console on startup when no recording key is set, or the key cannot be read. [RC-KEY-000] means the key is missing. [RC-KEY-001] to [RC-KEY-004] mean it is malformed, incomplete or corrupt.

For a new install, open Downloads and enter a friendly server name. Copy the two-line config into plugins/ReplayCore/config.yml (or set REPLAYCORE_LICENSE_KEY and REPLAYCORE_SERVER_NAME). The key must start with rck_v1_ and sit on one line. Confirm server-name is present and non-blank. If you rotated the licence, every server must be updated with the new key.

If you recently purchased a subscription, allow a few minutes for the licence to activate. If the error persists, contact admin@forgevector.co.uk.

RC-KEY-401

The cloud rejected or revoked the key: the subscription has lapsed, or the key was rotated. Check Billing for subscription status, then open Downloads, enter a friendly server name, and copy the two-line config. After fixing the subscription or installing the new key, restart the server.

RC-LIMIT

Your plan covers a fixed number of server instances (Free 1, Starter 5, Pro 15, Enterprise unlimited). Starting a new distinct server beyond the allowance fails closed: ReplayCore logs one clear warning ([RC-LIMIT]) and records nothing, while the Minecraft server remains available.

To bring the extra server online, upgrade your plan or remove an unused server from the Servers page, then restart the affected server.

Staff seats are separate from instance limits: Starter includes 3 staff seats (then £2.00 per seat per month), Pro includes 5 (then £1.50 per seat per month) and Enterprise is unlimited. Seats are managed from Settings, then Team.

Recording is DISABLED. [RC-ID-409]

This line appears when two live Paper, Purpur, Folia or Spigot 1.8.8 processes share the same installation identity. That happens if you copy plugins/ReplayCore/ between servers, or clone a Pterodactyl or Docker volume that already contains ReplayCore's private files. Recording stays disabled on the colliding server. The Minecraft server stays up.

Stop the other copy, or on the new server delete the private files ReplayCore created in plugins/ReplayCore/ (keep the two-line config.yml with a distinct server-name), then restart so this install can register itself. Do not copy a populated plugin data folder onto a second live server.

[RC-CLAIM-GATE]

This is the current console code for an unclaimed connection. The startup and reminder line is identical each time:

ReplayCore is claim-blocked. This server connection is not approved (code ABC12345). Local capture stays on. Finished matches are held locally (not uploaded) until you approve it at Downloads: https://replaycore.com/en/dashboard/downloads. [RC-CLAIM-GATE]

/replaycore status always includes these two lines while unclaimed:

Approval code: ABC12345

Approve at Downloads: https://replaycore.com/en/dashboard/downloads

They sit under Connection: claim-blocked (waiting for owner approval). The held-match recovery line is omitted when the held count is zero. When one match is held:

1 finished match is held locally, waiting for owner approval (2 KiB). Open Downloads at https://replaycore.com/en/dashboard/downloads and approve the server (code ABC12345); ReplayCore will upload the held matches afterwards.

When three matches are held:

3 finished matches are held locally, waiting for owner approval (2 KiB). Open Downloads at https://replaycore.com/en/dashboard/downloads and approve the server (code ABC12345); ReplayCore will upload the held matches afterwards.

ABC12345 is a placeholder. The real short code is shown in that server's console and in /replaycore status. Copy the value from that install; do not use an example from documentation.

Unclaimed means an owner has not yet approved this server. The plugin can stay enabled, Test Connection can report an online check-in, and the Replays list can stay empty. Open the printed Downloads URL, match the short code, and approve the server. On ReplayCore cloud that URL is https://replaycore.com/en/dashboard/downloads. A self-hosted origin is kept and uses the same /en/dashboard/downloads path; a leading api. host is stripped. ReplayCore does not approve the connection automatically. Already-shipped plugins print a legacy alias for this same state; that older line is documented in the next section.

current console text for an unclaimed connection
ReplayCore is claim-blocked. This server connection is not approved (code ABC12345). Local capture stays on. Finished matches are held locally (not uploaded) until you approve it at Downloads: https://replaycore.com/en/dashboard/downloads. [RC-CLAIM-GATE]

[RC-CONFIG-CLAIM]

This is the legacy alias emitted by already-shipped plugins. It is the same unclaimed state as [RC-CLAIM-GATE]. The exact console line is:

ReplayCore is recording with preserved local configuration while this existing server connection awaits owner approval in the Dashboard (code ABC12345). [RC-CONFIG-CLAIM]

ABC12345 is a placeholder. The real short code is shown in that server's console and in /replaycore status.

Open the printed Downloads URL, match the short code, and approve the server. On ReplayCore cloud that URL is https://replaycore.com/en/dashboard/downloads. A self-hosted origin is kept and uses the same /en/dashboard/downloads path. ReplayCore does not approve the connection automatically.

legacy console text for an unclaimed connection
ReplayCore is recording with preserved local configuration while this existing server connection awaits owner approval in the Dashboard (code ABC12345). [RC-CONFIG-CLAIM]

Uploads failing or stalling

If replays stop appearing in the panel, the server usually cannot reach the ReplayCore cloud. Verify that your host allows outbound HTTPS connections to api.replaycore.com on port 443, and check the status page for any ongoing incidents.

Recordings are written to local .replaycore archives first, so nothing is lost during an outage: uploads retry automatically and resume when connectivity returns.

ReplayCore is dependency-blocked. [RC-DEP-001]

This line repeats on Paper, Purpur and Folia when official PacketEvents 2.13.0 or newer is missing:

ReplayCore is dependency-blocked. PacketEvents 2.13.0 or newer is missing, so nothing is being recorded. Install PacketEvents from https://modrinth.com/plugin/packetevents and restart. [RC-DEP-001]

/replaycore status then reports:

Recording: stopped (dependency-blocked)

Dependency: PacketEvents 2.13.0 or newer is missing. [RC-DEP-001]

Recording is ENABLED is not printed in that state. Install PacketEvents from https://modrinth.com/plugin/packetevents and restart. Spigot 1.8.8 does not need PacketEvents and never prints [RC-DEP-001].

ReplayCore is dependency-blocked. [RC-PACKETEVENTS-003]

This line repeats on Paper, Purpur and Folia when PacketEvents is installed but too old to use:

ReplayCore is dependency-blocked. PacketEvents {installed} is too old (need {required} or newer), so nothing is being recorded. Install PacketEvents from https://modrinth.com/plugin/packetevents and restart. [RC-PACKETEVENTS-003]

/replaycore status then reports:

Recording: stopped (dependency-blocked)

Dependency: PacketEvents {installed} is too old (need {required} or newer). [RC-PACKETEVENTS-003]

{installed} and {required} are filled with the versions printed by that server. Replace the jar with 2.13.0 or newer and restart. Spigot 1.8.8 does not need PacketEvents.

ReplayCore is dependency-blocked. [RC-PACKETEVENTS-002]

This line repeats on Paper, Purpur and Folia when PacketEvents is installed but not ready:

ReplayCore is dependency-blocked. PacketEvents is installed but not ready (API not initialised or mapping warm failed), so nothing is being recorded. Reinstall PacketEvents 2.13.0+ from https://modrinth.com/plugin/packetevents and restart. [RC-PACKETEVENTS-002]

/replaycore status then reports:

Recording: stopped (dependency-blocked)

Dependency: PacketEvents is installed but not ready. [RC-PACKETEVENTS-002]

Reinstall PacketEvents 2.13.0+ from https://modrinth.com/plugin/packetevents and restart. Spigot 1.8.8 does not need PacketEvents.

ReplayCore: cloud storage is full

This line repeats on the Paper, Purpur, Folia or Spigot 1.8.8 console when the account's cloud storage is full. Free includes 1 GB; that is a hard cap. Recording has stopped. Delete replays in the dashboard or upgrade your plan, then run /replaycore forcestart. Deleting or upgrading alone does not resume capture until that command is run.

/replaycore forcestop pauses capture

/replaycore forcestop (permission replaycore.admin.forcestop) pauses recording on this server only. Capture stops on the next tick. The current archive is left intact; the command does not seal or upload it. There is no command that seals the current recording immediately. Restart the server to seal. Run /replaycore forcestart to resume capture, still subject to the cloud kill-switch and storage headroom.

Plugin not loading: ClassNotFoundException

A ClassNotFoundException or NoClassDefFoundError on start usually means the JAR is incomplete or was not downloaded fully: an interrupted download can leave a truncated file that fails to load.

Delete the ReplayCore JAR from your plugins directory, download a fresh copy from the Downloads page of your dashboard, drop it back into plugins/, and restart the server.

On Paper, Purpur and Folia, if the stack names a PacketEvents class, install official PacketEvents 2.13.0+ in `plugins/` and restart. A missing PacketEvents JAR is a common cause of those lines. Recording stays idle until PacketEvents is present. The missing-jar console code on that lane is [RC-DEP-001], not [RC-PACKETEVENTS-001]. Spigot 1.8.8 does not need this step and never prints [RC-DEP-001].

If the error mentions a server API class rather than a ReplayCore class, check that your server is a supported platform and version (see the System requirements article); the recording engine is selected at runtime to match your server.

Recording is DISABLED. [RC-SPIGOT-001]

This line appears on a 1.13 or newer server that is plain Spigot, not Paper. ReplayCore's modern capture lane uses Paper-only APIs, so the plugin disables itself and records nothing. The Minecraft server stays up. Install Paper, Purpur, Folia, or another Paper fork, then restart. Spigot is supported only on 1.8.8.