配置说明
通用设置
文件:plugins/Skyllia/config/config.toml
config-version = 4
verbose = false # 启用详细控制台日志
[settings.island]
region-distance = 10 # 间距(region 为单位,1 = 512 格)
max-islands = 500_000
teleport-outside-island = false # 玩家低于世界最低 Y 时自动传送
restrict-player-movement = false # 玩家离开岛屿边界时推回
enable-obsidian-to-lava-conversion = true # 右键黑曜石+空桶 → 岩浆桶
[settings.island.delete]
prevent-deletion-if-has-members = true
chunk-perimeter-island = false # true = 仅删除岛屿区块(更快但不彻底)
[settings.island.chunk-processing.delete]
threads = -1 # -1 = 自动 (max(4, cpu_cores / 8))
delay-ms = 50 # 区块删除间隔(毫秒,50 = 1区块/tick)
[settings.island.chunk-processing.biome]
threads = -1
delay-ms = 50
[settings.island.invitation]
teleport-when-accepting = true
[settings.island.queue]
allow-bypass = true # 允许 'skyllia.island.bypass.queue' 权限
[settings.spawn]
enable = true
world-name = "world"
block-x = 0.0
block-y = 0.0
block-z = 0.0
yaw = 0.0
pitch = 0.0
[debug]
permission = false # 将缺失权限记录到控制台
[settings.cache.ttl]
# -1 = 永不过期,0 = 禁用
warps = -1
name-role = -1
role = -1
island = -1
player-link = -1
members = -1
state = -1
[permissions]
check-owner = false # true 时所有者也受权限检查
check-ban = false # true 时封禁玩家被拒绝岛屿操作
岛屿类型
文件:plugins/Skyllia/config/islands.toml
[island.<key>] 下的每个块定义一种岛屿类型,玩家可通过 /island create <key> 选择。key 必须与原理图名称匹配。
# 不带类型参数时使用的默认类型
[default-island]
default-schem-key = "my_first_island"
[island.my_first_island]
id = "my_first_island"
size = 50.0 # 半径(格)
max-members = 6
[island.my_second_island]
id = "my_second_island"
size = 50.0
max-members = 6
岛屿大小管理命令
/isadmin setsize <玩家> <大小>— 覆盖特定玩家岛屿的半径/isadmin setmaxmembers <玩家> <数量>— 覆盖最大成员数
世界配置
文件:plugins/Skyllia/config/worlds.toml
suppress-warning-nether-end = false
[worlds.sky-overworld]
environment = "NORMAL"
portal-nether = "sky-nether"
portal-end = "sky-end"
generator = "default"
biome-id = "minecraft:plains"
[worlds.sky-nether]
environment = "NETHER"
portal-nether = "sky-overworld"
portal-end = "sky-end"
generator = "default"
biome-id = "minecraft:basalt_deltas"
[worlds.sky-end]
environment = "THE_END"
portal-nether = "sky-nether"
portal-end = "sky-overworld"
generator = "default"
biome-id = "minecraft:end_highlands"
世界名称必须与磁盘上的实际文件夹名称匹配。portal-nether 和 portal-end 控制传送门通往哪个世界。
数据库配置
文件:plugins/Skyllia/config/database.toml
SQLite(默认)
MariaDB
[mariadb]
enabled = true
host = "localhost"
port = 3306
database = "skyllia"
username = "root"
password = "password"
[mariadb.pool]
maximum-pool-size = 10
minimum-idle = 5
connection-timeout = 30000
idle-timeout = 600000
max-lifetime = 1800000
PostgreSQL
[postgresql]
enabled = true
host = "localhost"
port = 5432
database = "skyllia"
username = "postgres"
password = "password"
[postgresql.pool]
maximum-pool-size = 10
minimum-idle = 5
connection-timeout = 30000
idle-timeout = 600000
max-lifetime = 1800000
同一时间只能启用一个后端。大型服务器推荐 PostgreSQL。拥有自己数据库的插件(SkylliaBank、SkylliaChallenge)会自动继承同一连接池。
玩家设置
文件:plugins/Skyllia/config/players.toml
[player.island.leave]
clear-inventory = true # 离开岛屿时清空背包
clear-enderchest = true
clear-experience = true
[player.island.kicked]
clear-inventory = false
clear-enderchest = false
clear-experience = false
[player.island.delete]
clear-inventory = true
clear-enderchest = true
clear-experience = true
[player.join.teleport]
own-island = true # 加入服务器时传送到自己的岛屿
spawn-not-island = false # 没有岛屿时传送到出生点
[player.permissions]
allow-teleportation = true
加入时传送
own-island = true 使每个玩家加入服务器时直接传送到岛屿出生点。同时启用 spawn-not-island = true 时,没有岛屿的玩家会被送到全局出生点。
原理图
文件:plugins/Skyllia/config/schematics.toml
Skyllia 支持两种原理图后端:
🌍 WorldEdit / FAWE — 粘贴 WorldEdit 原理图文件夹中的 .schem 或 .schematic 文件。FAWE 提供异步粘贴。
🔧 内置 — Skyllia 自己的轻量级原理图系统。将 .json 文件放入 plugins/Skyllia/schematics/。
每个岛屿类型按每个世界配置。key 格式为 "<岛屿ID>.<世界名>"。
["my_first_island.sky-overworld"]
schematic = "./schematics/default.schem"
height = 64.0
ignore-air-blocks = true
copy-entities = true
plugin = "WorldEdit" # "WorldEdit", "FastAsyncWorldEdit" 或 "Internal"
# min-build-height = 0
# max-build-height = 150
["my_first_island.sky-nether"]
schematic = "./schematics/default.schem"
height = 64.0
ignore-air-blocks = true
copy-entities = true
plugin = "WorldEdit"
配置参考
| 键 | 说明 |
|---|---|
| schematic | .schem 文件路径 |
| height | 原理图放置的 Y 坐标 |
| ignore-air-blocks | true 跳过空气方块(保留现有地形) |
| copy-entities | true 复制原理图中的实体 |
| plugin | WorldEdit、FastAsyncWorldEdit 或 Internal |
| min-build-height | (可选)最低建造高度 |
| max-build-height | (可选)最高建造高度 |
每个岛屿类型 × 世界需要一个配置块。3 种岛屿类型 + 3 个世界 = 9 个块。缺少世界块会导致该世界的岛屿创建失败。