Skip to main content
This page lists every permission a plugin can name in its manifest’s permissions, what each one unlocks, and what other players can see when a plugin uses it.

How permissions work

A plugin asks for permissions in reskate-plugin.json:
A function or event outside the plugin’s permissions raises a Lua error that names what it needs:
The event error comes from reskate.on, when you register the handler, not when the event fires.
A name not on this page fails the manifest: unknown permission "<name>": check the spelling, or update ReSkate. Every permission ReSkate plans is on the list already, so a manifest written for a later ReSkate still loads here.

The base set: no permission

Every plugin has these without asking:
  • reskate.id, reskate.api_version, reskate.side, reskate.log, print and require (base)
  • reskate.on with the events load, unload, tick, level_loaded and level_unloading (events)
  • reskate.time.now, after, every and cancel (time); slow and speed need game.speed
  • reskate.level.current (base)
  • reskate.package.read, read_json and list: the plugin’s own files (package)
  • reskate.json.encode and decode (JSON)
  • reskate.expose, require_plugin, emit and on_plugin: functions and events between plugins (libraries)

Interface

The skater

The world

Multiplayer

Game and files

A permission says what a plugin may try, not that the game lets it. Many calls still answer false and a reason when the game refuses: the host turned something off, you are a guest in a session, or the call came too often. The API pages say which.

Shared budgets

Some functions under different permissions share one rate budget. They are easy to trip over together:
  • reskate.skater.noclip, boost and freeze, reskate.camera.follow, reskate.ai.spawn, reskate.animation.play, reskate.board.toss and reskate.outfit.set: 4 calls a second between them.
  • reskate.skater.teleport and reskate.trainer.back: 2 a second between them.
  • reskate.music.play, pause, next, previous and game_next: 2 a second between them.
  • reskate.chat.send and reskate.server.say share one clock: a chat.send must come 3 s after the last line of either, and a server.say 1 s after.
Limits lists every rate.