快速开始
一个为 Spigot / Paper 1.21 – 1.21.6 打造的全 GUI 我的世界小游戏大厅插件。15 款游戏全部内置在主 jar 中,无需额外模块加载,丢进 plugins/ 即开箱即玩。
主类信息
主类:me.nikl.gamebox.GameBox · 版本:1.0 · 构建:Maven shade(依赖重定位至 me.nikl.gamebox.common.*)
灵感来源与致谢
JoyMart 的设计与实现由作者完全独立自研,代码、游戏逻辑、GUI 交互、数据存储均为本仓库原创实现。
在产品形态、玩法思路与用户体验方面,本项目参考并致敬了以下两款优秀的 Spigot 社区作品:
- JukeBox - Music Plugin — 提供了"音乐播放器 + NBS 乐谱"的灵感来源,本项目的内置
MusicPlayer(NBS 乐谱解析 + 音符盒序列播放)正是在此启发下重新自研实现。 - GameBox - Inventory Games Collection — 提供了"通过箱子 GUI 聚合多款小游戏"的整体产品形态灵感,本项目的 15 款游戏、代币系统、高分榜、双人邀请、AI 对战等内容均为独立重写,未引用其代码。
致谢
上述链接为 SpigotMC 资源页,可点击跳转查看原作品。感谢原作者们为社区带来的优秀作品。
特性一览
| 类别 | 说明 |
|---|---|
| 纯 GUI 操作 | 通过箱子界面选择游戏,玩家无需记忆任何指令。 |
| 15 款内置游戏 | 单人:2048、扫雷、打地鼠、宝石迷阵、彩票、抽奖机、迷宫、贪吃蛇、小恐龙跑酷;双人:战舰、四子棋、井字棋、石头剪刀布、国际象棋;多人:大富翁(2–3 人,含 AI 与下注模式)。 |
| 代币系统 | 自带 JoyMart 代币,可选挂钩 Vault 经济(金币)。 |
| 高分榜 | 自动记录每款游戏的最高分,支持跨服 MySQL 同步。 |
| 双人对战 + AI | 双人游戏支持邀请好友或直接对战 AI(无需等待对手)。 |
| 可配置奖项池 | 彩票 / 抽奖机共享奖项池,管理员可在游戏内 GUI 增删奖项、调整权重与代币/金币/命令奖励。 |
| 大厅模式 | 在指定世界自动发放快捷物品,点击直接打开主菜单。 |
| 双存储 | YAML 文件(默认)或 MySQL(HikariCP 连接池,支持 BungeeCord 跨服)。 |
| 自定义事件 | 进入 / 离开 JoyMart 时可执行配置的命令。 |
| 公开 API | 通过 GameBoxAPI 或 Bukkit ServicesManager 供其他插件调用。 |
| 挂钩支持 | PlaceholderAPI、bStats、CalendarEvents(自动检测)。 |
| 多语言 | 内置英 / 中 / 德 / 西 四种语言。 |
| Scoreboard | 游戏进行中在侧边栏显示当前游戏、分数、最高分、代币。 |
安装与构建
方式 A:自行构建(推荐)
需要 JDK 21+ 和 Maven 3.6+:
bash
git clone https://github.com/myzer121/JoyMart.git
cd JoyMart
mvn clean package构建产物:target/JoyMart-1.0.jar
方式 B:使用预编译 jar
如果你拿到了发布版的 JoyMart-1.0.jar,直接放到服务器的 plugins/ 目录即可。
服务器要求
- Paper / Spigot 1.21 – 1.21.6(Paper 推荐)
- Java 21+
- 可选:Vault + 任意经济插件
- 可选:PlaceholderAPI
- 可选:CalendarEvents(节日彩蛋)
首次使用
- 把
JoyMart-1.0.jar放进plugins/,启动一次服务器,让插件生成默认配置。 - 编辑
plugins/JoyMart/config.yml按需调整(经济、大厅、邀请、音效、Scoreboard 等)。 - 编辑
plugins/JoyMart/games.yml开关每款游戏、配置子命令。 - 编辑
plugins/JoyMart/tokenShop.yml增删商店商品。 - 执行
/gba reload重载,或重启服务器。 - 玩家执行
/gamebox即可打开主菜单。