项目选项¶
PySpigot允许您通过将名为project.yml的文件放置在项目的根文件夹中来指定特定于项目的选项。
除了main选项之外,这里列出的其余选项与常规脚本选项相同。
提示
为每个项目定义项目选项是可选的。有关更多信息,请参阅Defaults部分。
基本格式¶
如果您想为项目指定选项,请创建一个名为project.yml的文件,并将其放置在项目文件夹的根目录中。然后,将类似以下内容添加到文件中:
1 2 3 | |
注意
project.yml文件必须命名为project.yml;不接受其他名称。此外,PySpigot仅在项目的根目录中搜索此文件,因此必须将其放置在那里。
默认值¶
不是每个项目都需要指定项目选项。PySpigot依赖于回退以及在项目的project.yml文件中未定义时用于项目选项的默认值。下图说明了PySpigot在项目加载时搜索项目选项的过程。
graph LR
A[Project loads] --> B{Option present in project's project.yml?};
B -->|Yes| C[Use option from project's project.yml]
B -->|No| D{Default option present in config.yml?}
D -->|Yes| E[Use default option defined in config.yml]
D -->|No| F[Use internal default option]
PySpigot首先检查项目的project.yml文件中是否存在一个选项。如果该选项在那里没有定义,那么它将退回到config.yml中的script-option-defaults下定义的默认值。如果这里没有指定默认选项,则将退回到内部定义的默认值。
PySpigot对每个项目选项逐个执行此过程。
选项¶
main¶
指定项目的主模块。PySpigot使用这个来确定在项目加载时应该执行哪个模块。这类似于对多模块Python项目调用python main.py,其中main.py是项目的主模块。
1 | |
默认值: main.py
enabled¶
指定项目是否启用或禁用。要禁用一个项目,请将该值设置为false。
1 | |
默认值: true
load-priority¶
为项目指定一个整数加载优先级。脚本和项目按从最高到最低的加载优先级顺序加载。换句话说,具有较高加载优先级的脚本/项目会更早加载,而具有较低加载优先级的脚本/项目会更晚加载。如果多个脚本和项目具有相同的加载优先级,则按字母顺序加载。
1 | |
默认值: 1
plugin-depend¶
指定该项目需要加载的插件列表。如果服务器上未加载和运行插件依赖关系的任何一个,该项目将无法加载。此外,当插件被卸载/禁用时,根据此选项指定依赖于该插件的任何项目将自动被卸载(如果config.yml中的script-unload-on-plugin-disable选项设置为true)。
1 | |
注意
如果在项目中使用 ProtocolLib 或 PlaceholderAPI,你不需要在这里指定它们。PySpigot 内置支持这两个插件,并且依赖管理是内部处理的。
默认值: 无(空列表)
file-logging-enabled¶
指定是否启用项目文件记录日志。如果此选项为true,将生成一个项目日志文件,并将任何错误消息(以及发送到项目记录器的打印消息)记录到此文件中。如果此选项为false,则不会将任何消息记录到日志文件中,但消息仍将打印到服务器控制台。
1 | |
默认值: true
min-logging-level¶
指定应记录到项目日志文件和控制台的最低日志级别。选项可以在JavaDocs中找到。
1 | |
默认值: INFO
permissions¶
指定项目使用的权限列表。这对希望限制对某些功能访问的项目非常有用。此部分与 Bukkit 插件的 plugin.yml 文件中定义权限的方式完全相同,具体请参阅下方链接:permissions。以下是如何定义权限、默认值和子权限的用法示例代码。
1 2 3 4 5 6 7 8 9 10 11 12 | |
description是权限节点的描述,在权限列表中显示。默认值为权限节点的名称。default是权限节点的默认值,或者换句话说,谁应默认具有该权限节点。default有四个可能值:op:默认只有服务器操作员具有该权限节点。not op:非操作员的玩家默认具有该权限节点。true:所有玩家都具有该权限(即默认权限)。false:没有玩家具有该权限(即不是默认权限)。默认值为default_permission的值(如下所述)。children是应从父权限继承的子权限列表。每个权限节点可能有子节点。当设置为true时,子节点将继承父节点权限。
默认值: 无(未定义权限)
permission-default¶
指定权限应具有的默认值,如果它们未定义default值。
1 2 | |
permission-default允许的值为op、not op、true和false:
op:只有服务器操作员默认会具有权限节点。not op:非操作员的玩家会默认具有权限节点。true:所有玩家将拥有该权限(即默认权限)。false:没有玩家会拥有该权限(即非默认权限)。
默认值: op