Content generated with AI — it may contain mistakes.

Getting started

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

PluginWhat for
ExyliaLibRequired. Configuration, menus, database, locks, Redis, placeholders, prompts, economy and the audit log.
PlaceholderAPIOptional. Exposes the vault counts and the next price to other plugins.
An economyOptional, only to sell vaults: ExyliaEconomy, or any plugin behind Vault. Purchases charge whatever currency ExyliaLib reaches.
ExyliaLib is listed as soft, and installs itself

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.

Next to ExyliaSurvivalCore

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/.

FileContents
config.ymlAmounts and rows, hidden slots, blocked materials, restrictions, purchases, history, customisation and sounds. See Configuration.
lang/<code>/messages.ymlEvery line the plugin sends and every window title.
lang/<code>/menus/user/vaults.ymlThe vault list. Yours to restyle; kept across updates.
lang/<code>/menus/admin/history.ymlThe history screen. Rewritten from the jar on every start.
database.ymlDatabase 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.

menus/admin/ is rewritten

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:

plugins/ExyliaPlayerVaults/database.yml
database:
  type: mysql
  mysql:
    host: 127.0.0.1
    port: 3306
    database: minecraft
    username: root
    password: ""
  redis:
    enabled: true
    host: 127.0.0.1

Supported 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-updates in plugins/ExyliaLib/config.yml turns 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