- 版权类型
- 原创
- 插件中文名称
- 巴依奇尔托
- 插件英文名称
- Baikiruto
- 原帖地址
- #
- 支持的核心(服务端)
- Spigot
- Paper
- Purpur
- PufferFish
- Leaves
- 其他核心
- 语言支持
- 多语言
- 适配版本(Java)
- 1.21
- 1.20
- 1.19
- 1.18
- 1.17
- 1.16
- 1.15
- 1.14
- 1.13
- 1.12
[MD]# 🎯 Baikiruto - 新世代跨版本物品系统

> **面向实战的 Minecraft 物品库插件**
> 从 1.12 到 1.21.11,一套配置通吃全版本
---
## 💡 为什么选择 Baikiruto?
### 🚀 真正的跨版本支持
- **覆盖 Minecraft 1.12 - 1.21.11**:一次编写,全版本运行
- **版本特性自动适配**:无需为不同版本维护多套配置
- **组件系统智能兼容**:自动处理 `minecraft:` 前缀,支持扁平文本与结构化配置
### ⚡ 极致的性能与灵活性
- **Fluxon 脚本引擎**:专为物品行为设计的高性能脚本系统
- **ItemStream 数据流架构**:`build → read → rebuild → update` 完整生命周期管理
- **热重载无缝更新**:修改配置后自动检测并更新在线玩家物品,无需重启服务器
### 🔧 强大的扩展能力
- **Meta 工厂机制**:通过 `MetaFactory` 注册自定义物品行为
- **动态类型分发**:配置侧 `metas.type` 自动路由到对应实现
- **插件级 API**:完整的开发者接口,支持第三方插件深度集成
### 🎮 开箱即用的管理功能
```
/baikiruto list # 查看所有物品
/baikiruto give # 发放物品
/baikiruto serialize # 序列化物品
/baikiruto rebuild # 重构物品
/baikiruto menu # 分组 GUI 浏览
/baikiruto reload # 热重载配置
/baikiruto selfcheck # 自检系统状态
```
---
## 🎯 适用场景
### ✅ 完美适配
- **RPG 服务器**:复杂的装备、技能、道具系统
- **生存增强服**:自定义工具、武器、食物
- **小游戏服**:特殊道具、奖励物品
- **跨版本服务器**:需要在多个 MC 版本间保持一致的物品体验
### ⚠️ 技术选型说明
- **脚本引擎**:Fluxon Only(不支持 Kether)
- **定位**:专注物品系统,不是全能型插件框架
- **依赖**:基于 TabooLib 6.2 构建
---
## 📦 快速开始
### 安装要求
- Minecraft 服务端:1.12 - 1.21.11(Bukkit/Spigot/Paper)
- Java 版本:8+
- 前置插件:无(TabooLib 已内置)
### 下载安装
1. 从 [GitHub Releases](https://github.com/YsGqHY/Baikiruto/releases) 下载最新版本
2. 将 `Baikiruto-x.x.x.jar` 放入服务器 `plugins` 目录
3. 重启服务器,插件自动生成默认配置
4. 编辑 `plugins/Baikiruto/items/` 下的配置文件
5. 执行 `/baikiruto reload` 热重载配置
### 配置示例
```yaml
# items/example.yml
example_sword:
material: DIAMOND_SWORD
display:
name: "&6传说之剑"
lore:
- "&7攻击力: &c+10"
- "&7特效: 火焰附加"
components:
damage: 10
unbreakable: true
metas:
trace:
scripts:
build: |
if (&ctx["debug"] == true) {
&sender?.sendMessage("[Baikiruto] meta build -> " + itemId)
}
return item
```
---
## 🏗️ 核心架构
### ItemStream 数据流模式
```
配置文件 → Item.build() → ItemStream → Meta 注入 → ItemStack
↓
运行时修改
↓
rebuild() / update()
```
### Meta 扩展机制
```kotlin
// 注册自定义 Meta
MetaFactory.register("custom_effect") { config ->
CustomEffectMeta(config)
}
// 配置侧使用
metas:
- type: custom_effect
power: 100
```
---
## 🤝 社区与支持
### 📢 交流群组
- **QQ 群**:[1084513338](https://qm.qq.com/q/xxx)
- 获取帮助、分享配置、反馈问题
### 💻 开源仓库
- **GitHub**:[YsGqHY/Baikiruto](https://github.com/YsGqHY/Baikiruto)
- 查看源码、提交 Issue、参与开发
### 📚 开发文档
- API 文档:`docs/` 目录
- 配置示例:`examples/` 目录
- 开发计划:`docs/开发计划.md`
---
## 🎖️ 技术亮点
### 设计模式
- **Builder + Wrapper + Strategy**:ItemStream 核心架构
- **Factory Pattern**:Meta 工厂动态注册
- **Registry Pattern**:线程安全的物品注册表
- **Lifecycle Management**:LOAD → ENABLE → ACTIVE 三阶段初始化
### 性能优化
- **脚本预热机制**:启动时预编译脚本,运行时零延迟
- **异步执行支持**:Fluxon 原生异步能力
- **NBT 缓存策略**:ItemStream 智能缓存减少序列化开销
### 代码质量
- **多模块架构**:API 层与实现层分离
---
## 📊 版本对比
| 特性 | Baikiruto | 传统物品插件 |
|------|-----------|----------------------|
| 跨版本支持 | ✅ 1.12-1.21.11 | ❌ 单版本或有限支持 |
| 脚本引擎 | ✅ Fluxon 高性能 | ⚠️ Kether/JavaScript |
| 热重载 | ✅ 在线物品自动更新 | ❌ 需要手动重载 |
| Meta 扩展 | ✅ 工厂模式动态注册 | ⚠️ 硬编码或配置受限 |
| API 开放度 | ✅ 完整开发者接口 | ⚠️ 有限或无 API |
| 配置兼容性 | ✅ 智能前缀处理 | ❌ 严格格式要求 |
---
## 📄 开源协议
本项目采用 **MIT License** 开源协议。
---
## ⭐ 支持项目
如果 Baikiruto 对你有帮助,欢迎:
- ⭐ 在 [GitHub](https://github.com/YsGqHY/Baikiruto) 上给项目点个 Star
- 📢 在社区分享你的使用体验
- 🐛 提交 Bug 报告或功能建议
- 💻 参与代码贡献
---
**Baikiruto - 让物品系统回归简单与强大**
[下载插件](https://github.com/YsGqHY/Baikiruto/releases) | [查看文档](https://github.com/YsGqHY/Baikiruto) | [加入群组](https://qm.qq.com/q/xxx)
[/MD]