
骑士梦魇的商店
Forge 1.20.1 服务端经济商店模组,包含分类菜单、持久余额、可配置价格以及全部出售支持。
你可以通过这些方式支持我—— https://ko-fi.com/knightmare61825
加入我们的服务器,参与大规模战斗: 服务器
Knightmare's Shop 是一个适用于 Forge 1.20.1 的服务端经济与商店模组(因为 Forge 1.20.1 缺少简单的商店模组)。它添加了一个带有分类、可配置的 GUI 商店,支持持久化的玩家余额、购买/出售、批量出售命令、玩家间余额转账,以及内置的管理员工具,可以在不重启服务器的情况下实时编辑商店。
该模组的设计目标是让普通玩家可以立即使用商店,而管理员则可以通过命令或简单的游戏内编辑器来管理分类、价格、物品和堆叠数量。
功能特性
- 基于 GUI 的商店,支持分类
- 持久化的玩家余额
- 支持购买和出售
- 批量出售背包物品
- 通过命令出售特定物品
- 玩家之间转账
- 实时管理编辑商店数据
- 管理员 GUI 编辑器
- 基于 JSON 的配置,存储在服务器端
安装方法
- 安装 Forge 1.20.1。
- 将模组 jar 文件放入
mods文件夹。 - 启动游戏或服务器一次。
- 模组将生成其配置文件,位置在: "config/shopmod/shop.json" 该文件是模组使用的主要商店定义文件。
商店配置
商店定义在:
config/shopmod/shop.json
此文件包含:
- 商店标题
- 货币符号
- 初始余额
- 分类
- 每个分类中的物品
- 购买/出售价格
- 每次交易的堆叠数量
物品条目示例: { "item": "minecraft:diamond", "buy": 52.5, "sell": 13.13, "amount": 1 }
分类条目示例: { "id": "ores", "title": "Ores", "icon": "minecraft:diamond", "items": [ { "item": "minecraft:diamond", "buy": 52.5, "sell": 13.13, "amount": 1 } ] }
手动编辑文件后,使用以下命令重新加载:
/shopadmin reload
玩家如何使用该模组
打开商店
/shop
打开主商店菜单。
/shop <分类>
直接打开特定分类。
示例:
/shop ores
商店 GUI 操作
在分类菜单内:
- 左键点击物品:购买一个配置的单位
- Shift + 左键点击:购买一组数量的物品
- 右键点击:出售一个配置的单位
- Shift + 右键点击:出售该物品条目对应的所有匹配物品
底栏按钮:
- 页面导航
- 返回按钮
- 余额显示
- 出售背包物品按钮
余额命令:
查看你的余额
/balance
或
/shop balance
显示你当前的余额。
查看其他玩家的余额
/shop balance <玩家>
余额转账: 玩家可以向其他玩家发送资金。
/balance transfer <玩家名> <金额>
示例:
/balance transfer Steve 250
规则:
- 金额必须大于 0
- 你必须有足够的资金
- 你不能给自己转账
- 目标玩家必须在线
出售命令
出售背包中所有可出售物品: /sellall
出售你背包中所有在商店中存在且具有有效出售价格的物品。
出售手持物品的所有数量: /sellall hand
出售你背包中所有与主手物品相同的物品。
按名称和数量出售特定物品: /sell <物品名> <数量>
规则:
- 物品必须存在于商店中
- 物品必须有出售价格
- 你的背包中必须有足够的数量
- 数量必须符合商店条目规则
- 如果物品配置的
amount大于 1,则数量必须是该值的倍数
管理员命令
这些命令需要权限级别 2 或管理员权限。
重新加载商店配置: /shopadmin reload
从磁盘重新加载 shop.json。
管理员余额命令
- 设置玩家余额:
/shopadmin balance set <玩家> <金额> - 增加玩家余额:
/shopadmin balance add <玩家> <金额>
管理员分类命令
- 创建分类:
/shopadmin category create <id> <标题>示例:/shopadmin category create farming Farming - 移除分类:
/shopadmin category remove <id>示例:/shopadmin category remove farming - 重命名分类标题:
/shopadmin category title <id> <标题>示例:/shopadmin category title farming Crop and Farm Goods - 设置分类图标——手持你想作为图标的物品,然后运行:
/shopadmin category icon <id>示例:/shopadmin category icon farming
管理员物品命令 除非另有说明,这些命令使用管理员主手持有的物品。
- 将手持物品添加到分类:
/shopadmin item add <分类> <购买价> [出售价] [数量]
含义:
buy= 购买价格sell= 出售价格,可选amount= 交易单位大小,可选 如果省略sell,则保持禁用状态。如果省略amount,则默认为 1。从分类中移除手持物品:
/shopadmin item remove <分类>设置手持物品的购买价格:
/shopadmin item setbuy <分类> <价格>禁用购买:
/shopadmin item setbuy ores -1设置手持物品的出售价格:
/shopadmin item setsell <分类> <价格>禁用出售:
/shopadmin item setsell ores -1同时设置购买和出售价格:
/shopadmin item setboth <分类> <购买价> <出售价>设置手持物品的交易数量:
/shopadmin item setamount <分类> <数量>示例:/shopadmin item setamount ores 16这意味着该物品按 16 个一组进行买卖。
管理员列表命令
- 列出分类中的物品:
/shopadmin list <分类>在聊天中显示该分类的物品、价格和数量。
管理员 GUI 编辑器
- 打开分类列表编辑器:
/shopadmin edit打开管理员分类浏览器。 - 打开特定分类编辑器:
/shopadmin edit <分类>
管理员 GUI 工作方式
分类列表界面: 显示所有分类。点击一个分类进行编辑。
分类编辑器: 在分类编辑器中,你可以:
- 浏览已配置的物品
- 点击物品打开其编辑器
- 添加手中的物品
- 使用手中的物品设置分类图标
物品编辑器 在物品编辑器中,你可以:
- 设置购买价格
- 设置出售价格
- 设置交易数量
- 禁用购买
- 禁用出售
- 移除物品
某些编辑操作会使用聊天输入:
- 提示时,在聊天中输入新值
- 输入
cancel中止提示
每次成功的编辑都会写回:
config/shopmod/shop.json
无需重启。
价格规则
buy= -1 表示玩家无法购买该物品sell= -1 表示玩家无法出售该物品- 如果你希望该物品在商店中有效,则购买和出售不能同时禁用
amount必须至少为 1- 示例:
amount: 16sell: 8.0这意味着出售一个单位将以 $8.00 的价格出售 16 个物品。
玩家余额行为
- 余额是持久化的
- 新玩家以配置的初始余额开始
- 余额存储在服务器端
- 商店活动和转账引起的余额变动会立即生效
典型的服务器工作流程
对于玩家:
- 运行
/shop - 浏览分类
- 购买或出售物品
- 使用
/sellall进行批量出售 - 使用
/balance transfer <玩家> <金额>发送资金
对于管理员:
- 运行
/shopadmin edit - 打开一个分类
- 添加手持物品
- 设置购买/出售价格
- 设置交易数量
- 使用
/shop测试 - 仅当在游戏外编辑了文件时,才使用
/shopadmin reload
完整命令列表
玩家命令:
/shop/shop <分类>/shop balance/balance/balance transfer <玩家> <金额>/sellall/sellall hand/sell <物品名> <数量>
管理员命令
/shopadmin reload/shopadmin balance set <玩家> <金额>/shopadmin balance add <玩家> <金额>/shopadmin category create <id> <标题>/shopadmin category remove <id>/shopadmin category title <id> <标题>/shopadmin category icon <id>/shopadmin item add <分类> <购买价> [出售价] [数量]/shopadmin item remove <分类>/shopadmin item setbuy <分类> <价格>/shopadmin item setsell <分类> <价格>/shopadmin item setboth <分类> <购买价> <出售价>/shopadmin item setamount <分类> <数量>/shopadmin list <分类>/shopadmin edit/shopadmin edit <分类>
备注
- 命令中的物品名称一般应使用 Minecraft id,如
minecraft:diamond或简化的 id,如diamond - 物品必须存在于配置的商店中才能被出售
- 该模组在行为上是服务端的,商店数据由服务器配置控制
- 管理员 GUI 编辑和命令编辑都会修改同一个
shop.json文件
你可以通过这些方式支持我—— https://ko-fi.com/knightmare61825
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。