📝 插件介绍
RPGVipWiki是一款功能强大的Minecraft服务器插件,主要用于连接游戏与网站,提供账号绑定、兑换码系统等功能。该插件基于Paper API开发,使用Java 17作为开发语言,支持MySQL数据库存储玩家数据和兑换码信息,为服务器提供了完整的账号绑定和兑换码管理解决方案。
✨ 主要功能
- 🔗 账号绑定系统:允许玩家将游戏账号与网站账号绑定,实现数据互通
- 🎁 兑换码系统:提供生成和使用兑换码的功能,可配置不同类型的兑换码,执行不同的奖励
- 📊 数据统计:定期统计和同步玩家数据,包括等级、金币、积分、权限组等信息
- 🔌 PlaceholderAPI支持:提供自定义变量,可在其他插件中使用
- 🧩 多插件集成:支持与Vault、LuckPerms、PlayerPoints等插件集成
🔑 命令列表
| 命令 | 描述 | 权限 |
|------|------|------|
| `
/bind gw <账号> <密码>` | 绑定游戏账号与网站账号 | rpgvipwiki.bind |
| `
/rpgvip code <兑换码>` | 使用兑换码 | rpgvipwiki.code |
| `
/rpgvip open` | 打开兑换码界面 | rpgvipwiki.code |
| `
/rpgvip generate <类型> <数量>` | 生成指定类型的兑换码 | rpgvipwiki.generate |
| `
/rpgvip reload` | 重载插件配置 | rpgvipwiki.reload |
🔑 权限节点
| 权限 | 描述 | 默认 |
|------|------|------|
| `rpgvipwiki.bind` | 允许使用账号绑定命令 | true |
| `rpgvipwiki.code` | 允许使用兑换码和打开兑换码界面 | true |
| `rpgvipwiki.generate` | 允许生成兑换码 | op |
| `rpgvipwiki.reload` | 允许重载插件配置 | op |
📋 PlaceholderAPI变量
| 变量 | 描述 |
|------|------|
| `%rpgvipwiki_bound%` | 玩家是否已绑定账号 |
| `%rpgvipwiki_web_account%` | 玩家绑定的网站账号 |
🔧 配置文件说明
config.yml 主要配置项:
1. 数据库设置:
database:
host: "localhost"
port: 3306
database: "rpgvip_wiki"
username: "root"
password: "password"
table-prefix: "rpgvip_"
max-pool-size: 10
connection-timeout: 5000
max-lifetime: 30000
minimum-idle: 3
idle-timeout: 60000
2. 插件设置:
settings:
debug: false
player-data-sync-interval: 10
3. 兑换码设置:
redemption-code:
length: 16
characters: "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
4. 兑换码类型配置:
code-types:
dianquan100:
commands:
- "op: points give %player_name% 100"
sound: "ENTITY_PLAYER_LEVELUP"
exp: 0
money: 0
points: 0
message: "&a你获得了 &b100 &a宝石!"
title: "&a兑换成功"
subtitle: "&a你获得了 &b100 &a宝石!"
material: "DIAMOND"
💾 数据库表结构
1. rpgvip_player_bind - 存储玩家绑定信息:
- id: 自增主键
- player_uuid: 玩家UUID
- player_name: 玩家名称
- web_account: 网站账号
- bind_time: 绑定时间
2. rpgvip_redemption_code - 存储兑换码信息:
- id: 自增主键
- code: 兑换码
- code_type: 兑换码类型
- is_used: 是否已使用
- is_distributed: 是否已分配
- used_by: 使用者UUID
- used_time: 使用时间
- create_time: 创建时间
3. rpgvip_player_data - 存储玩家数据:
- id: 自增主键
- player_uuid: 玩家UUID
- player_name: 玩家名称
- level: 等级
- money: 金币
- points: 积分
- permission_group: 权限组
- permissions: 权限
- update_time: 更新时间
🔄 使用方法
账号绑定:
1. 玩家在游戏中输入命令: `
/bind gw <账号> <密码>`
2. 系统验证账号密码,成功后将游戏账号与网站账号绑定
3. 绑定成功后,玩家数据将在游戏和网站之间同步
兑换码使用:
1. 方式一: 玩家在游戏中输入命令: `
/rpgvip code <兑换码>`
2. 方式二: 玩家输入命令 `
/rpgvip open` 打开兑换码界面,点击使用兑换码
3. 系统验证兑换码,成功后执行配置的奖励(命令、经验、金币、积分等)
兑换码生成:
1. 管理员在游戏中输入命令: `
/rpgvip generate <类型> <数量>`
2. 系统生成指定类型和数量的兑换码,并保存到数据库
3. 生成的兑换码可以在网站后台查看和分发
插件重载:
1. 管理员在游戏中输入命令: `
/rpgvip reload`
2. 系统重新加载配置文件,更新兑换码类型和其他设置
💻 技术信息
- 支持版本: Paper 1.20.1+
- API版本: 1.20
- 开发语言: Java 17
- 数据库: MySQL
- 依赖插件:
- PlaceholderAPI (软依赖): 提供变量支持
- Vault (软依赖): 提供经济系统支持
- LuckPerms (软依赖): 提供权限系统支持
- PlayerPoints (软依赖): 提供积分系统支持
⚙️ 安装方法
1. 将插件放入服务器的plugins文件夹
2. 启动服务器,插件会自动生成配置文件
3. 编辑config.yml文件,配置数据库连接信息和其他设置
4. 重启服务器或使用`
/rpgvip reload`命令重载配置
📊 兑换码类型配置详解
每种兑换码类型可以配置以下属性:
- commands: 兑换码使用后执行的命令列表
- 以"op:"开头的命令将以玩家身份执行,临时给予OP权限
- 其他命令将以控制台身份执行
- 可以使用%player_name%变量表示玩家名称
- sound: 使用兑换码时播放的音效
- exp: 给予的经验值
- money: 给予的金币(需要Vault插件)
- points: 给予的积分(需要PlayerPoints插件)
- message: 发送给玩家的消息
- title: 显示的标题
- subtitle: 显示的副标题
- material: 在兑换码界面中显示的物品材质
---
感谢您选择RPGVipWiki插件!如有任何问题或建议,请随时联系我们。