Content generated with AI — it may contain mistakes.

Menus

Example screens

The six screens the plugin ships: a server selector, daily rewards, a welcome tour, a hub, a profile and a shop, and how to make each your own.

On its first start the plugin writes six screens into plugins/ExyliaScreens/screens/, ready to open. They are meant to be used, not only read: change the words, items and commands and they are your server's menus. Each screen has its own <id>.css next to it, and its words in lang/<code>/screens/<id>.yml for every language.

Written once

Each example is copied once, and .examples-written lists what was written. A file already there is never replaced, and an example added by an update still reaches a server that has the others. To get a deleted one back, delete its line from .examples-written and restart. The examples are written in the server's language when the plugin has it (see Translations).

Server selector: /play

servers.html · also /servers, /modes

Three mode cards, each with its icon, a short description, a status block and a button. A card reads its server live from the proxy: online('survival') says whether it is up and players('survival') how many are on it, refreshed every few seconds. The top right shows the whole network, players(). A click sends the player there with [SERVER] survival. A server that is down refuses with a shake and a toast instead of sending anyone into a dead server. The third card is marked disabled: drawn muted, it says "Coming soon".

Make it yours. Each card picks its colour with one line, style="--tone: {success}", and the card, its name and its button follow it (the rules are in servers.css). To add a mode, copy a <card>, change the server name in require, action and the two players/online calls, and pick a tone. Discord and Store open a toast whose link the player clicks; put your own addresses in.

Motion. The title types itself out, the cards arrive one after another (stagger), each icon floats, the "Online" dot beats and the arrow on each button nudges.

Player counts need the proxy bridge

players('name') and online('name') come from ExyliaLib's proxy module, which needs ExyliaProxyUtils 2.2.0 or newer on the proxy. Without it they read 0 and offline, and players() counts this server only.

Daily rewards: /rewards

rewards.html · also /daily

Seven day cards. Today's card glows and pulses; claiming it runs its console command, adds one to the streak and starts a 24 hour wait. Claimed days show a tick, later days a dot, and day 7 starts the week again. Under the cards, a line counts down to the next reward and a bar fills with the streak.

It is built from three pieces you can reuse in any screen:

  • data('streak'), kept per player across restarts with [DATA] set streak ... (see Player data).
  • cooldown="daily 24h" on the card, which refuses a second claim until the time is up, and cooldown('daily'), the seconds left, shown with fmt.time(...). A wait of 5 minutes or more survives restarts.
  • A <template name="day">, so each day is one line at the bottom of the file:
<day n="5" item="golden_apple" reward="2 Golden apples" command="give %player_name% golden_apple 2"/>

Make it yours. Change each day's item, reward (its words) and command. The streak only grows: a missed day does not reset it.

Motion. The cards drop in one by one with a bounce, today's card pulses, day 7's item floats, a claim pops the card and an early click shakes it.

Welcome tour: /welcome

welcome.html · also /tour

Four short pages for new players, each a picture and a paragraph. A and D, the buttons or the dots at the top turn the pages, and the last one closes the tour and remembers it with [DATA] set welcomed true, so an open item or a join command can skip players who saw it (data('welcomed')).

Make it yours. Every page is one <case> inside the <switch>: change its item, title and text. To add a page, copy a case, add a <tab> to the dots and raise the 4s.

Motion. Pages slide in and out; the title types itself out and the paragraph rises in after it (stagger with text-reveal); the picture floats; the last button pulses.

Hub, profile and shop

hub.html (/hub, /warps), profile.html (/profile, /me) and shop.html (/shop) link to each other.

  • Hub: the player's face, warps and servers as tiles, and a VIP tile that only opens for a permission and shakes for everyone else.
  • Profile: the player's turning body and their balance, level, world and rank, all read live.
  • Shop: four items paid through the server's economy. A price turns red when the player cannot afford it, a click they cannot pay shakes the card, a purchase pops it, and the sword asks first.

The hub and shop have chest fallbacks (menus/hub_chest.yml, menus/shop_chest.yml) for players who chose chest menus; see Opening and fallbacks.

Next

Something missing on this page? Tell us on Discord