Skip to Content
Reward ProConfiguration

Configuration

The config.yml file is located at plugins/RewardPro/config.yml. It is created automatically on first startup.

Almost everything is configured in the web editor. The config.yml only holds server side settings like storage and the cloud connection.

Full default config

# ------------------------------------------------------- # Reward Pro Configuration # Docs: https://docs.elandgames.com/reward-pro # ------------------------------------------------------- storage: # Backend type: "yaml", "mysql" or "postgresql" type: yaml mysql: host: localhost port: 3306 database: rewardpro username: root password: "" # Set to false only if your MySQL server does not support SSL use-ssl: true postgresql: host: localhost port: 5432 database: rewardpro username: postgres password: "" # Set to false only if your PostgreSQL server does not support SSL use-ssl: true cloud: # Your server token, generated by /rewardpro connect token: "" website-url: "https://elandgames.com" update-checker: # Checks SpigotMC once on startup for a newer version of RewardPro and any # installed add-on, and notifies ops on join if one is available. No data # about your server is sent, it's one outbound GET per plugin checked. enabled: true

Options reference

storage.type

ValueDescription
yamlStores each player’s data in a separate file under plugins/RewardPro/player/. Default and recommended for single servers.
mysqlStores all player data in a MySQL database. Recommended for networks with shared player data.
postgresqlStores all player data in a PostgreSQL database. Same use case as MySQL, pick whichever database you already run.

MySQL options

Only used when storage.type: mysql.

KeyDefaultDescription
hostlocalhostMySQL server hostname or IP
port3306MySQL server port
databaserewardproDatabase name (must already exist)
usernamerootMySQL username
password""MySQL password
use-ssltrueEnables SSL for the MySQL connection. Set it to false only for local development servers without SSL certificates.

Always use use-ssl: true in production. Disabling SSL exposes player data to network interception.

PostgreSQL options

Only used when storage.type: postgresql.

KeyDefaultDescription
hostlocalhostPostgreSQL server hostname or IP
port5432PostgreSQL server port
databaserewardproDatabase name (must already exist)
usernamepostgresPostgreSQL username
password""PostgreSQL password
use-ssltrueEnables SSL for the PostgreSQL connection. Set it to false only for local development servers without SSL certificates.

Always use use-ssl: true in production. Disabling SSL exposes player data to network interception.

cloud.token

The server token generated when you run /rewardpro connect. This is set automatically. You should not need to edit it manually.

If you need to reconnect, run /rewardpro connect again.

cloud.website-url

The base URL of the Eland Games API. Do not change this unless you are running a local development environment.

update-checker.enabled

Checks SpigotMC’s own update API once on startup for a newer version of RewardPro and any installed add-on, no requests are made to elandgames.com for this. If one is found, it’s logged to the console and any online staff member with rewardpro.admin is notified in chat with a clickable download link (staff who join later get the same notice). Set to false to disable the check entirely.

Local crash-safety cache

When storage.type is mysql or postgresql, RewardPro also keeps a real local copy of every player’s data under plugins/RewardPro/player-cache/, written on every save alongside the database write. This isn’t the primary storage (the database is still what every server in a network reads from), it exists purely so a hard server crash between the periodic 5-minute safety flushes never loses more than the last change. If the database is briefly unreachable, RewardPro also reads from this local cache instead of failing outright.

Anonymous usage statistics

RewardPro uses bStats  to report anonymous, aggregate install statistics (server count, Minecraft version, storage backend type), the same free service most Bukkit/Spigot plugins use. No player data is included. This is controlled by the server-wide plugins/bStats/config.yml file (shared by every plugin using bStats on your server, not a RewardPro-specific setting), set enabled: false there to opt out entirely.

Switching to MySQL

Use MySQL instead of the default per-file storage if you run a network and want every server sharing one player database (so streaks, playtime and quest progress follow the player between servers).

Create an empty database

Using your MySQL server’s own tools, create a database (for example rewardpro) and a user with full access to it. Reward Pro creates its own tables inside it on first connect, don’t create tables yourself.

Stop the server

Storage type is only read on startup.

Edit config.yml

Set storage.type to mysql and fill in host, port, database, username and password under storage.mysql. Leave use-ssl: true unless your MySQL server genuinely has no SSL support.

Start the server

Check the console for "Failed to initialise player storage". If you see it, double check the credentials and that the database exists. See Troubleshooting.

Switching storage type does not migrate existing player data between yaml and mysql, players start fresh under the new backend. Do this before launch, not on a live server with progress you care about.

Switching to PostgreSQL

Same idea as MySQL, use PostgreSQL instead if that’s the database you already run.

Create an empty database

Using your PostgreSQL server’s own tools, create a database (for example rewardpro) and a user with full access to it. Reward Pro creates its own table inside it on first connect, don’t create tables yourself.

Stop the server

Storage type is only read on startup.

Edit config.yml

Set storage.type to postgresql and fill in host, port, database, username and password under storage.postgresql. Leave use-ssl: true unless your PostgreSQL server genuinely has no SSL support.

Start the server

Check the console for "Failed to initialise player storage". If you see it, double check the credentials and that the database exists. See Troubleshooting.

Switching storage type does not migrate existing player data between backends, players start fresh under the new one. Do this before launch, not on a live server with progress you care about.

After changing config.yml

Run /rewardpro reload to apply changes without restarting the server.

Last updated on