Skip to main content
Skript’s configuration file (config.sk) controls core functionality, performance, and behavior. This file is located in plugins/Skript/config.sk.
This file is NOT a YAML file. It uses Skript’s syntax with tabs or spaces for indentation. Comments start with #.

General Options

Language

language: english
Sets the language for Skript messages and errors. Available languages:
  • English, German, Korean, French, Polish, Russian
  • Japanese, Simplified Chinese, Turkish, Dutch, Spanish, Catalan
Custom languages can be created. See Localization for details.

Version Checking

check for new version: true
update check interval: 12 hours
release channel: @release-channel@
check for new version
boolean
default:"true"
Whether Skript checks for new versions on startup. Players with skript.admin permission are notified of updates.
update check interval
timespan
default:"12 hours"
How often to check for updates. Set to 0 to check only on startup.
release channel
string
Update stability level: stable for releases only, prerelease for development builds.

Effect Commands

enable effect commands: false
effect command token: !
allow ops to use effect commands: false
log effect commands: false
Effect commands allow running Skript effects directly from chat using a prefix token.
Effect commands are extremely powerful and can crash your server or cause severe damage. Only enable for trusted administrators.
Example effect commands (when enabled):
!heal player
!repair tool
!broadcast "<red>Server restarting in 5 minutes!"
!set time to 6:00
enable effect commands
boolean
default:"false"
Enable chat-based effect execution. Requires skript.effectcommands permission.
effect command token
string
default:"!"
Prefix for effect commands. Can be multiple characters but shouldn’t start with /.

Variables

Variable Storage

use player UUIDs in variable names: true
player variable fix: true
case-insensitive variables: true
use player UUIDs in variable names
boolean
default:"true"
Use UUIDs instead of names in variables: {home::e5240337-...} vs {home::player_name}
Changing use player UUIDs in variable names does NOT automatically rename existing variables.
player variable fix
boolean
default:"true"
Automatically update player objects in variables when players rejoin.
case-insensitive variables
boolean
default:"true"
Treat variable names as case-insensitive: {MyVar} equals {myvar}.

Variable Saving

variable changes until save: 1000
disable variable will not be saved warnings: false
variable changes until save
number
default:"1000"
Number of variable changes before saving to variables.csv. Higher values reduce disk I/O but risk more data loss on crashes.
Increase variable changes until save on high-traffic servers to reduce lag, but ensure regular backups.

Database Configuration

Skript supports multiple database backends for variable storage:
databases:
	default:
		type: CSV
		pattern: .*
		file: ./plugins/Skript/variables.csv
		backup interval: 2 hours
		backups to keep: -1
default:
	type: CSV
	pattern: .*
	file: ./plugins/Skript/variables.csv
	backup interval: 2 hours
	backups to keep: -1
Simple file-based storage. Each variable is stored on a separate line.
MySQL example:
	type: MySQL
	pattern: synced_.*
	host: localhost
	port: 3306
	user: root
	password: pass
	database: skript
	table: variables21
	monitor changes: true
	monitor interval: 20 seconds
Network database for multi-server setups. Requires SQLibrary plugin.
SQLite example:
	type: SQLite
	pattern: db_.*
	file: ./plugins/Skript/variables.db
	backup interval: 0
	monitor changes: false
Local database file. Requires .db extension and SQLibrary plugin.
Variables are saved to the first database whose pattern matches. Use specific patterns for different databases and .* for the final catch-all database.

Performance

Script Loading

script loader thread size: 0
long parse time warning threshold: 0 seconds
script loader thread size
number
default:"0"
  • 0 or less: Synchronous loading on main thread
  • 1: Asynchronous loading in background
  • 2+: Parallel loading across multiple threads
  • processor count: Use all CPU cores
Parallel loading (2+) may cause issues with load order dependencies and some addons. Use at your own risk.

Timings

enable timings: false
Enables script triggers in Paper’s timings reports. Useful for performance debugging.
Paper removed Timings support in 1.19.4+. Use Spark profiler instead on modern versions.

Behavior Settings

Case Sensitivity

case sensitive: false
case-insensitive variables: true
case-insensitive commands: false
case sensitive
boolean
default:"false"
Whether text comparisons in effects like replace and conditions like contains are case-sensitive.
case-insensitive commands
boolean
default:"false"
Accept custom commands regardless of case: /test, /Test, /TEST all work.

Plugin Integration

plugin priority: high
listen to cancelled events by default: false
plugin priority
string
default:"high"
Event listener priority: lowest, low, normal, high, highest
  • Increase if other plugins cancel events Skript should handle
  • Decrease if Skript interferes with other plugins
listen to cancelled events by default
boolean
default:"false"
Whether on <event> triggers for cancelled events. Set to true to match cancelled events.

Hooks

disable hooks:
	vault: false
	regions:
		grief prevention: false
		precious stones: false
		residence: false
		worldguard: false
Control plugin integration. Set to true to disable specific hooks. Changes require a restart.

Display Settings

Numbers and Dates

number accuracy: 2
date format: default
number accuracy
number
default:"2"
Maximum decimal places shown for numbers. Trailing zeros are never displayed.
date format
string
default:"default"
Date display format using Java’s SimpleDateFormat:
  • d/M/yyyy h:mm a → 15/7/2012 8:53 PM
  • dd.MM.yyyy, HH:mm → 16.03.2013, 09:33

Chat and Colors

parse links in chat messages: disabled
color codes reset formatting: true
  • disabled or false: No automatic link parsing
  • strict: Parse URLs starting with http(s)://
  • lenient: Parse any text containing dots

Debugging

Verbosity

verbosity: normal
Logging detail level:
  • low: Minimal logging
  • normal: Standard information
  • high: Detailed information
  • very high: Includes trigger execution times
  • debug: Development information (very verbose)
Use very high verbosity to identify slow scripts. Check execution times in console logs.

Warning Suppression

disable variable will not be saved warnings: false
disable variable missing and/or warnings: false
disable starting a variable's name with an expression warnings: false
disable single colon in variable name warnings: false
disable unreachable code warnings: false
Disable specific warning types. Fix the underlying issues instead of suppressing warnings when possible.

Runtime Errors

runtime errors:
	frame duration: 1 second
	total errors per frame: 8
	errors from one line per frame: 2
	error spam timeout limit: 4
	error timeout length: 10
Controls error reporting to prevent console spam:
frame duration
timespan
default:"1 second"
Time window for collecting errors before printing.
total errors per frame
number
default:"8"
Maximum errors printed per frame. Additional errors are hidden with a count.
errors from one line per frame
number
default:"2"
Maximum errors a single line can print per frame.
Similar settings exist for runtime warnings. Fix errors instead of just hiding them.

File Management

Script Files

plugins/Skript/
├── config.sk
├── scripts/
│   ├── my-script.sk
│   └── -disabled-script.sk
└── variables.csv
Prefix script files with a hyphen (-) to disable them without deleting. Skript ignores any file starting with -.
Use /skript enable/disable <script> to toggle scripts, which automatically adds/removes the prefix.

Aliases

load default aliases: true
load default aliases
boolean
default:"true"
Load Skript’s default item aliases. Disable to use only custom aliases.
Custom aliases go in plugins/Skript/aliases/. See Aliases for details.

Reloading Configuration

/skript reload config
The databases section is NOT reloaded by /skript reload. Restart the server to apply database changes.

Commands

Command-specific configuration options

Aliases

Custom item alias configuration

Localization

Language file customization

Best Practices

Optimization and performance tips

Build docs developers (and LLMs) love