简介
CoinFlipper 是一款允许玩家进行“猜硬币”赌博游戏的插件。一名玩家下注一定金额并猜测硬币的朝向(正面或反面),另一名玩家可以接受挑战。胜者将赢得所有赌注,这意味着你可能会使赌注翻倍,也可能输掉一切。
核心功能
- 投注与挑战:玩家可以创建投注,其他玩家则可通过点击游戏内界面(GUI)来发起挑战。
- 胜负判定:通过虚拟的抛硬币动画随机决定胜负,胜者获得全部赌注。
- 数据统计:插件会记录每位玩家的游戏历史与胜负统计。
- 自定义动画:支持创建和编辑独特的抛硬币动画效果。
- 权限与保护:集成权限系统,并兼容主流战斗标签插件,防止玩家在PVP时打开GUI。
- 数据库支持:支持使用 MySQL 或 SQLite 来存储玩家数据。
命令与权限
注意:可使用 /cf 或 /coinflip 替代 /coinflipper。在命令中,可用 h 代表“heads”(正面),t 代表“tails”(反面)。
主要命令
/coinflipper- 打开游戏主界面。- 权限:
coinflipper.gui - 也可使用
/coinflipper gui /coinflipper help- 显示帮助信息。- 权限:
coinflipper.help /coinflipper [金额] [heads/tails]- 创建一个猜硬币游戏。- 权限:
coinflipper.create /coinflipper clear- 清除所有已创建的投注。- 权限:
coinflipper.clear /coinflipper stats- 查看自己的统计数据。- 权限:
coinflipper.stats - 查看他人数据需额外权限:
coinflipper.stats.other /coinflipper history- 查看自己的游戏历史。- 权限:
coinflipper.history - 查看他人历史需额外权限:
coinflipper.history.other /coinflipper animation- 创建、编辑或删除自定义动画。- 权限:
coinflipper.animation /coinflipper reload- 重新加载插件配置。- 权限:
coinflipper.reload /coinflipper config- 打开GUI配置编辑器。- 权限:
coinflipper.config
其他权限
coinflipper.remove.self- 允许玩家在GUI中右键点击移除自己的投注。coinflipper.remove.other- 允许玩家在GUI中右键点击移除他人的投注。coinflipper.boost.percentage- 将玩家的获胜概率设置为指定数值(而非默认的50%)。例如,coinflipper.boost.70会赋予该玩家70%的胜率。coinflipper.animations.name- 允许你设置该玩家投注时使用的动画效果。请将name替换为你想要的动画名称。
使用方法
- 创建投注:使用命令
/coinflipper [金额] [heads/tails]来下注。 - 接受挑战:在游戏内打开GUI界面,左键点击一个投注即可发起挑战。
- 移除投注:
- 拥有 `coinflipper.remove.self` 权限的玩家,可在GUI中右键点击移除自己的投注。- 拥有 `coinflipper.remove.other` 权限的玩家,可在GUI中右键点击移除他人的投注。概率加成系统
管理员可以通过权限为玩家设置获胜概率加成,其计算规则如下:
- 双方均无加成:双方获胜概率均为 50%。
- 仅一方有加成:有加成的玩家按其加成概率获胜,另一方的获胜概率则为
100% - 加成概率。 - 例如:玩家A有70%加成,玩家B无加成。则玩家A胜率为70%,玩家B胜率为30%。
- 双方均有加成:每位玩家的胜率为
自身加成值 / 双方加成值总和。 - 例如:玩家A加成70%,玩家B加成100%。则玩家A胜率为 70/(70+100) ≈ 41.2%,玩家B胜率为 100/(70+100) ≈ 58.8%。
动画系统
玩家动画
通过授予玩家 coinflipper.animations.(动画名称) 权限,可以指定该玩家投注时使用的特定动画。
自定义动画
自版本 1.5 起,CoinFlipper 支持创建自定义抛硬币动画。
- 打开编辑器:使用命令
/coinflipper animation。 - 编辑器说明:
- 左键点击进入动画编辑器。
- 右键点击可将动画设为默认(默认动画在列表中会以粘土块而非火焰球图标显示)。
- 动画结构:每个动画由 50 帧组成。在第 30 帧时,会向获胜玩家播放胜利音效并发送胜利消息。
- 导入动画:将动画文件放入插件目录下的
animations文件夹中,然后重启或重载服务器即可。
依赖与兼容性
必需依赖
- Vault:插件运行所必需的经济系统接口。点击此处获取
插件兼容性
CoinFlipper 兼容以下战斗标签插件,确保玩家在PVP时不会打开投注GUI:
- CombatTagPlus
- PvPManager (及其免费版本,目前2.7及以下版本可用)
- CombatLogX (10.x+ 版本)
可选支持
- Sign GUI:若想在 Minecraft 1.8-1.9 版本中使用告示牌GUI而非聊天栏输入,需要安装 ProtocolLib。
安装指南
- 确保服务器已安装 Vault。
- 将 CoinFlipper 插件文件拖放至服务器的
plugins文件夹。 - 重启服务器(注意:不是重载
/reload,否则可能导致messages.yml文件创建失败)。 - 插件将开始运行,你可以根据需要修改配置文件。
MySQL 配置
自版本 1.84 起,插件支持使用 MySQL 存储统计数据。
- 在
config.yml中,将mysql_enabled设置为true。 - 编辑
mysql.yml文件,填写你的数据库信息:
server: '0.0.0.0:3306' # MySQL 服务器地址(及端口)
database: 'coinflipper' # 插件使用的数据库名
user: '用户名' # 数据库用户名
password: '密码' # 对应用户的密码- 插件需要数据库用户拥有在
coinflipper_stats表上创建和写入的权限。 - 统计数据会被缓存以减轻服务器负载。
- 如果未启用 MySQL,自版本 2.2 起,插件将默认使用 SQLite。
配置与消息文件
- 你可以使用
/coinflipper config命令通过GUI编辑配置。 - 主配置文件参考:点击查看
- 消息文件参考:点击查看
- 自版本 2.81 起:在聊天消息中可以使用
%newline%来换行(此功能不适用于标题,因为Minecraft标题仅支持一行副标题)。
注意事项
- 首次安装后必须重启服务器,仅使用
/reload可能导致消息文件创建失败。 - 概率加成系统基于权限节点实现,请仔细配置。
- 自定义动画文件需放置于正确的
animations文件夹内。
常见问题
Q:插件需要什么前置?
A:必须安装 Vault 以连接经济系统。
Q:如何防止玩家在打架时赌博?
A:插件已兼容主流战斗标签插件(如 CombatTagPlus, CombatLogX),会自动阻止在PVP状态打开GUI。
Q:支持哪些 Minecraft 版本?
A:插件致力于支持从 1.8 到最新版的主流服务端。
Q:数据统计存在哪里?
A:默认使用 SQLite,也可在配置中启用 MySQL。
Q:如何反馈BUG或寻求帮助?
A:请在插件讨论区发帖,请不要在评论区内报告错误,开发者不会在那里回复。
其他信息
统计数据收集 (Metrics)
CoinFlipper 使用 bStats 收集匿名的服务器运行数据。你可以通过 plugins/bStats/config.yml 文件禁用此功能。要了解具体收集哪些数据,请访问:https://bstats.org/plugin/bukkit/CoinFlipper
开源与支持
- 源代码:https://github.com/gronnmann/CoinFlipper
- 捐赠支持:如果你觉得这个插件帮助了你的服务器,并希望支持其持续开发(包括向下兼容旧版本和修复漏洞),欢迎进行捐赠。捐赠链接
如果你喜欢这个插件,别忘了在发布页留下积极的评价!