Docs
Full
Configuration files
When you update the plugin, new keys are added to your files without overwriting what you changed. A few old defaults that were wrong (default-limit: 3 in robots.yml, the /lang and /pickaxe reset texts) are replaced only if you never touched them.
Every file
| File | Content | Page |
|---|---|---|
config.yml | Language, storage, economy, modules, automatic rankup, multipliers, mines, chat, pickaxe | below |
messages.yml · messages_es.yml | English and Spanish messages; other languages optional | Languages |
enchants.yml | 25 enchants, activation messages and settings.destruction | Enchants |
ranks.yml | Ranks and prestige | Ranks |
rebirths.yml | Rebirth | Rebirth |
prices.yml | Base prices and rank/prestige multipliers | Prices |
market.yml | Dynamic market | Market |
autosell.yml | Sell summary | Selling |
skilltree.yml | Skill tree | Skill tree |
clans.yml | Clans | Clans |
seasons.yml | Seasons | Seasons |
backpacks.yml | Backpacks | Backpacks |
pets.yml | Pets and how they look | Pets |
robots.yml | Tiers, limit, bodies and Robot Workshops | Robots |
pmines/config.yml · pmines/types/ | Packet private mines | Mines, Creating a type |
currencies.yml | Currencies | Currencies |
levels.yml | Leveling tracks | Levels |
custom-enchants/*.yml | Custom enchants | Creating enchants |
placeables.yml | Bombs, drills and lucky blocks | Placeables |
autominers.yml | Autominers | Autominers |
afk-blocks.yml | AFK blocks | AFK blocks |
attributes.yml | Attributes | Attributes |
boosters.yml | Boosters | Boosters |
milestones.yml | Milestones | Milestones |
masteries.yml | Masteries | Masteries |
skins.yml | Skins | Skins |
crystals.yml | Crystals | Crystals |
armors.yml | Armor sets | Armor sets |
abilities.yml | Abilities | Abilities |
cells.yml | Price, grid and WorldGuard flags | Cells |
menus/*.yml | The plugin's 23 menus | Menus |
Every option is explained with comments inside the file itself.
Full config.yml (default version)
yaml
# ==========================================
# CONFIGURATION
# PulsePrison v2.0.0
# ==========================================
# Languages. English (messages.yml) is always loaded and every missing key
# falls back to it. Spanish ships as messages_es.yml. To add any other
# language, add its code below (for example "pt"): messages_pt.yml is created
# from messages.yml on the next start, ready to translate. Translating is
# optional, untranslated keys stay in English.
language:
default: en
available:
- en
- es
# Let players pick their own language with /language. Their choice is
# saved and applies instantly to every message, no restart needed.
# Turn off to force the default language for everyone.
allow-player-selection: true
# ==========================================
# STORAGE
# ==========================================
storage:
# Where player, pickaxe and clan data is saved.
# json - one file per player and clan under data/. Required for
# /prison backup and /prison restore.
# sqlite - a local database file, using the connection below.
# mysql - a MySQL server, using the connection below. Needed to share
# data between several servers.
# Any other value falls back to json with an error in the console.
type: json
# Seconds between saves of player profiles (currencies, levels and
# progression from the newer systems). Profiles also save on quit.
profile-autosave-seconds: 60
# ==========================================
# DATABASE (used when storage.type is sqlite or mysql)
# ==========================================
database:
# Kept for older configs: storage.type above decides between sqlite and mysql.
type: sqlite
host: localhost
port: 3306
database: pulseprison
username: root
password: ''
# ==========================================
# INTERNAL ECONOMY ENGINE
# ==========================================
economy:
transaction-logging: false
exchange:
tokens-to-money: 10.0 # 1 token = $10
gems-to-tokens: 100 # 1 gem = 100 tokens
# ==========================================
# NUMBER FORMAT
# ==========================================
# How numbers are shortened and written in messages, menus and placeholders.
number-format:
# Suffix for each power of 1000: "", thousands, millions, billions...
suffixes: ["", "K", "M", "B", "T", "Q", "Qi", "Sx", "Sp", "Oc", "No", "Dc"]
# Numbers below this value are written in full.
compact-from: 1000
# Decimals kept when shortened: small is 1-9.99, medium 10-99.9, large 100-999.
decimals:
small: 2
medium: 1
large: 0
below-compact: 1
# Removes trailing zeros (1.50K becomes 1.5K).
trim-zeros: true
grouping-separator: ","
decimal-separator: "."
money-symbol: "$"
# compact or full for money amounts written by the core.
money-style: compact
infinity: "∞"
# ==========================================
# MODULES
# ==========================================
# Every module is independent. Disable one and its commands, listeners and
# tasks are never registered, so you can replace it with an external plugin.
# Changes here require a server restart.
modules:
# Moderation commands: gamemode, kick, ban, mute, broadcast, economy.
staff-commands:
enabled: true
# Quality of life commands: tp, back, fly, heal, feed, speed, god, vanish.
essentials-commands:
enabled: true
# Clans with roles, shared bank, private chat and the value leaderboard.
clans:
enabled: true
# Timed competitive seasons with points, leaderboard and rewards.
seasons:
enabled: true
# Persistent custom pickaxe with levels, EXP and the enchant system.
pickaxe-system:
enabled: true
# Rank ladder and prestige loop driven by ranks.yml.
rankup-system:
enabled: true
# Timed global and personal currency multipliers.
multipliers:
enabled: true
# Supply driven block prices. See market.yml.
market:
enabled: true
# Branching pickaxe skill tree. See skilltree.yml.
skill-tree:
enabled: true
# Third progression tier above prestige. See rebirths.yml.
rebirth:
enabled: true
# Collectable companions with passive perks. See pets.yml.
pets:
enabled: true
# Placeable mining robots with fuel and offline production. See robots.yml.
robots:
enabled: true
# Packet based personal mines with members, visitors, taxes and upgrades.
# See pmines/config.yml. Needs no WorldEdit or WorldGuard.
private-mines:
enabled: true
# Personal cells pasted from a schematic template. See cells.yml.
# Same requirements as private mines.
cells:
enabled: true
# Temporary personal and global stat boosters. See boosters.yml.
boosters:
enabled: true
# Enchant masteries earned by activating enchants. See masteries.yml.
masteries:
enabled: true
# Pickaxe skins with models, names and bonuses. See skins.yml.
pickaxe-skins:
enabled: true
# Crystals socketed into the pickaxe for stat bonuses. See crystals.yml.
crystals:
enabled: true
# Armor sets with piece and set bonuses. See armors.yml.
armors:
enabled: true
# Active abilities with duration, cooldown and bonuses. See abilities.yml.
abilities:
enabled: true
# Long term goals with claimable rewards. See milestones.yml.
milestones:
enabled: true
# Permanent stat upgrades bought with currency. See attributes.yml.
attributes:
enabled: true
# Placeable blocks that build up rewards while players are away. See afk-blocks.yml.
afk-blocks:
enabled: true
# Virtual autominers with time, upgrades and rewards. See autominers.yml.
autominers:
enabled: true
# Bombs, drills and lucky blocks. See placeables.yml.
placeables:
enabled: true
# ==========================================
# GENERAL SETTINGS
# ==========================================
settings:
# Prints verbose diagnostics to the console. Leave this off in production,
# it is noisy and slows down the block break path.
debug: false
# ==========================================
# RANKUP
# ==========================================
rankup:
auto:
# Master switch for automatic rankup. When off, /rankup auto is hidden
# and players always rank up by hand.
enabled: true
# Whether automatic rankup starts on for players who never touched
# /rankup auto. Each player can still turn it off for themselves.
default: true
# How often qualifying players are checked, in ticks. 40 is two
# seconds. Only online players are checked, and a player who cannot
# afford the next rank costs a couple of map lookups.
check-interval-ticks: 40
# Broadcast to the server when an automatic rankup climbs at least
# this many ranks at once. Keeps chat quiet during normal play.
broadcast-after-ranks: 10
# ==========================================
# MULTIPLIERS
# ==========================================
multipliers:
# Hard ceiling for the combined multiplier a player can reach.
# Global, personal and permission bonuses stack additively:
# a x2.0 global plus a x1.5 rank bonus results in x2.5, not x3.0.
# This cap protects your economy from stacking accidents.
maximum: 10.0
# ==========================================
# METRICS
# ==========================================
metrics:
# Anonymous usage statistics through bStats. No player data is ever sent,
# only server counts, versions and which storage backend is in use.
enabled: true
# ==========================================
# UPDATE CHECKER
# ==========================================
update-checker:
enabled: true
# URL that returns the latest version as plain text on the first line.
# Leave empty to disable the network call entirely.
# Players holding pulseprison.admin are notified on join when one is found.
endpoint: ''
# ==========================================
# MINES
# ==========================================
mines:
# Which engine regenerates a mine.
# auto - use FastAsyncWorldEdit or WorldEdit if installed, else batched
# worldedit - force the WorldEdit path, falls back to batched if missing
# batched - always use the built in engine
# FastAsyncWorldEdit is by far the fastest option for large mines.
engine: auto
# Blocks the batched engine places per tick. Higher finishes sooner but
# costs more time per tick. 25000 is safe on modern hardware; drop to
# 10000 on weaker machines, raise to 50000 on dedicated servers.
# Ignored when the WorldEdit engine is active.
blocks-per-tick: 25000
# Send the mines.reset-started and mines.reset-finished messages to
# everyone in the world when a mine regenerates.
broadcast-resets: true
# Fallback values applied to a mine created with /mine create.
# Each mine stores its own values in mines.yml and can be changed later.
# Set reset-delay-seconds to 0 to disable the timer for a mine.
default-reset-delay-seconds: 600
# Rank mines: a mine created with /mine create <id> <rank> can only be
# mined, and teleported to, by players who reached that rank.
rank-access:
enabled: true
# Players with at least one prestige skip rank checks, since prestige
# sends them back to the first rank.
prestige-unlocks-all: true
# Regenerate once this percentage of the mine has been mined.
# 0 disables percentage resets and relies on the timer only.
# Both can be active at the same time; whichever triggers first wins.
default-reset-percentage: 0
# ==========================================
# CHAT SYSTEM
# ==========================================
chat:
enabled: true
format: "&8[&b{clan}&8] &7[{prestige}] &f[{rank}] &f{player}&7: &f{message}"
# ==========================================
# PICKAXE
# ==========================================
pickaxe:
# Keep the pickaxe on death instead of dropping it.
prevent-death-drop: true
recovery-timeout-minutes: 30
storage-folder: "data/pickaxes/"
# Whether auto-sell starts enabled on a brand new pickaxe.
# Players toggle it at any time with /autosell.
autosell-default: true
# ----------------------------------------
# Levelling
# ----------------------------------------
# Every block mined grants a flat amount of experience, multiplied by
# the ExpBoost enchant, the EXP_BONUS skill node and the active pet.
# The experience needed for the next level grows with the level:
#
# required(level) = base-requirement * level ^ exponent
#
# With the defaults below, and no multipliers:
# level 1 -> 2 needs 250 EXP (about 25 blocks)
# level 10 -> 11 needs 5,600 EXP (about 560 blocks)
# level 100 -> 101 needs 125,300 EXP (about 12,530 blocks)
#
# Raise the exponent for a slower late game, lower it for a faster one.
# Values above 2.0 make high levels extremely slow.
#
# Gains never scale with level, so a player can never earn more than a
# level per block, and every value is bounded so it cannot overflow.
progression:
experience-per-block: 10
base-requirement: 250
exponent: 1.35
# Hard ceiling. Pickaxes above it are clamped on load.
max-level: 500
# ----------------------------------------
# Display
# ----------------------------------------
display:
# Item name. Placeholders: {level}, {max}
name: "ee8fa⛏ &fPickaxe &8• &#b388ffLv. {level}"
# Rewriting an item in the hand replays the hold animation, so the
# lore is refreshed immediately only on meaningful changes (level up,
# enchant bought or removed, auto-sell toggled). Blocks mined and EXP
# are brought up to date once the player has stopped mining for this
# many milliseconds. The action bar always shows live values.
idle-refresh-millis: 2500
# Show a title on screen when the pickaxe levels up.
level-up-title: true
# ----------------------------------------
# Removing enchants
# ----------------------------------------
disenchant:
# Allow players to remove enchant levels with /enchant remove or the
# red buttons in the enchant menu.
enabled: true
# Share of the original price refunded, from 0 to 100. The refund is
# paid in the enchant's own currency and covers only the levels removed.
# Enchants marked default-enchant in enchants.yml can never be removed.
refund-percent: 50
# ==========================================
# EVENTS & BROADCASTS
# ==========================================
events:
rankup:
enabled: true
broadcast: "&6✨ &b{player} &ehas risen to &b{rank}! &6✨"
prestige:
enabled: true
broadcast: "&e⭐ &b{player} &ahas reached &6PRESTIGE {prestige}! &e⭐"