This wiki page runs through the configuration files available in CLV.
Configuration files contain all settings that can be adjusted to server’s specifications. Although not all aspects of the plugin are customizable, a large portion is.
Available config files:
config.yml
This file contains all general settings for the plugin. These range from general teleport settings to external plugin hooks.
config:
# Should data be stored in MySQL?
# Tested on MySQL 10.4 and MariaDB 10.6.
# Other versions may not work yet!
mysql:
enabled: false
host: localhost
port: '3306'
database: cyberlevels
username: username
password: password
table: levels
ssl: true
# Should numbers be rounded?
round-evaluation:
enabled: true
# Should exp earned in earn-exp.yml be rounded?
round-earn-exp: true
# 2 digits: #.##, 4 digits: #.####
digits: 2
earn-exp:
# Should decimals be rounded to the nearest integer?
integer-only: false
leaderboard:
# This feature has been shown to be stable. Please
# continue using at your own discretion.
enabled: true
# Should the leaderboard sync with your storage
# system when the auto-save is called?
sync-on-auto-save: true
# Should player data be auto-saved?
auto-save:
enabled: true
# How often (in seconds)?
interval: 300
# Should adding levels give rewards?
add-level-reward: false
# Should getting rewards multiple times per
# level be prevented?
prevent-duplicate-rewards: false
# Should messages stack exp if it is within 650ms
# of the last exp gain/loss?
stack-combo-exp: true
multipliers:
# Should multipliers apply to the following?
commands: false
events: true
auto-update:
config: true
lang: true
earn-exp: true
messages:
# Should auto-save messages send to console?
auto-save: true
# Should general messages send to console?
message-console: true
anti-abuse.yml
This file contains all anti-abuse settings. These settings are used to prevent players from abusing the system. The settings range from general settings to custom module setups.
anti-abuse:
general:
# Should pickaxes with silk touch reward EXP
# when breaking a block?
silk-touch-reward: false
# When a block is broken, must it be naturally
# generated to gain EXP?
only-natural-blocks: false
# Should crops be included in the only-natural-
# blocks list? If false, the crop must be fully
# grown to gain EXP.
include-natural-crops: false
# If you would like more general anti-abuse option
# to be added, make sure to mention them on our
# Discord: https://discord.gg/DC4Gqj3y5V
# Custom anti-abuse setups:
module-1:
# What events should be included in this module?
exp-events:
- 'damaging-players'
- 'damaging-animals'
- 'damaging-monsters'
cooldown:
enabled: false
# In seconds, the cooldown between each
# time a player can gain exp.
time: 5
limiter:
enabled: false
# How many times can exp be earned from this
# event (until timer resets it).
amount: 250
# A reset will occur for the first time at
# the mentioned date and time. Afterwards,
# it will reset using the interval specified.
#
# In our case, it will reset the first time
# on Jan 15, 2022, and every 6 hours after.
#
# These timers are REBOOT IMMUNE! This means
# that even if you reboot, it will recalculate
# and continue the exact same pattern. For
# more details visit dev.zerotoil.net
timer: '2022-01-15 00:00 6h'
worlds:
enabled: false
# Should the list below be a whitelist (true)
# or a blacklist (false)?
whitelist: true
# A list of worlds that these events will work
# in (whitelist) or not work in (blacklist).
list:
- 'world'
- 'world_nether'
- 'world_the_end'
any-name-you-want:
# What events should be included in this module?
exp-events:
- 'killing-players'
- 'killing-animals'
- 'killing-monsters'
cooldown:
enabled: false
time: 5
limiter:
enabled: false
amount: 250
timer: '2022-01-15 00:00 12h'
worlds: {}
earn-exp.yml
This file contains all EXP earning settings. These settings are used to determine how much EXP a player earns when performing a specific action.
earn-exp:
timed-giving:
general:
enabled: false
# Interval in seconds.
interval: 360
# Earns between 2 and 5 exp (random integer).
exp: 1, 3
includes:
enabled: false
# Disable whitelist to use blacklist.
whitelist: false
# For the following permissions.
list:
- permission.no.exp
specific-permissions:
# These WILL stack on the ones above.
enabled: false
permissions:
- 'permission.vip: 2, 4'
- 'permission.mvp: 3, 5'
dying:
general:
enabled: false
# Loses between 2 and 5 exp (randomly).
exp: -2, -5
includes:
enabled: false
whitelist: false
# Does not gain EXP for the following players.
list:
- permission.no.exp
specific-permissions:
# These WILL stack on the ones above. Could be
# used to reduce EXP loss for special users.
enabled: false
permissions:
- 'permission.vip: 1, 2'
- 'permission.mvp: 2, 3'
damaging-players:
general:
enabled: false
# Earns between 2 and 5 exp (random integer).
exp: 2, 5
includes:
enabled: false
whitelist: false
# Does not gain EXP for the following players.
list:
- MD_5
- Kihsomray
specific-players:
# These WILL stack on the ones above.
enabled: false
players:
- 'CroaBeast: 2, 4'
- 'ThiccPickle: 3, 5'
damaging-animals:
general:
enabled: false
# Earns 1 exp.
exp: 1
includes:
enabled: false
whitelist: true
# Does not gain EXP for the following mobs.
list:
- CHICKEN
- BUNNY
specific-animals:
# These WILL stack on the ones above.
enabled: false
animals:
- 'COW: 1, 2'
- 'SHEEP: 1, 2'
damaging-monsters:
general:
enabled: false
# Earns between 1 and 3 exp (random integer).
exp: 1, 3
includes:
enabled: false
whitelist: false
# Only gains EXP for the following mobs.
list:
- PHANTOM
- CREEPER
- SPIDER
specific-monsters:
# These WILL stack on the ones above.
enabled: false
monsters:
- 'SPIDER: 1, 2'
- 'CREEPER: 1, 2'
killing-players:
general:
enabled: false
# Earns between 2 and 5 exp (random integer).
exp: 2, 5
includes:
enabled: false
whitelist: false
# Does not gain EXP for the following players.
list:
- MD_5
- Kihsomray
specific-players:
# These WILL stack on the ones above.
enabled: false
players:
- 'CroaBeast: 2, 4'
- 'ThiccPickle: 3, 5'
killing-animals:
general:
enabled: false
# Earns 1 exp.
exp: 1
includes:
enabled: false
whitelist: true
# Does not gain EXP for the following mobs.
list:
- CHICKEN
- BUNNY
specific-animals:
# These WILL stack on the ones above.
enabled: false
animals:
- 'COW: 1, 2'
- 'SHEEP: 1, 2'
killing-monsters:
general:
enabled: false
# Earns between 1 and 3 exp (random integer).
exp: 1, 3
includes:
enabled: false
whitelist: false
# Only gains EXP for the following mobs.
list:
- PHANTOM
- CREEPER
- SPIDER
specific-monsters:
# These WILL stack on the ones above.
enabled: false
monsters:
- 'SPIDER: 1, 2'
- 'CREEPER: 1, 2'
placing:
general:
enabled: false
exp: 1
includes:
enabled: false
whitelist: false
list:
- DIRT
- GRASS_BLOCK
- SAND
- STONE
- NETHERRACK
specific-blocks:
enabled: false
blocks:
- 'DIAMOND_ORE: 4, 6'
breaking:
general:
enabled: false
exp: 1
includes:
enabled: false
whitelist: false
list:
- DIRT
- GRASS_BLOCK
- SAND
- STONE
- NETHERRACK
specific-blocks:
enabled: false
blocks:
- 'DIAMOND_ORE: 4, 6'
# Also known as 'eating'
consuming:
general:
enabled: false
exp: 1, 1.25
includes:
enabled: false
whitelist: false
list:
- CARROT
- BAKED_POTATO
- MUTTON
specific-items:
enabled: false
items:
- 'GOLDEN_APPLE: 4, 6'
moving:
general:
enabled: false
exp: 1, 2
includes:
enabled: false
whitelist: false
list:
- permission.no.exp
specific-permissions:
enabled: false
permissions:
- 'permission.vip: 1, 2'
- 'permission.mvp: 2, 3'
crafting:
general:
enabled: false
exp: 1, 2
includes:
enabled: false
whitelist: false
list:
- CRAFTING_TABLE
- OAK_PLANKS
- WOODEN_PICKAXE
specific-items:
enabled: false
items:
- 'DIAMOND_BLOCK: 10, 15'
brewing:
general:
enabled: false
exp: 1, 4
includes:
enabled: false
whitelist: false
list:
- BLINDNESS
- HUNGER
specific-potions:
enabled: false
potions:
- 'SPEED: 1, 3'
- 'HEAL: 1, 2'
- 'FIRE_RESISTANCE: 3, 4'
enchanting:
general:
enabled: false
exp: 1, 4
includes:
enabled: false
whitelist: false
list:
- PROTECTION-4
- UNBREAKING-2
specific-enchantments:
enabled: false
enchantments:
- 'KNOCKBACK-1: 1, 3'
- 'LURE: 1, 2'
- 'LOYALTY: 3, 4'
fishing:
general:
enabled: false
exp: 3, 5
includes:
enabled: false
whitelist: false
list:
- COD
- SALMON
- STRING
specific-fish:
enabled: false
fish:
- 'COD: 2, 3'
- 'SALMON: 2, 3'
- 'STRING: 1'
breeding:
general:
enabled: false
exp: 4, 6
includes:
enabled: false
whitelist: false
list:
- CHICKEN
specific-animals:
enabled: false
animals:
- 'SHEEP: 2, 3'
- 'DOG: 2, 3'
- 'COW: 1'
# When a player sends a message, it will check if a
# player has a keyword containing the word in the
# included list or specific words (case-insensitive).
chatting:
general:
enabled: false
exp: 4, 6
includes:
enabled: false
whitelist: false
list:
- oh hi mark
specific-words:
enabled: false
words:
- 'HELLO: 1, 2'
- 'AWESOME: 1, 2'
- 'OBAMA: 5'
# When a player gains EXP in the vanilla leveling
# system, this event will trigger. You can set how
# much EXP players will earn within CyberLevels
# based on how much they earned in the vanilla system.
vanilla-exp-gain:
general:
enabled: false
exp: 0.75, 1.25
includes:
enabled: false
whitelist: false
list:
- 1
- 2
specific-amounts:
enabled: false
# If a player earns 5 via vanilla system, they
# will earn between 2 and 3 EXP in CLV for the
# first example below.
amounts:
- '5: 2, 3'
- '6: 2.25, 3.25'
- '7: 2.5, 3.5'
# Used for RivalHarvesterHoes
rivalhh-breaking:
general:
enabled: false
exp: 1
includes:
enabled: false
whitelist: false
list:
- POTATO
- BEET_ROOT
specific-blocks:
enabled: false
blocks:
- 'CARROT: 4, 6'
levels.yml
This file contains all level settings. These settings are used to determine how much EXP a player needs to level up.
levels:
# What level and experience should players start with? This will
# also be treated as the minimum level/exp a player can get to.
starting:
level: 1
experience: 0
# Maximum level a player can achieve.
maximum:
level: 25
# {level} {playerEXP} {maxLevel} {minLevel} {minEXP}
experience:
# What general formula should each level's requirements follow?
# Can be a formula or just a number. Refer to internal placeholder
# mentioned above experience.
general-formula: '25 * {level}'
# Specific level requirements. Overrides general formula for
# specific levels. All levels without specific formulas/values
# will follow the general formula.
level:
1: 250
2: '{level} * 25'
# This is an example to show you what you can do with CLV,
# please adjust it to your standards as it may produce a
# weird output.
3: 'sin(1) + ({minEXP} / {level}) + {maxLevel} * 2'
rewards.yml
This file contains all reward settings. These settings are used to determine what rewards a player receives when leveling up.
rewards:
name-of-reward:
commands:
- '[player] spawn'
- '[console] eco give {player} 500'
messages:
- '[player] &dGood job!'
- '[player] [actionbar] &7Level &d{level}'
- '[player] [title] &dLevel Up!<n>You are now level {level}'
- '[C] &d{player} &7has reached &d{level}&7!'
sound:
sound-effect: ''
volume: 1
pitch: 1
levels: '1, 8'
reward-2:
commands:
- '[player] spawn'
- '[console] eco give {player} 700'
messages:
- '[player] &dGood job!'
- '[player] [actionbar] &7Level &d{level}'
- '[player] [title] &dLevel Up!<n>You are now level {level}'
- '[C] &d{player} &7has reached &d{level}&7!'
sound:
sound-effect: ''
volume: 1
pitch: 1
levels:
- 9
- 10
- 11
- 12
- 13
lang.yml
Every plugin needs a language file. This file contains all language settings. You can set up your own language file or use this default one made in english.
messages:
prefix: '&d&lCyber&f&lLevels &8»&r'
no-permission: '&cYou don''t have permission to do that!'
help-player:
- '[C] &8&m―――――――&8<&d&l Cyber&f&lLevels &8>&8&m―――――――'
- ' &8➼ &d/clv about &fAbout the plugin.'
- ' &8➼ &d/clv help &fSee the help menu.'
- ' &8➼ &d/clv info &fSee level progress.'
- '[C] &8&m――――――――――――――――――――――――――――――――'
help-admin:
- '[C] &8&m―――――――&8<&d&l Cyber&f&lLevels &8>&8&m―――――――'
- ' &8➼ &d/clv about &fAbout the plugin.'
- ' &8➼ &d/clv help &fSee the help menu.'
- ' &8➼ &d/clv reload &fReload the plugin.'
- ' &8➼ &d/clv info [<player>] &fSee level progress.'
- ' &8➼ &d/clv addEXP <amount> [<player>] &fIncrease a player''s EXP balance.'
- ' &8➼ &d/clv setEXP <amount> [<player>] &fSet a player''s EXP balance.'
- ' &8➼ &d/clv removeEXP <amount> [<player>] &fDecrease a player''s EXP balance.'
- ' &8➼ &d/clv addLevel <amount> [<player>] &fIncrease a player''s level.'
- ' &8➼ &d/clv setLevel <amount> [<player>] &fSet a player''s level.'
- ' &8➼ &d/clv removeLevel <amount> [<player>] &fDecrease a player''s level.'
- '[C] &8&m――――――――――――――――――――――――――――――――'
progress:
bar: ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
complete-color: '&d'
incomplete-color: '&7'
end-color: '&7'
reloading: '&7Reloading...'
reloaded: '&aReloaded!'
auto-save: '&aSuccessfully auto-saved all player data (&7{ms}ms&a).'
added-exp: '&aAdded {addedEXP} to {player}''s experience. They are now level {level}
with {playerEXP} experience.'
set-exp: '&aSet {player}''s experience to {setEXP}. They are now level {level} with
{playerEXP} experience.'
removed-exp: '&aRemoved {removedEXP} from {player}''s experience. They are now level
{level} with {playerEXP} experience.'
added-levels: '&aAdded {addedLevels} to {player}''s level(s). They are now level {level}
with {playerEXP} experience.'
set-level: '&aSet {player}''s level to {setLevel}. They are now level {level} with
{playerEXP} experience.'
removed-levels: '&aRemoved {removedLevels} from {player}''s level(s). They are now
level {level} with {playerEXP} experience.'
player-offline: '&cThe player {player} is not online!'
not-number: '&cThat is not a number!'
level-info:
- '[C] &8&m―――――――&8<&d&l Level&f&lStats &8>&8&m―――――――'
- '[C] &7Player: &f{player}'
- '[C] &7Level: &f{level}&7/&d{maxLevel}'
- '[C] &7EXP: &f{playerEXP}&7/&d{requiredEXP} &7[&f{percent}%&7]'
- '[C] &7[{progressBar}&7]'
- '[C] &8&m――――――――――――――――――――――――――――――――'
gained-exp: '[actionbar] &d+{gainedEXP} EXP'
lost-exp: '[actionbar] &c-{lostEXP} EXP'
gained-levels: '[actionbar] &d+{gainedLevels} Level(s)'
lost-levels: '[actionbar] &c-{lostLevels} Level(s)'
top-header: '[C] &8&m―――――――&8<&d&l Top &f&lPlayers &8>&8&m―――――――'
top-content: '&f[{position}] &d{player}&7: &7level: &f{level}&7, exp: &f{exp}'
top-footer: '[C] &8&m――――――――――――――――――――――――――――――――'
leaderboard-placeholders:
no-player-name: '&c-'
no-player-level: '&c-'
no-player-exp: '&c-'
loading-name: '&6loading...'
loading-level: '&6-'
loading-exp: '&6-'