Compatibility
Minecraft: Java Edition
Platforms
Links
Tags
Creators
Details
CustomOfflineVariables is a PlaceholderAPI plugin for Paper and Folia. It saves configured placeholder values when a player disconnects and exposes custom placeholders for online and offline player data.
Supported versions
- Minecraft / Paper / Folia:
26.2 - Java:
25or newer - PlaceholderAPI:
2.12.3or a compatible version - Databases: MySQL or SQLite
Installation
- Install a Paper or Folia server for Minecraft 26.2.
- Install PlaceholderAPI.
- Copy the built JAR into the server's
pluginsdirectory. - Start the server to generate the default configuration.
- Edit
plugins/CustomOfflineVariables/config.yml. - Restart the server or run
/offlinevars reload.
The PlaceholderAPI expansion is bundled and registers automatically. Do not use /papi ecloud download. Check and test it with:
/papi list
/papi parse <player> %offlinevars_云币%
Database configuration
MySQL
Create the configured database first:
CREATE DATABASE IF NOT EXISTS `minecraft-offline-papi`
CHARACTER SET utf8mb4
COLLATE utf8mb4_unicode_ci;
Configure the connection:
database:
type: mysql
host: localhost
port: 3306
database: minecraft-offline-papi
username: root
password: password
table: player_variables
After connecting successfully, the plugin creates the player_variables table automatically.
SQLite
database:
type: sqlite
table: player_variables
The SQLite database is stored at:
plugins/CustomOfflineVariables/database.db
Custom variables
With target-key, the plugin generates the query automatically:
variables:
金额:
target-key: cloud_coin
default: "0"
cache-duration: 60
Placeholder:
%offlinevars_金额%
Custom SQL is also supported. %uuid% and %name% are replaced with the target player's offline UUID and name:
variables:
example:
query: "SELECT value FROM custom_table WHERE uuid = '%uuid%'"
return-column: value
default: "N/A"
cache-duration: 60
Synchronization
Placeholders under sync are parsed and saved when a player disconnects:
sync:
save_cloud_coin:
placeholder: "%cmi_user_balance_formatted%"
target-key: cloud_coin
sync-on-quit: true
Commands and permissions
| Command | Description | Permission |
|---|---|---|
/offlinevars info |
Show plugin information | None |
/offlinevars reload |
Reload the configuration | offlinevars.admin |
/offlinevars debug <player> <variable> |
Debug a variable query | offlinevars.admin |
UUID behavior
The plugin generates an offline UUID from the player name using:
OfflinePlayer:<player name>
This is intended for offline-mode player data. Changing the player name or its letter case may produce a different offline UUID.


