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

服务端插件 MarketRegulator —— 动态经济市场 [1.20+] 1.2.0

完成注册/登录后下载
真的可以用吗,1.21.8东西都放不进去,圆石也不行,放进去就弹出来了屏幕截图 2026-03-31 222620.webp
 
可能是高版本兼容问题,我马上修复
好的,谢谢,我们服务器通货膨胀的厉害,我暂时把ess的sell关了,出来找动态sell
 
要多久awa
动态市场只能解决“新增货币流速”,不能单独解决“旧钱已经太多”。已经通货膨胀的服,核心是两件事一起做:

1. 先堵住无限印钞口。
把 Essentials /sell、固定价格收购、签到高额送钱、挂机农场高额回收先关掉。只要还有“无限产出 + 固定回收价”,通胀不会停。
2. 再做净回收。
必须有真钱坑,否则只是把涨速放慢。常见有效项:

- 传送费、修理费、附魔/洗炼费
- 地皮/领地维护费
- 拍卖上架费和成交税
- 抽奖、称号、外观、限时 buff
- 公会/城镇 upkeep
关键点是这些钱要“消失”,不是转给别的玩家。

用这个插件的话,我建议这样配:

- trade.buy-multiplier 提高到 1.25 - 1.50
- pricing.min-price 降低到 0.01 - 0.05
- 常见农场物资把 volatility 提高到 1.8 - 2.5
- 常见物资初始 current-stock 设得远高于 target-stock
例如圆石/铁锭/胡萝卜这种,target-stock: 128,但 current-stock: 4096 甚至更高。这样一开始卖价就会被压得很低,先把老服的刷钱能力砍掉。

- 高频产出物:低基础价,高波动,高初始库存
- 稀缺消耗品:较高基础价,低库存,让玩家买的时候能稳定回收货币
- 不要让任何物品同时存在“市场低价买入 + 其他插件高价卖出”的套利链
 

附件

动态市场只能解决“新增货币流速”,不能单独解决“旧钱已经太多”。已经通货膨胀的服,核心是两件事一起做:

1. 先堵住无限印钞口。
把 Essentials /sell、固定价格收购、签到高额送钱、挂机农场高额回收先关掉。只要还有“无限产出 + 固定回收价”,通胀不会停。
2. 再做净回收。
必须有真钱坑,否则只是把涨速放慢。常见有效项:

- 传送费、修理费、附魔/洗炼费
- 地皮/领地维护费
- 拍卖上架费和成交税
- 抽奖、称号、外观、限时 buff
- 公会/城镇 upkeep
关键点是这些钱要“消失”,不是转给别的玩家。

用这个插件的话,我建议这样配:

- trade.buy-multiplier 提高到 1.25 - 1.50
- pricing.min-price 降低到 0.01 - 0.05
- 常见农场物资把 volatility 提高到 1.8 - 2.5
- 常见物资初始 current-stock 设得远高于 target-stock
例如圆石/铁锭/胡萝卜这种,target-stock: 128,但 current-stock: 4096 甚至更高。这样一开始卖价就会被压得很低,先把老服的刷钱能力砍掉。

- 高频产出物:低基础价,高波动,高初始库存
- 稀缺消耗品:较高基础价,低库存,让玩家买的时候能稳定回收货币
- 不要让任何物品同时存在“市场低价买入 + 其他插件高价卖出”的套利链
你没逗我吧,配置文件只有语言文件,能不能把东西拿在手上就能设置价格,能不能自动读取ess的价格或者把ess的价格放进这个插件的某个文件夹里,不然需要一个个手动设置价格,太麻烦了qwq
还有,只能1组1组的卖
或者直接当ess的扩展,让玩家执行/sell的时候拦截一下,修改价格
如果购买要保留的话/mr 就直接打开不要/mr open了,管理员就/mr admin
 
你没逗我吧,配置文件只有语言文件,能不能把东西拿在手上就能设置价格,能不能自动读取ess的价格或者把ess的价格放进这个插件的某个文件夹里,不然需要一个个手动设置价格,太麻烦了qwq
还有,只能1组1组的卖
或者直接当ess的扩展,让玩家执行/sell的时候拦截一下,修改价格
如果购买要保留的话/mr 就直接打开不要/mr open了,管理员就/mr admin
已经根据最新反馈把插件补了一版,重点处理了“配置麻烦”和“卖出不方便”这两个问题。

这次更新主要有这些改动:

1. /mr 现在可以直接打开市场,不用再输 /mr open
2. /mr admin 现在可以直接打开管理界面
3. 管理界面会优先读取主手物品,也可以直接点背包里的物品作为样板
4. 新增 /mr admin hand <价格> [目标库存] [当前库存] [波动率]
手里拿着物品就能直接快速录入,不用一个个慢慢配
5. 新增 EssentialsX worth.yml 导入
可以直接读取 plugins/Essentials/worth.yml 或手动执行 /mr admin import
6. 卖出交互加强
右键卖 1 个,Q 卖一组,Shift + 右键 可以直接卖掉背包里全部同类物品
7. 新增可选 /sell 拦截
可以把常见的 /sell 走动态市场价格,而不是固定价格

说明一下:
动态市场和 Essentials 的固定 /sell 逻辑本质上不是一套东西,所以我这里做的是“兼容接入”和“价格导入”,不是简单套壳。如果你服务器里还保留原本固定高价回收,依然会有套利和通胀问题,这个需要一起调整。

如果还有问题,最好直接带上:

- 服务端核心和版本
- Vault / EssentialsX 版本
- 执行的命令
- 配置文件
- 报错截图或控制台日志

这样我可以更快定位。
 

附件

已经根据最新反馈把插件补了一版,重点处理了“配置麻烦”和“卖出不方便”这两个问题。

这次更新主要有这些改动:

1. /mr 现在可以直接打开市场,不用再输 /mr open
2. /mr admin 现在可以直接打开管理界面
3. 管理界面会优先读取主手物品,也可以直接点背包里的物品作为样板
4. 新增 /mr admin hand <价格> [目标库存] [当前库存] [波动率]
手里拿着物品就能直接快速录入,不用一个个慢慢配
5. 新增 EssentialsX worth.yml 导入
可以直接读取 plugins/Essentials/worth.yml 或手动执行 /mr admin import
6. 卖出交互加强
右键卖 1 个,Q 卖一组,Shift + 右键 可以直接卖掉背包里全部同类物品
7. 新增可选 /sell 拦截
可以把常见的 /sell 走动态市场价格,而不是固定价格

说明一下:
动态市场和 Essentials 的固定 /sell 逻辑本质上不是一套东西,所以我这里做的是“兼容接入”和“价格导入”,不是简单套壳。如果你服务器里还保留原本固定高价回收,依然会有套利和通胀问题,这个需要一起调整。

如果还有问题,最好直接带上:

- 服务端核心和版本
- Vault / EssentialsX 版本
- 执行的命令
- 配置文件
- 报错截图或控制台日志

这样我可以更快定位。
1.21.8
Essentials (2.21.2)
Vault (1.5.3)
/mr
版本不匹配,配置文件没改
不认识 WHITE_WALL_BANNER
 

附件

1.21.8
Essentials (2.21.2)
Vault (1.5.3)
/mr
版本不匹配,配置文件没改
不认识 WHITE_WALL_BANNER
稍等,预计今天21:10出更加优化、功能更加完善、更加美观的大版本,可以等我发布更新后替换使用
 
请使用这个版本
可以,挺好用的
就是我ess里是空的,为什么市场里还有商品?都reload了
顺便加一个/mr admin open 管理员打开市场,左键下架商品
 
顺便加个搜索功能(不加也没事)
没问题,大概13:30我会发布重大版本更新,同时会修复你提到的问题以及完成你提到的需求功能。
 
顺便加个搜索功能(不加也没事)
[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]
 
最后编辑:
你可以抢先体验一下。避免审核时间过长
这个有bug
1.改价格保存了,但是没效果
2.更换物品,但是价格没更新

物品能改成中文吗,一直是英文
网页板怎么进
 

附件

  • 屏幕截图 2026-04-11 142720.webp
    屏幕截图 2026-04-11 142720.webp
    23.3 KB · 查看: 4
这个有bug
1.改价格保存了,但是没效果
2.更换物品,但是价格没更新

物品能改成中文吗,一直是英文
网页板怎么进
建议删除配置文件后重新安装插件并配置

[MD] # MarketRegulator 使用教程 ## 一、安装插件 1. 确保服务器已安装 **Vault** 和任意一个经济插件(如 EssentialsX、CMI 等) 2. 将 `MarketRegulator-1.1.0.jar` 放入服务器的 `plugins` 文件夹 3. 重启服务器 4. 插件会在 `plugins/MarketRegulator/` 下生成配置文件 ## 二、基本配置 编辑 `plugins/MarketRegulator/config.yml`: ```yaml # 语言设置,zh = 中文,en = 英文 language: zh # 存储方式,yaml 适合小型服务器,sqlite 适合大型服务器 storage: type: yaml ``` 修改配置后,在游戏内执行 `/mr admin reload` 即可热重载。 ## 三、添加商品到市场 ### 方法一:GUI 添加(推荐新手) 1. 手持你要上架的物品 2. 输入 `/mr admin` 3. 在打开的界面中: - 点击背包中的物品设置样板(不会消耗物品) - 左键/右键点击「基础价格」调整价格(左键 +1,右键 -1,Shift 加速) - 左键/右键点击「目标库存」调整目标库存 - 左键/右键点击「当前库存」调整初始库存 - 左键/右键点击「波动率」调整价格波动幅度 4. 点击绿色「保存商品」按钮完成上架 ### 方法二:命令快速添加 手持物品后执行: ``` /mr admin hand <基础价格> ``` 例如:手持钻石,输入 `/mr admin hand 100`,钻石就以 100 的基础价上架了。 完整格式: ``` /mr admin hand <基础价格> [目标库存] [当前库存] [波动率] ``` ### 方法三:从 EssentialsX 导入 如果你之前用 EssentialsX 的 `worth.yml` 设置过物品价格: ``` /mr admin import ``` 这会自动读取 worth.yml 并批量导入到市场。 ## 四、管理已有商品 ### 一键修改价格 ``` /mr admin setprice <物品ID> <新价格> ``` 例如:`/mr admin setprice diamond 200` ### 一键修改波动率 ``` /mr admin setvolatility <物品ID> <波动率> ``` 例如:`/mr admin setvolatility diamond 1.5` 波动率含义: - `1.0` = 价格随库存线性变化 - `1.2` = 默认值,轻微加速变化 - `2.0` = 价格变化很剧烈 - `0.5` = 价格变化很平缓 ### 一键修改库存 ``` /mr admin setstock <物品ID> <库存数> ``` ### 在 GUI 中下架商品 ``` /mr admin open ``` 打开管理视图,左键点击商品即可下架。 ### 清空所有商品 ``` /mr admin clear ``` ### 移除单个商品 ``` /mr admin remove <物品ID> ``` ## 五、价格波动系统 价格公式:`价格 = 基础价格 x (目标库存 / 当前库存) ^ 波动率` - 玩家买入物品 -> 库存减少 -> 价格上升 - 玩家卖出物品 -> 库存增加 -> 价格下降 - 买入价 = 卖出价 x 溢价系数(默认 1.15) ### 开启价格波动全服公告 编辑 `config.yml`: ```yaml price-alert: enabled: true # 改为 true 开启 threshold-percent: 20.0 # 波动超过 20% 时广播 check-interval-minutes: 10 ``` 然后 `/mr admin reload`。 ### 开启库存自然恢复 让库存自动慢慢回到目标值,防止价格长期偏离: ```yaml stock-recovery: enabled: true interval-minutes: 30 # 每 30 分钟恢复一次 step: 1 # 每次恢复 1 点库存 ``` ## 六、税收系统 ```yaml tax: buy-tax-rate: 0.05 # 买入加收 5% 税 sell-tax-rate: 0.02 # 卖出扣除 2% 税 ``` 税金会在交易消息中显示。 ## 七、交易冷却 防止玩家刷单: ```yaml cooldown: enabled: true seconds: 3 # 每次交易后冷却 3 秒 ``` ## 八、Web 面板 在浏览器中查看市场数据: ```yaml web: enabled: true port: 8234 bind: "0.0.0.0" ``` 重载后访问 `http://你的服务器IP:8234` 即可看到暗色主题的市场网页。 API 端点: - `http://IP:8234/api/market` — 获取所有商品 JSON 数据 - `http://IP:8234/api/history?id=diamond` — 获取钻石的价格历史 ## 九、玩家使用 玩家只需要输入 `/mr` 打开市场界面: - **左键** — 买 1 个 - **Shift + 左键** — 买 64 个 - **右键** — 卖 1 个 - **Q 键** — 卖一组(64 个) - **Shift + 右键** — 卖背包里所有同类物品 底部栏可以切换分类(全部/方块/装备/食物/其他),还可以点击搜索按钮按关键词查找。 玩家也可以用 `/mr search <关键词>` 搜索商品。 ## 十、常见问题 **Q: 重启后市场为空?** A: 检查 `config.yml` 中 `storage.type` 是 yaml 还是 sqlite,确保 `market.yml` 或 `market.db` 存在于 `plugins/MarketRegulator/` 下。 **Q: 改了价格但没生效?** A: 确保使用 `/mr admin setprice` 命令或在 Admin GUI 中修改后点击「保存」按钮。直接编辑 market.yml 后需要 `/mr admin reload`。 **Q: 物品名显示英文?** A: 确保 `config.yml` 中 `language: zh`。如果是自定义命名的物品,插件会优先显示自定义名称。 **Q: 想关闭 /sell 拦截?** A: 在 `config.yml` 中设置: ```yaml sell-hook: enabled: false ``` **Q: 如何查看某个物品的价格历史?** A: 输入 `/mr history <物品ID>`,例如 `/mr history diamond`。会打开一本书展示 ASCII 价格曲线图。 [/MD]
 

附件

在线会员

  • kxkl2077
  • six_coin
  • Cat_
  • byx100116
  • Asushiro
  • Oringh服务器
  • Woody
  • jipa233
  • bbc312
  • 3U22
  • bobingovo
  • 云中
  • xiaojuzj
  • qq865941128
  • CladHalo
  • lantianyu121
后退
顶部 底部