HyperScript
Docs

Writing scripts

The tutorial gets a first script running. This page is about writing scripts that stay easy to read, change and repair.

What a script file contains

A script is one .hs file. Everything in it stands at the left margin and opens a block:

BlockWhat it is for
options:Settings named once and used throughout the file as {@name}
command /name:A command players or the console can run
item <name>:An item described once and then asked for by name, in any script; see Actions
recipe for <item>:A crafting recipe added to the server; see Recipes
on <event>:Code that runs when something happens
on <event>, <event>:The same block for each of several events: on player join, player respawn:
on <event> of <kind>:The event for one kind of block or creature only: on block break of diamond ore:, on entity death of zombie:
on chat containing <text>:Chat messages that have the text in them, whatever the capitals
on load:Code that runs each time the file is loaded: defaults, teams
on unload:Code that runs when the file is read again or switched off, and when the server stops: taking down what on load: put up, such as a boss bar
every <time>:Code that runs again and again, or at a time of day
function name():Code with a name, called from anywhere
messages:Text in several languages; see Messages in several languages
enchantment <name>:An enchantment of your own; see Enchantments of your own
advancement "<name>":An advancement of your own; see Advancements
test "<name>":A check of the script itself; see Testing a script
mob "<name>":A creature described once and spawned by name; see Mobs of your own
currency "<name>":Money of the script's own; see A currency of your own
placeholder "<name>":A value other plugins can show; see Other plugins

They may come in any order. A good order to read is the one the scripts on the Scripts page use: notes, options, functions, commands, events.

# ==============================================================
#  Greeter.hs - welcomes players
# ==============================================================
#
# Requires: 1.5.9
# Tags: chat, welcome
#
# Notes
#  - Change the messages in the options below.

options:
    prefix: "&8[&aHi&8] "
    first_time: "&6Welcome to the server, %player.name%!"

on first join:
    broadcast "{@prefix}{@first_time}"
    give 16 bread to player

on player join:
    send "{@prefix}&7Welcome back."

Notes at the top

Lines that begin with # are comments, for people. Start every script with a few that say what it does and what someone might want to change. Three of them mean something more:

LineEffect
# Requires: 1.5.9A plugin older than that refuses the file with a clear message
# Addons: HyperPermsThe file is refused, with a clear message, on a server without that addon
# Tags: chat, welcomeShown as tags when the script is on the Scripts page

Where files go

Making a script easy to change

One file for every setting. With options-file: true in config.yml, HyperScript writes the options: of every script into plugins/HyperScript/options.yml, grouped by file:

Shop.hs:
  prefix: '&8[&6Shop&8] '
  price: 50

Whoever runs the server can then change prices and messages there without opening a script. While this is on, a value in options.yml is used instead of the one in the script, so change it there; an option is added to the file the first time a script has it. It is off unless you turn it on, because with it on, editing an option inside a script no longer changes anything.

Finding mistakes

ToolWhat it tells you
Saving the fileWith hot reloading on, a mistake is reported in chat to admins, with the file and line
/hyperscript check <file>Reads a script and reports mistakes without loading it, and any variable in it whose name looks like a slip. Without a file it does so for every script, one after the other
/hyperscript backupMakes a backup of the saved variables now, in plugins/HyperScript/Backups, beside the ones that are made by themselves
/hyperscript reloadLoads everything again and lists every file that failed
/hyperscript listWhich scripts are loaded, and which are disabled
/hyperscript variables <name>Look at a saved variable, or everything under a name such as warp; add set <value> or delete to change it. A player's own is written Steve.coins
/hyperscript helpEvery command of /hyperscript with a line about what it is for
/hyperscript reload <script>Reads one script again and leaves the others as they are: their on load: does not run again. The quickest way to try a change to one file on a server with many
/hyperscript uninstall <script>Takes a script out of the scripts folder and reloads. It is not destroyed: it is moved to plugins/HyperScript/removed-scripts, from where it can be put back
/hyperscript errorsWhat went wrong lately: scripts that did not load, and the last failures while running, each with its file, line, the line itself, how often and who caused it. errors clear empties the list
/hyperscript speedMeasure how fast scripts run on this server: twelve kinds of work, from adding to a variable to asking the world for a block, each as "this many a second". It first finds a number of rounds worth timing, then runs that 25 times and reports the middle result. Takes a few seconds and never holds the server up
/hyperscript run <line>Reads one line of script and runs it at once, as you: /hyperscript run send "%amount of diamond in inventory of player%". For trying something without writing a file. The line can call the functions of the scripts that are loaded; what is wrong with it is said in chat
/hyperscript watch {variable}Tells you in chat each time that saved variable is set: what it became, and the script and line that ran last. {coins} watches it for every player and everybody's alike, and a name such as {warp} everything under it. /hyperscript watch off stops, /hyperscript watch alone lists what you watch
/hyperscript debug <player>Shows you every line of every script as it runs for that player, with its file and number, and under each line what it did: what a variable became ({_coins} = 7, {a player's coins} = 7) and which way an if went. The quickest way to see where a script stops or which branch it takes. At most forty lines a second are shown. /hyperscript debug off stops it
/hyperscript test [script]Runs the test "...": blocks of one script, or of all of them, and says which passed. See Testing a script
/hyperscript search <word>Looks on the HyperScript website for scripts whose name, author or description has that word: the ready-made ones and those people sent in. Each comes with the id to install it by, and for a player each result can be clicked: the script's name and who made it are shown with the question whether to install it, and a click on [Yes, install it] fetches and loads it at once. [No] leaves it
/hyperscript addon listThe addons the HyperScript website has, each with its newest version and whether this server has it
/hyperscript addon install <name>Fetches the newest jar of that addon into the plugins folder, after checking that the file is the one the website describes. Tab offers the addons this server does not have yet. While it downloads, a player sees how far it is on the action bar, and the console is told at every quarter. The addon is loaded when the server is next started. One that is installed already is left alone: /hyperscript update is what fetches a newer one
/hyperscript install <id> [folder]Fetches that script from the website into the scripts folder and loads it. With a folder, such as /hyperscript install Ranks ServerSetup, it goes into that folder inside the scripts folder, which is made if it is not there. The id is what search shows, and what each script's page on the website shows. A file of yours with the same name is never overwritten. Installing a script again that was installed this way updates it, if the website has another text of it by now: the options you changed keep your values, and your old copy is kept beside it as <name>.hs.old. Anything else you changed in the file is in that copy, not in the new file While it downloads, a player sees how far it is on the action bar, and the console is told at every quarter
/hyperscript updateLooks for a newer HyperScript and for newer versions of the addons that are installed, on Modrinth and, if Modrinth does not answer, on the HyperScript website. A newer HyperScript is downloaded for the next restart. If addons have a newer version it lists them and asks whether to update them as well: /hyperscript update addons is the yes, and a player can click the line. /hyperscript update all fetches everything without asking. Every download shows how far it is, by name: to a player on the action bar, to the console at every quarter. Each file is checked against what it should be before it is kept. A jar named after its version (HyperScript-1.7.24.jar) is followed by one named after the new version, and the old one is removed; a jar you renamed keeps its name. /hyperscript upgrade is the same command, and auto-update: true in config.yml does it by itself a moment after every start, addons included. /hyperscript version shows what is running, with every addon and its version
/hyperscript update scriptsBrings every script that was installed from the website up to date, each keeping the options you set, with the file as it was beside it as <name>.hs.old. Which scripts those are is kept in plugins/HyperScript/installed-scripts.json: the file, the id it was installed by, its version and when. A script installed before that list existed is found by the line an install writes at its top
/hyperscript new <kind> <name>Writes a small script of that kind to the scripts folder and loads it, as something to start from: command (one command), shop (a menu that sells for coins), kit (items once a day), join (welcome messages) or minigame (last player standing). /hyperscript new shop market makes market.hs with the command /market
/hyperscript timingsWhich scripts have taken the most time, and how long each run takes on average. /hyperscript timings <script> times every line of one script for thirty seconds and lists the slowest, so that the one line that is slow can be found Under it stands what HyperScript keeps going by itself between the lines of scripts: particles that stay, text in front of players, action bars, pointers and the rest, each with how much there is of it and what a tick of it costs
/hyperscript particle [name]Without a name, lists every particle this server has. With one, draws a ring of it in front of you for five seconds: a quick way to see what a particle looks like, and to find out whether particles are shown in your game at all (Options > Video Settings > Particles)
/hyperscript docs <word>Searches this documentation from inside the game: the statements written with that word, then those that mention it, each with what it does, and a link to the examples
log "..."Prints a value to the console while you work out what a script is doing

A slip in a variable's name is pointed out. When the scripts load, a saved variable that is read but that no script ever sets, and whose name is a letter away from one that is set, gets a line in the console: shop.hs:14 {%player%.coinz} is read, but no script ever sets it. Did you mean {%player%.coins}? /hyperscript check <file> says the same for one script. Local variables get the same care inside their own block: {_coinz} that is read where only {_coins} is set is pointed out too. It is a remark, not an error: the script loads all the same. Only such near misses are named, since a variable may well be set by something other than a script.

An error about a word HyperScript does not know suggests the nearest one it does: Unknown event 'player joined'. Did you mean 'player join'? That goes for events, statements, functions, the options of a command, the names in an options: block, the word a block starts with (comand /shop:), and for items, blocks, entities, effects and enchantments (Unknown block 'dimond block'. Did you mean 'diamond block'?).

In chat, a mistake can be clicked. When a script does not load, whoever has hyperscript.admin is shown the report, the line it is about, and, where HyperScript can tell what was meant, the line as it should be:

 - shop.hs:12 Unknown block 'dimond block'. Did you mean 'diamond block'?
     12 | set block at player to dimond block
     fix | set block at player to diamond block  [copy]

Click the suggestion or the green line to copy it, and paste it over the old one in your editor. Click the file's name to put /hyperscript check shop.hs in the chat box. The same is shown after /hyperscript reload and /hyperscript check. The console gets the plain report.

Finding out what went wrong. /hyperscript errors lists the scripts that did not load and the last failures of running scripts, newest first:

Failures while running, newest first:
 Shop.hs:54 12s ago, 3 times, last by Steve
   > give 1 {_material} to player
   Cannot give an item: the value is not set

A failure that repeats is listed once, with a count. The player whose command or click failed is told player-error-message from config.yml instead of nothing happening; set it to "" to tell them nothing. Admins see the real message in chat (with notify-script-errors) and not that line.

All at once. When a file has mistakes, HyperScript names one for each part of the file that has any (each command, event and function), not only the first, so they can be fixed in one go. The file is still loaded as a whole or not at all. The first mistake named is always the real one; a later one can be a knock-on of an earlier.

There are two kinds of mistake:

Most surprises come from a value being unset. An unset value counts as 0 in math, as nothing in text and as false in a condition, so a script keeps going where you might expect an error. When something does nothing, log the values on the line before it.

Testing a script

A script can carry its own checks, so that after a change you know in a second whether it still does what it should:

command /daily:
    trigger:
        add 100 to {%player%.coins}
        send "&aYou got 100 coins."

test "daily pays a hundred":
    execute player command "/daily"
    expect {%player%.coins} is 100
    expect test log contains "You got 100 coins"

/hyperscript test runs every test of every script; /hyperscript test Shop only those of Shop.hs. Each is listed as passed or failed, with the line that did not hold.

WrittenMeaning
test "<what it shows>":At the left margin. The block is read when the script loads, so a mistake in it is found then, but it only ever runs for /hyperscript test
expect <condition>The test fails here if the condition is not true
test logEverything the script has done in this test so far, as text: messages sent, items given, blocks set. Look into it with contains

Scripts straight from the website. /hyperscript search kits lists matching scripts, and /hyperscript install <id> puts one in the scripts folder and loads it, without leaving the game. The ready-made scripts install by their name (/hyperscript install Kits); those people sent in by the id shown on their page. Scripts people sent in were looked at before they were put on the website, but they are other people's code: read one before you rely on it.

Using scripts other people wrote

The Scripts page has ready-made scripts. Each shows the commands it adds, the settings you can change, the permissions it uses and the version it needs. Download one into the scripts folder and it is live.

Every script on the website has an id, and Copy id next to it copies that. On the server, /hyperscript install <id> fetches the script and loads it.

A script written for Skript can be turned into HyperScript on the From Skript page. It rewrites the common things and leaves the rest for you to finish.

Before adding a script from anywhere else, read it. A script can run console commands, change files in the plugin folder and send web requests. /hyperscript check <file> tells you whether it loads, not whether you want what it does.

Addons

An addon is a separate plugin that adds statements, values and events to the language. Install it next to HyperScript and its syntax works in every script. The Addons page lists the ones published here, and on the Docs page everything an addon adds carries the addon's name and can be shown or hidden with the From filter.

AddonWorks withAdds
HyperVelocityA Velocity proxyPlayers, events and variables across the servers of a network
HyperGuardWorldGuardRegions: who is in them, entering and leaving, owners, flags, claiming
HyperPermsLuckPermsGroups, ranks for a while, single permissions, prefixes
HyperCitizensCitizensNPCs that look like players, walk, talk and are clicked
HyperVotesNuVotifier or Votifieron vote:, vote counts and streaks, vote parties
HyperBedrockGeyser and FloodgateTelling Bedrock players apart, and Bedrock's own forms
HyperVoiceSimple Voice ChatVoice groups, muting, who is connected
HyperModelsItemsAdder, Oraxen or NexoCustom items, blocks and furniture
HyperEditWorldEdit or FastAsyncWorldEditSchematics, large edits and undo
HyperMobsMythicMobsSpawning mythic mobs, casting their skills, on mythic mob death
HyperHologramsDecentHologramsHolograms with pages, for some players only, that can be clicked
HyperEconomyVaultA currency of your scripts as the server's money, for every plugin that pays through Vault

A script that uses an addon's syntax does not load without the addon; the error names the line.

Scripts in another language

Scripts are written in English, and can be written with the words of another language as well. Which one is chosen with language: in config.yml:

language: english     # english | french | spanish | portuguese | german

/hyperscript reload reads it again, so it can be changed without a restart. With french, a script can say this:

commande /bonjour:
    déclencheur:
        si le joueur a la permission "bonjour.vip":
            envoyer "&6Bonjour, %joueur%!" au joueur
        sinon:
            envoyer "&aBonjour!" au joueur
        attendre 2 secondes
        donner 1 diamond au joueur

and it is read as:

command /bonjour:
    trigger:
        if player has permission "bonjour.vip":
            send "&6Bonjour, %player%!" to player
        else:
            send "&aBonjour!" to player
        wait 2 seconds
        give 1 diamond to player

On this website, the menu at the top right shows the examples and the syntax of the docs with the words of a language, so they can be read, and copied, the way a server with that setting takes them. *Try it* always opens the English, which is what the Playground reads.

Not everything is translated, and not every translation is correct. What to know:

Addons bring the words for their own syntax (coller le schéma with HyperEdit, créer région with HyperGuard) and take the language from this setting; they have none of their own. Each addon's page lists its words.

To add words, or to say one differently, put a file named after the language into the plugin's languages folder, such as plugins/HyperScript/languages/french.txt, with a line for each:

send = envoyer | balancer
broadcast = crier

The words each language has:

EnglishFrenchSpanishPortugueseGerman
commandcommandecomandocomandobefehl
triggerdéclencheur, déclenchedisparador, accióngatilho, açãoauslöser, aktion
permissionpermisopermissãoberechtigung, recht
permission messagemessage de permissionmensaje de permisomensagem de permissãoberechtigungsnachricht
descriptiondescripcióndescriçãobeschreibung
usageutilisationusousoverwendung
aliasesaliasaliasapelidosaliase
cooldowndélai, temps de rechargeenfriamiento, tiempo de esperarecarga, tempo de esperaabklingzeit
cooldown messagemessage de délaimensaje de enfriamientomensagem de recargaabklingnachricht
optionsopcionesopçõesoptionen
variablesvariáveisvariablen
functionfonctionfunciónfunçãofunktion
returnretourner, renvoyerdevolver, retornarretornar, devolverzurückgeben
onquand, lorsquecuandoquandobei, sobald
everychaque, toutes les, tous lescadacada, a cadajede, jeden, jedes
ifsisisewenn, falls
else ifsinon sisino si, de lo contrario sisenão sesonst wenn, andernfalls wenn
elsesinonsino, de lo contrariosenãosonst, andernfalls
unlesssauf sia menos quea menos queaußer wenn
loopboucle, répéterbucle, repetirlaço, repetirschleife, wiederhole
for eachpour chaquepara cadapara cadafür jeden, für jede, für jedes
whiletant quemientrasenquantosolange
timesfoisvecesvezesmal
switchselonsegúnconformeje nach
casecascasocaso
defaultdéfaut, par défautdefecto, por defectopadrãostandard
breaksortirsalirsairabbrechen
continuecontinuercontinuarcontinuarweiter
stoparrêter, stopparar, detenerpararstopp, stoppen
waitattendreesperaresperarwarte, warten
wait untilattendre queesperar hasta queesperar até quewarte bis
tryessayerintentartentarversuche, versuchen
on erroren cas d'erreur, si erreuren caso de error, si errorem caso de erro, se errobei fehler
setdéfinir, mettreestablecer, ponerdefinir, pôrsetze, setzen
toà, au, aux, versal, a la, a los, a las, haciapara, ao, à, aos, àsauf, zu, zum, zur
addajouterañadir, agregar, sumaradicionar, somaraddiere, hinzufügen, füge
subtractsoustrairerestarsubtrairsubtrahiere, abziehen
removeretirer, enleverquitar, retirarremover, retirar, tirarentferne, entfernen
fromdepuis, de la part dedesdedesdevon, vom, aus
deletesupprimerborrar, eliminarapagar, excluirlösche, löschen
clearvidervaciar, limpiarlimpar, esvaziarleere, leeren
appendajouter à la finanexaranexaranhängen, hänge
givedonnerdardargib, geben
sendenvoyerenviar, mandarenviar, mandarsende, senden, schicke
broadcastannoncer, diffuseranunciar, difundiranunciar, transmitirverkünde, verkünden, rundruf
teleporttéléporterteletransportarteleportar, teletransportarteleportiere, teleportieren
killtuermatarmatartöte, töten
healsoignercurarcurarheile, heilen
feednourriralimentaralimentarfüttere, füttern
kickexpulserexpulsar, echarexpulsarkicke, rauswerfen
banbannirbanear, prohibirbanirbanne, bannen
spawnfaire apparaître, invoquergenerar, invocargerar, invocarerschaffe, spawne
applyappliqueraplicaraplicarwende an, anwenden
executeexécuterejecutarexecutarführe aus, ausführen
console commandcommande de consolecomando de consolacomando do consolekonsolenbefehl
cancel eventannuler l'événement, annuler événementcancelar evento, cancelar el eventocancelar evento, cancelar o eventoereignis abbrechen, breche ereignis ab
play soundjouer le son, jouer sonreproducir sonido, tocar sonidotocar som, reproduzir somspiele ton, ton abspielen
titletitretítulotítulotitel
subtitlesous titresubtítulosubtítulountertitel
action barbarre d'action, barre actionbarra de acciónbarra de açãoaktionsleiste
openouvrirabrirabriröffne, öffnen
closefermercerrarfecharschließe, schließen
playerjoueurjugadorjogadorspieler
playersjoueursjugadoresjogadoresmitspieler
all playerstous les joueurstodos los jugadorestodos os jogadoresalle spieler
alltous, toutes, touttodos, todas, todotodos, todas, tudoalle, allen
to playerau joueural jugadorao jogador, para o jogador, para jogadoran spieler, an den spieler, zum spieler
to all playersà tous les joueursa todos los jugadoresa todos os jogadores, para todos os jogadoresan alle spieler
consoleconsolakonsole
victimvictimevíctimavítimaopfer
attackerattaquantatacanteatacanteangreifer
entityentitéentidadentidadewesen, entität
blockblocbloquebloco
worldmondemundomundowelt
locationposition, emplacementubicación, posiciónlocalização, posiçãoposition, ort
inventoryinventaireinventarioinventárioinventar
itemobjetobjetoobjetogegenstand
tooloutilherramientaferramentawerkzeug
namenomnombrenomenamen
healthvie, santévida, saludvida, saúdeleben, gesundheit
max healthvie maximalevida máximavida máximamaximales leben
foodnourriture, faimcomida, hambrecomida, fomehunger, nahrung
levelniveaunivelnívelstufe
balancesoldesaldosaldokontostand, guthaben
gamemodemode de jeumodo de juegomodo de jogospielmodus
survivalsurviesupervivenciasobrevivênciaüberleben
creativecréatifcreativocriativokreativ
adventureaventureaventuraaventuraabenteuer
spectatorspectateurespectadorespectadorzuschauer
messagemensajemensagemnachricht
eventévénementeventoeventoereignis
argargumentargumentoargumentoargument
valuevaleurvalorvalorwert
indexindiceíndiceíndice
slotemplacement d'inventaire, case d'inventaireranuraespaçoplatz
createcréercrearcriarerstelle, erstellen
makefairehacerfazerlass, lasse
saydiredecirdizersage, sagen
showafficher, montrermostrarmostrarzeige, zeigen
hidecacher, masquerocultar, esconderocultar, esconderverstecke, verstecken
existsexisteexisteexisteexistiert
replaceremplacerreemplazarsubstituirersetze, ersetzen
fillremplirrellenarpreencherfülle, füllen
copycopiercopiarcopiarkopiere, kopieren
movedéplacermovermoverbewege, bewegen
placeplacerponer enpôr emplatziere, platzieren
takeprendretomarpegarnimm, nehmen
savesauvegarder, enregistrerguardarsalvarspeichere, speichern
linelignelínealinhazeile
linesligneslíneaslinhaszeilen
pagepáginapáginaseite
pagespáginaspáginasseiten
groupgroupegrupogrupogruppe
groupsgroupesgruposgruposgruppen
amountquantité, montantcantidadquantidademenge, anzahl
resetréinitialiserreiniciar, restablecerreiniciar, redefinirzurücksetzen, setze zurück
namednommé, nomméellamado, llamadachamado, chamadanamens
serverserveurservidorservidor
serversserveursservidoresservidores
regionrégionregiónregião
regionsrégionsregionesregiõesregionen
ownerpropriétairedueño, propietariodono, proprietáriobesitzer
membermembremiembromembromitglied
heighthauteuralturaalturahöhe
radiusrayonradioraio
blocksblocsbloquesblocosblöcke
texttextetextotexto
in front ofdevantdelante de, frente ana frente de, em frente avor
isestes, estáé, estáist
is notn'est pas, est pasno es, no estánão é, não estáist nicht
is setest définiestá definidoestá definidoist gesetzt
is not setn'est pas définino está definidonão está definidoist nicht gesetzt
notpas, nonnonãonicht
andetademás, eeund
orouo, uouoder
haspossèdetienetem, possuihat, besitzt
has permissiona la permission, possède la permissiontiene permiso, tiene el permisotem permissão, tem a permissãohat berechtigung, hat die berechtigung, hat das recht
containscontientcontienecontémenthält
starts withcommence parempieza con, comienza concomeça combeginnt mit
ends withfinit par, se termine partermina contermina comendet mit
is inest dansestá enestá emist in
greater thanplus grand que, supérieur àmayor quemaior quegrößer als
less thanplus petit que, inférieur àmenor quemenor quekleiner als
bigger thanplus gros quemás grande quemaior do quemehr als
smaller thanmoins quemás pequeño quemenor do queweniger als
at leastau moinsal menos, por lo menospelo menos, no mínimomindestens
at mostau pluscomo máximo, a lo sumono máximohöchstens
betweenentreentreentrezwischen
truevraiverdadero, ciertoverdadeirowahr
falsefauxfalsofalsofalsch
sneakingaccroupiagachadoagachadoschleichend, schleicht
flyingen volvolandovoandofliegend, fliegt
onlineen ligne, connectéconectado, en líneaconectadoverbunden
chance ofchance deprobabilidad dechance de, probabilidade dechance von, wahrscheinlichkeit von
ofde, du, d'un, d'unede, delde, do, da, dos, dasdes
indans, enenem, no, naim
atsur, chezsobre, en la posiciónsobre, na posiçãoam, bei der position
withavecconcommit
forpour, pendantpor, durantepor, durantefür, lang
ascomme, en tant quecomocomoals
size oftaille de, taille dutamaño de, tamaño deltamanho de, tamanho do, tamanho dagröße von, länge von
randomaléatoire, hasardaleatorioaleatóriozufällig, zufall
numbernombre, numéronúmeronúmerozahl
integerentierenterointeiroganzzahl
listlistelistalistaliste
firstpremier, premièreprimer, primero, primeraprimeiro, primeiraerster, erste, erstes
lastdernier, dernièreúltimo, últimaúltimo, últimaletzter, letzte, letztes
nowmaintenantahoraagorajetzt
*(left out)*le, la, les, un, uneel, la, los, las, un, unaos, um, umader, die, das, den, dem, ein, eine, einen, einem, einer
tick
ticks
secondsecondesegundosegundosekunde
secondssecondessegundossegundossekunden
minuteminutominuto
minutesminutosminutosminuten
hourheurehorahorastunde
hoursheureshorashorasstunden
dayjourdíadia
daysjoursdíasdiastage, tagen
player joinjoueur rejoint, joueur se connecte, connexionjugador entra, jugador se une, entradajogador entra, entradaspieler beitritt, beitritt
first joinpremière connexionprimera entrada, primera vezprimeira entrada, primeira vezerster beitritt
player quitjoueur quitte, joueur se déconnecte, déconnexionjugador sale, salidajogador sai, saídaspieler verlässt, verlassen
player deathjoueur meurt, mort du joueur, mort de joueurjugador muere, muerte de jugador, muerte del jugadorjogador morre, morte de jogador, morte do jogadorspieler stirbt, spielertod
player respawnjoueur réapparaît, réapparitionjugador reaparece, reapariciónjogador renasce, renascimentospieler respawnt, wiedereinstieg
player chatjoueur parle, joueur écritjugador habla, jugador escribejogador fala, jogador escrevespieler schreibt, spielerchat
player movejoueur bouge, joueur se déplacejugador se muevejogador se movespieler bewegt sich
player killjoueur tuejugador matajogador mataspieler tötet
player commandcommande de joueurcomando de jugadorcomando de jogadorspielerbefehl
block breakbloc cassé, casse de blocbloque roto, romper bloquebloco quebrado, quebrar blocoblock abgebaut, blockabbau
block placebloc posé, pose de blocbloque colocado, colocar bloquebloco colocado, colocar blocoblock platziert, blockplatzierung
entity damageentité blessée, dégâts d'entitéentidad dañada, daño de entidadentidade ferida, dano de entidadewesen verletzt, entitätsschaden
entity deathentité meurt, mort d'entitéentidad muere, muerte de entidadentidade morre, morte de entidadewesen stirbt, entitätstod
left clickclic gaucheclic izquierdoclique esquerdolinksklick
right clickclic droitclic derechoclique direitorechtsklick
inventory clickclic d'inventaire, clic dans l'inventaireclic de inventario, clic en inventarioclique de inventário, clique no inventárioinventarklick
level upniveau supérieur, gain de niveausubida de nivelsubida de nívelstufenaufstieg
deathmortmuertemortetod
loadchargementcargacarregamentoladen