BedWars 配置器

BedWars 配置器

BedWars插件伴侣设置工具——完全在游戏中构建和编辑竞技场、地图和商店,无需配置文件

小游戏

BedWars 配置器

BedWars Hytale 插件提供游戏内配置界面。无需离开游戏即可构建和调整竞技场、地图与商店——无需手动编辑 JSON,无需重启服务器,无需猜测坐标。

此插件是主 BedWars 插件的伴侣工具。它写入与 BedWars 读取相同的配置文件,因此你在此构建的任何内容都会在下次竞技场加载时生效。如果安装了数据提供器(MongoDB、MySQL 等),配置也会同步至 BedWars 数据层,确保多服务器设置保持一致。


功能特性

  • 可视化竞技场构建器 — 名称、计时、玩家数量、大厅位置、大厅物品以及商店分配。
  • 地图编辑器 — 可配置任意数量的队伍(名称、颜色、出生点、村民 NPC、床)和资源生成器(物品类型、掉落频率、生成位置)。
  • 商店设计师 — 使用图标构建分类目录,添加物品,配置每个物品的价格(每个交易可使用任意数量的货币物品)。
  • 位置工具 — 一键选取方块或玩家位置,无需手动输入坐标。
  • 连续拾取模式 — 一次性标记多个资源生成点,无需在每次添加后重新打开 UI。
  • 自动保存草稿 — 你的工作进度在断线、重启或意外关闭后仍可保留。重新打开配置器即可从上次离开的位置继续编辑。
  • 自动备份 — 每次覆盖保存时,系统会将上一版本快照到 backup/ 文件夹中。错误操作可恢复。
  • 双面板管理界面 — 左侧显示已保存的配置,右侧显示你的活动草稿。随时了解哪些已保存、哪些正在编辑中。
  • 数据提供器同步 — 若配置了 BedWars 数据提供器,每次保存都会镜像到数据库。
  • 插件扩展 API — 其他插件可在配置器中注册自定义 UI 区块、按钮和完整页面(详见 BedWars API 文档)。

安装

  1. 确保服务器已安装 BedWarsKytale (1.4+)UiManager
  2. BedwarsConfigurator.jar 放入 mods 目录。
  3. 重启服务器。

完成。首次使用前无需编辑任何配置文件。

依赖要求

依赖项 版本 说明
Hytale 服务器 *
Kytale ≥ 1.4
UiManager 最新版本 必须 — 提供配置器所依赖的 UI DSL
BedWars(核心) 最新版本 推荐 — 启用实时数据提供器同步

配置器可独立运行(可写入 JSON 文件供后续使用),但与 BedWars 核心插件配合使用时效果最佳——保存操作将直接写入 BedWars 的实时配置。


命令

命令 描述
/bwconfigure 打开主配置器(竞技场/地图/商店)
/bwshopconfig 直接跳转到商店管理界面

两个命令都需要玩家上下文(在游戏中执行)。无需配置单独的权限——插件故意保持简单。如有需要,可使用你现有的权限插件限制访问。


快速入门:你的第一个竞技场

  1. 运行 /bwconfigure 并点击 管理竞技场 → 创建新竞技场
  2. 设置 名称计时玩家数量 以及你希望玩家获得的任何 大厅物品
  3. 大厅位置 下,点击 使用我的位置 将大厅锁定到你站的位置,或点击 拾取方块位置 右键点击特定方块。
  4. 点击 保存到文件。竞技场现已持久化到 arenas/<名称>.json

对地图和商店重复相同的操作。保存和加载立即生效——无需重启。


位置工具

当配置器需要坐标时,一个名为 位置工具 的自定义物品会出现在你的快捷栏中。它使用所有三种点击类型,因此你无需切换工具:

操作 功能
右键点击方块 保存该方块的位置
使用物品(Q/使用键) 保存你当前站立的位置
左键点击(任意处) 返回配置器 UI

在拾取资源生成点时,配置器会保持 连续模式——每次右键点击都会添加一个新的生成点,直到你左键点击返回。非常适合在几秒内布置十几个铁/金生成器。


可配置内容

竞技场

存储在 arenas/<名称>.json 中的每个竞技场设置:

  • 名称和世界中的大厅位置
  • 计时:时间限制、开始倒计时、结束时间、重生延迟
  • 玩家:开始数量、最大数量、队伍大小
  • 快速开始:启用/禁用、阈值数量、缩短的倒计时
  • 投票:启用/禁用、最大地图选项、投票倒计时
  • 大厅快捷栏物品:投票物品、队伍选择物品、离开物品
  • 商店分配(从已保存的商店中选择)

地图

存储在 maps/<名称>/config.json 下的每张地图数据:

  • 地图名称
  • 队伍(任意数量):名称、颜色(完整的颜色选择器)、出生点位置、商店村民(NPC)位置、床的位置
  • 资源生成器(任意数量):显示名称、物品 ID、掉落频率(以 tick 为单位)、多个生成位置

队伍和生成器使用 分页编辑器——你可以在页面顶部切换,而不会丢失你的编辑位置。

商店

存储在 shops/<名称>.json 中。商店是一个分类目录(“窗口”)和物品(“交易”)的树形结构:

  • 分类:名称、图标物品(可搜索的物品选择器)
  • 物品:显示名称、物品 ID、堆叠数量
  • 价格:每个物品可以有任意数量的 (物品, 数量) 对——支持混合货币定价

文件结构

所有内容都位于插件的数据目录下:

BedWarsConfigurator/
├── arenas/
│   ├── lobby1.json
│   └── backup/             (带有时间戳的快照)
├── maps/
│   ├── Castle/
│   │   └── config.json
│   └── backup/             (带有时间戳的快照)
├── shops/
│   ├── default.json
│   └── backup/
└── drafts/                 (每个玩家的进行中进度)
    ├── arenas/<uuid>.json
    ├── maps/<uuid>.json
    └── shops/<uuid>.json
  • 备份 在你覆盖现有配置时自动创建。
  • 草稿 在每次编辑字段后自动保存。断开连接、崩溃或再次运行 /bwconfigure 都会重新恢复相同的草稿。
  • 名称经过净化处理a-zA-Z0-9_- 之外的任何字符都会变为 _(空白名称变为 unnamed)。

草稿:工作原理

配置器绝不会将你的工作仅保留在内存中。每次更改都会写入一个以你玩家 UUID 命名的草稿文件。这意味着:

  • 在编辑过程中关闭 UI 是安全的——只需稍后重新打开即可。
  • 崩溃、踢出和服务器重启不会丢失任何内容。
  • 每个玩家每种类型(竞技场/地图/商店)同时只能有一个草稿。
  • 将配置保存到文件会清除草稿。丢弃操作也会清除。
  • 每个管理界面上的 活动草稿 面板会显示当前进度,并允许你继续编辑或将其丢弃。

面向插件开发者

配置器暴露了 UI 扩展点 —— 允许你的插件在内置的竞技场/地图/商店编辑器旁边注入按钮、表单字段或完整的自定义页面。结合 BedWars API 的类型化配置扩展系统,你无需分叉配置器即可提供一个完全集成的配置 UI。

有关 UiExtensionPointsConfigSection 以及 MainPage / Arena / Map / Shop 编辑上下文,请参阅 BedWars API 文档


问题和功能请求:请在 BedWars-API 问题跟踪器 提交。