Skript脚本语言入门指南: 准备工作
本文将指引您构建一个编写和调试Skript的环境.
介绍
关于Skript
Skript(简称sk):作为一种十分接近英语这一自然语言的脚本语言,一定程度上降低了服主们发挥创意的门槛。而总还是有的:首先你要对你的英语水平很有自信——能看懂文档的范例即可;其次就是在逻辑上能够理解之——作为脚本语言,并不是能用交际英语就可以解决一切问题;也不是Siri,和它描述需求它就能为你实现(Siri也不能)。所以,要想在Sk的世界随心徜徉,首先要记住,你如何与sk交流,Skript(的解释器)才能 “听懂” (实际上所有编程语言都是这样)。
与此同时,Minecraft的各个概念(实体、区块、规则之类)还有一些计算机基础知识与名词(string字符串、integer整数之类, 不过skript应该说是弱类型语言吧? 有最基本的区分: string对应text, player是玩家类型, number默认是long但是可以直接无感地变成double, 很多类型都可以通过parse as语法进行转换. )也是必不可少的,但是由于其容易通过搜索引擎了解,故不在此赘述。
安装
首先需要一个基于Bukkit的Minecraft服务端, 并且已经初始化. 然后前往SkriptLang Github Release下载最新版Skript插件构建, 将下载好的.jar文件放置在~<server_root>/plugins/
下, 然后重新启动服务端. 在将插件放置在此位置并启动服务端后, Skript将在plugins目录下创建自己的工作目录skript
.
使用服务端命令/sk info
来确认Skript是否已安装, 以及版本信息和附属插件版本信息.
Skript文件
Skript脚本的文件存放在它的工作目录 的子文件夹scripts
下, 内容是纯文本. 所有Skript脚本文件它的文件扩展名是.sk
, 手动在文件名的最前方添加符号-
将会使其内容不被加载(与命令/sk disable <script_name>.Skript
是同样的效果)
在这个文件夹下新建文本文档并修改扩展名为.sk
以创建你的第一个Skript脚本文件.
搭建调试环境
为了更好地编写和调试脚本, 建议自行搭建一个独立于运营服务端的环境.
在最开始, 请先自行寻找一个地方创建文件夹, 命名最好让自己看得懂. 以后我们称呼这个文件夹为「Skript 目录」
编辑器
我们推荐使用 Visual Studio Code 来编写Skript. 但是实际上, 可以用任意一个文本文件编辑器来编辑Skript脚本. 只是根据笔者经验, VSCode是最方便的.
前往VSCode 下载页面 选择适合自己电脑的版本下载并安装. 安装完成后打开VSCode, 在左侧找到一个「四个方块」组成的图标 (有点类似 ), 鼠标悬浮后若提示「扩展(Extension)」, 则点击它.
在它的搜索框内搜索「Skript + SkriptInsight」, 选择作者为「NickAc」的项目, 点击「安装(Install)」
按需重启VSCode.
找到先前创建的Skript目录, 右键点击它, 点击“在VSCode打开” (Windows11目前貌似要先点击「显示更多选项」), 现在你的VSCode就已经将 Skript 目录作为一个项目打开了.
点击VSC窗口右上角的「上白下黑」的按钮 (切换面板, 图标类似于), 以打开下方命令行面板. 这个面板中命令行的起始点即为Skript目录.
用于调试脚本的服务端
在Skript 目录中放置一个Bukkit/Spigot/Paper/… 服务端, 然后在上文中打开的命令行面板中操作控制台, 像正常开服一样将其初始化.
初始化后, 为其安装 兼容的 Skript.
在VSC左侧的竖列图标中, 确保选中了从上往下数的第一个图标 (资源管理器), 然后选择到scripts文件夹. 使用「新建文件…」按钮(图标类似 但是右下角有个+符号) 在当前选中的目录下创建新文件.
运行服务端命令 /sk help
来查看skript帮助.
其他
可以创建一个新的脚本然后粘贴以下内容来简化执行/sk reload scripts
命令.
command /skr:
trigger:
if sender has permission "admin":
broadcast "脚本将在3秒内开始重载, 可能带来卡顿" # 可选, 用于提示其他玩家. 如果在专用测试环境中调试, 则可删除此行.
wait 3 second # 配合上一条.
make sender execute command "/sk reload scripts"
broadcast "完成重载"
stop
这样就可以使用新注册的命令/skr
来重载所有脚本了.