HyperScript
Docs

Addons

Addons are separate plugins that add to HyperScript's language. Install one next to HyperScript and its statements, values and events work in every script. Everything an addon adds is listed on the Docs page, marked with the addon's name.

1 Download the jar2 Put it in plugins/ next to HyperScript3 Restart, and its words work in every script

Once installed, /hyperscript update keeps addons up to date together with HyperScript.

17 addons
Installation, requirements and everything it adds

An addon for HyperScript for servers that Bedrock players join through Geyser and Floodgate: scripts can tell who is on Bedrock, what they play on, and show them the forms Bedrock has in place of chest menus.

command /shop:
    players only: true
    trigger:
        if platform of player is "bedrock":
            show form "shop" to player titled "Shop" with text "What would you like?" with buttons "Sword", "Bow"
        else:
            execute player command "shopmenu"

on form "shop":
    send "&aYou picked %{_button}%."

Requirements

HyperScript1.7.4 or newer, on the same server
Floodgate2.2 or newer, on the same server (with Geyser, on the server or on the proxy)
ServerPaper or Spigot 1.16.5+, Java 8+

Installation

  1. Put HyperBedrock-1.0.2.jar in the server's plugins/ folder, next to HyperScript and Floodgate.
  2. Restart the server.
  3. The console says Scripts can now use 'platform of player', .... If it says Floodgate is not running, install Floodgate first.

There is nothing to configure. On a network, Floodgate has to be on this server too, not only on the proxy, and set up as Floodgate's own guide describes.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperBedrock brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
formformulaireformularioformulárioformular
form closedformulaire ferméformulario cerradoformulário fechadoformular geschlossen
buttonsboutonsbotonesbotõesknöpfe, schaltflächen
dropdownliste déroulante, menu déroulantdesplegable, lista desplegablelista suspensaauswahlliste
inputsaisie, champ de textecampo de textocampo de textoeingabe, eingabefeld
labelétiquetteetiquetarótulobeschriftung
slidercurseurdeslizadorcontrole deslizanteschieberegler
toggleinterrupteurinterruptorinterruptorschalter
hintastucepistadicahinweis
questionpreguntaperguntafrage
titledintitulé, intituléetitulado, tituladaintitulado, intituladabetitelt
stepétapepasopassoschritt
What changed in each version

Version 1.0.2

Latest14 October 2026Download jar

Buttons with a picture, and sending a Bedrock player to another server.

Added

  • A picture beside a button: with buttons "Shop" with image "https://...". An address is fetched by the player's game; anything else is a path in a resource pack.
  • transfer <who> to bedrock server <address> sends a Bedrock player to another Bedrock server, with port <n> for a port other than 19132.

Version 1.0.1

13 October 2026Download jar
Show what changed

The words of HyperBedrock in French, Spanish, Portuguese and German.

Added

  • Scripts in another language. HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says language: french (or spanish, portuguese, german). HyperBedrock now brings the words for its own syntax, 12 words and phrases in each language, so its lines can be written that way too.
  • The language is the one set in HyperScript's config.yml. The addon has no setting of its own, and /hyperscript reload is enough after changing it.
  • It needs HyperScript 1.7.49 or newer. With an older one nothing changes: the addon works as before, in English.
  • Not everything is translated and not every translation is correct. English keeps working in every script. The addon's page in the docs lists the words.

Nothing else about the addon is different.

Version 1.0.0.1

13 October 2026Download jar
Show what changed

The documentation writes local variables with braces. The plugin itself is unchanged.

Changed

  • The examples write local variables as {_name}, with braces, the way HyperScript's own documentation does from 1.7.41 on. Nothing about the addon is different, and a script that writes _name keeps working: it is the same variable.

Version 1.0.0

11 October 2026Download jar
Show what changed

First release: Bedrock players and their forms in HyperScript scripts.

Added

  • platform of <who> is bedrock or java.
  • device of <who>, input of <who>, bedrock name of <who>, xuid of <who>, bedrock version of <who>, bedrock language of <who> and bedrock players.
  • show form <id> to <who> titled <text> with buttons ..., with an optional line of text above the buttons.
  • show question form ... for a question with two buttons.
  • show input form ... with text boxes, switches, dropdowns, sliders and labels on one form.
  • on form "<id>": runs when the form is answered, with {_button} and {_index}, or {_answers} for an input form. on form closed "<id>": runs when it is closed.

HyperCitizens

1.1.4Download jarSee its syntax
Installation, requirements and everything it adds

An addon for HyperScript that lets scripts work with Citizens NPCs: make them, move them, have them talk, and above all run a block of script when a player clicks one.

on npc click "Guide":
    make npc "Guide" say "Welcome, %player.name%! Follow the path to the market."
    give 1 bread to player

Requirements

HyperScript1.7.4 or newer, on the same server
Citizens2.0.27 or newer, on the same server
ServerPaper or Spigot 1.16.5+, Java 8+

Installation

  1. Put HyperCitizens-1.1.4.jar in the server's plugins/ folder, next to HyperScript and Citizens.
  2. Restart the server.
  3. The console says Scripts can now use 'create npc', .... If it says Citizens is not running, install Citizens first.

There is nothing to configure. NPCs made with Citizens' own /npc create work in scripts as well, and NPCs made by a script are saved by Citizens like any other.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperCitizens brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
npcpnj
npcspnjs
npc clickclic sur pnjclic en npcclique em npcnpc klick
npc left clickclic gauche sur pnjclic izquierdo en npcclique esquerdo em npcnpc linksklick
followsuivreseguirseguirfolge, folgen
followingsuitsiguiendoseguindofolgt
hologramhologrammehologramahologramahologramm
lookregardermirarolharschaue, schauen
nothingriennadanadanichts
patrolpatrouillerpatrullarpatrulharpatrouilliere, patrouillieren
patrollingen patrouillepatrullandopatrulhandopatrouilliert
renamerenommerrenombrarrenomearbenenne um, umbenennen
skinapparenceaspectoaparênciaaussehen
walkmarchercaminarandargehe, gehen
watchsurveillervigilarvigiarbeobachte, beobachten
watchingsurveillevigilandovigiandobeobachtet
createdcréécreadocriadoerstellt
What changed in each version

Version 1.1.4

Latest14 October 2026Download jar

The nearest NPC, and an NPC's name shown or hidden.

Added

  • nearest npc to <location>.
  • hide name of npc <npc> and show name of npc <npc>: the name over its head.
  • npcs within <n> blocks of <location>.
  • despawn npc <npc> takes an NPC out of the world without deleting it, spawn npc <npc> at <location> puts it back, and npc spawned <npc> says whether it is there.

Version 1.1.3

13 October 2026Download jar
Show what changed

Examples in the documentation.

Changed

  • Every statement and value in the documentation now has an example to look at and copy.

The addon itself does what it did in 1.1.2.

Version 1.1.2

13 October 2026Download jar
Show what changed

An NPC only some players see.

Added

  • hide npc <npc> from <who> and show npc <npc> to <who>: an NPC that only some players see, for a quest's character or a guide for newcomers.
  • make npc <npc> swing arm.
  on player join:
      if {%player%.quest} is not "ghost":
          hide npc "ghost" from player

Version 1.1.1

13 October 2026Download jar
Show what changed

The words of HyperCitizens in French, Spanish, Portuguese and German.

Added

  • Scripts in another language. HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says language: french (or spanish, portuguese, german). HyperCitizens now brings the words for its own syntax, 17 words and phrases in each language, so its lines can be written that way too.
  • The language is the one set in HyperScript's config.yml. The addon has no setting of its own, and /hyperscript reload is enough after changing it.
  • It needs HyperScript 1.7.49 or newer. With an older one nothing changes: the addon works as before, in English.
  • Not everything is translated and not every translation is correct. English keeps working in every script. The addon's page in the docs lists the words.

Nothing else about the addon is different.

Version 1.1.0.1

13 October 2026Download jar
Show what changed

The documentation writes local variables with braces. The plugin itself is unchanged.

Changed

  • The examples write local variables as {_name}, with braces, the way HyperScript's own documentation does from 1.7.41 on. Nothing about the addon is different, and a script that writes _name keeps working: it is the same variable.

Version 1.1.0

11 October 2026Download jar
Show what changed

Added

  • Equipment: set tool of npc <npc> to <item>, and the same for offhand, helmet, chestplate, leggings and boots; to nothing empties a slot.
  • Floating text: add hologram line <text> to npc <npc>, clear hologram of npc <npc>.
  • Watching: make npc <npc> watch players / stop watching.
  • Following: make npc <npc> follow <who> / stop following.
  • Patrols: make npc <npc> patrol <location>, <location>, ... / stop patrolling. The NPC walks from place to place and round again.

Not included

  • Conversations as a block of their own. ask player "..." with options "a", "b" into _answer inside on npc click does the same job today.

Version 1.0.0

11 October 2026Download jar
Show what changed

First release: Citizens NPCs in HyperScript scripts.

Added

  • on npc click "<name>": and on npc left click "<name>":, with player as whoever clicked, {_npc} as the NPC's number and {_name} as its name. Without a name the block runs for every NPC. A cooldown: line works, per player.
  • create npc <name> at <location>, create npc <name> as <kind> at <location>, delete npc <npc>, rename npc <npc> to <name>, set skin of npc <npc> to <player name>.
  • teleport npc <npc> to <location>, make npc <npc> walk to <location>, make npc <npc> look at <location>, make npc <npc> say <text>.
  • last created npc, npc named <name>, all npcs, name of npc <npc>, location of npc <npc>.
  • An NPC is meant by its number or by its name, compared without colours.
Installation, requirements and everything it adds

An addon for HyperScript that makes a currency of your scripts the server's money. Shops, jobs, auctions and every other plugin that pays through Vault then pay in the same coins your scripts count.

currency "coins":
    start: 100

on economy deposit:
    send "&a+%economy format of {_amount}% &7(you now have %economy format of {_balance}%)" to player

Requirements

HyperScript1.7.29 or newer, on the same server
VaultOn the same server. It is what the other plugins ask for money
ServerPaper or Spigot 1.16.5+, Java 8+

No other economy plugin is needed, and none should be installed beside it: HyperEconomy is the economy.

Installation

  1. Put HyperEconomy-1.0.3.jar in the server's plugins/ folder, next to HyperScript and Vault.
  2. Restart the server.
  3. The console says Vault now pays in the currency "coins".

plugins/HyperEconomy/config.yml has four settings:

SettingMeaning
currency: coinsThe currency of your scripts that becomes the server's money: the name in currency "coins" of player
singular: coinWhat one of it is called in the amounts other plugins show
plural: coinsWhat several of it are called
decimals: 2How many places after the point an amount has. 0 for whole coins only

The balances are HyperScript's own. They are kept where its variables are kept, need no file of their own, and are there for players who are offline.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperEconomy brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
currencymonnaie, devisemonedamoedawährung
economyéconomieeconomíaeconomiawirtschaft
economy depositdépôt d'économie, dépôtdepósito de economía, depósitodepósito de economia, depósitoeinzahlung
economy withdrawretrait d'économie, retraitretiro de economía, retirosaque de economia, saqueauszahlung
formatformatoformato
What changed in each version

Version 1.0.3

Latest14 October 2026Download jar

The richest players, all the money there is, and what other plugins last moved.

Added

  • top balances: the names of the players with the most money, richest first.
  • economy total: what everybody has, added up.
  • transactions of <who>: what other plugins last paid a player or took from them, newest first, as text such as +50 coins.
  • economy rank of <who>: where a player stands by how much they have, 1 for the richest.

Version 1.0.2

13 October 2026Download jar
Show what changed

A block that runs when one player pays another.

Added

  • on economy pay: runs when another plugin moves money from one player to another, with {_payer}, {_receiver} and {_amount}: for a log of payments, or a tax.
  on economy pay:
      log "%{_payer}% paid %{_receiver}% %economy format of {_amount}%"

Vault has no word for a payment, so one is recognised by what it is made of: a sum taken from one player and the same sum given to another at once. The block runs after the money has moved; it cannot stop the payment, though it can take the money back.

Version 1.0.1

13 October 2026Download jar
Show what changed

The words of HyperEconomy in French, Spanish, Portuguese and German.

Added

  • Scripts in another language. HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says language: french (or spanish, portuguese, german). HyperEconomy now brings the words for its own syntax, 5 words and phrases in each language, so its lines can be written that way too.
  • The language is the one set in HyperScript's config.yml. The addon has no setting of its own, and /hyperscript reload is enough after changing it.
  • It needs HyperScript 1.7.49 or newer. With an older one nothing changes: the addon works as before, in English.
  • Not everything is translated and not every translation is correct. English keeps working in every script. The addon's page in the docs lists the words.

Nothing else about the addon is different.

Version 1.0.0.1

13 October 2026Download jar
Show what changed

The documentation writes local variables with braces. The plugin itself is unchanged.

Changed

  • The examples write local variables as {_name}, with braces, the way HyperScript's own documentation does from 1.7.41 on. Nothing about the addon is different, and a script that writes _name keeps working: it is the same variable.

Version 1.0.0

12 October 2026Download jar
Show what changed

First release: a currency of your scripts as the server's money.

Added

  • A Vault economy. Every plugin that pays through Vault pays in the HyperScript currency named in config.yml. No other economy plugin is needed.
  • The currency's own rules hold for other plugins too: a new player starts with its start:, a payment past its max: is refused, and nobody can be taken below nothing.
  • on economy deposit: and on economy withdraw: when another plugin moves money, with player and {_amount}, {_balance}, {_currency} and {_name}.
  • economy format of <number> for an amount as other plugins show it, and economy currency for the currency's name.
  • set economy currency to "<name>" to make another currency the server's money.
  • singular, plural and decimals in config.yml for how amounts are written.
Installation, requirements and everything it adds

An addon for HyperScript that lets scripts use WorldEdit: save a build as a schematic, paste it anywhere and turned any way, fill and replace large areas, and take an edit back.

command /resetarena:
    permission: "arena.admin"
    trigger:
        paste schematic "arena" at {arena.corner}
        broadcast "&aThe arena has been reset."

Requirements

HyperScript1.7.4 or newer, on the same server
WorldEdit7.2 or newer, on the same server. FastAsyncWorldEdit works in its place
ServerPaper or Spigot 1.16.5+, Java 8+

Installation

  1. Put HyperEdit-1.0.5.jar in the server's plugins/ folder, next to HyperScript and WorldEdit.
  2. Restart the server.
  3. The console says Scripts can now use 'save schematic', .... If it says WorldEdit is not running, install WorldEdit first.

plugins/HyperEdit/config.yml has one setting:

SettingMeaning
max-blocks: 2000000The most blocks one line may touch. A line that asks for more is refused, with a message in the console

Schematics are WorldEdit's own, in plugins/WorldEdit/schematics: what //schem save writes, a script can paste, and the other way round.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperEdit brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
schematicschémaesquemaesquemabauplan
schematicsschémasesquemasesquemasbaupläne
pastecollerpegarcolareinfügen, füge ein
undoannulerdeshacerdesfazerrückgängig
redorefairerehacerrefazerwiederherstellen
editéditionediciónediçãobearbeitung
changedmodifié, modifiéscambiado, cambiadosalterado, alteradosgeändert
cylindercylindrecilindrocilindrozylinder
spheresphèreesferaesferakugel
hollowcreux, creusehueco, huecaoco, ocahohl
outlinecontourcontornocontornoumriss
wallsmursmuros, paredesparedes, muroswände
rotatedtourné, pivotérotado, giradorodado, giradogedreht
skippingen ignorantomitiendoignorandoohne
sizetailletamañotamanhogröße
airairearluft
What changed in each version

Version 1.0.5

Latest14 October 2026Download jar

Pyramids, and a box repeated in a direction.

Added

  • edit pyramid at <location> height <n> with <block>, with hollow at the end for one that is empty inside.
  • edit stack from <location> to <location> <n> times <direction> repeats a box, each copy straight after the last: north, south, east, west, up or down.
  • edit move from <location> to <location> <n> blocks <direction> moves a box, leaving air behind.
  • edit line from ... to ... with <block>, edit overlay from ... to ... with <block> for one layer on top of what is there, and edit drain at <location> radius <n> for taking water and lava away.

Version 1.0.4

13 October 2026Download jar
Show what changed

Examples in the documentation.

Changed

  • Every statement and value in the documentation now has an example to look at and copy.

The addon itself does what it did in 1.0.3.

Version 1.0.3

13 October 2026Download jar
Show what changed

Counting blocks, and changing a biome.

Added

  • edit count of <block> from <location> to <location>: how many blocks of a kind a box holds, for mines that refill and arenas that are won by breaking things.
  • edit biome from <location> to <location> to <biome> changes the biome of a box.
  set {_left} to edit count of diamond ore from {mine.a} to {mine.b}
  if {_left} is 0:
      edit fill from {mine.a} to {mine.b} with stone

Both keep to max-blocks in config.yml, as the other edits do.

Version 1.0.2

13 October 2026Download jar
Show what changed

The words of HyperEdit in French, Spanish, Portuguese and German.

Added

  • Scripts in another language. HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says language: french (or spanish, portuguese, german). HyperEdit now brings the words for its own syntax, 16 words and phrases in each language, so its lines can be written that way too.
  • The language is the one set in HyperScript's config.yml. The addon has no setting of its own, and /hyperscript reload is enough after changing it.
  • It needs HyperScript 1.7.49 or newer. With an older one nothing changes: the addon works as before, in English.
  • Not everything is translated and not every translation is correct. English keeps working in every script. The addon's page in the docs lists the words.

Nothing else about the addon is different.

Version 1.0.1.1

13 October 2026Download jar
Show what changed

The documentation writes local variables with braces. The plugin itself is unchanged.

Changed

  • The examples write local variables as {_name}, with braces, the way HyperScript's own documentation does from 1.7.41 on. Nothing about the addon is different, and a script that writes _name keeps working: it is the same variable.

Version 1.0.1

12 October 2026Download jar
Show what changed

Two fixes found by running it on a server with WorldEdit.

Fixed

  • air, water, lava and fire can be written as the block of an edit: edit replace gold block from _a to _b with air. Before, a script with such a line did not load.
  • A schematic that had been pasted could not be deleted or saved over on Windows until the server stopped: its file was left open.

Version 1.0.0

11 October 2026Download jar
Show what changed

First release: WorldEdit in HyperScript scripts.

Added

  • save schematic <name> from <location> to <location>, paste schematic <name> at <location> with rotated <degrees> and skipping air, and delete schematic <name>. The files are WorldEdit's own, so a script can paste what //schem save wrote.
  • edit fill, edit replace, edit walls and edit outline between two corners.
  • edit sphere at <location> radius <n> with <block> and edit cylinder at <location> radius <n> height <n> with <block>, both with hollow.
  • undo last edit and redo last edit, up to fifteen steps.
  • all schematics, schematic exists <name>, size of schematic <name> and blocks changed by last edit.
  • max-blocks in config.yml is the most blocks one line may touch.
Installation, requirements and everything it adds

An addon for HyperScript that lets scripts work with Grim Anticheat: run a block of script when Grim flags a player, and ask what Grim knows about one.

on alert:
    add 1 to {%player%.warns}
    if {%player%.warns} > 10:
        ban player for 7 days because "&cCheating (automatic ban)"

Grim decides what is cheating; HyperGrim only tells your scripts about it, so that what happens next is yours to write.

Requirements

HyperScript1.7.4 or newer, on the same server
GrimACA recent version of Grim Anticheat, on the same server
ServerPaper or Spigot 1.16.5+, Java 8+ (and whatever Grim needs)

Installation

  1. Put HyperGrim-1.0.2.jar in the server's plugins/ folder, next to HyperScript and GrimAC.
  2. Restart the server.
  3. The console says Scripts can now use 'on alert', ... and how it listens to Grim. If it says Grim is not running, install GrimAC first.

There is nothing to configure.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperGrim brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
alertalertealertaalertaalarm
grim flagsignalement grimmarca de grimmarca do grimgrim meldung
grim punishpunition grimcastigo de grimpunição do grimgrim strafe
violationsinfractionsinfraccionesinfraçõesverstöße
checkscontrôlescomprobacionesverificaçõesprüfungen
client brandmarque du clientmarca del clientemarca do clienteclient marke
client versionversion du clientversión del clienteversão do cliente
What changed in each version

Version 1.0.2

Latest14 October 2026Download jar

Telling Grim to leave a player alone for a moment, forgetting violations, and alerts on and off.

Added

  • exempt <who> from grim for <duration>. Grim leaves that player alone for the time: no flags and no pulling back. For what a script does to a player itself, such as a jump pad. Without for it is 5 seconds.
  • reset grim violations of <who>, and for <check> after it for one check only.
  • turn grim alerts of <who> on and off: whether that player sees Grim's alerts in chat.

Version 1.0.1

13 October 2026Download jar
Show what changed

A block that runs when violations reach a number.

Added

  • on alert level <n>: runs once when a player's violations of a check reach that number, and on alert level <n> "<check>": does so for one check only. No more counting by hand on every flag.
  on alert level 10 "Reach":
      loop all players:
          if loop-player has permission "staff.alerts":
              send "&c%player.name% has 10 Reach violations" to loop-player

Version 1.0.0

13 October 2026Download jar
Show what changed

First release: Grim Anticheat in HyperScript scripts.

Added

  • on alert: runs every time Grim flags a player, and on alert "<check>": for one check only. player is who was flagged; {_check}, {_violations}, {_verbose} and {_description} say more about it. on grim flag: is another way of writing it.
  on alert:
      add 1 to {%player%.warns}
      if {%player%.warns} > 10:
          ban player for 7 days because "&cCheating (automatic ban)"
  • on grim punish: runs when Grim carries out one of the commands its punishments are made of, with {_command}.
  • grim violations of <who>, for all checks together or for "<check>", and grim checks of <who> for the names of the ones they failed.
  • grim ping of <who>, client brand of <who>, client version of <who> and grim version.
  • The words of its syntax in French, Spanish, Portuguese and German, for servers whose HyperScript is set to one of them.

Grim flags often, and now and then it flags an honest player on a bad connection: count before you act, as the example does.

Installation, requirements and everything it adds

An addon for HyperScript that lets scripts work with WorldGuard regions: which region a player is in, reacting when one is entered or left, who owns a plot, adding members, and reading and setting flags.

on guard region enter "spawn":
    send title "&aSpawn" with subtitle "&7You are safe here" to player

on guard region leave "spawn":
    send action bar "&cYou left the safe zone" to player

Every phrase has the word guard in it, because HyperScript has simple regions of its own (create region, region at). Those keep working; the two kinds do not mix.

Requirements

HyperScript1.7.4 or newer, on the same server (1.7.15 or newer for copying a region and for fake blocks)
WorldGuard7.0 or newer (with WorldEdit), on the same server
ServerPaper or Spigot 1.16.5+, Java 8+

Installation

  1. Put HyperGuard-1.2.2.jar in the server's plugins/ folder, next to HyperScript and WorldGuard.
  2. Restart the server.
  3. The console says Scripts can now use 'guard regions at', .... If it says WorldGuard is not running, install WorldGuard and WorldEdit first.

There is nothing to configure. The regions themselves are made in WorldGuard, as always: //wand, select, /rg define spawn.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperGuard brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
allowsautorisepermitepermiteerlaubt
buildingconstructionconstrucciónconstruçãobauen
claimrevendiquer, réclamerreclamarreivindicarbeanspruche, beanspruchen
expandagrandir, étendreexpandir, ampliarexpandir, ampliarerweitere, erweitern
flagdrapeau, indicateurbanderabandeiraflagge
ownedpossédé, possédéeposeído, poseídapossuído, possuídaim besitz
parentpadrepaiübergeordnet
priorityprioritéprioridadprioridadepriorität
sidewayssur les côtéshacia los ladospara os ladosseitwärts
resultrésultatresultadoresultadoergebnis
fullplein, pleinelleno, llenacheio, cheiavoll
What changed in each version

Version 1.2.2

Latest14 October 2026Download jar

Asking whether there is a region of a name.

Added

  • guard region exists <name> is true if WorldGuard has a region of that name, in any world, and says nothing in the console when there is none. For asking before making one, or before using a name a player typed.

Version 1.2.1

13 October 2026Download jar
Show what changed

The words of HyperGuard in French, Spanish, Portuguese and German.

Added

  • Scripts in another language. HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says language: french (or spanish, portuguese, german). HyperGuard now brings the words for its own syntax, 11 words and phrases in each language, so its lines can be written that way too.
  • The language is the one set in HyperScript's config.yml. The addon has no setting of its own, and /hyperscript reload is enough after changing it.
  • It needs HyperScript 1.7.49 or newer. With an older one nothing changes: the addon works as before, in English.
  • Not everything is translated and not every translation is correct. English keeps working in every script. The addon's page in the docs lists the words.

Nothing else about the addon is different.

Version 1.2.0.1

13 October 2026Download jar
Show what changed

The documentation writes local variables with braces. The plugin itself is unchanged.

Changed

  • The examples write local variables as {_name}, with braces, the way HyperScript's own documentation does from 1.7.41 on. Nothing about the addon is different, and a script that writes _name keeps working: it is the same variable.

Version 1.2.0

11 October 2026Download jar
Show what changed

Added

  • Claiming land in one line: claim guard region <name> from <location> to <location> makes a region and makes the player its owner, unless the name is taken, the land touches another region or the player already owns as many as claim-limit in the new config.yml allows. guard claim result says how it went, and guard regions owned by <who> lists what a player owns.
  • Where a region is: center of guard region <name>, random location in guard region <name>, size of guard region <name> and corners of guard region <name>.
  • Changing a region's shape: expand guard region <name> by <n> blocks (with sideways to leave the height alone) and move guard region <name> to <location>. Owners, members and flags stay.
  • Working with HyperScript's own areas: copy guard region <name> as <name> (HyperScript 1.7.15+) and set fake blocks in guard region <name> to <block> / clear fake blocks in guard region <name> (HyperScript 1.7.14+).
  • When WorldGuard says no: on guard build denied: and on guard pvp denied:, so a script can answer in its own words.

Version 1.1.0

11 October 2026Download jar
Show what changed

Added

  • Making regions: create guard region <name> from <location> to <location>, with full height for a region from the bottom of the world to the top, and delete guard region <name>. Creating one under a name that exists replaces it.
  • guard regions between <location> and <location>: the regions that touch a box, for checking that new land does not overlap old.
  • guard allows building at <location> and ... for <who>: whether WorldGuard lets a player build there, with owners, members, flags and bypass all considered.
  • priority of guard region <name> and parent of guard region <name>, both settable; clear parent of guard region <name>.
  • New ready-made script Plots.hs: /plot claim|trust|untrust|info|home|unclaim.

Version 1.0.0

11 October 2026Download jar
Show what changed

First release: WorldGuard regions in HyperScript scripts.

Added

  • guard regions of <who> and guard regions at <location>: the regions a player or a place is in, the highest priority first.
  • players in guard region <name>, all guard regions, all guard regions in world <name>.
  • owners of guard region <name> and members of guard region <name>.
  • add <who> to guard region <name>, ... as owner, remove <who> from guard region <name>. A named player may be offline.
  • guard flag <flag> at <location>, set guard flag <flag> of region <name> to <value>, clear guard flag <flag> of region <name>. true and false mean allow and deny.
  • on guard region enter "<name>": and on guard region leave "<name>":, with player as the player and {_region} as the region. Without a name the block runs for every region.

HyperHolograms

1.0.6Download jarSee its syntax
Installation, requirements and everything it adds

An addon for HyperScript that lets scripts work with DecentHolograms: holograms with several pages, shown to everybody or only to some players, that run a block of script when they are clicked.

on load:
    create holo "shop" at {shop.spot} with lines "&6&lShop", "&7Click to open"

on holo click "shop":
    execute player command "shop"

The word is holo, because HyperScript has simple holograms of its own (create hologram). Those keep working; the two kinds do not mix.

Requirements

HyperScript1.7.4 or newer, on the same server
DecentHolograms2.8 or newer, on the same server
ServerPaper or Spigot 1.16.5+, Java 8+

Installation

  1. Put HyperHolograms-1.0.6.jar in the server's plugins/ folder, next to HyperScript and DecentHolograms.
  2. Restart the server.
  3. The console says Scripts can now use 'create holo', .... If it says DecentHolograms is not running, install DecentHolograms first.

There is nothing to configure. Holograms made by a script are DecentHolograms' own: they are saved by it, are still there after a restart, and can be changed with /dh as well. FancyHolograms is not supported by this version.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperHolograms brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
holo
holos
holo clickclic sur holoclic en holoclique em holoholo klick
aboveau dessus de, au dessusencima de, encimaacima de, acimaüber
followsuivreseguirseguirfolge, folgen
followingsuitsiguiendoseguindofolgt
What changed in each version

Version 1.0.6

Latest14 October 2026Download jar

Holograms that delete themselves, the nearest hologram, and how far one is seen from.

Added

  • create holo ... with lines ... for <duration>: a hologram that deletes itself when the time is up, and when the server stops.
  • nearest holo to <location>: the name of the hologram closest to a place.
  • set view distance of holo <name> to <n>: from how many blocks away it is shown.
  • holos within <n> blocks of <location>: the holograms near a place, the nearest first.

Version 1.0.5

13 October 2026Download jar
Show what changed

Examples in the documentation.

Changed

  • Every statement and value in the documentation now has an example to look at and copy.

The addon itself does what it did in 1.0.4.

Version 1.0.4

13 October 2026Download jar
Show what changed

A hologram that lists the best players and keeps itself up to date.

Added

  • create holo <name> at <location> showing top <n> by {<variable>} makes a hologram that lists the players with the most of a variable, best first, and works it out again every half minute. titled <text> puts a line over it.
  on load:
      create holo "richest" at {spawn} showing top 10 by {coins} titled "&6&lRichest players"

Version 1.0.3

13 October 2026Download jar
Show what changed

The words of HyperHolograms in French, Spanish, Portuguese and German.

Added

  • Scripts in another language. HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says language: french (or spanish, portuguese, german). HyperHolograms now brings the words for its own syntax, 6 words and phrases in each language, so its lines can be written that way too.
  • The language is the one set in HyperScript's config.yml. The addon has no setting of its own, and /hyperscript reload is enough after changing it.
  • It needs HyperScript 1.7.49 or newer. With an older one nothing changes: the addon works as before, in English.
  • Not everything is translated and not every translation is correct. English keeps working in every script. The addon's page in the docs lists the words.

Nothing else about the addon is different.

Version 1.0.2

13 October 2026Download jar
Show what changed

A hologram that follows a player.

Added

  • make holo <name> follow <who> keeps a hologram over a player's head as they move, for a name tag, a crown or a marker. make holo "tag" follow player 3 blocks above says how high over their feet it floats. stop holo <name> following lets it stay where it is.
  • While the player is offline the hologram waits where it was. Following is not remembered over a restart: start it again in on player join:.

Version 1.0.1.1

13 October 2026Download jar
Show what changed

The documentation writes local variables with braces. The plugin itself is unchanged.

Changed

  • The examples write local variables as {_name}, with braces, the way HyperScript's own documentation does from 1.7.41 on. Nothing about the addon is different, and a script that writes _name keeps working: it is the same variable.

Version 1.0.1

12 October 2026Download jar
Show what changed

One fix found by running it on a server with DecentHolograms.

Fixed

  • create holo for a hologram that is already there kept the pages it had been given before. It now has what the line says and nothing else.

Version 1.0.0

12 October 2026Download jar
Show what changed

First release: DecentHolograms in HyperScript scripts.

Added

  • create holo <name> at <location> with lines <text>, <text>, move holo <name> to <location> and delete holo <name>.
  • set line <n> of holo <name> to <text>, add line <text> to holo <name> and remove line <n> of holo <name>.
  • add page to holo <name> with lines ... and show page <n> of holo <name> to <who>.
  • show holo <name> to <who> and hide holo <name> from <who>, for one player or for all players.
  • all holos, holo exists <name>, location of holo <name>, lines of holo <name> and pages of holo <name>.
  • on holo click "<name>": with player as who clicked, and {_holo}, {_click} and {_page}.
Installation, requirements and everything it adds

An addon for HyperScript that lets scripts use what CoreProtect writes down: who changed a block, what a player placed and broke, and taking it back again.

command /who:
    permission: "staff.who"
    trigger:
        async:
            set {_name} to who last changed block at player's location
            if {_name} is set:
                send "&7Last changed by &f%{_name}%"
            else:
                send "&7Nobody is on record for this block."

command /undo <target> <time:duration>:
    permission: "staff.undo"
    trigger:
        rollback arg.1 for arg.2 within 30 blocks of player
        send "&aTaking back what %arg.1% did here."

Requirements

HyperScript1.7.4 or newer, on the same server. The examples on this page are written with the words of 1.7.59
CoreProtectA recent version, with api-enabled: true in its config (the default)
ServerPaper or Spigot 1.16.5+, Java 8+ (and whatever CoreProtect needs)

Installation

  1. Put HyperLog-1.0.2.jar in the server's plugins/ folder, next to HyperScript and CoreProtect.
  2. Restart the server.
  3. The console says Scripts can now use 'who last changed block at <location>', .... If it says CoreProtect is not running, install CoreProtect first.

There is nothing to configure.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperLog brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
rollbackrevenir en arrièrerevertirreverterzurückrollen
block changeschangements de bloccambios de bloquemudanças de blocoblockänderungen
who last changedqui a changé en dernierquién cambió por últimoquem mudou por últimower änderte zuletzt
in the lastdans les derniersen los últimosnos últimosin den letzten
What changed in each version

Version 1.0.2

Latest14 October 2026Download jar

Who placed a block, and who broke it.

Added

  • who placed block at <location> and who broke block at <location>, beside who last changed block at, which may be either.

Version 1.0.1

13 October 2026Download jar
Show what changed

Examples in the documentation.

Changed

  • Every statement and value in the documentation now has an example to look at and copy.

The addon itself does what it did in 1.0.0.

Version 1.0.0

13 October 2026Download jar
Show what changed

First release: CoreProtect in HyperScript scripts.

Added

  • who last changed block at <location>: the name of whoever last placed or broke a block.
  • block changes at <location> and block changes by <who> in the last <duration>, also within <n> blocks of <location>: what happened, newest first, a line of text each.
  async:
      set {_name} to who last changed block at player's location
      send "&7Last changed by &f%{_name}%"
  • rollback <who> for <duration>, also within <n> blocks of <location>, and rollback everything for <duration> within <n> blocks of <location>.
  • restore <who> for <duration> puts back what a rollback took away.
  • The words of its syntax in French, Spanish, Portuguese and German, for servers whose HyperScript is set to one of them.

A rollback changes the world: give the commands that do it a permission.

Installation, requirements and everything it adds

An addon for HyperScript that lets scripts work with MythicMobs: spawn a mythic mob, cast its skills, and run a block of script when one spawns or dies.

on mythic mob death "SkeletonKing":
    broadcast "&6%player.name% &ehas slain the Skeleton King!"
    add 500 to {%player%.coins}

Every phrase has the word mythic in it, because HyperScript has simple mobs of its own (mob "...":, spawn mob). Those keep working; the two kinds do not mix.

Requirements

HyperScript1.7.4 or newer, on the same server
MythicMobs5.6 or newer, on the same server
ServerPaper or Spigot 1.16.5+, Java 8+ (and whatever MythicMobs needs)

Installation

  1. Put HyperMobs-1.0.2.jar in the server's plugins/ folder, next to HyperScript and MythicMobs.
  2. Restart the server.
  3. The console says Scripts can now use 'spawn mythic mob', .... If it says MythicMobs is not running, install MythicMobs first.

There is nothing to configure. A mob is meant by its internal name, the one its file in plugins/MythicMobs/Mobs starts with: "SkeletonKing".

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperMobs brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
mythicmythiquemíticomíticomythisch
mythic mob deathmort de mob mythiquemuerte de mob míticomorte de mob míticomythischer mobtod
mythic mob spawnapparition de mob mythiqueaparición de mob míticoaparição de mob míticomythischer mobspawn
alivevivant, vivantevivo, vivavivo, vivalebendig
castlancerlanzarlançarwirke, wirken
skillcompétencehabilidadhabilidadefähigkeit
mobs
What changed in each version

Version 1.0.2

Latest14 October 2026Download jar

Mythic items, signals, and an event for a mythic mob being hurt.

Added

  • give mythic item <name> to <who>, and give <n> of mythic item ... for several. What does not fit is dropped at their feet.
  • mythic item exists <name>.
  • signal mythic mob <entity> with <text> sends a mob a signal its own skills can wait for.
  • on mythic mob damage "<name>": runs when a mythic mob is hurt, with {_damage} and {_cause}; player is who hurt it, if a player did.
  • drop mythic item <name> at <location> and all mythic items.
  • mythic mobs within <n> blocks of <location>: the mythic mobs near a place, as creatures.

Version 1.0.1

13 October 2026Download jar
Show what changed

The words of HyperMobs in French, Spanish, Portuguese and German.

Added

  • Scripts in another language. HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says language: french (or spanish, portuguese, german). HyperMobs now brings the words for its own syntax, 7 words and phrases in each language, so its lines can be written that way too.
  • The language is the one set in HyperScript's config.yml. The addon has no setting of its own, and /hyperscript reload is enough after changing it.
  • It needs HyperScript 1.7.49 or newer. With an older one nothing changes: the addon works as before, in English.
  • Not everything is translated and not every translation is correct. English keeps working in every script. The addon's page in the docs lists the words.

Nothing else about the addon is different.

Version 1.0.0.1

13 October 2026Download jar
Show what changed

The documentation writes local variables with braces. The plugin itself is unchanged.

Changed

  • The examples write local variables as {_name}, with braces, the way HyperScript's own documentation does from 1.7.41 on. Nothing about the addon is different, and a script that writes _name keeps working: it is the same variable.

Version 1.0.0

12 October 2026Download jar
Show what changed

First release: MythicMobs in HyperScript scripts.

Added

  • spawn mythic mob <name> at <location>, with level <n>, and last mythic mob for the creature that was spawned.
  • cast mythic skill <name> from <who>, from a mob or from a player.
  • mythic mob type of <entity>, mythic level of <entity> and set mythic level of <entity> to <n>.
  • mythic mob exists <name>, all mythic mobs, mythic mobs alive and mythic mobs alive of <name>.
  • remove mythic mobs <name>, or every mythic mob without a name.
  • on mythic mob death "<name>": with player as the killer, and on mythic mob spawn "<name>":. {_mob}, {_type}, {_level} and {_location} say more about it.
Installation, requirements and everything it adds

An addon for HyperScript that lets scripts work with the custom items, blocks and furniture of ItemsAdder, Oraxen and Nexo: give them, place them, tell what a player is holding, and react when a custom block is broken or clicked.

on model block break "ruby_ore":
    give model "ruby" to player
    send "&cYou found a ruby!"

Requirements

HyperScript1.7.4 or newer, on the same server
ItemsAdder, Oraxen or NexoAt least one of them, on the same server. With more than one, all are used
ServerPaper or Spigot 1.16.5+, Java 8+ (and whatever the plugin above needs)

Installation

  1. Put HyperModels-1.0.3.jar in the server's plugins/ folder, next to HyperScript and your custom-items plugin.
  2. Restart the server.
  3. The console says Scripts can now use 'give model', ... with ItemsAdder. (or Oraxen, or Nexo). If it says none of them is running, install one first.

There is nothing to configure.

Ids. A model is meant by the id its plugin gives it. ItemsAdder's have a namespace in front, "myitems:ruby"; Oraxen's and Nexo's are a single word, "ruby". Write them in quotes.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperModels brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
furnituremeublemueblemóvelmöbel
heldtenu, tenuesostenido, sostenidasegurado, seguradagehalten
modelmodèlemodelomodelomodell
modelsmodèlesmodelosmodelosmodelle
What changed in each version

Version 1.0.3

Latest14 October 2026Download jar

Furniture taken away, and events for furniture being put down and broken.

Added

  • on model furniture place "<id>": and on model furniture break "<id>":.
  • remove model furniture at <location> takes away the piece of furniture that stands there.

Version 1.0.2

13 October 2026Download jar
Show what changed

A block that runs when a custom item is used.

Added

  • on model item click "<id>": runs when a player right-clicks while holding that custom item: a wand, a key, a ticket. Until now only custom blocks and furniture could be reacted to.
  on model item click "magic_wand":
      strike lightning at location 10 blocks in front of player

Version 1.0.1

13 October 2026Download jar
Show what changed

The words of HyperModels in French, Spanish, Portuguese and German.

Added

  • Scripts in another language. HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says language: french (or spanish, portuguese, german). HyperModels now brings the words for its own syntax, 4 words and phrases in each language, so its lines can be written that way too.
  • The language is the one set in HyperScript's config.yml. The addon has no setting of its own, and /hyperscript reload is enough after changing it.
  • It needs HyperScript 1.7.49 or newer. With an older one nothing changes: the addon works as before, in English.
  • Not everything is translated and not every translation is correct. English keeps working in every script. The addon's page in the docs lists the words.

Nothing else about the addon is different.

Version 1.0.0.1

13 October 2026Download jar
Show what changed

The documentation writes local variables with braces. The plugin itself is unchanged.

Changed

  • The examples write local variables as {_name}, with braces, the way HyperScript's own documentation does from 1.7.41 on. Nothing about the addon is different, and a script that writes _name keeps working: it is the same variable.

Version 1.0.0

11 October 2026Download jar
Show what changed

First release: custom items, blocks and furniture in HyperScript scripts.

Added

  • give model <id> to <who>, give <n> of model <id> to <who>, take model <id> from <who>, take <n> of model <id> from <who> and drop model <id> at <location>.
  • held model of <who>, amount of model <id> of <who>, model exists <id> and all models.
  • place model block <id> at <location>, remove model block at <location> and model block at <location>.
  • place model furniture <id> at <location>.
  • on model block break "<id>":, on model block place "<id>":, on model block click "<id>": and on model furniture click "<id>":, with {_model} and {_location}.
  • Works with ItemsAdder, Oraxen and Nexo, and with more than one of them at once.
Installation, requirements and everything it adds

An addon for HyperScript that lets scripts put players who are not there on the tab list, and send any packet to a player, through PacketEvents.

command /staff:
    trigger:
        add fake tab player "Console" named "&c&lConsole" with ping 0 with order 100
        add fake tab player "Herobrine" named "&7Herobrine" with skin of "Notch" for player
        send "&aLook at the tab list."

command /rain:
    trigger:
        send packet "change game state" with "begin raining", 0 to player
        send "&7It rains, for you alone."

Requirements

HyperScript1.7.4 or newer, on the same server
PacketEventsVersion 2.x, as a plugin on the same server
ServerPaper or Spigot 1.16.5+, Java 8+ (and whatever PacketEvents needs)

Installation

  1. Put HyperPackets-1.0.0.jar in the server's plugins/ folder, next to HyperScript and PacketEvents.
  2. Restart the server.
  3. The console says Scripts can now use 'add fake tab player "Herobrine"' .... If it says PacketEvents is not running, install PacketEvents first.

There is nothing to configure.

What changed in each version

Version 1.0.0

Latest14 October 2026Download jar

A new addon: players on the tab list who are not there, and any packet sent to a player.

Added

  • Fake players on the tab list. add fake tab player "Herobrine" puts a line on the list players see when they hold Tab, with nobody on the server for it. After the name, in any order: named "&cHerobrine" for what is shown, with skin of "Notch" for the head, with ping 20 for the bars, with order 5 for where on the list (the higher, the further up; Minecraft 1.21.2 and newer), and for <who> to show it to one player only.
  add fake tab player "Console" named "&c&lConsole" with ping 0 with order 100
  add fake tab player "Herobrine" with skin of "Notch" for player
  • Changing and removing them. set tab name of fake player "Herobrine" to "&4Herobrine", and the same with tab ping, tab order and tab skin. remove fake tab player "Herobrine" takes one off, remove all fake tab players all of them, and fake tab players is a list of their names. Players who join later are shown the ones that are for everybody.
  • Any packet. send packet <name> with <value>, <value> to <who> sends one of the roughly 160 packets PacketEvents knows, by its name: "ChangeGameState" or "change game state". Numbers, texts, words from a fixed set, places, players and entities are turned into what the packet asks for.
  send packet "change game state" with "begin raining", 0 to player
  send packet "entity animation" with player, "swing main arm" to all players
  • /hyperpackets lists every packet, and /hyperpackets <name> says what one takes, in order. A packet given something it does not take is not sent, and the console says what it takes.
Installation, requirements and everything it adds

An addon for HyperScript that lets scripts read and change LuckPerms groups: which rank a player has, moving them up, giving a rank for a while, and reacting when a rank changes.

command /rankup:
    players only: true
    trigger:
        if group of player is "member" and {%player%.coins} >= 1000:
            subtract 1000 from {%player%.coins}
            set group of player to "veteran"
            broadcast "&6%player.name% &eranked up to Veteran!"

Requirements

HyperScript1.5.9 or newer, on the same server
LuckPerms5.4 or newer, on the same server
ServerPaper or Spigot 1.16.5+, Java 8+

Installation

  1. Put HyperPerms-1.1.6.jar in the server's plugins/ folder, next to HyperScript and LuckPerms.
  2. Restart the server.
  3. The console says Scripts can now use 'group of', .... If it says LuckPerms is not running, install LuckPerms first.

There is nothing to configure. The groups themselves are made in LuckPerms, as always: /lp creategroup vip.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperPerms brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
grantaccorderconcederconcedergewähre, gewähren
revokerévoquerrevocarrevogarentziehe, entziehen
weightpoidspesopesogewicht
meta
group changechangement de groupecambio de grupomudança de grupogruppenwechsel
What changed in each version

Version 1.1.6

Latest14 October 2026Download jar

Making and deleting groups, prefixes and suffixes, and a list of a player's permissions.

Added

  • create group <name> and delete group <name>.
  • set prefix of <who> to <text> and set suffix of ..., for a player or, with of group <name>, for a group. clear prefix of ... takes it away again.
  • permissions of <who>: a list of every permission a player who is online has, their own and those of their groups.
  • group exists <name>.
  • grant group <name> permission <node> and revoke permission <node> from group <name>.
  • set weight of group <name> to <n> and permissions of group <name>.

Version 1.1.5

13 October 2026Download jar
Show what changed

Examples in the documentation, and a word that works in every language.

Changed

  • The group a player has on a track is now rank of <who> on track <name>. position of still works, but in a script written in French or German that word is read as location, so rank of is the one to use.
  • Every statement and value in the documentation now has an example to look at and copy.

Version 1.1.4

13 October 2026Download jar
Show what changed

Tracks: moving a player up and down a ladder of ranks.

Added

  • promote <who> on track <name> and demote <who> on track <name> move a player one group up or down a track made in LuckPerms.
  • position of <who> on track <name> is the group of the track they are in, and groups of track <name> the whole ladder.
  command /promote <target:player>:
      permission: "staff.promote"
      trigger:
          promote arg.1 on track "staff"
          send "&a%arg.1% is now %position of arg.1 on track "staff"%"

Version 1.1.3

13 October 2026Download jar
Show what changed

The words of HyperPerms in French, Spanish, Portuguese and German.

Added

  • Scripts in another language. HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says language: french (or spanish, portuguese, german). HyperPerms now brings the words for its own syntax, 5 words and phrases in each language, so its lines can be written that way too.
  • The language is the one set in HyperScript's config.yml. The addon has no setting of its own, and /hyperscript reload is enough after changing it.
  • It needs HyperScript 1.7.49 or newer. With an older one nothing changes: the addon works as before, in English.
  • Not everything is translated and not every translation is correct. English keeps working in every script. The addon's page in the docs lists the words.

Nothing else about the addon is different.

Version 1.1.2

13 October 2026Download jar
Show what changed

How long a time-limited group still lasts.

Added

  • time left in group <name> of <who> gives how long a membership that was given for a limited time still has, as a duration: send "Your VIP lasts another %{_left}%.". It is unset for a player who is not in the group, or who is in it for good.

Version 1.1.1.1

13 October 2026Download jar
Show what changed

The documentation writes local variables with braces. The plugin itself is unchanged.

Changed

  • The examples write local variables as {_name}, with braces, the way HyperScript's own documentation does from 1.7.41 on. Nothing about the addon is different, and a script that writes _name keeps working: it is the same variable.

Version 1.1.1

12 October 2026Download jar
Show what changed

One fix found by running it on a server with LuckPerms.

Fixed

  • players in group <name> counted every server operator into every group, and into groups that do not exist. It now asks LuckPerms who is in the group.

Version 1.1.0

11 October 2026Download jar
Show what changed

Added

  • Single permissions, saved by LuckPerms: grant <who> permission <node>, grant <who> permission <node> for <duration>, revoke permission <node> from <who>. A named player may be offline; a new time limit replaces an old one.
  • all groups: every group LuckPerms has.
  • players in group <name>: the online players in a group, directly or through another group.
  • weight of group <name>.
  • Meta: meta <key> of <who>, set meta <key> of <who> to <value>, clear meta <key> of <who>.

Version 1.0.0

11 October 2026Download jar
Show what changed

The first release. HyperPerms is an addon for HyperScript that lets scripts read and change LuckPerms groups.

Added

  • Reading: group of <who> (the primary group), groups of <who> (all of them), prefix of <who> and suffix of <who>.
  • Changing: add <who> to group "<name>", the same for <duration> for a rank that ends by itself, remove <who> from group "<name>", and set group of <who> to "<name>" to move a player out of every other group and into one.
  • on group change: runs whenever a player's groups change, whether a script, an /lp command or a time limit did it, with {_player}, {_group} and {_groups} saying who and what.
  • Changing groups works for players who are offline; reading is for players who are online.
Installation, requirements and everything it adds

An addon for HyperScript that lets scripts work with the plots of PlotSquared: whose plot a place is, which plots a player has, and a block of script that runs when somebody walks into a plot or out of one.

on plot enter:
    if {_owner} is set:
        send action bar "&7You are on &f%{_owner}%&7's plot" to player
    else:
        send action bar "&7This plot is free. &f/plot claim" to player

command /myplots:
    trigger:
        send "&7You have &f%plot count of player% &7plots: &f%plots of player%"

Requirements

HyperScript1.7.4 or newer, on the same server
PlotSquaredVersion 6 or 7, on the same server
ServerPaper or Spigot 1.16.5+, Java 8+ (and whatever PlotSquared needs)

Installation

  1. Put HyperPlots-1.0.2.jar in the server's plugins/ folder, next to HyperScript and PlotSquared.
  2. Restart the server.
  3. The console says Scripts can now use 'on plot enter', .... If it says it does not know this version of PlotSquared, the words load but give nothing.

There is nothing to configure.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperPlots brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
plot enterentrée de parcelleentrada de parcelaentrada de lotegrundstück betreten
plot leavesortie de parcellesalida de parcelasaída de lotegrundstück verlassen
plot countnombre de parcellesnúmero de parcelasnúmero de lotesgrundstückanzahl
plotsparcellesparcelaslotesgrundstücke
plotparcelleparcelalotegrundstück
trustedde confiancede confianzade confiançavertraute
deniedrefusésdenegadosnegadosabgelehnte
What changed in each version

Version 1.0.2

Latest14 October 2026Download jar

Changing who a plot lists, and whether a plot is claimed.

Added

  • add <who> to plot at <location> puts a player on the plot's members; as trusted on its trusted players.
  • deny <who> from plot at <location> keeps them out, and remove <who> from plot at <location> takes them off all three lists.
  • plot claimed at <location> is true where there is a plot that somebody owns.

Version 1.0.1

13 October 2026Download jar
Show what changed

Examples in the documentation.

Changed

  • Every statement and value in the documentation now has an example to look at and copy.

The addon itself does what it did in 1.0.0.

Version 1.0.0

13 October 2026Download jar
Show what changed

First release: PlotSquared in HyperScript scripts.

Added

  • on plot enter: and on plot leave: run when a player walks, or is taken, into a plot or out of one, with {_plot}, {_owner} and {_owners}.
  on plot enter:
      if {_owner} is set:
          send action bar "&7You are on &f%{_owner}%&7's plot" to player
  • plot at <location> and plot of <who>: the number of the plot a place is in.
  • owner of plot at <location>, and owners, members, trusted and denied of plot at <location> for the lists.
  • plots of <who> and plot count of <who>.
  • The words of its syntax in French, Spanish, Portuguese and German, for servers whose HyperScript is set to one of them.
Installation, requirements and everything it adds

An addon for HyperScript that lets scripts change the skin a player wears, through SkinsRestorer: a disguise for a game, a team's colours, a skin as a reward.

command /skin <name>:
    permission: "skin.use"
    trigger:
        set skin of player to arg.1
        send "&aYou now look like %arg.1%."

command /unskin:
    trigger:
        reset skin of player
        send "&7You look like yourself again."

Requirements

HyperScript1.7.4 or newer, on the same server
SkinsRestorerVersion 15 or newer; version 14 is tried as well
ServerPaper or Spigot 1.16.5+, Java 8+ (and whatever SkinsRestorer needs)

Installation

  1. Put HyperSkin-1.0.2.jar in the server's plugins/ folder, next to HyperScript and SkinsRestorer.
  2. Restart the server.
  3. The console says Scripts can now use 'set skin of player to "Notch"', .... If it says SkinsRestorer is not running, install SkinsRestorer first.

There is nothing to configure.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperSkin brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
skinapparenceaspectoaparênciaaussehen
What changed in each version

Version 1.0.2

Latest14 October 2026Download jar

The skin somebody wears, for a head.

Added

  • skin texture of <who>: the skin a player has on right now, as the text a head takes: give 1 player head textured {_texture} to player. Heads with a texture need HyperScript 1.7.64 or newer.
  • copy skin of <who> to <who> gives the second player the skin the first one wears.

Version 1.0.1

13 October 2026Download jar
Show what changed

Its statements now show in the documentation.

Fixed

  • The documentation website listed nothing for HyperSkin: set skin of, reset skin of and skin of were missing from the reference and from the search. They are there now, each with an example.

The addon itself does what it did in 1.0.0.

Version 1.0.0

13 October 2026Download jar
Show what changed

First release: SkinsRestorer in HyperScript scripts.

Added

  • set skin of <who> to <text> gives a player the skin of that name: a player's name, a skin SkinsRestorer has under that name, or the address of a skin image.
  command /skin <name>:
      permission: "skin.use"
      trigger:
          set skin of player to arg.1
  • reset skin of <who> gives them their own back.
  • skin of <who> is what the skin they were given is called; unset while they wear their own.
  • The words of its syntax in French, Spanish, Portuguese and German, for servers whose HyperScript is set to one of them.

HyperVelocity

1.2.2Download jarSee its syntax
Installation, requirements and everything it adds

An addon for HyperScript that lets scripts on one server see and talk to the other servers behind a Velocity proxy: who is online across the network, moving players between servers, and sending variables and events from one server to another.

command /lobby:
    trigger:
        send player to server "lobby"

command /netban <player>:
    permission: "staff.ban"
    trigger:
        send event "ban" with variable "Target", arg.1 to all servers

Requirements

HyperScript1.5.9 or newer, on the same server
ServerPaper or Spigot 1.16.5+, Java 8+
ProxyVelocity, with bungee-plugin-message-channel = true in velocity.toml (the default). BungeeCord and Waterfall work too
On the proxyNothing to install

Installation

  1. Put HyperVelocity-1.2.2.jar in the plugins/ folder of every game server whose scripts should use it, next to HyperScript. It does not go on the proxy.
  2. Restart those servers.
  3. Join through the proxy and run /hypervelocity status (or /hv status). It shows the name the proxy knows this server by, the other servers, and how many players are on the network. If it says the proxy has not answered, see How it works and limits.

Settings are in plugins/HyperVelocity/config.yml:

refresh-seconds: 3
accept-variables: []
share-variables: []
log-incoming: false
SettingMeaning
refresh-secondsHow often this server asks the proxy who is online. The proxy values below are as fresh as this
accept-variablesIf not empty, a variable sent from another server is only accepted when its name starts with one of these, e.g. ["shared."]
share-variablesIf not empty, another server that asks for a variable only gets it when its name starts with one of these
log-incomingWrite a line to the log for every variable and event that arrives

How it works and limits

HyperVelocity uses the plugin-message channel that proxies provide for exactly this. A message on that channel travels along a player's connection, which gives two rules:

  • A server can only send while it has at least one player online. With nobody on, there is no connection to the proxy to send along. HyperVelocity says so in the log, once a minute at most.
  • A server only receives while it has at least one player online. The proxy does not keep messages for an empty server. A variable or event sent to it then is lost.

So HyperVelocity suits things that happen because players are around: moving them, network-wide chat and bans, keeping a value in step between busy servers. For data that must arrive no matter what, use a database that every server reads: set storage.type: mysql in HyperScript's config.yml on each server, pointing at the same database.

Other things to know:

  • A message can be at most about 30,000 bytes. A very long list may not fit; HyperVelocity says so in the log instead of sending part of it.
  • The proxy values are refreshed every refresh-seconds, not on every read.
  • Servers behind the proxy trust each other: any of them can send events and variables to any other. Use accept-variables where that is too much.

The whole network

command /alert <message>:
    permission: "network.alert"
    trigger:
        broadcast "&c[Network] &f%args%" to network

command /gkick <target> <reason>:
    permission: "network.kick"
    trigger:
        kick arg.1 from network because "&cKicked by staff"
        send "&e%arg.1% was kicked from the network."

command /pvp:
    players only: true
    trigger:
        if server "pvp" is offline:
            send "&cThe PvP server is down right now."
            stop
        send player to server "pvp"
SyntaxEffect
broadcast <text> to networkA chat message to every player on every server
kick <who> from networkDisconnect a player, whichever server they are on
kick <who> from network because <text>The same, with the reason they are shown
server <name> is onlineWhether the server could be reached the last time it was tried
server <name> is offlineThe opposite
  • A server counts as online when this server can open a connection to the address the proxy has for it. That is tried about every fifteen seconds, so the answer can be a little old, and a server nothing is known about yet counts as offline.
  • With track-all-servers: true in config.yml (the default), players on server <name> is known for every server from the start. Before 1.1.0 a server was only asked about after a script had asked for it once.
  • Like everything else here, these messages travel with a player: nothing is sent while nobody is online on this server.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperVelocity brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
becauseparce que, carporqueporqueweil
channelcanalcanalcanalkanal
networkréseauredredenetzwerk
offlinehors ligne, déconnectédesconectado, fuera de líneadesconectadogetrennt
partyéquipeequipoequipetrupp
requestdemandesolicitudpedidoanfrage
variablevariável
What changed in each version

Version 1.2.2

Latest14 October 2026Download jar

Players joining, leaving and changing server anywhere on the network, and a server's ping.

Added

  • on network join:, on network leave: and on server switch: run on this server for players anywhere on the network. {_player} is their name, {_server} where they are, and {_from} where they came from.
  • ping of server <name>: how long that server took to answer the last time it was tried, in milliseconds.
  • network server of <who>: which server of the network a player is on.

Version 1.2.1

13 October 2026Download jar
Show what changed

The words of HyperVelocity in French, Spanish, Portuguese and German.

Added

  • Scripts in another language. HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says language: french (or spanish, portuguese, german). HyperVelocity now brings the words for its own syntax, 7 words and phrases in each language, so its lines can be written that way too.
  • The language is the one set in HyperScript's config.yml. The addon has no setting of its own, and /hyperscript reload is enough after changing it.
  • It needs HyperScript 1.7.49 or newer. With an older one nothing changes: the addon works as before, in English.
  • Not everything is translated and not every translation is correct. English keeps working in every script. The addon's page in the docs lists the words.

Nothing else about the addon is different.

Version 1.2.0.1

13 October 2026Download jar
Show what changed

The documentation writes local variables with braces. The plugin itself is unchanged.

Changed

  • The examples write local variables as {_name}, with braces, the way HyperScript's own documentation does from 1.7.41 on. Nothing about the addon is different, and a script that writes _name keeps working: it is the same variable.

Version 1.2.0

11 October 2026Download jar
Show what changed

Added

  • Parties across servers: send party of <who> to server <name> moves a whole party, and send group <list> to server <name> moves any list of players, such as those a queue hands over. Where they arrive they are one party again. Keeping them together needs HyperScript 1.7.19 or newer on both servers; on older versions they still arrive, each for themselves.
  • Asking another server: request variable {<name>} from server <name>, with on receive variable <name>: for when the answer has come. A new setting, share-variables, limits what a server gives out.
  • Channels: send <text> to network channel <name> and on network message <name>:, for staff chat and announcements across the network.
  • Server status: max players of server <name>, and the events on server online <name>: and on server offline <name>:.

Version 1.1.0

11 October 2026Download jar
Show what changed

Changed

  • Every server the proxy knows is now asked about from the start, so players on server <name> has an answer the first time a script asks. Before, a server was only tracked after a script had asked for it once, and the first answer was empty. Turn this off with track-all-servers: false in config.yml.

Added

  • broadcast <text> to network: a chat message to every player on every server.
  • kick <who> from network and kick <who> from network because <text>.
  • server <name> is online / server <name> is offline: whether this server could open a connection to the address the proxy has for that server, tried about every fifteen seconds. A server nothing is known about yet counts as offline.

Version 1.0.0

11 October 2026Download jar
Show what changed

The first release. HyperVelocity is an addon for HyperScript that lets scripts see and reach the other servers behind a Velocity proxy. It is installed on the game servers, next to HyperScript; nothing goes on the proxy.

Added

  • Proxy players: all proxy players, this server players, players on server "<name>", proxy servers, proxy player count and this server name.
  • Proxy commands: send <who> to server "<name>" moves a player, everyone on this server, or a named player anywhere on the network.
  • Proxy variables: send variable {<name>} to server "<name>" and ... to all servers copy a variable's value to the same variable on another server. Every kind of value works, and a player's own variable arrives as that player's own.
  • Proxy events: send event "<name>" with variable "<name>", <value> to server "<name>" runs the on receive event "<name>": blocks on another server, with each attached value as a local variable and {_sender_server} saying where it came from.
  • /hypervelocity status (/hv status) shows the server's name on the proxy, the other servers, the player count, and how long ago the proxy last answered.
  • Settings: refresh-seconds, accept-variables (only take variables whose names start a certain way) and log-incoming.

Things to know

  • Messages travel along a player's connection. A server can only send while it has a player online, and only receives while it has one. A variable or event sent to an empty server is lost.
  • Velocity needs bungee-plugin-message-channel = true in velocity.toml, which is the default.
Installation, requirements and everything it adds

An addon for HyperScript that lets scripts work with Simple Voice Chat: put players in voice groups, mute them, and react to who connects.

on voice connect:
    send "&aVoice chat is on. &7Your team channel opens when the game starts."

command /teamvoice <team>:
    players only: true
    trigger:
        add player to voice group arg.1
        send "&aYou now talk with team %arg.1%."

Requirements

HyperScript1.7.4 or newer, on the same server
Simple Voice Chat2.5 or newer, on the same server. Players need the mod too; those without it are simply not moved or muted
ServerPaper or Spigot 1.16.5+, Java 8+

Installation

  1. Put HyperVoice-1.0.2.jar in the server's plugins/ folder, next to HyperScript and Simple Voice Chat.
  2. Restart the server.
  3. The console says Scripts can now use 'add player to voice group', .... If it says Simple Voice Chat is not running, install it first.

There is nothing to configure.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperVoice brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
voicevoixvozvozsprache
hiddencaché, cachéeoculto, ocultaoculto, ocultaversteckt
isolatedisolé, isoléeaislado, aisladaisolado, isoladaisoliert
muterendre muetsilenciarsilenciarstummschalten, schalte stumm
mutedmuet, muettesilenciado, silenciadasilenciado, silenciadastumm
unmuterendre la voixquitar silenciotirar silênciostummschaltung aufheben
passwordmot de passecontraseñasenhapasswort
What changed in each version

Version 1.0.2

Latest14 October 2026Download jar

Players who hear nothing, and how far a player's voice carries.

Added

  • deafen <who> and undeafen <who>: that player is sent nobody's voice. voice deafened <who> says whether they are.
  • set voice distance of <who> to <n>: how many blocks that player's voice carries, less than the server's own distance or more. reset voice distance of <who> gives it back, and voice distance of <who> reads it.
  • voice disabled <who>: true if a player has switched the voice chat off in their own game.

Version 1.0.1

13 October 2026Download jar
Show what changed

The words of HyperVoice in French, Spanish, Portuguese and German.

Added

  • Scripts in another language. HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says language: french (or spanish, portuguese, german). HyperVoice now brings the words for its own syntax, 7 words and phrases in each language, so its lines can be written that way too.
  • The language is the one set in HyperScript's config.yml. The addon has no setting of its own, and /hyperscript reload is enough after changing it.
  • It needs HyperScript 1.7.49 or newer. With an older one nothing changes: the addon works as before, in English.
  • Not everything is translated and not every translation is correct. English keeps working in every script. The addon's page in the docs lists the words.

Nothing else about the addon is different.

Version 1.0.0.1

13 October 2026Download jar
Show what changed

The documentation writes local variables with braces. The plugin itself is unchanged.

Changed

  • The examples write local variables as {_name}, with braces, the way HyperScript's own documentation does from 1.7.41 on. Nothing about the addon is different, and a script that writes _name keeps working: it is the same variable.

Version 1.0.0

11 October 2026Download jar
Show what changed

First release: Simple Voice Chat in HyperScript scripts.

Added

  • create voice group <name>, with with password <text>, hidden, open or isolated, and delete voice group <name>.
  • add <who> to voice group <name> and remove <who> from voice group.
  • mute voice of <who> and unmute voice of <who>.
  • voice connected <who>, voice muted <who>, voice group of <who>, voice groups and players in voice group <name>.
  • on voice connect:, on voice disconnect:, on voice group join "<name>": and on voice group leave "<name>":, with player as the player and {_group} as the group.
Installation, requirements and everything it adds

An addon for HyperScript that hands scripts the votes your server gets on voting sites: reward the voter, count votes, keep streaks, and throw a vote party.

on vote:
    give 3 diamond to player
    broadcast "&a%player.name% &7voted on &f%{_service}%&7 and has now voted &f%{_votes}% &7times."

Requirements

HyperScript1.7.4 or newer, on the same server
NuVotifier or VotifierOn the same server, set up with your voting sites. Without it no votes arrive, but test votes still work
ServerPaper or Spigot 1.16.5+, Java 8+

Installation

  1. Put HyperVotes-1.0.4.jar in the server's plugins/ folder, next to HyperScript and NuVotifier.
  2. Restart the server.
  3. The console says Scripts can now use 'on vote:', .... If it says Votifier is not installed, install NuVotifier and restart.

plugins/HyperVotes/config.yml has two settings:

SettingMeaning
keep-offline-votes: trueA vote for someone who is offline waits until they join, and on vote: runs then
remind-every: 0Every this many minutes, on vote reminder: runs for each player who is online and has not voted today. 0 for never
party-every: 0Every this many votes on the whole server, on vote party: runs. 0 switches parties off

The counts are kept in plugins/HyperVotes/votes.yml.

Scripts in another language

HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says so (language: french). HyperVotes brings the words for its own syntax and takes the language from that setting: there is nothing to set here. It needs HyperScript 1.7.49 or newer; with an older one the addon works as before, in English.

Not everything is translated and not every translation is correct. It is a list of words, not a grammar, so the words of a line stay in the order English has them, and English always works as well. Everything else a line is made of (send, to, player, create, ...) is in HyperScript's own list, under *Writing scripts*.

EnglishFrenchSpanishPortugueseGerman
votevotovotostimme
votesvotosvotosstimmen
votersvotantsvotantesvotanteswähler
offlinehors ligne, déconnectédesconectado, fuera de líneadesconectadogetrennt
partyéquipeequipoequipetrupp
What changed in each version

Version 1.0.4

Latest14 October 2026Download jar

Votes this month, and a block for a player's fiftieth vote.

Added

  • on vote milestone <n>: runs the one time a player's own votes get to that number: on vote milestone 50:.
  • votes this month of <who> and top voters this month.
  • on vote streak <n>: runs the one time a player's streak gets to that many days in a row.
  • set votes of <who> to <n>, for carrying votes over from another plugin or putting a mistake right.

Version 1.0.3

13 October 2026Download jar
Show what changed

Examples in the documentation.

Changed

  • Every statement and value in the documentation now has an example to look at and copy.

The addon itself does what it did in 1.0.2.

Version 1.0.2

13 October 2026Download jar
Show what changed

Who has voted today, and a reminder for who has not.

Added

  • votes today of <who>: how many times a player has voted today, 0 for somebody who has not yet.
  • on vote reminder: runs for every player who is on the server and has not voted today, every remind-every minutes (a new line in config.yml; 0, the default, switches it off).
  on vote reminder:
      send "&eYou have not voted today. &f/vote &ekeeps your streak of %{_streak}% going."

Version 1.0.1

13 October 2026Download jar
Show what changed

The words of HyperVotes in French, Spanish, Portuguese and German.

Added

  • Scripts in another language. HyperScript reads scripts written with the words of French, Spanish, Portuguese or German when its config.yml says language: french (or spanish, portuguese, german). HyperVotes now brings the words for its own syntax, 5 words and phrases in each language, so its lines can be written that way too.
  • The language is the one set in HyperScript's config.yml. The addon has no setting of its own, and /hyperscript reload is enough after changing it.
  • It needs HyperScript 1.7.49 or newer. With an older one nothing changes: the addon works as before, in English.
  • Not everything is translated and not every translation is correct. English keeps working in every script. The addon's page in the docs lists the words.

Nothing else about the addon is different.

Version 1.0.0.1

13 October 2026Download jar
Show what changed

The documentation writes local variables with braces. The plugin itself is unchanged.

Changed

  • The examples write local variables as {_name}, with braces, the way HyperScript's own documentation does from 1.7.41 on. Nothing about the addon is different, and a script that writes _name keeps working: it is the same variable.

Version 1.0.0

11 October 2026Download jar
Show what changed

First release: votes from voting sites in HyperScript scripts.

Added

  • on vote: runs for every vote, with player as the voter. on vote "<site>": is for one voting site only. {_voter}, {_service}, {_votes}, {_streak} and {_late} say more about it.
  • A vote for a player who is offline is kept and handed to on vote: when they next join, so no reward is lost. on offline vote: runs at once for such a vote, without a player.
  • on vote party: runs every so many votes on the whole server (party-every in config.yml), and votes until party says how many are missing.
  • votes of <who>, vote streak of <who>, last vote of <who>, total votes and top voters.
  • add test vote for <who> and add test vote for <who> from <site> try a script out without a voting site. reset votes of <who> and reset all votes start counts again.