跳到正文

Future Shops

作者:EnVyOnMyMind

FutureShops 是一款适用于 Minecraft Forge 1.20.1 的经济模组,加入了服务器商店、玩家自营店铺、以物易物和实体货币,并配有现代化的游戏内界面。

收藏

截图

介绍

介绍由机器翻译自 CurseForge 原页面,仅供参考。

🏪 FutureShops — Minecraft 终极经济与商店模组

🎮 Minecraft Forge 1.20.1 · 服务端经济系统 · 玩家商店 · 以物易物 · 实体货币


将你的 Minecraft 服务器打造成繁荣的交易市场。
FutureShops 为 Minecraft 带来功能齐全、类似 Amazon 的经济系统——包含服务器商店、玩家自营店铺、实体货币、以物易物、促销活动、排行榜和简洁现代的界面,而且完全无需外部材质。


✨ 特色功能

alt text

🛒 服务器商店 (/shop)

在库存无限的管理员商店中浏览商品,体验精美的深色主题界面。分类、搜索、筛选——就像在线购物,只不过是在 Minecraft 里。

  • 📂 分类侧边栏,带可滚动标签页和物品图标
  • 🔍 实时搜索 — 即刻找到任何物品
  • 🏷️ 动态促销徽标 — 特价商品显示跳动的红色 -X% 折扣标签
  • 🛍️ 购物车 — 将商品加入购买队列、调整数量,一次性结账
  • 📜 交易记录 — 可筛选的日志,支持搜索、排序、时间范围筛选和实时推送更新
  • 💰 余额显示 — 随时查看账户余额

🏠 玩家自营商店方块

放置一个商店方块,配置商品、连接箱子,然后开门营业。

  • 👤 放置时分配所有者 — 方块归你,商店也归你
  • 📦 单物品或多物品模式 — 每个方块可出售一种物品,也可最多出售 12 种
  • 🏷️ 自定义商店名称 — 为你的店铺打造专属品牌
  • 💵 三种交易模式:货币、以物易物,或同时使用两者
  • 🔗 存储连接 — 连接箱子、木桶,或整个精致存储网络,自动管理库存
  • 📊 所有者控制面板 — 追踪收入、领取结算款项、查看库存提醒
  • 🎁 所有者促销编辑器 — 设置百分比折扣、买 X 送 Y 优惠、限时促销和定时促销时段
  • 👁️ 所有者预览 — Shift+右键点击,以访客身份测试你的商店
  • 🛒 买家体验 — 与服务器商店一样精致的界面,熟悉直观
    alt text

💰 完整经济系统

由服务器掌控的经济系统,让服务器交易公平有序。

  • /balance — 打开精美的控制面板查看余额
  • /pay <player> <amount> — 给朋友转账
  • /baltop — 排行榜展示玩家头像、最高余额、交易次数最多的玩家、顶级卖家和最受欢迎的商品
  • /withdraw <amount> [yes|no] — 将账户余额兑换为实体硬币
    • 智能面额:$1、$5、$10、$20、$50、$100 和 $1,000 纸币
    • 示例:/withdraw 132 yes → 1 张 $100 + 1 张 $20 + 1 张 $10 + 2 张 $1
  • /deposit — 将硬币兑换回账户余额

alt text

🪙 实体货币 (CoinItem)

将财富握在手中,或与他人面对面交易。

  • 🖱️ 右键存入 — 只需右键点击手中的任意硬币,即可将其全部面值存入余额。无需命令!
  • 🔐 防复制保护 — 每枚硬币都带有唯一 ID、加密校验和以及服务端已使用铸币 ID 追踪机制
  • 📝 基于 NBT 的面额 — 悬停在硬币上即可查看其面值
  • ♻️ 存入验证 — 已使用过的铸币 ID 会被永久拒绝,相关硬币也会被销毁
  • 🗑️ 自动销毁无效硬币 — 被篡改或复制的硬币在使用时会自动销毁

⚒️ 以物易物系统

交易不一定非要使用货币。

  • 🔄 物品换物品交易 — 用钻石兑换绿宝石,或按你的配置进行其他交易
  • 🎨 专用以物易物界面 — 简洁的左右分栏布局:「你将获得」⟵⟶「你将付出」
  • 📋 每种物品支持多种配方 — 可通过选项卡切换不同交易方案
  • 🤝 玩家商店同样适用 — 店主可以设置交易物品及数量
  • 🧮 智能最大数量按钮 — 根据你的物品栏自动计算最多可交易的数量

alt text


📊 仪表盘与排行榜

了解自己在经济体系中的位置。

  • 🧑 玩家资料 — 显示你的头像、余额、收入、商店数量和库存预警
  • 🏆 余额排行榜 — 显示余额最高的前 10 名玩家及其头像
  • 📈 交易亮点 — 交易次数最多的玩家、销量最高的卖家和最受欢迎的商品
  • 🏪 店铺管理 — 查看你放置的所有商店、库存水平和库存不足提醒

alt text


🎉 促销与折扣系统

像真正的商家一样开展促销活动。

  • 💥 百分比折扣 — 带有动画脉动效果的红色徽标,显示 -X% 折扣
  • 🎁 买 X 送 Y — 促销捆绑优惠
  • ⏰ 定时活动 — 设置限时促销的开始和结束时间
  • 🔥 限时抢购开关 — 营造限时优惠的紧迫感
  • 🏷️ 全场景适用 — 适用于服务器商店、玩家商店和所有交易模式

🖼️ 完整界面展示

所有界面均完全使用 Minecraft 内置绘图原语渲染,无需外部纹理!

界面 描述
ShopMainScreen 深色现代网格布局,包含分类侧边栏、动态促销徽标和资料页脚
ItemDetailScreen 大型物品预览、价格信息、数量控件,以及购买/出售/以物易物操作
CartScreen 按行显示的结账界面,含内嵌数量控件和金色强调的总价
BarterScreen 左右分栏的「你将获得 ⟵⟶ 你将付出」界面,附带配方选项卡
TransactionHistory 可筛选的记录,包含 ALL/BUY/SELL/BARTER 选项卡、时间范围和搜索功能
Player Shop 店主配置面板与访客商店界面,精致程度与服务器商店一致
Promo Editor 弹出式覆盖窗口,可设置折扣类型、数值、买 X 送 Y 优惠和活动时间
Balance Dashboard 玩家头像、余额、收入、商店统计和库存不足提醒
Leaderboard 显示前 10 名玩家及其头像,并突出展示交易、卖家和商品数据
Settlement History 分页收入记录,可按 SALE/CLAIM/ROLLBACK 筛选

🎮 命令

命令 说明
/shop 打开服务器商店
/shop <shopId> 打开指定名称的商店
/balance or /bal 查看余额和控制面板
/balance ui 打开完整的余额控制面板 GUI
/baltop 查看经济排行榜
/baltop ui 打开排行榜 GUI
/pay <player> <amount> 向其他玩家转账
/withdraw <amount> [yes|no] 将余额兑换为实体货币物品
/deposit 将手持的货币兑换回余额
/link 确认存储链接(请先看向箱子)

🔧 管理员命令

命令 说明
/shopadmin reload 从配置文件热重载商店目录
/shopadmin coinaudit 检查每位玩家持有和已消耗的铸币
/shopadmin promo set <shop> <item> <type> <value> 为目录中的物品设置促销
/shopadmin promo clear <shop> <item> 移除目录中物品的促销

⚙️ 配置

商店目录定义在以下 JSON 文件中:

config/futureshops/shops/*.json

每个文件都定义了类别、物品、价格、以物易物配方、促销规则和库存设置。可使用 /shopadmin reload 热重载。

服务器经济配置位于:

config/futureshops-common.toml

🔒 安全与防复制漏洞

FutureShops 高度重视服务器完整性:

  • ✅ 服务器权威交易 — 所有购买、出售和以物易物交易均由服务端验证
  • ✅ 加密货币校验和 — 篡改过的硬币会被拒绝
  • ✅ 已使用铸币登记 — 存入的硬币会被永久记录,防止重复使用
  • ✅ 商店级交易锁定 — 防止玩家商店发生竞态条件
  • ✅ 分阶段回滚 — 交易失败时会妥善恢复物品和余额
  • ✅ 射线检测存储链接 — 对已链接的容器进行防漏洞验证
  • ✅ 会话管理 — 玩家登出、死亡或离开一定距离时,商店会自动关闭

📦 安装

  1. 安装 Minecraft Forge 1.20.1(47.x)
  2. 安装依赖项 GeckoLib 4.4+(客户端和服务器端都需要)
  3. 将 futureshops-1.0.jar 放入 mods/ 文件夹
  4. 启动游戏 — 商店目录和配置文件会自动生成
  5. 在 config/futureshops/shops/ 中配置商店
  6. 在游戏中使用 /shop 打开商店 — 开始营业吧!🎉

🪙 货币系统 — 完整文档

FutureShops 提供实体货币系统,玩家可以将财富作为真实物品存放在物品栏中,并进行持有、交易和管理。

硬币的运作方式

硬币是没有合成配方的特殊物品 — 只能通过 /withdraw 命令创建。每枚硬币都带有隐藏的 NBT 数据,使其独一无二且无法被篡改。

获取硬币

方式 操作方法
从余额中取款 /withdraw <amount> 或 /withdraw <amount> yes
单枚大额硬币 /withdraw <amount> no — 生成一枚面值等于全部金额的硬币

智能面额拆分(/withdraw 132 yes):

面额 数量
$100 ×1
$20 ×1
$10 ×1
$1 ×2

可用面额:$1、$5、$10、$20、$50、$100、$1,000

存入硬币

有两种方式可以将硬币存回数字余额:

方式 操作方法 详情
🖱️ 右键点击 手持硬币并右键点击 立即存入手中整组硬币。这是最快的方式!
⌨️ 命令 /deposit 一次性存入物品栏中的所有有效硬币
⌨️ 部分存款命令 /deposit <amount> 仅存入指定金额,并优先消耗大面额钞票

硬币提示信息

将鼠标悬停在物品栏中的硬币上时,你会看到:

  • 🟡 价值:$X.XX — 这枚硬币的面额
  • ⬜ 右键点击以存入 — 快速存款功能提示

防复制安全机制

FutureShops 铸造的每枚硬币都包含隐藏的安全数据:

NBT 字段 用途
mint_id 唯一 UUID — 每枚硬币的 ID 都不相同
denomination 以最小货币单位表示的硬币面值
mint_timestamp 硬币的铸造时间
mint_player 取出硬币的玩家 UUID
mint_server 服务器身份哈希
checksum 加密完整性校验

无效硬币的处理方式:

情形 结果
NBT 被篡改(修改了校验和/面值) ❌ 使用时销毁硬币
硬币被复制(相同铸造 ID 被使用两次) ❌ 存款时销毁第二枚副本
硬币已存入(铸造 ID 已被使用) ❌ 销毁硬币并向玩家发出警告
缺少硬币数据 ❌ 静默销毁硬币

硬币行为规则

交互方式 行为
右键点击(使用) ✅ 立即存入余额
丢到地上 ✅ 允许 — 5 分钟后消失
玩家死亡 ✅ 像普通物品一样掉落(遵循 keepInventory 设置)
存放在箱子/木桶中 ✅ 允许 — 取出时进行验证
合成 ❌ 不能用于配方
铁砧重命名 ❌ 服务器禁止
漏斗提取 ❌ 默认禁止(可配置)

📋 技术详情

属性 值
模组加载器 Minecraft Forge
Minecraft 版本 1.20.1
Forge 版本 47.4.20+
Java 版本 17
映射 官方 Mojang
是否需要服务端 ✅ 是
是否需要客户端 ✅ 是(用于 GUI)
依赖项 🦎 GeckoLib 4.4+(客户端和服务端)

🤝 模组兼容性

🧠 精致存储集成(已推出)

FutureShops 内置了原生精致存储支持——将商店直接连接到RS 控制器、网格、外部存储或任意 RS 网络节点,商店即可查询并直接从整个 RS 网络提取库存。

  • 🔌 软依赖 — 检测到 RS 时会自动启用集成;如果未安装 RS,则不会产生任何变化。
  • 🌐 感知完整网络 — 不同于漏斗式适配器,RS 桥接会遍历 INetworkNodeProxy → INetworkNode → INetwork,让商店能够查看网络上的每一块磁盘和每个外部存储容器,而不只是单个方块。
  • 🧪 严格匹配 NBT — 精确匹配附魔物品、命名物品和带有损伤数据的物品(不再卖错“那把”钻石镐)。
  • ⚛️ 原子化提取/插入 — 如果交易过程中出现任何问题,RS 网络中的变更都会干净地回滚。
  • ♻️ 平滑回退 — 如果 RS API 发生变化,适配器会自动回退到标准 Forge IItemHandler 能力。
  • 🏷️ 支持的模组 ID:refinedstorage、refinedstorage2 和 refinedstorageaddons。

💡 只需看向控制器 / 网格 / 合成器 / 外部存储方块并运行 /link — 就这么简单。现在商店就由你的 RS 网络供货。

🔌 其他存储与运输方式

  • ✅ 原版物品栏 — 箱子、木桶、潜影盒:连接任意 IItemHandler 容器
  • ✅ 原版漏斗 — 将物品输送到已连接的商店存储中
  • ✅ 常见物品管道模组 — 任何提供 Forge IItemHandler 能力的模组都可以直接使用
  • ✅ CarryOn — 可以拾起并搬动商店(保留所有权)
  • ✅ 独立服务器 — 完全支持;商店在服务器重启后仍会保留
  • 🧩 可扩展 — 第三方模组可通过附加模组 API 注册自己的 ExternalStorageAdapter,以接入自定义存储网络

🗺️ 开发路线图

  • ✅ 精致存储集成 — 已推出
  • 🔜 应用能源2(AE2)适配器
  • 🔜 动态定价系统(供需曲线)
  • 🔜 库存刷新计划程序(定时补货)
  • 🔜 公开的 ExternalStorageAdapter 开发者 API 和供附加模组使用的事件钩子
  • 🔜 漏斗/管道兼容性列表(机械动力、通用机械等)
  • 🔜 高级分析与导出工具
  • 🔜 本地化(西班牙语、法语、德语、葡萄牙语〔巴西〕、简体中文)

❓ 常见问题

问:这能在独立服务器上运行吗?
🟢 可以。从第一天起就采用服务端权威架构。

问:服务器重启后我的商店还会保留吗?
🟢 会。商店、余额、商品列表和交易记录都会持久化保存到磁盘。

问:玩家可以从我的商店偷东西吗?
🔴 不可以。只有所有者(或服务器管理员)可以修改商品列表或从关联的存储中取出物品。

问:可以在已有的世界中使用吗?
🟢 可以。添加模组并重启后,旧世界会正常加载。

问:兼容 Fabric 吗?
🔴 不兼容——这是仅支持 Forge 的模组。

问:需要安装 GeckoLib 吗?
🟢 需要——商店方块的 3D 模型需要 GeckoLib 4.4+。CurseForge 会自动提示你安装。

问:可以把商店连接到 Refined Storage 网络吗?
🟢 可以!看向任意 RS 网络方块(控制器、网格、外部存储、合成器等)并运行 /link。商店会从整个 RS 网络中提取库存——包括所有磁盘和所有外部存储容器,并严格匹配 NBT。

问:如果我没有安装 Refined Storage 呢?
🟢 完全没问题。RS 是软依赖——没有它,其他功能照常运行。普通箱子和木桶的关联功能开箱即用。


❤️ 支持与社区

  • 🐛 发现了漏洞?请在 Issues 标签页中报告
  • 💡 有什么想法?欢迎在评论区留言
  • ⭐ 喜欢这个模组?请给它评分——这对我们帮助很大!

满怀 ❤️ 为 Minecraft 社区打造。制作此模组时,没有伤害任何外部材质。 🟪⬛

常见问题

Future Shops 支持哪些 Minecraft 版本?

Future Shops 支持 Minecraft Java 版 1.20.1–1.21.1,共 2 个版本,可用的加载器:Forge / NeoForge。下载时注意选择和你游戏版本一致的文件。

Future Shops 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Forge / NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。

评论

登录后评论和评分

EnVyOnMyMind 的其他作品

查看全部 →