Community listing page, reviews here may not be monitored by the author.
Remnant: OPC
No reviews yet
A Minecraft library for Fabric and NeoForge that keeps registered player data accessible while players are offline.
Community voices
Reviews
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
Compatibility
Supported Environments
Runs entirely on the server. Also works in singleplayer.
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
About
Description

Remnant
Remnant lets mods read registered player data after a player logs out. It is a server-side library for Minecraft 1.21.1 on Fabric and NeoForge, continuing Offline Player Cache (OPC).
An integrating mod registers a value, a Mojang Codec, and a serializer for reading that value from a live player. On disconnect, Remnant snapshots every registered value into world SavedData. When the player comes back, the stale offline snapshot is removed and reads return to the live player.
Use it for leaderboards, statistics, progression, and server tools that need player data while someone is offline. Remnant stores the values registered by integrating mods.
Requirements
- Fabric 1.21.1 — requires Fabric API and Fabric Language Kotlin
- NeoForge 1.21.1 — requires Kotlin for Forge
- Java 21
Install the JAR for your loader. Remnant does not add player-facing features on its own; other mods use its API.
Commands
All commands require permission level 2.
/remnant keys
/remnant players
/remnant get name <name> <key>
/remnant get uuid <uuid> <key>
/remnant list name <name>
/remnant list uuid <uuid>
/remnant remove name <name> <key>
/remnant remove uuid <uuid> <key>
/remnant clear name <name>
/remnant clear uuid <uuid>
get and list can inspect either a live player or an offline snapshot. remove and clear only modify offline cache data.
For developers
A registered value is identified by a ResourceLocation, serialized with a Mojang Codec, and produced from a live Player.
public static final PlayerLedgerKey<Contract> CONTRACT = PlayerLedger.register(
ResourceLocation.fromNamespaceAndPath("example", "contract"),
Contract.CODEC,
player -> new Contract(player.getName().getString(), true)
);
Read through PlayerLedger.getPlayer(...) to get either a live LedgerPlayer.Online or a cached LedgerPlayer.Offline.
For Modrinth Maven, use the project ID so the coordinate stays stable if the public slug changes:
repositories {
exclusiveContent {
forRepository {
maven("https://api.modrinth.com/maven")
}
filter {
includeGroup("maven.modrinth")
}
}
}
dependencies {
implementation("maven.modrinth:oLPaySSb:<version>")
}
Full API examples, source, development notes, and release history are available on the main GitHub repository.
Links
Sponsor
Use code bareminimum to get 25% off your first month.
License
Remnant is licensed under the Bare Minimum License (BML) v1.0. See the full license.

Remnant
Remnant lets mods read registered player data after a player logs out. It is a server-side library for Minecraft 1.21.1 on Fabric and NeoForge, continuing Offline Player Cache (OPC).
An integrating mod registers a value, a Mojang Codec, and a serializer for reading that value from a live player. On disconnect, Remnant snapshots every registered value into world SavedData. When the player comes back, the stale offline snapshot is removed and reads return to the live player.
Use it for leaderboards, statistics, progression, and server tools that need player data while someone is offline. Remnant stores the values registered by integrating mods.
Requirements
- Fabric 1.21.1 — requires Fabric API and Fabric Language Kotlin
- NeoForge 1.21.1 — requires Kotlin for Forge
- Java 21
Install the JAR for your loader. Remnant does not add player-facing features on its own; other mods use its API.
Commands
All commands require permission level 2.
/remnant keys
/remnant players
/remnant get name <name> <key>
/remnant get uuid <uuid> <key>
/remnant list name <name>
/remnant list uuid <uuid>
/remnant remove name <name> <key>
/remnant remove uuid <uuid> <key>
/remnant clear name <name>
/remnant clear uuid <uuid>
get and list can inspect either a live player or an offline snapshot. remove and clear only modify offline cache data.
For developers
A registered value is identified by a ResourceLocation, serialized with a Mojang Codec, and produced from a live Player.
public static final PlayerLedgerKey<Contract> CONTRACT = PlayerLedger.register(
ResourceLocation.fromNamespaceAndPath("example", "contract"),
Contract.CODEC,
player -> new Contract(player.getName().getString(), true)
);
Read through PlayerLedger.getPlayer(...) to get either a live LedgerPlayer.Online or a cached LedgerPlayer.Offline.
For Modrinth Maven, use the project ID so the coordinate stays stable if the public slug changes:
repositories {
exclusiveContent {
forRepository {
maven("https://api.modrinth.com/maven")
}
filter {
includeGroup("maven.modrinth")
}
}
}
dependencies {
implementation("maven.modrinth:oLPaySSb:<version>")
}
Full API examples, source, development notes, and release history are available on the main GitHub repository.
Links
Sponsor
Use code bareminimum to get 25% off your first month.
License
Remnant is licensed under the Bare Minimum License (BML) v1.0. See the full license.
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
(opens in a new tab)
Get it on
Available Platforms
On ModDex
Community snapshot
By the numbers

