SaveTools - 保存工具 物品保存 礼包保存 礼包预览 编辑 支持数据库 支持保存NBT 兼容Folia

原创 工具 SaveTools - 保存工具 物品保存 礼包保存 礼包预览 编辑 支持数据库 支持保存NBT 兼容Folia 2.1.3

请登录后获取
版权类型
原创
插件中文名称
SaveTools
插件英文名称
SaveTools
原帖地址
#
支持的核心(服务端)
  1. Spigot
  2. Paper
  3. Folia
  4. 其他核心
语言支持
中文(简体)
适配版本(Java)
  1. 1.21
  2. 1.20
  3. 1.19
  4. 1.18
  5. 1.17
  6. 1.16
  7. 1.15
  8. 1.14
  9. 1.13
  10. 1.12
  11. 1.11
  12. 1.10
  13. 1.9
  14. 1.8
  15. 1.7
交流群 :424241075​
[MD] # SaveTools - Minecraft 服务器实用工具插件 [![bStats](https://bstats.org/signatures/bukkit/SaveTools.svg)](https://bstats.org/plugin/bukkit/SaveTools) ## 📖 插件简介 SaveTools 是一个功能丰富的 Minecraft 服务器实用工具插件,为服务器管理员和玩家提供了强大的物品保存、礼包管理和实用工具功能。插件支持 MySQL 和 YAML 两种数据存储方式,并兼容 Folia 服务器。 ## ✨ 主要功能 ### 🎁 礼包系统 (SaveKits) - **创建礼包**: 支持创建自定义礼包,包含多种物品 - **编辑礼包**: 灵活编辑礼包内容和属性 - **礼包发放**: 支持给指定玩家发放礼包 - **领取限制**: 可设置礼包最大领取次数 - **GUI界面**: 直观的图形用户界面操作 ### 💾 物品保存系统 (SaveItem) - **物品保存**: 将物品保存到数据库中 - **物品发放**: 支持给指定玩家发放保存的物品 - **物品管理**: 查看、删除已保存的物品 ### 🛠️ 实用工具 (SaveTools) - 提供各种服务器管理实用命令 - 支持插件重载和配置管理 ## 🔧 技术特性 - **多版本支持**: 支持 Minecraft 1.7.10 - 1.21 - **Folia 兼容**: 完全兼容 Folia 服务器架构 - **数据存储**: 支持 MySQL 和 YAML 两种存储方式 - **性能优化**: 使用 HikariCP 连接池优化数据库性能 - **PlaceholderAPI**: 集成 PAPI 变量支持,提供礼包冷却时间显示 - **自动更新**: 内置更新检查器 - **统计功能**: 集成 bStats 统计系统,帮助开发者了解插件使用情况 ## 📦 安装要求 ### 服务器要求 - **Minecraft 版本**: 1.7.10 - 1.21 - **Java 版本**: Java 8 或更高版本 - **服务器类型**: Spigot/Paper 或 Folia ### 依赖插件 - **必需**: 无 - **可选**: PlaceholderAPI (用于变量支持和礼包冷却时间显示) ## 🚀 安装步骤 1. **下载插件** - 从发布页面下载最新版本的 SaveTools.jar - 将文件放入服务器的 `plugins` 文件夹 2. **启动服务器** - 启动服务器,插件会自动生成配置文件 - 检查控制台是否有错误信息 3. **配置数据库** (可选) - 编辑 `config.yml` 文件 - 配置 MySQL 数据库连接信息 4. **安装 PlaceholderAPI** (可选,用于变量支持) - 下载并安装 PlaceholderAPI 插件 - 重启服务器以激活变量功能 5. **重启服务器** - 完成配置后重启服务器 ## ⚙️ 配置文件 ### 数据库配置 (config.yml) ```yaml # 数据库配置 mysql: # 是否使用MySQL (false为YAML存储,true为MySQL存储) enable: false # 数据库驱动 drive: "com.mysql.jdbc.Driver" # 连接信息 host: "localhost" port: 3306 database: "minecraft" username: "root" password: "123456" # 表名前缀 tablePrefix: "saveutils_" # 连接池配置 pool: maximumPoolSize: 10 minimumIdle: 2 connectionTimeout: 30000 idleTimeout: 600000 maxLifetime: 1800000 # 自动刷新缓存配置 Auto-Refresh: Enabled: false item: 5 # 物品缓存刷新间隔(秒) kits: 5 # 礼包缓存刷新间隔(秒) claims: 5 # 领取记录缓存刷新间隔(秒) ``` ## 📋 命令列表 ### 礼包命令 (`/savekits` 或 `/sk`) | 命令 | 权限 | 描述 | 用法 | |------|------|------|------| | `create` | `savekits.create` | 创建新礼包 | `/sk create <礼包名>` | | `edit` | `savekits.edit` | 编辑礼包 | `/sk edit <礼包名>` | | `look` | `savekits.use` | 查看礼包 | `/sk look <礼包名>` | | `give` | `savekits.give.<礼包名>` | 给自己礼包 | `/sk give <礼包名>` | | `giveplayer` | `savekits.giveplayer` | 给指定玩家礼包 | `/sk giveplayer <礼包名> <玩家名> [数量]` | | `delete` | `savekits.delete` | 删除礼包 | `/sk delete <礼包名>` | | `list` | `savekits.use` | 列出所有礼包 | `/sk list` | | `setmaxclaims` | `savekits.setmaxclaims` | 设置最大领取次数 | `/sk setmaxclaims <礼包名> <次数>` | | `setinterval` | `savekits.setinterval` | 设置领取间隔 | `/sk setinterval <礼包名> <间隔>` | ### 物品保存命令 (`/saveitem` 或 `/si`) | 命令 | 权限 | 描述 | 用法 | |------|------|------|------| | `save` | `saveitem.save` | 保存手持物品 | `/si save <物品名>` | | `give` | `saveitem.give.<物品名>` | 给自己保存的物品 | `/si give <物品名>` | | `giveplayer` | `saveitem.giveplayer` | 给指定玩家物品 | `/si giveplayer <物品名> <玩家名> [数量]` | | `delete` | `saveitem.delete` | 删除保存的物品 | `/si delete <物品名>` | | `list` | `saveitem.list` | 列出已保存物品 | `/si list` | ### 实用工具命令 (`/savetools` 或 `/st`) | 命令 | 权限 | 描述 | 用法 | |------|------|------|------| | `help` | `savetools.use` | 显示帮助信息 | `/st help` | | `reload` | `savetools.reload` | 重载插件配置 | `/st reload` | ### 🔑 动态权限说明 某些权限节点包含动态参数,例如: - `savekits.give.<礼包名>`: 需要为每个礼包单独设置权限 - `saveitem.give.<物品名>`: 需要为每个物品单独设置权限 **示例权限设置:** ``` # 允许领取"新手礼包" savekits.give.新手礼包 # 允许领取"钻石剑"物品 saveitem.give.钻石剑 # 允许领取所有礼包(使用通配符) savekits.give.* # 允许领取所有物品(使用通配符) saveitem.give.* ``` ## 🔌 PlaceholderAPI 变量 SaveTools 插件集成了 PlaceholderAPI,提供以下变量供其他插件使用: ### 礼包冷却时间变量 | 变量 | 描述 | 示例输出 | |------|------|----------| | `%savetools_kitcooldown_<礼包名>%` | 显示指定礼包的剩余冷却时间 | `2小时30分钟` 或 `可以领取` | **变量说明:** - 当礼包可以领取时,显示 `可以领取` - 当礼包在冷却中时,显示剩余时间(天、小时、分钟、秒) - 如果礼包不存在,显示 `礼包不存在` **注意事项:** - 需要安装 PlaceholderAPI 插件才能使用 - 变量区分大小写,礼包名称必须完全匹配 - 冷却时间基于玩家上次领取时间计算 ## 🎯 使用示例 ### 创建礼包 ``` /sk create 新手礼包 ``` ### 保存物品 ``` /si save 钻石剑 ``` ### 发放礼包给玩家 ``` /sk giveplayer 新手礼包 玩家名 [数量] ``` ## 🔧 高级配置 ### MySQL 数据库设置 1. **启用 MySQL 存储** ```yaml mysql: enable: true drive: "com.mysql.cj.jdbc.Driver" # MySQL 8.0+ 使用此驱动 host: "your-database-host" port: 3306 database: "your-database-name" username: "your-username" password: "your-password" ``` 2. **创建数据库表** - 插件会自动创建必要的数据库表 - 表名前缀默认为 `saveutils_` ### 缓存优化 ```yaml Auto-Refresh: Enabled: true item: 10 # 物品缓存10秒刷新一次 kits: 15 # 礼包缓存15秒刷新一次 claims: 20 # 领取记录20秒刷新一次 ``` ## 🐛 故障排除 ### 常见问题 1. **插件无法启动** - 检查 Java 版本是否兼容 - 确认服务器版本支持 - 查看控制台错误信息 2. **数据库连接失败** - 检查数据库配置信息 - 确认数据库服务是否运行 - 验证用户名和密码 3. **命令无法使用** - 检查权限设置 - 确认命令是否正确注册 - 查看插件是否正常加载 4. **PAPI变量无法使用** - 确认是否安装了 PlaceholderAPI 插件 - 检查变量名称是否正确(区分大小写) - 确认礼包名称是否存在 - 查看控制台是否有PAPI相关错误 ### 日志信息 插件会在控制台输出详细的加载信息,包括: - 数据库连接状态 - 命令注册状态 - PAPI 集成状态 - 更新检查结果 ## 📈 性能优化建议 1. **使用 MySQL 存储** - 适合多服务器环境 - 数据持久化更好 - 支持数据备份 2. **合理设置缓存刷新** - 根据服务器负载调整刷新间隔 - 避免过于频繁的数据库查询 3. **定期清理数据** - 删除不再使用的礼包和物品 - 清理过期的领取记录 ## 🔄 更新日志 ### v2.0.0 - 新增 Folia 服务器支持 - 优化数据库连接池配置 - 改进 GUI 界面体验 - 新增自动更新检查功能 ## 📞 技术支持 - **作者**: LanQin_ - **支持版本**: 1.7.10 - 1.12.2 - **兼容性**: Folia, Spigot, Paper ## 📊 统计信息 本插件集成了 [bStats](https://bstats.org/plugin/bukkit/SaveTools) 统计系统,用于收集匿名的使用数据,帮助开发者了解插件的使用情况和改进方向。 **收集的数据包括:** - 服务器版本和Java版本 - 插件版本 - 使用的数据库类型(MySQL/YAML) - 礼包和物品数量统计 **隐私保护:** - 所有数据都是匿名的 - 不会收集任何个人信息 - 可以随时在配置中禁用 --- **注意**: 使用本插件前请务必备份服务器数据,插件更新时建议先测试再应用到生产环境。 [/MD]


1744080621706.webp

1735746076688.png
1735746087510.png
  • 喜欢
反馈: HansOffice.
作者
LanQin_
价格
100.00金粒
下载
182
查看
3,717
首次发布
最后更新

评分

0.00 星 0 次评分

LanQin_ 的其他资源

最新更新

  1. 2.1.3

    重构礼包与保存物品管理 - 引入 MySQL 依赖并增强数据库初始化、表结构迁移与版本控制。 - 重构礼包/物品缓存与持久化流程,支持并发编辑、异步发放和数据一致性校验。 -...
  2. 2.1.2

    兼容26.2
  3. 2.1.1

    修正礼包领取间隔记录处理
后退
顶部 底部