config.yml
config.yml carries a config-version. When the number on disk is older than
the plugin expects, AtlasRealms backs up the old file to
config.yml.backup-v<old> and rewrites config.yml from the bundled layout
with your values merged on top. Your own comments survive only in the backup.
The current version is 11 — do not change that number by hand.
Top level
Section titled “Top level”config-version: 11locale: 'en_US'debug: false| Key | Default | Notes |
|---|---|---|
config-version |
11 |
Moves forward on its own. Never edit it. |
locale |
'en_US' |
The file name under locales/, without the extension. See Messages & locale. |
debug |
false |
Writes extra lines to the console. |
database
Section titled “database”Where realm, profile and template records live — never world data.
database: type: sqlite file: 'atlasrealms.db' mysql: host: 'localhost' port: 3306 database: 'atlasrealms' username: 'root' password: '' use-ssl: false pool-size: 10| Key | Default | Notes |
|---|---|---|
database.type |
sqlite |
sqlite or mysql (mariadb also works). SQLite needs no server; pick mysql when more than one server has to read the same records. |
database.file |
'atlasrealms.db' |
SQLite only. Lives in the plugin’s own folder. |
database.mysql.host |
'localhost' |
MySQL only. |
database.mysql.port |
3306 |
1–65535. |
database.mysql.database |
'atlasrealms' |
|
database.mysql.username |
'root' |
|
database.mysql.password |
'' |
|
database.mysql.use-ssl |
false |
|
database.mysql.pool-size |
10 |
Minimum 1. |
This section only takes effect after a restart — /realm admin reload
does not re-read it.
realm: world storage
Section titled “realm: world storage”realm: world-storage: folder polar-store: file| Key | Default | Notes |
|---|---|---|
realm.world-storage |
folder |
folder (an ordinary Paper world per realm) or polar (one compact file per realm through PolarPaper — needs PolarPaper 2.1.0+ and Java 25). |
realm.polar-store |
file |
file (one .polar file per world) or mysql (a row per world in atlasrealms_worlds; needs database.type: mysql). Ignored while world-storage: folder. |
realm: layout
Section titled “realm: layout”realm: layout: world grid: world: '' nether-world: '' end-world: '' spacing: 8192 width: 256 stamp-chunks-per-tick: 1 stamp-concurrency: 1| Key | Default | Notes |
|---|---|---|
realm.layout |
world |
world (each realm is a world of its own) or grid (every realm is a square inside one shared world). Grid is the only layout that runs on Folia. |
realm.grid.world |
'' |
Required when layout: grid. A world you make and load at startup — AtlasRealms only reads the name. |
realm.grid.nether-world |
'' |
Optional. Leave blank and realms have no such side to their portals. |
realm.grid.end-world |
'' |
Optional, same rule. |
realm.grid.spacing |
8192 |
Blocks between one realm and the next. Minimum 1024, and must be larger than realm.default-size. |
realm.grid.width |
256 |
Realms per row. Changing it after realms exist moves every one of them — set it once. |
realm.grid.stamp-chunks-per-tick |
1 |
Chunks written per tick while a realm is built or reset. |
realm.grid.stamp-concurrency |
1 |
How many realms may be built at once. Raise it on a region-threaded server (CanvasMC, Folia) if creation queues too long. |
See World storage & layout
for what the grid needs and what /realm admin status reports about it.
realm: sizes and limits
Section titled “realm: sizes and limits”realm: default-size: 100 default-member-size: 6 invite-expiry-seconds: 120 browse-limit: 100 unload-delay-seconds: 30| Key | Default | Notes |
|---|---|---|
realm.default-size |
100 |
World border size in blocks. atlasrealms.realm.size.<n> wins over this — see Permissions. |
realm.default-member-size |
6 |
Member seats. atlasrealms.member.size.<n> wins over this. |
realm.invite-expiry-seconds |
120 |
How long an invitation stays open. |
realm.browse-limit |
100 |
How many realms the browse menu lists. Each one builds a player head, so a high number costs time on the thread that opens the menu. |
realm.unload-delay-seconds |
30 |
Seconds a realm stays loaded, empty, after the last player leaves it. 0 unloads a tick later. Ignored under layout: grid, which loads nothing to unload. |
realm.purge
Section titled “realm.purge”realm: purge: after-days: 0 automatic: false interval-hours: 24| Key | Default | Notes |
|---|---|---|
realm.purge.after-days |
0 |
Off until you write a number. A realm is abandoned when its owner and every member have been away this many days. A player never recorded keeps the realm. |
realm.purge.automatic |
false |
Whether the plugin purges on its own. Leave this false and /realm admin purge confirm is the only thing that deletes. |
realm.purge.interval-hours |
24 |
Hours between automatic runs. Ignored while automatic is false. |
realm.purge.automatic and realm.purge.interval-hours need a restart to
take effect; after-days is read live by the manual command.
realm: staged copies and pre-generation
Section titled “realm: staged copies and pre-generation”realm: staged-copies: 1 pregen-chunks-per-tick: 4| Key | Default | Notes |
|---|---|---|
realm.staged-copies |
1 |
Ready copies of each template kept under plugins/AtlasRealms/staged/, so creating a realm is a rename rather than a folder copy. folder storage only — Polar keeps none. 0 copies on demand instead. |
realm.pregen-chunks-per-tick |
4 |
Chunks asked for per tick while theme generate builds a biome template. |
realm.generated-themes
Section titled “realm.generated-themes”Recipes for /realm admin theme generate-all, run one after another. This is
not the list of themes the server has — that lives in the database and
/realm admin theme list prints it.
realm: generated-themes: - id: plains biome: plains - id: desert biome: desert - id: snowy biome: snowy_taiga - id: cherry biome: cherry_grove - id: jungle biome: jungle - id: savanna biome: savanna - id: badlands biome: badlands - id: swamp biome: swampEach entry needs id and biome. environment is optional and defaults to
NORMAL — add a second entry with the same id and environment: NETHER to
give that theme its own nether. See
Themes & templates.
realm.flags and realm.locked-flags
Section titled “realm.flags and realm.locked-flags”What a realm is worth on the day it is made. The owner changes these from the settings menu, and only what they change is written to their realm.
| Flag | Default | Flag | Default |
|---|---|---|---|
pvp |
false |
fall-damage |
true |
tnt-explosion |
true |
keep-inventory |
false |
creeper-explosion |
true |
always-day |
false |
fire-spread |
true |
always-night |
false |
lava-flow |
true |
always-rain |
false |
water-flow |
true |
always-clear |
false |
enderman-grief |
true |
visitor-item-pickup |
true |
mob-griefing |
true |
natural-monster-spawn |
false |
crop-trample |
true |
natural-animal-spawn |
true |
spawner-spawn |
true |
realm: locked-flags: - keep-inventory - pvprealm.locked-flags names flags an owner may not change — the flag still
holds at whatever realm.flags says, only the switch is taken away. See
Flags & roles for what each flag does
and how overrides persist.
realm.reset
Section titled “realm.reset”realm: reset: cooldown-seconds: 0 max: 0| Key | Default | Notes |
|---|---|---|
realm.reset.cooldown-seconds |
0 |
Seconds a player waits between two resets. 0 is no wait. |
realm.reset.max |
0 |
How many resets a player gets, ever. 0 is no limit. |
Both are counted against the player, not the realm, and neither needs
Vault — they are limits, not prices. An admin running
/realm admin realm reset <player> is never held by either.
economy
Section titled “economy”Every key here needs Vault and an economy plugin behind it. Without one, every price is off — not free. See The bank & upgrades.
economy: create-cost: 0 bank: step: 100 border: step: 0 cost: 1000 rise: 250 members: step: 0 cost: 2500 rise: 1000| Key | Default | Notes |
|---|---|---|
economy.create-cost |
0 |
What /realm create costs, from the player’s own pocket. 0 is free. Refunded if creation fails. |
economy.bank.step |
100 |
What one click of the deposit or withdraw button moves. Shift-click is ten of them. /realm bank deposit <amount> still takes any number. Anything below 1 is read as 1. |
economy.border.step |
0 |
Blocks added per border upgrade purchase. 0 turns border upgrades off — the rank node then sets the border outright instead of capping it. |
economy.border.cost |
1000 |
What the first border step costs out of the bank. |
economy.border.rise |
250 |
Added to the cost for every step already bought. 0 keeps every step the same price. |
economy.members.step |
0 |
Seats added per member upgrade purchase. 0 turns member upgrades off. |
economy.members.cost |
2500 |
What the first member step costs. |
economy.members.rise |
1000 |
Added to the cost for every step already bought. |
/realm admin status prints which economy AtlasRealms found, and the
current create cost and ladder prices.