Content generated with AI — it may contain mistakes.

Getting started

Installation

The loader jar and the licence, what the plugin needs, the files it writes, the database and updating.

Getting the plugin

ExyliaWarzone is a premium plugin, bought on BuiltByBit. It ships through the Lukittu loader, so the file you install is the loader jar, Exylia-Warzone-Loader.jar. Bought on BuiltByBit, the licence is embedded in that jar: there is no key to enter. The loader checks the licence on every start and then hands over to the plugin.

Before you start

RequirementWhat for
Paper 1.21.1+ or Folia 1.21.4+The server. Forks of Paper such as Purpur work too. On Folia every crate, power-up, chest, zone and room runs on the thread of its own region.
Java 21The runtime.
ExyliaLibRequired, version 1.481.0 or newer: menus, editors, the database, regions, schematics, holograms, rewards and the settings screen.
packeteventsRequired by ExyliaLib, which does not start without it. Power-ups and the world-border overlay of a sealed duel room are drawn with it.
ExyliaLib is installed for you

The loader's plugin.yml only soft-depends on ExyliaLib on purpose: the loader is what installs it, so it has to be allowed to start without it. On a server without ExyliaLib it downloads the newest release into plugins/ and asks for a restart.

Optional plugins

None is needed to start; each one adds something when it is installed.

PluginWhat it adds
FastAsyncWorldEditSaves and pastes the schematics of regen zones and duel rooms. Without it ExyliaLib's built-in engine does the same job with the same .schem files, so zones and rooms are rebuilt either way.
PlaceholderAPIThe supply drop placeholders.
ExyliaEconomy or VaultMoney rewards of power-ups and duel rooms, through ExyliaLib's economy.
Booster pluginsMultiply the money, experience and items power-ups and duel rooms pay. See Integrations.
ExyliaSurvivalCoreCounts picked power-ups, opened loot chests, reached supply drops and duel wins for its missions, leaderboards and seasons. See Integrations.

Installing

Drop in the jar

Exylia-Warzone-Loader.jar into plugins/, next to packetevents.

Start the server

The loader checks the licence embedded in the jar and hands over to the plugin. The loader installs ExyliaLib if it is missing; if it had to, restart once more.

Let it generate

The plugin writes config.yml, database.yml, one config.yml per module under modules/, and the lang/ folder with the messages and the admin screens.

Open the hub

Run /warzoneadmin as an operator. See First steps.

Generated files

All of them live in plugins/ExyliaWarzone/.

FileContents
loader.ymlWritten by the loader: license_key, and version (auto keeps the plugin on the newest release).
config.ymlThe language and which modules load. See Configuration.
database.ymlWhere everything you build is stored. See The database.
modules/<module>/config.ymlEach module's settings: timings, limits, sounds, holograms and animations.
lang/<language>/messages.ymlThe prefix and the messages every module shares.
lang/<language>/modules/<module>/messages.ymlEach module's chat lines, boss bars, holograms and menu labels.
lang/<language>/menus/admin/The admin screens.
schematics/The saved snapshots of regen zones and duel rooms (.schem).

English (en), Spanish (es), French (fr), Portuguese (pt), Russian (ru) and Turkish (tr) ship. English is the base the others are laid over, so a line not translated yet still arrives, in English. language: default in config.yml follows the language set in ExyliaLib's own config.yml; any code sets this plugin alone, and a code nothing ships for (such as custom) starts as English for you to rewrite.

Everything is also editable in game: the hub's Settings card opens every key of every config.yml in a menu. See Configuration.

The database

Supply drop tiers, envoys, power-up zones, loot chests and their templates, regen zones and duel rooms are created in game and stored in the database database.yml describes: an H2 file at plugins/ExyliaWarzone/database/h2 unless you point it at MySQL, MariaDB, PostgreSQL or MongoDB.

Several servers can share one database. What each row belongs to is decided per module:

Shared by every server on the databaseBelongs to the server it was created on
Supply drop tiers and loot chest templates.Envoys, crates that are out, power-up zones, loot chests, regen zones and duel rooms.

A server only loads its own envoys, zones, chests and rooms, so two servers on the same database never see each other's areas, while a tier or a template made once is there for all of them.

Player data and wipes

Every table is declared to ExyliaLib, so /exylialib export ExyliaWarzone writes a copy of everything you built and /exylialib wipe knows what each table holds. Apart from the rewards kept for players whose inventory was full, everything in it is content you built, plus the crates that are out right now.

Updating

Replace the loader jar and restart, or leave version: auto in loader.yml. Your config.yml, the module settings and the messages are kept, and new keys are added with their defaults. The admin screens under lang/<language>/menus/admin/ are written again from the jar on every start, so edits there do not survive a restart.

Something missing on this page? Tell us on Discord