Docs

For buyers

Licensed scripts and the loader

Buying, installing the loader, updates, and moving servers.

Paid scripts are sold with a license and delivered through the Skriptly Loader. You never get a .sk file: the loader fetches the script and hands it to Skript from memory.

What you need

  • A server running Paper (or a fork) on Java 17 or newer.
  • Skript 2.7 or newer.
  • The Skriptly Loader plugin, installed once. After that, everything is normal Skript.

Buying

Pick a script and choose Buy license. You agree to the license terms, and to the license being created straight away, which means you lose the usual 14-day right to cancel once it exists (the refund policy explains what you can still get back).

You pay on Stripe's checkout page; Skriptly never sees your card details. Your Discord receipt confirms what you bought and the terms.

Your key appears under Dashboard > Licenses, with a copy button. It's hidden until you reveal it, so it isn't shown on a shared screen.

A license is tied to a number of servers: one for a single-server license, up to five for a network license.

Bundles

Some creators sell several scripts together at a discount. A bundle is one purchase, but you get a separate license key for each script, and each works, updates and moves between servers on its own. They all appear under Dashboard > Licenses, marked as part of the bundle.

If you already own some of a bundle's scripts, you pay the bundle's discount on the rest, and the checkout shows exactly which you're buying and what you save. If you ask for a refund, it's worked out script by script: you get back what you paid for that script and only its license stops. See the refund policy.

Installing it

  1. Download SkriptlyLoader.jar and put it in your server's plugins/ folder, next to Skript, then restart.

  2. Add the load line to any script of your own, for example plugins/Skript/scripts/licensed.sk:

    on load:
        load licensed skript "crate-keys" with key "SKR-XXXX-XXXX-XXXX-XXXX"
    

    Your license page has this with your real key and script already filled in.

  3. Run /skriptly reload, or restart.

Or skip the script and list it in plugins/SkriptlyLoader/config.yml, and it loads when the server starts:

licenses:
  - script: crate-keys
    key: SKR-XXXX-XXXX-XXXX-XXXX
    # version: 2.0.1

/skriptly status shows each licensed script, its version and when it last checked in. /skriptly status and /skriptly reload need the skriptly.admin permission.

Servers and moving a license

The first time the loader runs it makes a random server ID and keeps it in plugins/SkriptlyLoader/server-id. A license only works on as many server IDs as it has slots, and a new one takes a free slot the first time it loads the script. Copying the whole server folder copies the ID, so the copy would be seen as the same server.

To move to a new server, remove the old one under Dashboard > Licenses. You can do this once a week, and the card shows when you can next do it. If a server is seen from two different addresses within a few minutes, it's flagged for a moderator to look at, because that can mean one license running in two places. Moving host or a changing home IP can cause it too, so don't worry if it happens once.

Updates

The loader checks in every 30 minutes and tells you in the console when a new approved version is out. It loads on the next restart or /skriptly reload. To hold back an update that breaks your setup, pin a version:

load licensed skript "crate-keys" version "2.0.1" with key "SKR-XXXX-XXXX-XXXX-XXXX"

If the version you're running is withdrawn, an unpinned loader moves to the latest one.

If Skriptly can't be reached

You don't go down with it. The loader keeps an encrypted copy from its last check-in, plus a signed pass, and runs from that for up to 72 hours. Each successful check-in renews the 72 hours. After that, the script won't load until the server reaches Skriptly again. If Skriptly refuses a request (a revoked license, a taken-down script), the loader deletes the cached copy instead of falling back to it. You can see the current state on the status page.

What the loader sends

Each time it loads a script or checks in, it sends your license key, the script's name and version, the random server ID, and your server's public IP address, which reaches us with every request. It sends nothing about your players, worlds, chat, other plugins or settings. The loader is open source, so you can read exactly what it does. See the privacy policy.

What it can't do

The loader deters casual sharing and makes leaks traceable: each copy is marked to your license, so a leaked copy can be traced back and its license revoked. It isn't unbreakable protection, and you must not share your key or the script. The license terms set out what you can do with it.

NextWhen something goes wrong