Repository files navigation

Skript Language


Skript

Skript is a Minecraft plugin for Paper/Spigot, which allows server owners and other people to modify their servers without learning Java. It can also be useful if you do know Java; some tasks are quicker to do with Skript, and so it can be used for prototyping etc.

This Github fork of Skript is based on Mirreski's improvements which was built on Njol's original Skript.

Requirements

Skript requires Spigot to work. You heard it right, CraftBukkit does not work. Paper, which is a fork of Spigot, is recommended; it is required for some parts of Skript to be available.

Skript supports only the latest patch versions of Minecraft 1.19 and newer. For example, this means that 1.19.4 is supported, but 1.19.3 is not. Testing with all old patch versions is not feasible for us.

Minecraft 1.12 and earlier are not, and will not be supported. New Minecraft versions will be supported as soon as possible.

Download

You can find the downloads for each version with their release notes in the releases page.

Two major feature updates are expected each year in January and July, with monthly patches occurring in between. For full details, please review our release model.

Documentation

Documentation is available here for the latest version of Skript.

Reporting Issues

Please see our contribution guidelines before reporting issues.

Help Us Test

Wanting to help test Skript's new features and releases? You can head on over to our Official Testing Discord, and whenever we start testing new features/releases you will be the first to know.

Please note this is not a help Discord. If you require assistance with how to use Skript please check out the Relevant Links section for a list of available resources to assist you.

A Note About Add-ons

We don't support add-ons here, even though some of Skript developers have also developed their own add-ons.

Compiling

Skript uses Gradle for compilation. Use your command prompt of preference and navigate to Skript's source directory. Then you can just call Gradle to compile and package Skript for you:

./gradlew clean build # on UNIX-based systems (mac, linux)
gradlew clean build # on Windows

You can get source code from the releases page. You may also clone this repository, but that code may or may not be stable.

Compiling Modules

Parts of Skript are provided as Gradle subprojects. They require Skript, so they are compiled after it has been built. For this reason, if you want them embedded in Skript jar, you must re-package it after compiling once. For example:

./gradlew jar

Note that modules are not necessary for Skript to work. Currently, they are only used to provide compatibility with old WorldGuard versions.

Testing

Skript has some tests written in Skript. Running them requires a Minecraft server, but our build script will create one for you. Running the tests is easy:

./gradlew (quickTest|skriptTest|skriptTestJava17|skriptTestJava21)

quickTest runs the test suite on newest supported server version. skriptTestJava21 (1.20.6+) runs the tests on Java 21 supported versions. skriptTestJava17 (1.19.4-1.20.4) runs the tests on Java 17 supported versions. skriptTest runs the tests on all versions. That is, it runs skriptTestJava17, and skriptTestJava21.

By running the tests, you agree to Mojang's End User License Agreement.

Importing to Eclipse

With new Eclipse versions, there is integrated Gradle support, and it actually works now. So, first get latest Eclipse, then import Skript as any Gradle project. Just make sure to keep the configuration when the importer asks for that!

If you encounter strange issues, make sure you follow the instructions above and have actually downloaded latest Eclipse or update your installation correctly. Skript's new Gradle version (starting from dev26) does not work very well with older Eclipse versions. Also, do not use Gradle STS; it is outdated.

Importing to IDEA

You'll need to make sure that nullness annotations are working correctly. Also, when sending pull requests, make sure not to change IDEA configuration files that may have been stored in the repository.

Releasing

./gradlew clean build
./gradlew <flavor>Release

Available flavors are github and spigot. Please do not abuse flavors by compiling your own test builds as releases.

Contributing

Please review our contribution guidelines. In addition to that, if you are contributing Java code, check our coding conventions.

Maven Repository

If you use Skript as (soft) dependency for your plugin, and use maven or Gradle, this is for you.

First, you need to add the Maven repository at the END of all your repositories. Skript is not available in Maven Central.

repositories {
maven {
url 'https://repo.skriptlang.org/releases'
}
}

Or, if you use Maven:

<repositories>
<repository>
<id>skript-releases</id>
<name>Skript Repository</name>
<url>https://repo.skriptlang.org/releases</url>
</repository>
</repositories>

For versions of Skript after dev37 you might need to add the paper-api repository to prevent build issues.

maven {
url 'https://repo.destroystokyo.com/repository/maven-public/'
}

Or, if you use Maven:

<repository>
<id>destroystokyo-repo</id>
<url>https://repo.destroystokyo.com/content/repositories/snapshots/</url>
</repository>

Then you will also need to add Skript as a dependency.

dependencies {
implementation 'com.github.SkriptLang:Skript:[versionTag]'
}

An example of the version tag would be 2.8.5.

Note: If Gradle isn't able to resolve Skript's dependencies, just disable the resolution of transitive dependencies for Skript in your project.

Or, if you use Maven:

<dependency>
<groupId>com.github.SkriptLang</groupId>
<artifactId>Skript</artifactId>
<version>[versionTag]</version>
<scope>provided</scope>
</dependency>

Relevant Links

Note that these resources are not maintained by Skript's developers. Don't contact us about any problems you might have with them.

Developers

You can find all contributors here.

All code is owned by its writer, licensed for others under GPLv3 (see LICENSE) unless otherwise specified.

About

Skript is a Bukkit plugin which allows server admins to customize their server easily, but without the hassle of programming a plugin or asking/paying someone to program a plugin for them.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

Skript Language


Skript

Skript is a Minecraft plugin for Paper/Spigot, which allows server owners and other people to modify their servers without learning Java. It can also be useful if you do know Java; some tasks are quicker to do with Skript, and so it can be used for prototyping etc.

This Github fork of Skript is based on Mirreski's improvements which was built on Njol's original Skript.

Requirements

Skript requires Spigot to work. You heard it right, CraftBukkit does not work. Paper, which is a fork of Spigot, is recommended; it is required for some parts of Skript to be available.

Skript supports only the latest patch versions of Minecraft 1.19 and newer. For example, this means that 1.19.4 is supported, but 1.19.3 is not. Testing with all old patch versions is not feasible for us.

Minecraft 1.12 and earlier are not, and will not be supported. New Minecraft versions will be supported as soon as possible.

Download

You can find the downloads for each version with their release notes in the releases page.

Two major feature updates are expected each year in January and July, with monthly patches occurring in between. For full details, please review our release model.

Documentation

Documentation is available here for the latest version of Skript.

Reporting Issues

Please see our contribution guidelines before reporting issues.

Help Us Test

Wanting to help test Skript's new features and releases? You can head on over to our Official Testing Discord, and whenever we start testing new features/releases you will be the first to know.

Please note this is not a help Discord. If you require assistance with how to use Skript please check out the Relevant Links section for a list of available resources to assist you.

A Note About Add-ons

We don't support add-ons here, even though some of Skript developers have also developed their own add-ons.

Compiling

Skript uses Gradle for compilation. Use your command prompt of preference and navigate to Skript's source directory. Then you can just call Gradle to compile and package Skript for you:

./gradlew clean build # on UNIX-based systems (mac, linux)
gradlew clean build # on Windows

You can get source code from the releases page. You may also clone this repository, but that code may or may not be stable.

Compiling Modules

Parts of Skript are provided as Gradle subprojects. They require Skript, so they are compiled after it has been built. For this reason, if you want them embedded in Skript jar, you must re-package it after compiling once. For example:

./gradlew jar

Note that modules are not necessary for Skript to work. Currently, they are only used to provide compatibility with old WorldGuard versions.

Testing

Skript has some tests written in Skript. Running them requires a Minecraft server, but our build script will create one for you. Running the tests is easy:

./gradlew (quickTest|skriptTest|skriptTestJava17|skriptTestJava21)

quickTest runs the test suite on newest supported server version. skriptTestJava21 (1.20.6+) runs the tests on Java 21 supported versions. skriptTestJava17 (1.19.4-1.20.4) runs the tests on Java 17 supported versions. skriptTest runs the tests on all versions. That is, it runs skriptTestJava17, and skriptTestJava21.

By running the tests, you agree to Mojang's End User License Agreement.

Importing to Eclipse

With new Eclipse versions, there is integrated Gradle support, and it actually works now. So, first get latest Eclipse, then import Skript as any Gradle project. Just make sure to keep the configuration when the importer asks for that!

If you encounter strange issues, make sure you follow the instructions above and have actually downloaded latest Eclipse or update your installation correctly. Skript's new Gradle version (starting from dev26) does not work very well with older Eclipse versions. Also, do not use Gradle STS; it is outdated.

Importing to IDEA

You'll need to make sure that nullness annotations are working correctly. Also, when sending pull requests, make sure not to change IDEA configuration files that may have been stored in the repository.

Releasing

./gradlew clean build
./gradlew <flavor>Release

Available flavors are github and spigot. Please do not abuse flavors by compiling your own test builds as releases.

Contributing

Please review our contribution guidelines. In addition to that, if you are contributing Java code, check our coding conventions.

Maven Repository

If you use Skript as (soft) dependency for your plugin, and use maven or Gradle, this is for you.

First, you need to add the Maven repository at the END of all your repositories. Skript is not available in Maven Central.

repositories {
maven {
url 'https://repo.skriptlang.org/releases'
}
}

Or, if you use Maven:

<repositories>
<repository>
<id>skript-releases</id>
<name>Skript Repository</name>
<url>https://repo.skriptlang.org/releases</url>
</repository>
</repositories>

For versions of Skript after dev37 you might need to add the paper-api repository to prevent build issues.

maven {
url 'https://repo.destroystokyo.com/repository/maven-public/'
}

Or, if you use Maven:

<repository>
<id>destroystokyo-repo</id>
<url>https://repo.destroystokyo.com/content/repositories/snapshots/</url>
</repository>

Then you will also need to add Skript as a dependency.

dependencies {
implementation 'com.github.SkriptLang:Skript:[versionTag]'
}

An example of the version tag would be 2.8.5.

Note: If Gradle isn't able to resolve Skript's dependencies, just disable the resolution of transitive dependencies for Skript in your project.

Or, if you use Maven:

<dependency>
<groupId>com.github.SkriptLang</groupId>
<artifactId>Skript</artifactId>
<version>[versionTag]</version>
<scope>provided</scope>
</dependency>

Relevant Links

Note that these resources are not maintained by Skript's developers. Don't contact us about any problems you might have with them.

Developers

You can find all contributors here.

All code is owned by its writer, licensed for others under GPLv3 (see LICENSE) unless otherwise specified.

About

Skript is a Bukkit plugin which allows server admins to customize their server easily, but without the hassle of programming a plugin or asking/paying someone to program a plugin for them.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Skript Language


Skript

Skript is a Minecraft plugin for Paper/Spigot, which allows server owners and other people to modify their servers without learning Java. It can also be useful if you do know Java; some tasks are quicker to do with Skript, and so it can be used for prototyping etc.

This Github fork of Skript is based on Mirreski's improvements which was built on Njol's original Skript.

Requirements

Skript requires Spigot to work. You heard it right, CraftBukkit does not work. Paper, which is a fork of Spigot, is recommended; it is required for some parts of Skript to be available.

Skript supports only the latest patch versions of Minecraft 1.19 and newer. For example, this means that 1.19.4 is supported, but 1.19.3 is not. Testing with all old patch versions is not feasible for us.

Minecraft 1.12 and earlier are not, and will not be supported. New Minecraft versions will be supported as soon as possible.

Download

You can find the downloads for each version with their release notes in the releases page.

Two major feature updates are expected each year in January and July, with monthly patches occurring in between. For full details, please review our release model.

Documentation

Documentation is available here for the latest version of Skript.

Reporting Issues

Please see our contribution guidelines before reporting issues.

Help Us Test

Wanting to help test Skript's new features and releases? You can head on over to our Official Testing Discord, and whenever we start testing new features/releases you will be the first to know.

Please note this is not a help Discord. If you require assistance with how to use Skript please check out the Relevant Links section for a list of available resources to assist you.

A Note About Add-ons

We don't support add-ons here, even though some of Skript developers have also developed their own add-ons.

Compiling

Skript uses Gradle for compilation. Use your command prompt of preference and navigate to Skript's source directory. Then you can just call Gradle to compile and package Skript for you:

./gradlew clean build # on UNIX-based systems (mac, linux)
gradlew clean build # on Windows

You can get source code from the releases page. You may also clone this repository, but that code may or may not be stable.

Compiling Modules

Parts of Skript are provided as Gradle subprojects. They require Skript, so they are compiled after it has been built. For this reason, if you want them embedded in Skript jar, you must re-package it after compiling once. For example:

./gradlew jar

Note that modules are not necessary for Skript to work. Currently, they are only used to provide compatibility with old WorldGuard versions.

Testing

Skript has some tests written in Skript. Running them requires a Minecraft server, but our build script will create one for you. Running the tests is easy:

./gradlew (quickTest|skriptTest|skriptTestJava17|skriptTestJava21)

quickTest runs the test suite on newest supported server version. skriptTestJava21 (1.20.6+) runs the tests on Java 21 supported versions. skriptTestJava17 (1.19.4-1.20.4) runs the tests on Java 17 supported versions. skriptTest runs the tests on all versions. That is, it runs skriptTestJava17, and skriptTestJava21.

By running the tests, you agree to Mojang's End User License Agreement.

Importing to Eclipse

With new Eclipse versions, there is integrated Gradle support, and it actually works now. So, first get latest Eclipse, then import Skript as any Gradle project. Just make sure to keep the configuration when the importer asks for that!

If you encounter strange issues, make sure you follow the instructions above and have actually downloaded latest Eclipse or update your installation correctly. Skript's new Gradle version (starting from dev26) does not work very well with older Eclipse versions. Also, do not use Gradle STS; it is outdated.

Importing to IDEA

You'll need to make sure that nullness annotations are working correctly. Also, when sending pull requests, make sure not to change IDEA configuration files that may have been stored in the repository.

Releasing

./gradlew clean build
./gradlew <flavor>Release

Available flavors are github and spigot. Please do not abuse flavors by compiling your own test builds as releases.

Contributing

Please review our contribution guidelines. In addition to that, if you are contributing Java code, check our coding conventions.

Maven Repository

If you use Skript as (soft) dependency for your plugin, and use maven or Gradle, this is for you.

First, you need to add the Maven repository at the END of all your repositories. Skript is not available in Maven Central.

repositories {
maven {
url 'https://repo.skriptlang.org/releases'
}
}

Or, if you use Maven:

<repositories>
<repository>
<id>skript-releases</id>
<name>Skript Repository</name>
<url>https://repo.skriptlang.org/releases</url>
</repository>
</repositories>

For versions of Skript after dev37 you might need to add the paper-api repository to prevent build issues.

maven {
url 'https://repo.destroystokyo.com/repository/maven-public/'
}

Or, if you use Maven:

<repository>
<id>destroystokyo-repo</id>
<url>https://repo.destroystokyo.com/content/repositories/snapshots/</url>
</repository>

Then you will also need to add Skript as a dependency.

dependencies {
implementation 'com.github.SkriptLang:Skript:[versionTag]'
}

An example of the version tag would be 2.8.5.

Note: If Gradle isn't able to resolve Skript's dependencies, just disable the resolution of transitive dependencies for Skript in your project.

Or, if you use Maven:

<dependency>
<groupId>com.github.SkriptLang</groupId>
<artifactId>Skript</artifactId>
<version>[versionTag]</version>
<scope>provided</scope>
</dependency>

Relevant Links

Note that these resources are not maintained by Skript's developers. Don't contact us about any problems you might have with them.

Developers

You can find all contributors here.

All code is owned by its writer, licensed for others under GPLv3 (see LICENSE) unless otherwise specified.

About

Skript is a Bukkit plugin which allows server admins to customize their server easily, but without the hassle of programming a plugin or asking/paying someone to program a plugin for them.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Skript Language


Skript

Skript is a Minecraft plugin for Paper/Spigot, which allows server owners and other people to modify their servers without learning Java. It can also be useful if you do know Java; some tasks are quicker to do with Skript, and so it can be used for prototyping etc.

This Github fork of Skript is based on Mirreski's improvements which was built on Njol's original Skript.

Requirements

Skript requires Spigot to work. You heard it right, CraftBukkit does not work. Paper, which is a fork of Spigot, is recommended; it is required for some parts of Skript to be available.

Skript supports only the latest patch versions of Minecraft 1.19 and newer. For example, this means that 1.19.4 is supported, but 1.19.3 is not. Testing with all old patch versions is not feasible for us.

Minecraft 1.12 and earlier are not, and will not be supported. New Minecraft versions will be supported as soon as possible.

Download

You can find the downloads for each version with their release notes in the releases page.

Two major feature updates are expected each year in January and July, with monthly patches occurring in between. For full details, please review our release model.

Documentation

Documentation is available here for the latest version of Skript.

Reporting Issues

Please see our contribution guidelines before reporting issues.

Help Us Test

Wanting to help test Skript's new features and releases? You can head on over to our Official Testing Discord, and whenever we start testing new features/releases you will be the first to know.

Please note this is not a help Discord. If you require assistance with how to use Skript please check out the Relevant Links section for a list of available resources to assist you.

A Note About Add-ons

We don't support add-ons here, even though some of Skript developers have also developed their own add-ons.

Compiling

Skript uses Gradle for compilation. Use your command prompt of preference and navigate to Skript's source directory. Then you can just call Gradle to compile and package Skript for you:

./gradlew clean build # on UNIX-based systems (mac, linux)
gradlew clean build # on Windows

You can get source code from the releases page. You may also clone this repository, but that code may or may not be stable.

Compiling Modules

Parts of Skript are provided as Gradle subprojects. They require Skript, so they are compiled after it has been built. For this reason, if you want them embedded in Skript jar, you must re-package it after compiling once. For example:

./gradlew jar

Note that modules are not necessary for Skript to work. Currently, they are only used to provide compatibility with old WorldGuard versions.

Testing

Skript has some tests written in Skript. Running them requires a Minecraft server, but our build script will create one for you. Running the tests is easy:

./gradlew (quickTest|skriptTest|skriptTestJava17|skriptTestJava21)

quickTest runs the test suite on newest supported server version. skriptTestJava21 (1.20.6+) runs the tests on Java 21 supported versions. skriptTestJava17 (1.19.4-1.20.4) runs the tests on Java 17 supported versions. skriptTest runs the tests on all versions. That is, it runs skriptTestJava17, and skriptTestJava21.

By running the tests, you agree to Mojang's End User License Agreement.

Importing to Eclipse

With new Eclipse versions, there is integrated Gradle support, and it actually works now. So, first get latest Eclipse, then import Skript as any Gradle project. Just make sure to keep the configuration when the importer asks for that!

If you encounter strange issues, make sure you follow the instructions above and have actually downloaded latest Eclipse or update your installation correctly. Skript's new Gradle version (starting from dev26) does not work very well with older Eclipse versions. Also, do not use Gradle STS; it is outdated.

Importing to IDEA

You'll need to make sure that nullness annotations are working correctly. Also, when sending pull requests, make sure not to change IDEA configuration files that may have been stored in the repository.

Releasing

./gradlew clean build
./gradlew <flavor>Release

Available flavors are github and spigot. Please do not abuse flavors by compiling your own test builds as releases.

Contributing

Please review our contribution guidelines. In addition to that, if you are contributing Java code, check our coding conventions.

Maven Repository

If you use Skript as (soft) dependency for your plugin, and use maven or Gradle, this is for you.

First, you need to add the Maven repository at the END of all your repositories. Skript is not available in Maven Central.

repositories {
maven {
url 'https://repo.skriptlang.org/releases'
}
}

Or, if you use Maven:

<repositories>
<repository>
<id>skript-releases</id>
<name>Skript Repository</name>
<url>https://repo.skriptlang.org/releases</url>
</repository>
</repositories>

For versions of Skript after dev37 you might need to add the paper-api repository to prevent build issues.

maven {
url 'https://repo.destroystokyo.com/repository/maven-public/'
}

Or, if you use Maven:

<repository>
<id>destroystokyo-repo</id>
<url>https://repo.destroystokyo.com/content/repositories/snapshots/</url>
</repository>

Then you will also need to add Skript as a dependency.

dependencies {
implementation 'com.github.SkriptLang:Skript:[versionTag]'
}

An example of the version tag would be 2.8.5.

Note: If Gradle isn't able to resolve Skript's dependencies, just disable the resolution of transitive dependencies for Skript in your project.

Or, if you use Maven:

<dependency>
<groupId>com.github.SkriptLang</groupId>
<artifactId>Skript</artifactId>
<version>[versionTag]</version>
<scope>provided</scope>
</dependency>

Relevant Links

Note that these resources are not maintained by Skript's developers. Don't contact us about any problems you might have with them.

Developers

You can find all contributors here.

All code is owned by its writer, licensed for others under GPLv3 (see LICENSE) unless otherwise specified.

About

Skript is a Bukkit plugin which allows server admins to customize their server easily, but without the hassle of programming a plugin or asking/paying someone to program a plugin for them.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

Skript Language


Skript

Skript is a Minecraft plugin for Paper/Spigot, which allows server owners and other people to modify their servers without learning Java. It can also be useful if you do know Java; some tasks are quicker to do with Skript, and so it can be used for prototyping etc.

This Github fork of Skript is based on Mirreski's improvements which was built on Njol's original Skript.

Requirements

Skript requires Spigot to work. You heard it right, CraftBukkit does not work. Paper, which is a fork of Spigot, is recommended; it is required for some parts of Skript to be available.

Skript supports only the latest patch versions of Minecraft 1.19 and newer. For example, this means that 1.19.4 is supported, but 1.19.3 is not. Testing with all old patch versions is not feasible for us.

Minecraft 1.12 and earlier are not, and will not be supported. New Minecraft versions will be supported as soon as possible.

Download

You can find the downloads for each version with their release notes in the releases page.

Two major feature updates are expected each year in January and July, with monthly patches occurring in between. For full details, please review our release model.

Documentation

Documentation is available here for the latest version of Skript.

Reporting Issues

Please see our contribution guidelines before reporting issues.

Help Us Test

Wanting to help test Skript's new features and releases? You can head on over to our Official Testing Discord, and whenever we start testing new features/releases you will be the first to know.

Please note this is not a help Discord. If you require assistance with how to use Skript please check out the Relevant Links section for a list of available resources to assist you.

A Note About Add-ons

We don't support add-ons here, even though some of Skript developers have also developed their own add-ons.

Compiling

Skript uses Gradle for compilation. Use your command prompt of preference and navigate to Skript's source directory. Then you can just call Gradle to compile and package Skript for you:

./gradlew clean build # on UNIX-based systems (mac, linux)
gradlew clean build # on Windows

You can get source code from the releases page. You may also clone this repository, but that code may or may not be stable.

Compiling Modules

Parts of Skript are provided as Gradle subprojects. They require Skript, so they are compiled after it has been built. For this reason, if you want them embedded in Skript jar, you must re-package it after compiling once. For example:

./gradlew jar

Note that modules are not necessary for Skript to work. Currently, they are only used to provide compatibility with old WorldGuard versions.

Testing

Skript has some tests written in Skript. Running them requires a Minecraft server, but our build script will create one for you. Running the tests is easy:

./gradlew (quickTest|skriptTest|skriptTestJava17|skriptTestJava21)

quickTest runs the test suite on newest supported server version. skriptTestJava21 (1.20.6+) runs the tests on Java 21 supported versions. skriptTestJava17 (1.19.4-1.20.4) runs the tests on Java 17 supported versions. skriptTest runs the tests on all versions. That is, it runs skriptTestJava17, and skriptTestJava21.

By running the tests, you agree to Mojang's End User License Agreement.

Importing to Eclipse

With new Eclipse versions, there is integrated Gradle support, and it actually works now. So, first get latest Eclipse, then import Skript as any Gradle project. Just make sure to keep the configuration when the importer asks for that!

If you encounter strange issues, make sure you follow the instructions above and have actually downloaded latest Eclipse or update your installation correctly. Skript's new Gradle version (starting from dev26) does not work very well with older Eclipse versions. Also, do not use Gradle STS; it is outdated.

Importing to IDEA

You'll need to make sure that nullness annotations are working correctly. Also, when sending pull requests, make sure not to change IDEA configuration files that may have been stored in the repository.

Releasing

./gradlew clean build
./gradlew <flavor>Release

Available flavors are github and spigot. Please do not abuse flavors by compiling your own test builds as releases.

Contributing

Please review our contribution guidelines. In addition to that, if you are contributing Java code, check our coding conventions.

Maven Repository

If you use Skript as (soft) dependency for your plugin, and use maven or Gradle, this is for you.

First, you need to add the Maven repository at the END of all your repositories. Skript is not available in Maven Central.

repositories {
maven {
url 'https://repo.skriptlang.org/releases'
}
}

Or, if you use Maven:

<repositories>
<repository>
<id>skript-releases</id>
<name>Skript Repository</name>
<url>https://repo.skriptlang.org/releases</url>
</repository>
</repositories>

For versions of Skript after dev37 you might need to add the paper-api repository to prevent build issues.

maven {
url 'https://repo.destroystokyo.com/repository/maven-public/'
}

Or, if you use Maven:

<repository>
<id>destroystokyo-repo</id>
<url>https://repo.destroystokyo.com/content/repositories/snapshots/</url>
</repository>

Then you will also need to add Skript as a dependency.

dependencies {
implementation 'com.github.SkriptLang:Skript:[versionTag]'
}

An example of the version tag would be 2.8.5.

Note: If Gradle isn't able to resolve Skript's dependencies, just disable the resolution of transitive dependencies for Skript in your project.

Or, if you use Maven:

<dependency>
<groupId>com.github.SkriptLang</groupId>
<artifactId>Skript</artifactId>
<version>[versionTag]</version>
<scope>provided</scope>
</dependency>

Relevant Links

Note that these resources are not maintained by Skript's developers. Don't contact us about any problems you might have with them.

Developers

You can find all contributors here.

All code is owned by its writer, licensed for others under GPLv3 (see LICENSE) unless otherwise specified.

About

Skript is a Bukkit plugin which allows server admins to customize their server easily, but without the hassle of programming a plugin or asking/paying someone to program a plugin for them.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Skript Language


Skript

Skript is a Minecraft plugin for Paper/Spigot, which allows server owners and other people to modify their servers without learning Java. It can also be useful if you do know Java; some tasks are quicker to do with Skript, and so it can be used for prototyping etc.

This Github fork of Skript is based on Mirreski's improvements which was built on Njol's original Skript.

Requirements

Skript requires Spigot to work. You heard it right, CraftBukkit does not work. Paper, which is a fork of Spigot, is recommended; it is required for some parts of Skript to be available.

Skript supports only the latest patch versions of Minecraft 1.19 and newer. For example, this means that 1.19.4 is supported, but 1.19.3 is not. Testing with all old patch versions is not feasible for us.

Minecraft 1.12 and earlier are not, and will not be supported. New Minecraft versions will be supported as soon as possible.

Download

You can find the downloads for each version with their release notes in the releases page.

Two major feature updates are expected each year in January and July, with monthly patches occurring in between. For full details, please review our release model.

Documentation

Documentation is available here for the latest version of Skript.

Reporting Issues

Please see our contribution guidelines before reporting issues.

Help Us Test

Wanting to help test Skript's new features and releases? You can head on over to our Official Testing Discord, and whenever we start testing new features/releases you will be the first to know.

Please note this is not a help Discord. If you require assistance with how to use Skript please check out the Relevant Links section for a list of available resources to assist you.

A Note About Add-ons

We don't support add-ons here, even though some of Skript developers have also developed their own add-ons.

Compiling

Skript uses Gradle for compilation. Use your command prompt of preference and navigate to Skript's source directory. Then you can just call Gradle to compile and package Skript for you:

./gradlew clean build # on UNIX-based systems (mac, linux)
gradlew clean build # on Windows

You can get source code from the releases page. You may also clone this repository, but that code may or may not be stable.

Compiling Modules

Parts of Skript are provided as Gradle subprojects. They require Skript, so they are compiled after it has been built. For this reason, if you want them embedded in Skript jar, you must re-package it after compiling once. For example:

./gradlew jar

Note that modules are not necessary for Skript to work. Currently, they are only used to provide compatibility with old WorldGuard versions.

Testing

Skript has some tests written in Skript. Running them requires a Minecraft server, but our build script will create one for you. Running the tests is easy:

./gradlew (quickTest|skriptTest|skriptTestJava17|skriptTestJava21)

quickTest runs the test suite on newest supported server version. skriptTestJava21 (1.20.6+) runs the tests on Java 21 supported versions. skriptTestJava17 (1.19.4-1.20.4) runs the tests on Java 17 supported versions. skriptTest runs the tests on all versions. That is, it runs skriptTestJava17, and skriptTestJava21.

By running the tests, you agree to Mojang's End User License Agreement.

Importing to Eclipse

With new Eclipse versions, there is integrated Gradle support, and it actually works now. So, first get latest Eclipse, then import Skript as any Gradle project. Just make sure to keep the configuration when the importer asks for that!

If you encounter strange issues, make sure you follow the instructions above and have actually downloaded latest Eclipse or update your installation correctly. Skript's new Gradle version (starting from dev26) does not work very well with older Eclipse versions. Also, do not use Gradle STS; it is outdated.

Importing to IDEA

You'll need to make sure that nullness annotations are working correctly. Also, when sending pull requests, make sure not to change IDEA configuration files that may have been stored in the repository.

Releasing

./gradlew clean build
./gradlew <flavor>Release

Available flavors are github and spigot. Please do not abuse flavors by compiling your own test builds as releases.

Contributing

Please review our contribution guidelines. In addition to that, if you are contributing Java code, check our coding conventions.

Maven Repository

If you use Skript as (soft) dependency for your plugin, and use maven or Gradle, this is for you.

First, you need to add the Maven repository at the END of all your repositories. Skript is not available in Maven Central.

repositories {
maven {
url 'https://repo.skriptlang.org/releases'
}
}

Or, if you use Maven:

<repositories>
<repository>
<id>skript-releases</id>
<name>Skript Repository</name>
<url>https://repo.skriptlang.org/releases</url>
</repository>
</repositories>

For versions of Skript after dev37 you might need to add the paper-api repository to prevent build issues.

maven {
url 'https://repo.destroystokyo.com/repository/maven-public/'
}

Or, if you use Maven:

<repository>
<id>destroystokyo-repo</id>
<url>https://repo.destroystokyo.com/content/repositories/snapshots/</url>
</repository>

Then you will also need to add Skript as a dependency.

dependencies {
implementation 'com.github.SkriptLang:Skript:[versionTag]'
}

An example of the version tag would be 2.8.5.

Note: If Gradle isn't able to resolve Skript's dependencies, just disable the resolution of transitive dependencies for Skript in your project.

Or, if you use Maven:

<dependency>
<groupId>com.github.SkriptLang</groupId>
<artifactId>Skript</artifactId>
<version>[versionTag]</version>
<scope>provided</scope>
</dependency>

Relevant Links

Note that these resources are not maintained by Skript's developers. Don't contact us about any problems you might have with them.

Developers

You can find all contributors here.

All code is owned by its writer, licensed for others under GPLv3 (see LICENSE) unless otherwise specified.

About

Skript is a Bukkit plugin which allows server admins to customize their server easily, but without the hassle of programming a plugin or asking/paying someone to program a plugin for them.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Skript Language


Skript

Skript is a Minecraft plugin for Paper/Spigot, which allows server owners and other people to modify their servers without learning Java. It can also be useful if you do know Java; some tasks are quicker to do with Skript, and so it can be used for prototyping etc.

This Github fork of Skript is based on Mirreski's improvements which was built on Njol's original Skript.

Requirements

Skript requires Spigot to work. You heard it right, CraftBukkit does not work. Paper, which is a fork of Spigot, is recommended; it is required for some parts of Skript to be available.

Skript supports only the latest patch versions of Minecraft 1.19 and newer. For example, this means that 1.19.4 is supported, but 1.19.3 is not. Testing with all old patch versions is not feasible for us.

Minecraft 1.12 and earlier are not, and will not be supported. New Minecraft versions will be supported as soon as possible.

Download

You can find the downloads for each version with their release notes in the releases page.

Two major feature updates are expected each year in January and July, with monthly patches occurring in between. For full details, please review our release model.

Documentation

Documentation is available here for the latest version of Skript.

Reporting Issues

Please see our contribution guidelines before reporting issues.

Help Us Test

Wanting to help test Skript's new features and releases? You can head on over to our Official Testing Discord, and whenever we start testing new features/releases you will be the first to know.

Please note this is not a help Discord. If you require assistance with how to use Skript please check out the Relevant Links section for a list of available resources to assist you.

A Note About Add-ons

We don't support add-ons here, even though some of Skript developers have also developed their own add-ons.

Compiling

Skript uses Gradle for compilation. Use your command prompt of preference and navigate to Skript's source directory. Then you can just call Gradle to compile and package Skript for you:

./gradlew clean build # on UNIX-based systems (mac, linux)
gradlew clean build # on Windows

You can get source code from the releases page. You may also clone this repository, but that code may or may not be stable.

Compiling Modules

Parts of Skript are provided as Gradle subprojects. They require Skript, so they are compiled after it has been built. For this reason, if you want them embedded in Skript jar, you must re-package it after compiling once. For example:

./gradlew jar

Note that modules are not necessary for Skript to work. Currently, they are only used to provide compatibility with old WorldGuard versions.

Testing

Skript has some tests written in Skript. Running them requires a Minecraft server, but our build script will create one for you. Running the tests is easy:

./gradlew (quickTest|skriptTest|skriptTestJava17|skriptTestJava21)

quickTest runs the test suite on newest supported server version. skriptTestJava21 (1.20.6+) runs the tests on Java 21 supported versions. skriptTestJava17 (1.19.4-1.20.4) runs the tests on Java 17 supported versions. skriptTest runs the tests on all versions. That is, it runs skriptTestJava17, and skriptTestJava21.

By running the tests, you agree to Mojang's End User License Agreement.

Importing to Eclipse

With new Eclipse versions, there is integrated Gradle support, and it actually works now. So, first get latest Eclipse, then import Skript as any Gradle project. Just make sure to keep the configuration when the importer asks for that!

If you encounter strange issues, make sure you follow the instructions above and have actually downloaded latest Eclipse or update your installation correctly. Skript's new Gradle version (starting from dev26) does not work very well with older Eclipse versions. Also, do not use Gradle STS; it is outdated.

Importing to IDEA

You'll need to make sure that nullness annotations are working correctly. Also, when sending pull requests, make sure not to change IDEA configuration files that may have been stored in the repository.

Releasing

./gradlew clean build
./gradlew <flavor>Release

Available flavors are github and spigot. Please do not abuse flavors by compiling your own test builds as releases.

Contributing

Please review our contribution guidelines. In addition to that, if you are contributing Java code, check our coding conventions.

Maven Repository

If you use Skript as (soft) dependency for your plugin, and use maven or Gradle, this is for you.

First, you need to add the Maven repository at the END of all your repositories. Skript is not available in Maven Central.

repositories {
maven {
url 'https://repo.skriptlang.org/releases'
}
}

Or, if you use Maven:

<repositories>
<repository>
<id>skript-releases</id>
<name>Skript Repository</name>
<url>https://repo.skriptlang.org/releases</url>
</repository>
</repositories>

For versions of Skript after dev37 you might need to add the paper-api repository to prevent build issues.

maven {
url 'https://repo.destroystokyo.com/repository/maven-public/'
}

Or, if you use Maven:

<repository>
<id>destroystokyo-repo</id>
<url>https://repo.destroystokyo.com/content/repositories/snapshots/</url>
</repository>

Then you will also need to add Skript as a dependency.

dependencies {
implementation 'com.github.SkriptLang:Skript:[versionTag]'
}

An example of the version tag would be 2.8.5.

Note: If Gradle isn't able to resolve Skript's dependencies, just disable the resolution of transitive dependencies for Skript in your project.

Or, if you use Maven:

<dependency>
<groupId>com.github.SkriptLang</groupId>
<artifactId>Skript</artifactId>
<version>[versionTag]</version>
<scope>provided</scope>
</dependency>

Relevant Links

Note that these resources are not maintained by Skript's developers. Don't contact us about any problems you might have with them.

Developers

You can find all contributors here.

All code is owned by its writer, licensed for others under GPLv3 (see LICENSE) unless otherwise specified.

About

Skript is a Bukkit plugin which allows server admins to customize their server easily, but without the hassle of programming a plugin or asking/paying someone to program a plugin for them.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

Skript Language


Skript

Skript is a Minecraft plugin for Paper/Spigot, which allows server owners and other people to modify their servers without learning Java. It can also be useful if you do know Java; some tasks are quicker to do with Skript, and so it can be used for prototyping etc.

This Github fork of Skript is based on Mirreski's improvements which was built on Njol's original Skript.

Requirements

Skript requires Spigot to work. You heard it right, CraftBukkit does not work. Paper, which is a fork of Spigot, is recommended; it is required for some parts of Skript to be available.

Skript supports only the latest patch versions of Minecraft 1.19 and newer. For example, this means that 1.19.4 is supported, but 1.19.3 is not. Testing with all old patch versions is not feasible for us.

Minecraft 1.12 and earlier are not, and will not be supported. New Minecraft versions will be supported as soon as possible.

Download

You can find the downloads for each version with their release notes in the releases page.

Two major feature updates are expected each year in January and July, with monthly patches occurring in between. For full details, please review our release model.

Documentation

Documentation is available here for the latest version of Skript.

Reporting Issues

Please see our contribution guidelines before reporting issues.

Help Us Test

Wanting to help test Skript's new features and releases? You can head on over to our Official Testing Discord, and whenever we start testing new features/releases you will be the first to know.

Please note this is not a help Discord. If you require assistance with how to use Skript please check out the Relevant Links section for a list of available resources to assist you.

A Note About Add-ons

We don't support add-ons here, even though some of Skript developers have also developed their own add-ons.

Compiling

Skript uses Gradle for compilation. Use your command prompt of preference and navigate to Skript's source directory. Then you can just call Gradle to compile and package Skript for you:

./gradlew clean build # on UNIX-based systems (mac, linux)
gradlew clean build # on Windows

You can get source code from the releases page. You may also clone this repository, but that code may or may not be stable.

Compiling Modules

Parts of Skript are provided as Gradle subprojects. They require Skript, so they are compiled after it has been built. For this reason, if you want them embedded in Skript jar, you must re-package it after compiling once. For example:

./gradlew jar

Note that modules are not necessary for Skript to work. Currently, they are only used to provide compatibility with old WorldGuard versions.

Testing

Skript has some tests written in Skript. Running them requires a Minecraft server, but our build script will create one for you. Running the tests is easy:

./gradlew (quickTest|skriptTest|skriptTestJava17|skriptTestJava21)

quickTest runs the test suite on newest supported server version. skriptTestJava21 (1.20.6+) runs the tests on Java 21 supported versions. skriptTestJava17 (1.19.4-1.20.4) runs the tests on Java 17 supported versions. skriptTest runs the tests on all versions. That is, it runs skriptTestJava17, and skriptTestJava21.

By running the tests, you agree to Mojang's End User License Agreement.

Importing to Eclipse

With new Eclipse versions, there is integrated Gradle support, and it actually works now. So, first get latest Eclipse, then import Skript as any Gradle project. Just make sure to keep the configuration when the importer asks for that!

If you encounter strange issues, make sure you follow the instructions above and have actually downloaded latest Eclipse or update your installation correctly. Skript's new Gradle version (starting from dev26) does not work very well with older Eclipse versions. Also, do not use Gradle STS; it is outdated.

Importing to IDEA

You'll need to make sure that nullness annotations are working correctly. Also, when sending pull requests, make sure not to change IDEA configuration files that may have been stored in the repository.

Releasing

./gradlew clean build
./gradlew <flavor>Release

Available flavors are github and spigot. Please do not abuse flavors by compiling your own test builds as releases.

Contributing

Please review our contribution guidelines. In addition to that, if you are contributing Java code, check our coding conventions.

Maven Repository

If you use Skript as (soft) dependency for your plugin, and use maven or Gradle, this is for you.

First, you need to add the Maven repository at the END of all your repositories. Skript is not available in Maven Central.

repositories {
maven {
url 'https://repo.skriptlang.org/releases'
}
}

Or, if you use Maven:

<repositories>
<repository>
<id>skript-releases</id>
<name>Skript Repository</name>
<url>https://repo.skriptlang.org/releases</url>
</repository>
</repositories>

For versions of Skript after dev37 you might need to add the paper-api repository to prevent build issues.

maven {
url 'https://repo.destroystokyo.com/repository/maven-public/'
}

Or, if you use Maven:

<repository>
<id>destroystokyo-repo</id>
<url>https://repo.destroystokyo.com/content/repositories/snapshots/</url>
</repository>

Then you will also need to add Skript as a dependency.

dependencies {
implementation 'com.github.SkriptLang:Skript:[versionTag]'
}

An example of the version tag would be 2.8.5.

Note: If Gradle isn't able to resolve Skript's dependencies, just disable the resolution of transitive dependencies for Skript in your project.

Or, if you use Maven:

<dependency>
<groupId>com.github.SkriptLang</groupId>
<artifactId>Skript</artifactId>
<version>[versionTag]</version>
<scope>provided</scope>
</dependency>

Relevant Links

Note that these resources are not maintained by Skript's developers. Don't contact us about any problems you might have with them.

Developers

You can find all contributors here.

All code is owned by its writer, licensed for others under GPLv3 (see LICENSE) unless otherwise specified.

About

Skript is a Bukkit plugin which allows server admins to customize their server easily, but without the hassle of programming a plugin or asking/paying someone to program a plugin for them.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages