Skip to content
CubeVote

Skript: create your own Minecraft commands without Java

24 September 2026 · 2 min read

Skript is a plugin that lets you add commands and mechanics to a Paper or Spigot server with a language close to English, without writing a line of Java. For a /discord command, a welcome message or a daily reward, it's often the quickest solution.

Install Skript

  1. Download the version of Skript compatible with your server version, from its official page (SkriptLang on GitHub).
  2. Drop the .jar into plugins/, restart.
  3. Scripts go in plugins/Skript/scripts/, with the .sk extension.

After a change, no need to restart:

/sk reload myscript

Skript shows errors with their line. As in YAML, indentation matters: always use the same number of spaces (or tabs everywhere, never a mix).

First script: a command

command /discord:
    description: The link to our Discord
    trigger:
        send "&9Join our Discord: &fdiscord.gg/your-link" to player

The command exists as soon as you reload. The &9, &f codes are chat colours; the gradient text tool generates gradient usernames and titles to paste into your messages.

React to an event

on join:
    if {first::%player's uuid%} is not set:
        set {first::%player's uuid%} to now
        broadcast "&aWelcome &f%player% &ato the server!"
        give player 16 bread

on join runs on every login. The {first::…} variable remembers who has already been here: the message and the gift are only given once. Variables in braces are saved automatically, even after a restart.

A regular announcement

every 30 minutes:
    broadcast "&eOne vote a day pushes the server up: &f/vote"

For richer messages (clickable, with hover text), the /tellraw generator produces the command to put in the script:

every 30 minutes:
    execute console command "tellraw @a [...]"

Replace [...] with the generated text. In a Skript string, a quote is written doubled: "". The JSON {"text":"Vote"} therefore becomes {""text"":""Vote""}.

Add-ons

Skript alone covers the essentials. Add-ons bring extra functions:

  • SkBee: scoreboards, advanced text, structures, and much more;
  • skript-reflect: direct access to the Java API, for cases Skript doesn't cover.

Install as few as possible: each add-on has to follow Skript's and the server's updates.

Good practices

  • One file per feature (welcome.sk, discord.sk): an error in one file doesn't stop the others from loading.
  • No loop over all players every tick: every 1 tick with calculations on each player slows down any server. Prefer events.
  • Permissions on sensitive commands: permission: myserver.admin under the command. The LuckPerms guide explains how to grant them.
  • Test on a test server, especially scripts that give items or money: a one-line mistake can hand out a thousand diamonds.

When to switch to a Java plugin

Skript is perfect for small mechanics. It becomes a problem when:

  • scripts go past a few hundred lines and nobody can find their way around any more;
  • a script runs constantly and shows up in a Spark profile;
  • an existing plugin already does the same thing, better and maintained.

Before writing a script, check whether a plugin already exists: the guide The essential plugins covers the most common needs. And if your project needs real development, CubeVote recruitment helps you find a developer for your team.

Take action with CubeVote

The site's free tools that go with this guide.

All CubeVote tools

Read next