Content generated with AI — it may contain mistakes.

Getting started

Installation

The loader jar and the licence, dependencies, the first arena, the files the plugin writes, the database and updating.

Getting the plugin

ExyliaRandomKitsCore is a premium plugin, bought on BuiltByBit. It ships through the Lukittu loader, so the file you install is the loader jar, Exylia-RandomKitsCore-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

PluginWhat for
packeteventsRequired. Declared under depend, so without it the server does not load ExyliaRandomKitsCore at all.
ExyliaLibRequired, the newest release. Configuration, menus, prompts and the setup wizard, stays, teleports, regions and schematics, rewards, the economy, the database and the network.
ExyliaLib is listed as soft, and installed for you

The loader's plugin.yml names ExyliaLib under softdepend on purpose: the loader is what installs it, so the loader 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. On a server running an older release it stages the newest one and says so in the console; restart once more to apply it.

Optional plugins

PluginWhat it adds
PlaceholderAPIThe plugin's placeholders in other plugins: scoreboards, tab, holograms. See Placeholders.
FastAsyncWorldEditUsed to save and paste arena schematics when installed. Without it ExyliaLib's own engine does the same with the same files.
An economyExyliaEconomy, Vault with an economy plugin, or any currency ExyliaLib serves: the money rewards of triggers.yml and the costs of upgrades and perks.
ExyliaDuelsA Random kit option in its challenge screen. See Network and ExyliaDuels.
ExyliaProxyUtilsOn the proxy, to send players between the servers of a group. See Network and ExyliaDuels.

Installing

Drop in the jars

Exylia-RandomKitsCore-Loader.jar and packetevents into plugins/, and an economy if you want money rewards and paid upgrades.

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 its files, messages and menus, and creates its tables. The console ends with ExyliaRandomKitsCore enabled.

Build the first arena

Run /rkadmin setup where the arena is built and follow the wizard; say yes to the starter kits to have ten kits to roll at once. See Arenas.

Play

Players join with /rk play: exyliarandomkits.play is on for everybody by default. On a server that only runs RandomKits, auto-join in config.yml sends everyone who joins straight in.

Generated files

All of them live in plugins/ExyliaRandomKitsCore/. Every file is commented.

FileContents
loader.ymlWritten by the loader: license_key, and version (auto keeps the plugin on the newest release).
config.ymlLanguage, network group, auto-join, rolls, deaths, assists, streaks, evolution, anti-abuse, nemesis, default layout, arenas, stats, balancing, Duels and the command allowlist. See Configuration.
rarities.ymlThe rarities, from the most common to the rarest. See Kits.
triggers.ymlRewards on kills, deaths, assists, streaks, rolls, joins, level-ups, prestige, mastery, missions, revenge and events. See Configuration.
progression.ymlLevels, XP, prestige, account upgrades, kit upgrades, mastery, rerolls and the ceiling. See Progression.
perks.ymlPerks: trigger, conditions, effects per level and costs. See Progression.
missions.ymlThe daily and weekly mission pools. See Progression.
events.ymlEvents, their timetable and the rotation. See Events and seasons.
seasons.ymlSeason length or fixed dates, and rank rewards. See Events and seasons.
balance.ymlThe balance window, sample, step and bounds, and the automatic cycle. See Kit balance.
database.ymlWhere rows are stored, and Redis for a network. Written by ExyliaLib.
lang/<language>/messages.ymlEvery chat line, title, boss bar and label.
lang/<language>/menus/user/The player screens: hub, arenas, draft, catalogue, layout, stats, top, progress, upgrades, kit upgrades, perks, missions, season and its archive. Yours to restyle: an update only adds what is missing.
lang/<language>/menus/admin/The admin screens. Regenerated from the jar on every start, so do not edit them.
schematics/randomkits_<arena>.schemEach arena's saved blocks, which its resets put back.

Kits, arenas, profiles, events, seasons and balance numbers live in the database, not in files.

The database

ExyliaRandomKitsCore keeps its rows in the database database.yml points at: H2 in a file by default, or MySQL, MariaDB, PostgreSQL or MongoDB through ExyliaLib.

TableRows
exyliarandomkits_kitsEvery kit: name, rarity, weight, permission, icon, effects, slots and whether it is enabled.
exyliarandomkits_arenasEvery arena: world, PvP and safe boxes, spawns, pool, mode, spawn protection, reset interval, and the upgrades and perks switches.
exyliarandomkits_playersEach player's record, level, prestige, season stats and the rest of their profile: upgrades, kit levels, perks, layout, discovered kits, rivals.
exyliarandomkits_kit_statsKills, deaths and rolls per kit, across every player.
exyliarandomkits_kit_days, exyliarandomkits_kit_bases, exyliarandomkits_balance_stateThe kit balance: daily numbers per kit, the weights the bounds are measured from, and the automatic cycle.
exyliarandomkits_event_state, exyliarandomkits_event_scoresThe running event and its scores.
exyliarandomkits_season_state, exyliarandomkits_season_archiveThe open season and the ended ones.
exyliarandomkits_payoutsSeason rewards owed to players, paid once wherever they are.

With a network-group set, every table name starts with the group: <group>_exyliarandomkits_kits. See Network and ExyliaDuels.

Profile changes are written as increments, never over each other, so a player moving between servers keeps every point. What a player carried before joining an arena is held by ExyliaLib's stays in the same database: a crash or a quit gives it back on their next join.

Updating

Replace the loader jar and restart, or leave version: auto in loader.yml. Your files, messages and player menus are kept; new keys are added with their defaults.

Something missing on this page? Tell us on Discord