-
Notifications
You must be signed in to change notification settings - Fork 0
Configuration
This page covers every option in config.yml. The plugin generates this file automatically on first startup. If you delete it, a fresh copy will be regenerated from defaults.
Hot-reload: You can apply config changes without restarting by running
/clicker reload. This reloads bothconfig.ymlandlang.yml.
Automatic migration: When you update the plugin, any new config keys are added automatically and a backup of your previous config is saved as
config_v<old>.bak. You never need to manually merge configs between versions.
config-version: 10Internal version tracker managed by the plugin. Do not edit this manually. The plugin uses it to detect when your config needs migration after an update.
Controls where click data and multiplier state are persisted.
storage:
backend: yaml
sql:
host: localhost
port: 3306
database: minecraft
username: root
password: ""
use-ssl: false
pool-size: 5
connection-timeout: 30000
idle-timeout: 600000
max-lifetime: 1800000
table-prefix: "ce_"
h2-file: h2dataWhich storage engine to use. Accepted values:
| Value | Description |
|---|---|
yaml |
Flat file storage in data.yml. Default, no extra setup. |
h2 |
Embedded H2 file database. No external server needed. |
mysql |
External MySQL 5.7+ / 8.x server. |
mariadb |
External MariaDB server. Requires the MariaDB JDBC driver on the classpath. |
postgresql |
External PostgreSQL server. Requires the PostgreSQL JDBC driver on the classpath. |
Connection details used by mysql, mariadb, and postgresql backends. Ignored when using yaml or h2.
| Key | Description | Default |
|---|---|---|
host |
Database server hostname or IP | localhost |
port |
Database server port | 3306 |
database |
Database name | minecraft |
username |
Database username | root |
password |
Database password | "" |
use-ssl |
Enable SSL for the connection (MySQL only) | false |
pool-size |
Maximum number of connections in the HikariCP pool | 5 |
connection-timeout |
Maximum time (ms) to wait for a connection from the pool | 30000 |
idle-timeout |
Maximum time (ms) a connection can sit idle before being removed | 600000 |
max-lifetime |
Maximum lifetime (ms) of a connection in the pool | 1800000 |
Prefix applied to all database table names. Useful if you share a database with other plugins.
- Default:
ce_ - Tables created:
ce_clicks,ce_multiplier
File name for the H2 embedded database (without extension), relative to the plugin folder. Only used when backend is h2.
- Default:
h2data
leaderboard:
entries-per-page: 10Number of players shown per page when running /clicker top.
- Default:
10
reward-amount: 1.0Base amount of currency deposited per click. This is the flat reward used when random rewards are disabled.
- Default:
1.0 - Ignored when
random-reward.enabledistrue.
global-multiplier: 1.0The base global multiplier. This is the default value used when no timed override is active, and the value the multiplier reverts to when a timed multiplier expires.
- Default:
1.0 - The active runtime multiplier is managed via
/clicker multiplier setand persisted indata.yml, not here.
Personal multipliers are not configured in config.yml — they are granted via permissions. See the Permissions wiki page for details.
The effective reward per click is calculated as:
reward × global multiplier × personal multiplier
random-reward:
enabled: false
min: 0.5
max: 5.0
jackpot:
enabled: false
chance: 0.01
min: 50.0
max: 100.0
sound: UI_TOAST_CHALLENGE_COMPLETEWhen true, each click awards a random amount between min and max instead of the flat reward-amount.
- Default:
false
The minimum and maximum base reward for a normal click (before multipliers are applied).
- Default:
0.5/5.0 - If
minis greater thanmax, all rewards will equalmin.
When true, each click has a chance to trigger a jackpot with a separate, larger payout range.
- Default:
false - Requires
random-reward.enabledto also betrue.
Probability of a jackpot triggering per click, as a decimal.
- Default:
0.01(1% chance) - Must be between
0.0and1.0.
The minimum and maximum base reward for a jackpot (before multipliers).
- Default:
50.0/100.0
Sound effect played when a player hits the jackpot. Must be a valid Bukkit Sound enum name for your server version.
- Default:
UI_TOAST_CHALLENGE_COMPLETE - Set to
""to disable.
click-cooldown: 0
silent-cooldown: falseMinimum number of seconds between rewarded clicks. Set to 0 to disable the configurable cooldown.
- Default:
0 - A hard 200ms anti-spam floor is always enforced regardless of this setting.
When true, the cooldown message is suppressed. The cooldown is still enforced — the player just won't see a message about it.
- Default:
false - The cooldown message text is configured in
lang.ymlundercooldown.message.
clicker-item:
material: DIAMOND
slot: 13
# skull-texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90..."The material used for the clicker item in the GUI. Must be a valid Bukkit Material name.
- Default:
DIAMOND - Set to
PLAYER_HEADto use a custom skull texture (see below).
The inventory slot (0–26) where the clicker item is placed in the 27-slot GUI.
- Default:
13(center of the middle row)
Base64-encoded skin texture value for custom player heads. Only used when material is set to PLAYER_HEAD (or SKULL_ITEM on legacy servers).
- You can find texture values on sites like minecraft-heads.com.
- Uncomment the line and paste in your base64 string.
balance-display:
slot: 4
material: GOLD_INGOTThe inventory slot (0–26) for the balance display item. Set to -1 to disable the balance display entirely.
- Default:
4 - Cannot be the same slot as
clicker-item.slot. If they conflict, the balance display will not be shown.
The material used for the balance display item.
- Default:
GOLD_INGOT
filler:
material: GRAY_STAINED_GLASS_PANEThe material used to fill all empty slots in the GUI.
- Default:
GRAY_STAINED_GLASS_PANE - On legacy servers (pre-1.13), the plugin automatically falls back to
STAINED_GLASS_PANEwith the appropriate data value.
reward-sound:
enabled: true
sound: ENTITY_PLAYER_LEVELUP
volume: 1.0
pitch: 1.0The sound played to the player after a successful click.
Set to false to disable the reward sound entirely.
- Default:
true
Must be a valid Bukkit Sound enum name. Sound names vary between Minecraft versions.
- Default:
ENTITY_PLAYER_LEVELUP
-
volume— How loud the sound is.1.0is normal. -
pitch— How high or low the sound is.1.0is normal, higher values are higher pitched.
gui-open-sound:
enabled: true
sound: BLOCK_CHEST_OPEN
volume: 1.0
pitch: 1.2The sound played when a player opens the clicker GUI. Same options as the reward sound above.
- Default sound:
BLOCK_CHEST_OPEN - Default pitch:
1.2
Below is the complete default config.yml as generated by the plugin:
# config.yml — ClickerEconomy behaviour settings
# All player-facing text (messages, item names, lore, GUI title) lives in lang.yml.
#
# Internal version — do not edit (managed automatically by the plugin)
config-version: 10
# ── Storage ───────────────────────────────────────────────────────────────────
# backend: yaml | h2 | mysql | mariadb | postgresql
# yaml — flat YAML file (default, no extra setup)
# h2 — embedded H2 file database (no server needed)
# mysql — external MySQL 5.7+ / 8.x
# mariadb — external MariaDB (requires mariadb-java-client on classpath)
# postgresql — external PostgreSQL (requires postgresql driver on classpath)
storage:
backend: yaml
# Used by mysql / mariadb / postgresql
sql:
host: localhost
port: 3306
database: minecraft
username: root
password: ""
use-ssl: false
pool-size: 5
connection-timeout: 30000
idle-timeout: 600000
max-lifetime: 1800000
# Prefix for all table names — change if sharing a database with another plugin
table-prefix: "ce_"
# H2 only: database file name relative to the plugin folder (no extension)
h2-file: h2data
# ── Leaderboard ───────────────────────────────────────────────────────────────
leaderboard:
entries-per-page: 10
# ── Economy ───────────────────────────────────────────────────────────────────
# Base amount deposited per click (ignored when random-reward is enabled)
reward-amount: 1.0
# Base global multiplier — used as the default when no timed override is active
# and as the value the multiplier reverts to when a timed one expires.
# The active runtime value is managed via /clicker multiplier set and lives in data.yml.
global-multiplier: 1.0
# Per-player multipliers are granted via permissions:
# clicker.multiplier.2 → 2x
# clicker.multiplier.1.5 → 1.5x
# The highest matching permission wins and stacks with the global multiplier.
# ── Random rewards ────────────────────────────────────────────────────────────
random-reward:
enabled: false
min: 0.5
max: 5.0
jackpot:
enabled: false
chance: 0.01 # probability per click (0.01 = 1 %)
min: 50.0
max: 100.0
sound: UI_TOAST_CHALLENGE_COMPLETE
# ── Cooldown ──────────────────────────────────────────────────────────────────
# Minimum seconds between rewarded clicks (0 = disabled)
click-cooldown: 0
# If true the cooldown message (lang.yml → cooldown.message) is suppressed
silent-cooldown: false
# ── Clicker item ──────────────────────────────────────────────────────────────
clicker-item:
material: DIAMOND
slot: 13 # GUI slot for the clicker item [0-26]
# To use a custom player head set material to PLAYER_HEAD and uncomment:
# skull-texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90..."
# ── Balance display pane ──────────────────────────────────────────────────────
balance-display:
slot: 4 # Set to -1 to disable
material: GOLD_INGOT
# ── Filler pane ───────────────────────────────────────────────────────────────
filler:
material: GRAY_STAINED_GLASS_PANE
# ── Reward sound ──────────────────────────────────────────────────────────────
reward-sound:
enabled: true
# Any value from the Bukkit Sound enum for your server version
sound: ENTITY_PLAYER_LEVELUP
volume: 1.0
pitch: 1.0
# ── GUI open sound ────────────────────────────────────────────────────────────
gui-open-sound:
enabled: true
# Any value from the Bukkit Sound enum for your server version
sound: BLOCK_CHEST_OPEN
volume: 1.0
pitch: 1.2