跳到主要内容

config.yml

plugins/CloudArena/config.yml,改完执行 /ca admin reload(数据库设定要重启服务器)。以下是默认内容,按段落说明。 从 LittleArena 换过来的服务器,第一次启动时会把 LittleArena 的设定自动写进这个文件,见 安装与授权。

画面、数据库与服务器编号​

# 竞技菜单的画面:auto = 装了云界面 CloudUI 就用云界面画面(大厅、套装、排行榜、观战、奖励),玩家不能显示时用箱子菜单;
# chest = 一律用箱子菜单
ui: auto

# 服务器编号:多台子服共用同一个 MySQL 时用来区分「背包备份」属于哪一台(留空 = 自动用资料夹名 + 端口)
server-id: ''

database:
# sqlite(默认,存在插件资料夹的 data.db)或 mysql
type: sqlite
file: data.db
host: 127.0.0.1
port: 3306
database: cloudarena
username: root
password: ''
parameters: 'useSSL=false&characterEncoding=utf8'
table-prefix: ca_
pool-size: 4

# 八个模式。enabled 关掉的模式不会出现在菜单,也不能排队
# 公平 = 双方使用同一套服务器套装(进场前背包整个备份,结束一定还原)
# 巅峰 = 使用自己的背包、装备与养成属性(物品不会掉落、盔甲不会被脱下)
# slot = 主菜单的位置(5 行箱子,0-44)

ui 见 云界面画面;多子服与 MySQL 的说明见 数据库。

模式​

# 八个模式。enabled 关掉的模式不会出现在菜单,也不能排队
# 公平 = 双方使用同一套服务器套装(进场前背包整个备份,结束一定还原)
# 巅峰 = 使用自己的背包、装备与养成属性(物品不会掉落、盔甲不会被脱下)
# slot = 主菜单的位置(5 行箱子,0-44)
modes:
fair_1v1:
enabled: true
name: '&b公平匹配 &f1V1'
icon: IRON_SWORD
slot: 10
fair_2v2:
enabled: true
name: '&b公平匹配 &f2V2'
icon: GOLDEN_SWORD
slot: 11
fair_ranked_1v1:
enabled: true
name: '&3公平排位 &f1V1'
icon: SHIELD
slot: 12
fair_ranked_2v2:
enabled: true
name: '&3公平排位 &f2V2'
icon: TRIDENT
slot: 13
peak_1v1:
enabled: true
name: '&6巅峰匹配 &f1V1'
icon: DIAMOND_SWORD
slot: 19
peak_2v2:
enabled: true
name: '&6巅峰匹配 &f2V2'
icon: NETHERITE_AXE
slot: 20
peak_ranked_1v1:
enabled: true
name: '&c巅峰排位 &f1V1'
icon: NETHERITE_SWORD
slot: 21
peak_ranked_2v2:
enabled: true
name: '&c巅峰排位 &f2V2'
icon: MACE
slot: 22

见 八个模式。

比赛​

match:
# 开打前倒数(秒),倒数期间不能移动
countdown: 5
# 一场最多几秒;时间到比两队剩余血量(百分比加总),多的赢,一样平手
max-duration: 300
# 分出胜负后几秒把所有人送回原处
end-delay: 3
# 没有设置 pos1 / pos2 的地图:以两个出生点外扩几格当作场地范围
arena-radius: 12
# 2V2 队友互相伤害
friendly-fire: false
# 2V2 阵亡后观战队友的方式:adventure(冒险隐身悬浮,背包不动)/ spectator(旁观模式)
dead-

观战​

spectate: adventure
# 场内速度:主城 / 大厅给的加速不带进竞技场(离场后还原)
speed:
# 进场时移除、比赛中其他插件也加不上的药水效果(套装自带的效果不受影响;[] = 不限制)
block-effects: [SPEED]
# 巅峰模式自己喝的 / 丢的药水、药水箭照常生效
allow-own-potions: true
# 走路速度恢复成原版(/speed 或其他插件设的走路速度),比赛中也保持原版
reset-walk-speed: true
# 比赛中可以丢东西(公平模式的套装物品丢出去也会在结束时清掉)
allow-drop: false
# 显示比赛 BossBar / 标题
bossbar: true
titles: true
# 比赛与观战中可以用的指令(/ca 永远可以用;有 cloudarena.bypass.commands 权限的不受限制)
allowed-commands: [msg, tell, w, r, reply, me]

spectate:
# 观战者只能在场地范围内飞
confine: true
# 观战方式:adventure = 冒险模式隐身悬浮(不能穿墙、速度固定、手上有离开道具,其他玩家看不到)
# spectator = 旁观模式(可以穿墙,滚轮可以调速度)
mode: adventure
# 观战飞行速度(原版 0.1,越大越快,最大 1.0)
fly-speed: 0.1

见 观战。

排队​

queue:
# 排多久没配到就自动退出(秒,0 = 不限)
timeout: 600
# 排队中禁止使用其他指令
block-commands: false
# 同 IP 的玩家不会被配成对手(防小号刷分)。服务器接 BungeeCord / Velocity 但没转发真实 IP 时请关掉
same-ip-block: false
# 在这些世界不能排队、不能发起或接受切磋(例如副本世界)
blocked-worlds: []
# 分数差距:刚排时最多差 start 分,每过 step-seconds 秒放宽 step 分,最多 max(0 = 不封顶)
# 匹配模式也用隐藏分配对,尽量把实力接近的人配在一起
casual-range: {start: 300, step: 100, step-seconds: 10, max: 0}
ranked-range: {start: 100, step: 25, step-seconds: 10, max: 600}

见 排队与配对。

分数​

rating:
# 初始分数(每个排位模式独立)
default: 1000
# Elo K 值(越大分数变化越大)
k-factor: 32
# 定级赛场数:打满才显示段位;定级期间用 placement-k-factor(变化较大,快速找到真实分数)
placements: 3
placement-k-factor: 64
# 胜负局至少变动几分
min-change: 1
# 最低分数
floor: 0

见 段位与赛季。

公平模式​

fair:
# 公平模式排队时可以选套装(关掉 = 一律随机)。两人选的套装不同不会配在一起,选「随机」的可以配任何人
kit-select: true
# 不选时的预设套装(留空 = 随机)
default-kit: ''
# 进场时补满血量与饱食度
heal: true

见 公平套装。

巅峰模式​

peak:
# 进场时补满血量与饱食度
heal: true
# 结束后把背包还原成进场前(true = 吃掉的药水、用掉的箭都会回来)
restore-inventory: false
# 巅峰模式禁止带进场的物品
blacklist:
materials: []
name-contains: []
lore-contains: []
# 1.21.4+ 的 item_model(例如 craftengine:xxx)
item-models: []
# CraftEngine 物品 ID(命名空间:ID,例如 default:long_spear)
craftengine: []
# 自定义模型数据 CustomModelData(数字)
custom-model-data: []

materials 填材质名称(例如 TOTEM_OF_UNDYING、ENCHANTED_GOLDEN_APPLE);name-contains / lore-contains 比对去掉颜色后的名称与 Lore 文字;item-models 比对 1.21.4+ 物品的 item_model;craftengine 填 CraftEngine 物品 ID(例如 default:long_spear);custom-model-data 填数字。排队时与开赛前都会检查,带了就不能进场。从 LittleArena 迁移时,blacklist.yml 会自动转进这里。

场地保护​

# 场地保护:非比赛时其他玩家不能改场地方块;比赛中非参赛者不能走进场地(有 cloudarena.admin 权限的不受限制)
protect-arenas:
blocks: true
block-entry: true

见 地图。

播报、记录、切磋、赛季​

broadcast:
# 开赛 / 胜负全服播报
start: false
win: true
# 排队广播:有人开始排队时通知没在玩的人(聊天栏可点击加入;玩家可用 /ca notify 关掉)
queue:
enabled: true
# 同时显示在 ActionBar
actionbar: true
# 同一个模式多久内只广播一次(秒)
cooldown: 30
# 有人等超过这么久还没配到,再提醒一次(秒,0 = 不提醒)
remind-seconds: 60
# 排位升到这个段位(含)以上全服播报,留空 = 不播报
rankup-tier: '钻石I'

history:
# 每人保留几场对战记录
keep: 30

duel:
# 切磋邀请有效时间(秒)
expire: 60
# 切磋计入匹配模式战绩(排位分永远不受切磋影响)
record-stats: false

season:
# 赛季名称格式,{n} = 第几季(/ca admin season reset 进入下一季)
format: 'S{n}'

段位线​

# 段位线:从低到高,min = 最低分数
ranks:
- {name: '黑铁I', min: 0, color: '&8', icon: GRAY_DYE}
- {name: '黑铁II', min: 100, color: '&8', icon: GRAY_DYE}
- {name: '黑铁III', min: 200, color: '&8', icon: GRAY_DYE}
- {name: '青铜I', min: 300, color: '&6', icon: ORANGE_DYE}
- {name: '青铜II', min: 400, color: '&6', icon: ORANGE_DYE}
- {name: '青铜III', min: 500, color: '&6', icon: ORANGE_DYE}
- {name: '白银I', min: 600, color: '&f', icon: LIGHT_GRAY_DYE}
- {name: '白银II', min: 700, color: '&f', icon: LIGHT_GRAY_DYE}
- {name: '白银III', min: 800, color: '&f', icon: LIGHT_GRAY_DYE}
- {name: '黄金I', min: 900, color: '&e', icon: GOLD_INGOT}
- {name: '黄金II', min: 1000, color: '&e', icon: GOLD_INGOT}
- {name: '黄金III', min: 1100, color: '&e', icon: GOLD_INGOT}
- {name: '铂金I', min: 1200, color: '&b', icon: CYAN_DYE}
- {name: '铂金II', min: 1300, color: '&b', icon: CYAN_DYE}
- {name: '铂金III', min: 1400, color: '&b', icon: CYAN_DYE}
- {name: '钻石I', min: 1500, color: '&3', icon: DIAMOND}
- {name: '钻石II', min: 1600, color: '&3', icon: DIAMOND}
- {name: '钻石III', min: 1700, color: '&3', icon: DIAMOND}
- {name: '超凡I', min: 1800, color: '&5', icon: TOTEM_OF_UNDYING}
- {name: '超凡II', min: 1900, color: '&5', icon: TOTEM_OF_UNDYING}
- {name: '超凡III', min: 2000, color: '&5', icon: TOTEM_OF_UNDYING}
- {name: '神话I', min: 2100, color: '&d', icon: AMETHYST_SHARD}
- {name: '神话II', min: 2200, color: '&d', icon: AMETHYST_SHARD}
- {name: '神话III', min: 2300, color: '&d', icon: AMETHYST_SHARD}
- {name: '赋能', min: 2400, color: '&4', icon: NETHER_STAR}

见 段位与赛季。

rewards.yml(奖励)​

# ==================================================
# 云竞技 CloudArena 奖励(建议用 /ca admin 的管理介面修改,改完自动生效)
# 每一笔奖励可以有:money 金币(Vault)、points 点券、commands 控制台指令、items 物品(介面里直接放进去)
# 指令可用 {player} {mode} {kills} {rating}
# 所有奖励都会在玩家「离开竞技场、背包还原之后」才发放;离线的人下次上线自动领取,背包满了用 /ca rewards 领取
# ==================================================

# 发点券用的指令({amount} = 数量),PlayerPoints 预设是 points give
points-command: 'points give {player} {amount}'

# ---------------- 单场奖励:default 是所有模式的预设,也可以写 fair_ranked_1v1: {win: {...}} 单独覆盖某个模式
match:
default:
win:
money: 20
commands: []
lose:
money: 0
commands: []
draw:
money: 5
commands: []
kill: # 每击杀一人
money: 5
commands: []
fair_ranked_1v1:
win: {money: 40, commands: []}
fair_ranked_2v2:
win: {money: 40, commands: []}
peak_ranked_1v1:
win: {money: 40, commands: []}
peak_ranked_2v2:
win: {money: 40, commands: []}

# 每天第一场胜利额外奖励
daily-first-win:
enabled: true
money: 100
commands: []

# 连胜达到这个数字时发放
streaks:
'3': {money: 20, commands: []}
'5': {money: 50, commands: []}
'10': {money: 120, commands: []}

# 每日金币上限(只限制单场奖励的金币,0 = 不限)
daily-money-cap: 0

# ---------------- 排名奖励
ranking:
# 结算周期:off 关闭 / daily 每天 / weekly 每周 / monthly 每月 / season 跟着赛季(执行 /ca admin season reset 时结算)
cycle: 'off'
# 结算时间(24 小时制)
time: '00:00'
# weekly:星期几(1 = 周一 … 7 = 周日);monthly:每月几号(1 - 28)
weekday: 1
monthday: 1
# 结算后:none 不重置 / soft 软重置分数 / hard 重置分数(都会进入下一个赛季)
reset: none
# 结算时全服播报前三名
broadcast: true
# 每个模式的名次奖励:'1' = 第 1 名,'2-3' = 第 2 到 3 名。排位模式按分数(已定级),匹配模式按胜场
modes:
fair_ranked_1v1:
'1': {money: 1000, commands: []}
'2-3': {money: 500, commands: []}
'4-10': {money: 200, commands: []}
peak_ranked_1v1:
'1': {money: 1000, commands: []}
'2-3': {money: 500, commands: []}
'4-10': {money: 200, commands: []}

奖励单独放在 plugins/CloudArena/rewards.yml,建议用管理介面 /ca admin 修改,见 奖励。