平台
Skript
用 Codexe 编写 Skript 脚本。测试服务器装有哪些附加组件、脚本如何在真实的 Paper 服务器上进行加载测试、“未经测试加载”是什么意思,以及如何安装。
更新于
Skript 是一个插件,可以运行用类似英语的语法编写的 .sk 脚本。不用写 Java,它就能实现大量服务器行为。脚本不是插件:没有什么需要编译,你只需把文件放到服务器上。
想在游戏里试玩你的脚本,可以用立即试用启动一个私人测试服务器。
Codexe 会编写一个 .sk 文件,以你要求的功能命名(例如 daily_rewards.sk)。如果你想拆分,请要求多个文件。
#需求中该写什么
- 脚本做什么:命令、事件、GUI、计时器。
- 你可以安装哪些附加组件。基础 Skript 并不是什么都能做;有些功能需要附加组件。
- 你的服务器版本,如果脚本用到了特定版本的物品或效果。
A Skript script: /kit starter gives a stone sword, 16 bread and 8 torches, once every 24 hours per player (stored in a variable). Show the remaining time if used too early. Permission kits.starter.#Codexe 如何验证 Skript
Codexe 会在它的构建沙盒中离线把脚本加载到一个装有 Skript 2.16.2 的真实 Paper 1.21.11 服务器上,并读取 Skript 报告的解析错误。每个 .sk 文件都必须能加载。有错误的脚本会像代码一样被修复。
AI 编写和修复脚本时,会参照同一版本的官方 Skript 文档(docs.skriptlang.org):与你的需求相关的语法;修复时,还有服务器拒绝的那几行的确切语法。
测试服务器装有以下附加组件:
| 附加组件 | 原因 |
|---|---|
| SkBee | NBT、Boss 栏、计分板,以及许多额外语法 |
| skript-reflect | 在脚本中访问 Java 类 |
| skript-gui | 物品栏 GUI |
| skript-yaml | 读写 YAML 文件 |
| Vault + EssentialsX | 让 player's balance 这样的经济表达式可用 |
#“已生成,但未经测试加载”
如果脚本用到了测试服务器上没有的附加组件(例如 SkQuery、TuSKe、skript-db 或 DiSky),Codexe 就无法有意义地加载它。这时项目会被标记为未经测试加载(参见项目生命周期),而不是被“修复”成别的东西。如果你的服务器装有那个附加组件,脚本在你的服务器上可能完全正常。
#安装
把 .sk 文件放进 plugins/Skript/scripts/,然后运行 /sk reload <name>(或重启)。请先安装脚本需要的所有附加组件。