Installation
Downloading the plugin, how ExyliaLib installs itself, the database, the files the first start writes, and how updates arrive.
Downloading
ExyliaPlayerVaults is free. Every release is published on Modrinth as ExyliaPlayerVaults-<version>.jar.
Before you start
| Plugin | What for |
|---|---|
ExyliaLib | Required. Configuration, menus, database, locks, Redis, placeholders, prompts, economy and the audit log. |
PlaceholderAPI | Optional. Exposes the vault counts and the next price to other plugins. |
| An economy | Optional, only to sell vaults: ExyliaEconomy, or any plugin behind Vault. Purchases charge whatever currency ExyliaLib reaches. |
plugin.yml names ExyliaLib under softdepend on purpose, so the plugin can still start without it. When
ExyliaLib is missing, ExyliaPlayerVaults downloads the latest ExyliaLib release from the library's GitHub
releases into plugins/ExyliaLib.jar (falling back to the exact version it was built against), says so in
the console, and stays disabled until you restart. When an ExyliaLib jar is already in plugins/ but
failed to load, nothing is downloaded: the console asks you to fix the library's own errors first.
Installing
Drop in the jar
Copy ExyliaPlayerVaults.jar into plugins/.
Start the server
Without ExyliaLib, the first start downloads it and asks for a restart. Restart once.
Open a vault
Run /pv. A fresh server gives every player one vault of six rows. See
First steps.
ExyliaSurvivalCore no longer ships the vaults module. Update it to a release without the module when you
install this plugin, so only one plugin answers /pv and /vault. Nothing is copied from
ExyliaSurvivalCore's folder: read
Coming from ExyliaSurvivalCore before
the first start.
Generated files
All of them live in plugins/ExyliaPlayerVaults/.
| File | Contents |
|---|---|
config.yml | Amounts and rows, hidden slots, blocked materials, restrictions, purchases, history, customisation and sounds. See Configuration. |
lang/<code>/messages.yml | Every line the plugin sends and every window title. |
lang/<code>/menus/user/vaults.yml | The vault list. Yours to restyle; kept across updates. |
lang/<code>/menus/admin/history.yml | The history screen. Rewritten from the jar on every start. |
database.yml | Database engine and Redis, written by ExyliaLib. H2 by default. |
<code> is the language the plugin runs in: en, es, pt, fr, ru or tr, or ExyliaLib's own
language while config.yml says default.
history.yml says "DO NOT EDIT — REGENERATED ON EVERY STARTUP" and means it: it is replaced from the jar
on every start and every menu reload. The vault list under menus/user/ is the one meant to be edited.
Database
By default the plugin uses H2: a file inside the plugin folder, with no server, no installation and no maintenance. It is fine for a single server.
For a network, every server points at the same database, ideally with Redis on:
database:
type: mysql
mysql:
host: 127.0.0.1
port: 3306
database: minecraft
username: root
password: ""
redis:
enabled: true
host: 127.0.0.1Supported engines: h2, mysql, mariadb, postgresql and mongodb. Only the block matching type is
read. The file is ExyliaLib's; its full reference is in the
library's database page. What the shared database and Redis do for vaults is
on Network.
Updating
ExyliaLib keeps ExyliaPlayerVaults up to date. The plugin names its GitHub repository in plugin.yml
(exylia-updates: Exylia-Plugins/ExyliaPlayerVaults) and the oldest library it runs on (exylia-lib);
ExyliaLib checks for a newer release, downloads it in the background and applies it on the next restart.
- A new major version is announced and left to you to install by hand.
- A release that needs a newer ExyliaLib waits until the library has updated.
plugin-updatesinplugins/ExyliaLib/config.ymlturns it off or tunes it.
To update by hand, replace the jar and restart. config.yml, messages.yml and the vault list keep your
edits; menus/admin/ is refreshed from the jar; the vaults live in the database and are untouched.
Something missing on this page? Tell us on Discord