Content generated with AI — it may contain mistakes.

Getting started

Installation

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

Getting the plugin

ExyliaCasino is a premium plugin. It ships through the Lukittu loader, so the file you install is the loader jar, Exylia-Casino-Loader.jar. It is not sold on BuiltByBit: request your licence key on the Exylia Discord, and manage your keys and servers at licenses.exylia.net. 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 ExyliaCasino at all. Every table, the room round the player and holding them still are drawn with packets.
ExyliaLibRequired, version 1.356.0 or newer. Configuration, menus and prompts, the escrow, the economy, the database, the stage and the games catalogue.
An economyExyliaEconomy, Vault with an economy plugin, or PlayerPoints. Without one there is no currency to bet in, and every game answers "There is no currency you can bet with."
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.
ExyliaMarketIts shop and worth list price items, which Double or Nothing can require and cap. See Games.
ExyliaTabletopThe player-versus-player games, in the same catalogue and sharing the busy state.

Installing

Drop in the jars

Exylia-Casino-Loader.jar and packetevents into plugins/, and an economy if the server has none.

Start the server

The loader writes loader.yml. Stop the server, put your key in license_key and start it again. The loader installs ExyliaLib if it is missing; if it had to, restart once more.

Let it generate

The plugin writes config.yml, one modules/<game>/config.yml per game, its messages and menus, and creates its table. The console ends with ExyliaCasino enabled.

Play

Every player can already open /casino: exyliacasino.play is on for everybody by default. See Playing a round.

Generated files

All of them live in plugins/ExyliaCasino/.

FileContents
loader.ymlWritten by the loader: license_key, and version (auto keeps the plugin on the newest release).
config.ymlWhat every game shares: stakes, currencies, the table look, the AGAIN buttons, the zoom, the room, the guide and the command names. See Configuration.
modules/<game>/config.ymlOne per game: whether it is on, its name, icon, commands, RTP or rules, timings, look and sounds. See Games.
database.ymlWhere rows are stored. Written by ExyliaLib.
lang/<language>/messages.ymlThe shared lines: stakes, results, the heading over every table, the AGAIN buttons, the /casino cards and the admin lines.
lang/<language>/modules/<game>/messages.ymlEach game's own texts: buttons, prompts, its guide and its pay lines.
lang/<language>/menus/user/The three player screens: roulette_bet, horserace_pick and plinko_risk.
lang/<language>/menus/admin/The admin hub, hub.

The database

Each player's record per game — wins and losses — is a row of casino_stats in the database database.yml points at: H2 in a file by default, or MySQL, MariaDB, PostgreSQL or MongoDB through ExyliaLib. Rows of online players are kept in memory; results are written as increments.

Stakes are held by ExyliaLib's escrow in the same database. What a restart leaves held is refunded on the next start, and what cannot be handed over at once is delivered on the player's next join. Until the escrow has finished that, betting is closed: "Betting is closed for a moment. Try again shortly."

Updating

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

Something missing on this page? Tell us on Discord