• 欢迎加入MineBBS QQ讨论群:点击查看所有的官方讨论群
  • 我们将于近期对服务器进行迁移,服务可能中断至多2日。请各位安排好自己的访问计划,造成不便敬请谅解!
  • MineBBS入站考试已经上线!想要成为【正式会员】解锁更多功能吗?快来参与吧!【点我去看】
MarketRegulator —— 动态经济市场 [1.20+]

原创 开源 MarketRegulator —— 动态经济市场 [1.20+] 1.2.0

完成注册/登录后下载
v1.2.0 更新内容

新功能:
- /mr admin setvolatility all <值> — 一键设置所有商品波动率
- /mr admin setprice all <值> — 一键设置所有商品基础价格
- /mr admin setstock all <值> — 一键设置所有商品库存
- Tab 补全已支持 all 参数

代码审查修复(4 项):
1. PriceHistoryRepository 线程安全 — YAML 价格历史文件读写添加 synchronized,防止异步并发导致文件损坏
2. SQLiteStorage 连接线程安全 — getConnection() 添加 synchronized,防止多线程同时重建连接
3. 搜索状态内存泄漏 — 玩家退出时自动清理 awaitingSearch 中的 UUID
4. WebServer JSON 转义 — 补充 \n、\r、\t 转义,防止 JSON 格式错误
[MD] # MarketRegulator 更新报告 ## 自1.0.0以来的的全部修改 --- ### v1.0.1 — 基础修复 - 修复多个崩溃问题 - 架构改进:dirty save 机制、HashMap 物品索引加速查找 --- ### v1.0.2 — 多版本兼容 - 修复 `WHITE_WALL_BANNER` 等 1.21 API 崩溃 - 多核心(Spigot/Paper/Folia)兼容性修复 - 代码审查修复 --- ### v1.0.3 — 功能升级 - 分类筛选(全部/方块/装备/食物/其他) - 单品买卖开关(buyEnabled/sellEnabled) - 价格历史记录 + Book GUI ASCII 趋势图 - 多语言消息文件(中/英)+ Waygate 暖色配色方案 - PlaceholderAPI 集成 - 库存自然恢复定时任务 --- ### v1.0.4 — 全面增强 - **税收系统** — 可配置买入/卖出税率 - **交易冷却** — 每玩家交易间隔防刷单 - **权限细分** — `marketregulator.buy.<id>` + `marketregulator.buy.category.<cat>` - **价格波动公告** — 超阈值时全服广播 - **bStats 统计** — 商品数量、语言、税收状态指标 - **Web 面板** — 内置 HTTP 服务器 + 暗色主题网页 + JSON API - **SQLite 存储** — 可选替代 YAML - **异步保存** — 市场数据写入不阻塞主线程 - **单元测试** — 15 个 JUnit 5 测试覆盖定价公式和工具函数 --- ### v1.1.0 — 当前版本 #### Bug 修复 1. **ESS 自动导入默认值修复** — `auto-import-on-empty-market` 默认值从 `true` 改为 `false`,防止 Essentials 的 `worth.yml` 在未预期的情况下自动导入大量商品 2. **SellCommandHook 冷却时间硬编码修复** — `/sell` 拦截中冷却提示不再硬编码 "3秒",改为读取玩家实际剩余冷却 3. **SellCommandHook 默认分支消息修复** — 移除了卖出命令中错误发送 "buy-disabled" 消息的 bug 4. **SQLite 事务安全修复** — `saveEntries()` 现在在 commit 失败时正确回滚,并在 finally 块中恢复 autoCommit #### 新功能 1. **`/mr admin open`** — 管理员市场管理视图,展示所有商品含详细信息(ID、库存、价格、买卖状态),左键点击商品即可下架 2. **`/mr admin clear`** — 一键清空所有市场商品(含清理价格历史) 3. **`/mr search <关键词>`** — 按关键词搜索商品(匹配物品名称或 ID) 4. **GUI 搜索按钮** — 市场界面 52 号槽位新增搜索按钮,点击后在聊天栏输入关键词进行搜索,支持清除搜索条件 5. **聊天输入搜索** — 点击搜索按钮后关闭 GUI,在聊天栏输入关键词即可搜索(输入 cancel 取消) #### 消息文件新增键 | 键 | 说明 | |---|---| | `market-cleared` | 清空市场确认消息 | | `admin-market-opened` | 管理员市场视图打开提示 | | `search-prompt` | 搜索输入提示 | | `search-cancelled` | 搜索取消提示 | | `search-usage` | 搜索命令用法 | | `search-no-results` | 搜索无结果提示 | #### 配置新增 | 配置项 | 说明 | |---|---| | `ui.admin-market-title` | 管理员市场视图标题 | | `essentials-import.auto-import-on-empty-market` | 默认值改为 `false` | #### 其他改进 - `admin-usage` 消息更新,包含所有可用子命令 - Tab 补全新增 `open`、`clear`、`search` - PlaceholderAPI 版本号更新至 1.1.0 - README 更新,反映所有新命令和功能 --- **测试:** 15/15 通过 [/MD]
后退
顶部 底部