BedWars 起床战争插件
BedWars1058 — 开源起床战争插件
一句话定位:BedWars 是一款功能完整、高度可定制的 Minecraft 起床战争小游戏插件,支持自定义队伍、计分板、商店、队伍升级与多语言,适用于 Spigot/Paper 服务端。
概述
BedWars(起床战争)是一款经典 Minecraft 小游戏:玩家分为多个队伍,每个队伍需要守护自己的床,同时破坏敌方队伍的床。一旦某队的床被摧毁,该队成员死亡后将无法重生。最后存活的队伍获胜。
BedWars 由 Andrei Dascălu 开发,自 2021 年 11 月 1 日起以 GNU GPL 3.0 开源协议 发布。插件具有以下核心优势:
高度可定制:队伍、计分板、商店、升级系统全部可配置
多语言支持:每位玩家可独立选择语言,内置 13 种语言
灵活部署:支持 SHARED / MULTIARENA / BUNGEE-LEGACY / BUNGEE 四种运行模式
跨版本兼容:从 1.8.x 到 1.20.x 广泛支持
活跃社区:数百家服务器正在使用,GitHub 持续更新
核心功能
运行模式(四种部署方式)
| 模式 | 说明 |
| :--- | :--- |
| SHARED | 与其他小游戏共享同一个 Spigot 实例,仅通过命令加入游戏 |
| MULTIARENA | 独占整个服务端实例,保护大厅世界,支持命令、NPC、告示牌、GUI 多种加入方式 |
| BUNGEE-LEGACY | 经典 Bungee 模式,每个游戏占用一整个服务端,加入服务器即进入游戏,状态通过 MOTD 显示 |
| BUNGEE | 全新可扩展 Bungee 模式,同一服务端可承载多个竞技场,按需克隆并启动新竞技场,配合 BedWarsProxy 实现大厅服加入 |
个性化语言系统
每位玩家可通过 /bw lang 切换自己的语言偏好,消息、全息图、GUI、计分板均会随之切换。支持的语言包括:英语、罗马尼亚语、意大利语、西班牙语、波兰语、俄语、孟加拉语、波斯语、印尼语、印地语、葡萄牙语、土耳其语、简体中文。可随时添加或删除语言文件。
竞技场分组(Arena Groups)
可按游戏类型对竞技场进行分组(如 Solo、4v4、50v50),每个分组拥有独立的:
计分板布局
队伍升级内容
开局物品
资源生成器设置
玩家可通过 /bw join Solo 或 /bw gui Solo+4v4 按分组加入游戏。
自定义商店系统
商店系统完全可配置:
可配置快速购买(Quick Buy)的默认物品
可添加或删除商品分类
购买时可执行命令
永久物品在重生后重新发放,支持降级机制(每次死亡降一级)
物品权重系统,防止购买比当前更弱的装备
特殊物品:BedBug(银鱼)、Dream Defender(铁傀儡)、Egg Bridge、TNT Jump、Straight Fireball
快速购买功能在 Bungee 模式下跨节点同步
队伍升级系统(Team Upgrades)
每个竞技场分组可配置独立的升级树:
强化类:附魔武器/盔甲、给予药水效果(队友/基地/敌人进入岛屿时触发)
经济类:调整资源生成器速率
终极技能:修改 Sudden Death 阶段的末影龙数量
陷阱类:解除敌人附魔、施加/移除药水效果、触发命令
多种加入方式
竞技场选择器 GUI:/bw gui 显示所有分组,/bw gui Solo 显示指定分组
NPC 加入:安装 Citizens 插件后创建加入 NPC
告示牌加入:在告示牌首行写 [bw],次行写竞技场名称,状态方块实时显示
命令加入:/bw join random 加入最满的场,/bw join 地图名 加入指定场
计分板与统计
每个竞技场分组可配置独立计分板布局
玩家可通过 /bw stats 查看个人统计(胜场、击杀等)
内置统计 GUI,可自定义样式
支持通过 PlaceholderAPI 对接 ajLeaderboards 或 LeaderHeads 实现排行榜全息图
其他实用功能
反挂机系统:45 秒无操作则无法拾取生成器掉落物
重新加入:断线或主动离开后可通过命令或重连回归游戏
VIP 特权:bw.vip 权限允许加入已满的竞技场(会踢出一名无 VIP 玩家)
VIP 功能扩展:拖尾特效、法术、粒子、经验加成(需扩展插件)
队伍选择器:游戏开始前选择队伍颜色
TNT Jump:可配置参数的 TNT 弹跳玩法
奖励命令:在游戏特定节点执行命令
网页统计:可将玩家数据展示在网页上
内置弹射塔(Pop-Up Tower):无需额外插件
异步治疗池动画:性能友好
系统要求
| 项目 | 要求 |
| :--- | :--- |
| 服务端 | Spigot 或 Paper(官方支持),不支持无 NMS 代码的 Spigot 分支 |
| Java 版本 | Java 11 或更高 |
| 地图恢复 | 默认基于 ZIP 压缩/解压,建议使用 SSD + 较好 CPU |
| 推荐优化 | SlimeWorldManager v2.2.1 / AdvancedWorldManager v2.8.0 / AdvancedSlimePaper(1.20+) |
常用命令
玩家命令
| 命令 | 说明 |
| :--- | :--- |
| /bw | 查看插件命令列表 |
| /bw gui | 打开竞技场选择 GUI |
| /bw gui [分组名] | 打开指定分组的竞技场选择 GUI |
| /bw join | 加入一张竞技场 |
| /bw join random | 随机加入一个竞技场 |
| /bw join [分组名] | 加入指定分组的竞技场 |
| /bw join [分组1+分组2] | 从多个分组中选择第一个可用的场 |
| /bw join [竞技场名] | 加入指定名称的竞技场 |
| /bw leave | 离开当前竞技场 |
| /bw lang | 切换个人语言 |
| /bw stats | 查看个人起床战争统计 |
| /bw teleporter | 旁观者传送菜单 |
| /bw tp [玩家名] | 传送到指定玩家身边(管理员查挂用) |
| /bw start | 在满足条件下强制开始竞技场 |
| /bw shout | 在单人/组队竞技场中发送全体消息 |
| /party | 组队相关命令 |
| /rejoin | 重新加入上一场游戏 |
管理员命令
| 命令 | 说明 | 权限 |
| :--- | :--- | :--- |
| /bw setLobby | 设置主大厅位置 | bw.setup |
| /bw setupArena [世界名] | 创建或编辑竞技场 | bw.setup |
| /bw setWaitingSpawn | 设置等待出生点 | bw.setup |
| /bw setSpectSpawn | 设置旁观者出生点 | bw.setup |
| /bw setSpawn | 设置队伍出生点 | bw.setup |
| /bw addGenerator | 添加铁/金/绿宝石/钻石生成器 | bw.setup |
| /bw removeGenerator | 移除附近生成器 | bw.setup |
| /bw autoCreateTeams | 自动创建队伍 | bw.setup |
| /bw createTeam | 手动创建队伍 | bw.setup |
| /bw removeTeam | 移除队伍 | bw.setup |
| /bw setBed | 站在床上设置床位置 | bw.setup |
| /bw setMaxInTeam | 设置队伍人数上限 | bw.setup |
| /bw setShop | 设置商店 NPC 位置 | bw.setup |
| /bw setUpgrade | 设置升级 NPC 位置 | bw.setup |
| /bw waitingPos | 设置等待大厅选区(游戏开始后移除) | bw.setup |
| /bw setKillDrops | 设置击杀掉落物位置 | bw.setup |
| /bw save | 保存设置并返回大厅 | bw.setup |
| /bw arenaList | 查看竞技场列表 | bw.setup |
| /bw cloneArena [原名] [新名] | 复制竞技场 | bw.clone |
| /bw delArena [名称] | 删除竞技场 | bw.delete |
| /bw enableArena [名称] | 启用竞技场 | bw.enable |
| /bw disableArena [名称] | 禁用竞技场 | bw.disable |
| /bw arenaGroup | 管理竞技场分组 | bw.groups |
| /bw npc add [类型] [分组] [显示名] | 添加加入 NPC(需 Citizens) | bw.npc |
| /bw npc remove | 移除面前的 NPC | bw.npc |
| /bw build | 允许在大厅中建造 | bw.build |
| /bw level setLevel [玩家] [等级] | 设置玩家等级 | bw.level |
| /bw level giveXp [玩家] [数量] | 给予玩家经验 | bw.level |
| /bw reload | 重载消息配置文件 | bw.reload |
权限节点
| 权限 | 说明 |
| :--- | :--- |
| bw. | 所有插件权限 |
| bw.vip | 加入已满竞技场(VIP 踢人)、使用聊天颜色 |
| bw.chatcolor | 使用聊天颜色代码 |
| bw.forcestart | 使用 /bw start 强制开始 |
| bw.tp | 使用 /bw tp 传送 |
| bw.setup | 所有竞技场设置命令 |
| bw.clone | 复制竞技场 |
| bw.delete | 删除竞技场 |
| bw.enable / bw.disable | 启用/禁用竞技场 |
| bw.groups | 管理竞技场分组 |
| bw.npc | 管理加入 NPC |
| bw.build | 大厅建造权限 |
| bw.level | 管理玩家等级与经验 |
| bw.reload | 重载配置 |
| bw.shout | 在游戏内发送全体消息 |
配置文件
插件生成多个配置文件,均位于 plugins/BedWars1058/ 目录下:
| 文件 | 作用 |
| :--- | :--- |
| config.yml | 主配置:运行模式、数据库、生成器参数、游戏规则等 |
| shop.yml | 商店商品与分类配置 |
| upgrades.yml | 队伍升级与陷阱配置 |
| signs.yml | 告示牌格式配置 |
| messages_xx.yml | 各语言消息文件(如 messages_en.yml、messages_zh_cn.yml) |
关键配置示例(config.yml)
服务端类型
serverType: MULTIARENA # SHARED / MULTIARENA / BUNGEE-LEGACY / BUNGEE
大厅设置
lobby-server: lobby
allowSpectate: true
生成器全局设置
generator:
iron:
delay: 1.0
amount: 1
gold:
delay: 2.0
amount: 1
emerald:
delay: 5.0
amount: 1
游戏设置
game:
sudden-death-seconds: 600
bed-holograms: true
allow-map-breaking: false
安装步骤
单服务端(Paper / Spigot)
从 SpigotMC 资源页下载 BedWars1058.jar
将 jar 文件放入 plugins/ 目录
启动服务器生成配置文件
在控制台执行 /bw disableSafeMode 关闭安全模式
编辑 config.yml,将 serverType 设为 MULTIARENA,重启服务器
确保自己是 OP,执行 /bw setLobby 设置主大厅
使用 /bw setupArena [世界名] 创建竞技场,按提示逐步设置出生点、床、商店、升级 NPC、生成器等
执行 /bw save 保存,再用 /bw enableArena [世界名] 启用
Bungee 网络部署
在每个游戏服务端安装 BedWars1058
在 config.yml 中将 serverType 设为 BUNGEE
在大厅/枢纽服安装 BedWarsProxy 插件
配置 BungeeCord/Velocity 代理,将玩家从大厅服路由到游戏服
重启所有服务端
地图恢复优化(推荐)
默认 ZIP 恢复方式对硬盘和 CPU 有一定压力,建议安装以下之一:
SlimeWorldManager v2.2.1(仅旧版兼容)
AdvancedWorldManager v2.8.0
AdvancedSlimePaper(1.20 及以上,推荐)
BedWars1058 会自动检测并对接,无需额外配置。
竞技场设置速查流程
/bw setLobby --> 设置主大厅
/bw setupArena [世界名] --> 创建竞技场
/bw setWaitingSpawn --> 设置等待出生点
/bw autoCreateTeams --> 自动创建队伍(或手动 createTeam)
/bw setSpawn --> 逐一设置各队出生点
/bw setBed --> 站在床上设置床位置
/bw setShop --> 设置商店 NPC
/bw setUpgrade --> 设置升级 NPC
/bw addGenerator --> 为每队添加铁/金生成器
/bw addGenerator --> 在地图放置绿宝石/钻石生成器
/bw save --> 保存并返回大厅
/bw enableArena [世界名] --> 启用竞技场
兼容性说明
Minecraft 版本:1.8.x ~ 1.20.x(1.8.x 支持将在未来移除)
服务端:Spigot、Paper(官方支持);不支持无 NMS 代码的 Spigot 分支
不兼容插件:Advanced Anti Cheat (AAC)、滥用计分板的插件
可选依赖:Citizens(用于加入 NPC)、Vault(经济与前缀支持)、Parties by AlessioDP(大型网络组队方案)、PlaceholderAPI + ajLeaderboards(排行榜)
已知问题
插件使用 NMS 代码,不兼容剥离了 NMS 的 Spigot 分支
server.properties 中的 spawn-protection 建议设为 0,否则可能干扰竞技场
1.8.x 版本支持将在未来版本中移除
获取支持
官方 Wiki:https://github.com/andrei1058/BedWars1058/wiki
GitHub 仓库:https://github.com/andrei1058/BedWars1058
Discord 社区:https://discord.gg/andrei1058
SpigotMC 资源页:https://www.spigotmc.org/resources/bedwars1058-opensource.97320/
Bug 反馈:通过 GitHub Issues 或 Discord
许可协议
BedWars 自 2021 年 11 月 1 日起以 GNU GPL 3.0 开源协议发布。开发者欢迎提交 Pull Request 共同改进,而非大量创建分支。
帖子制作 by LT-YHC
评论 (0)