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.
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.
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, andcooldown('daily'), the seconds left, shown withfmt.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
- Motion: every animation these screens use.
- Styling: the CSS cascade and per-element
style. - Actions and requirements:
animate,cooldownand the rest.
Something missing on this page? Tell us on Discord