跳到正文

EconomyCraft – Multiplayer Economy

作者:ReaZip

适用于 Fabric 和 NeoForge 服务器的高度自定义经济模组。

收藏

截图

介绍

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

EconomyCraft

适用于 Fabric 和 NeoForge 的服务端经济系统。

附属模组: EconomyCraft Bounties


/eco菜单

按钮 说明
商店 以固定价格购买和出售,库存无限。左键购买,右键出售,Shift+单击使用批量数量。
拍卖行 购买其他玩家上架的物品,或上架自己的物品。
出售物品 放入物品,查看总价并确认。未定价的物品无法出售。受损物品售价较低,附魔物品售价较高。
订单 发布所需物品、数量和价格。其他玩家完成订单后即可获得报酬。
每日奖励 领取每日奖励,每天一次。
向玩家付款 向其他玩家转账。
排行榜 查看余额、收入、支出、卖家、买家和交易者排行榜。
物品价值 查看任意物品的买入价和卖出价。
交付物品 无法直接交付的物品或款项(背包已满/离线期间完成的订单)。
交易记录 查看近期余额变动记录。

每个界面也都有对应命令:/bal、/pay、/daily、/shop、/ah、/auction、/sell、/worth、/orders、/deliveries、/transactions。

命令和菜单中的金额支持简写:500、1.5k、20M、3B、2T、2.5Qa、1Qi。


管理员(/eco admin)菜单

商店编辑器

浏览分类,点击物品即可编辑。

  • 分类编辑器:右键点击分类可重命名、修改颜色、图标或可见性,也可将其排除在动态定价之外。删除分类后,其中的物品会移至misc,且买入价会归零。
  • 添加物品:选择游戏中的任意物品,或从背包中选择。自定义名称、附魔和容器内容都会保留。
  • 买入价 / 卖出价:单个物品的价格;0可关闭对应的交易方向。启用动态定价时,此处也会显示当前价格和倍率。
  • 动态定价:即使服务器已启用动态定价,也可将此物品设为不参与动态定价。
  • 批量数量:Shift+单击时购买或出售的数量。
  • 分类:物品所在的商店页面。blocks.wood会创建子页面。
  • 移除:将物品从商店中移除,但保留其价格。
  • 已移除物品:列出所有已移除的物品。点击物品即可按原价格将其放回商店。通过添加物品添加已移除的物品,效果相同。

商店动态定价

可选功能,默认关闭(dynamic_prices.enabled)。所有买入价都会按以下比例缩放:

current price = base price × active-player median balance / starting balance

缩放比例限制在dynamic_prices.min_multiplier和dynamic_prices.max_multiplier之间,每隔dynamic_prices.update_minutes重新计算一次(默认每小时一次)。卖出价不受影响。可在上方的商店编辑器中按分类或物品关闭动态定价。

设置

包含config.json中的所有选项,可在游戏内编辑,并按与配置文件相同的分类分组。

玩家

选择任意玩家(无论是否在线),即可向其赠款、收款或设置余额,将其从经济系统中移除,或覆盖其活跃订单/拍卖的数量上限。

重置工具

工具 是否
重置所有余额 将每位玩家的余额重置为economy.starting_balance。
重置每日奖励数据 所有人都可以立即再次领取每日奖励。
重置每日出售限额 所有人的每日出售限额立即重置为满额。
清空拍卖 取消所有进行中的挂单。物品会退回到卖家的待领取处。
清空订单 取消所有未完成的订单。托管资金会退还给请求者。
移除所有物品 移除所有商店物品,效果等同于商店编辑器中的移除。可从已移除物品中放回物品。
重置商店价格 将prices.json替换为默认值,包括分类。自定义物品会被删除。旧文件保留为prices.json.before-reset-<time>。
重置整个经济系统 执行上述除两个商店工具外的所有工具,并清空排行榜统计数据、删除整个交易日志。

只有两个商店工具会改动商店价格/分类。它们都不会改动权限设置。

管理员命令

/eco addmoney、/eco setmoney、/eco removemoney、/eco removeplayer。


权限

管理员和命令访问由权限节点控制。任何未由权限插件设置的管理员节点都会回退为 OP;任何未设置的命令节点都会回退为所有人允许。

管理员节点

节点 授予
economycraft.admin 以下全部内容
economycraft.admin.players /eco addmoney、/eco setmoney、/eco removemoney、/eco removeplayer、玩家界面
economycraft.admin.settings 设置界面
economycraft.admin.shop 商店编辑器(从管理员菜单或商店内编辑按钮进入)
economycraft.admin.reload “从磁盘重新加载”按钮
economycraft.admin.reset 重置工具界面

命令节点

节点 授予
economycraft.command.menu /eco、/eco menu
economycraft.command.balance /bal
economycraft.command.pay /pay
economycraft.command.shop /shop
economycraft.command.auction /ah、/auction
economycraft.command.sell /sell
economycraft.command.orders /orders
economycraft.command.deliveries /deliveries
economycraft.command.daily /daily
economycraft.command.transactions /transactions
economycraft.command.worth /worth

配置文件

在服务器上存储于config/economycraft/(单人游戏中每个世界存储于saves/<world>/economycraft/):顶层的config.json、webhook.json和prices.json,玩家数据位于data/下。

config.json

键 默认值 说明
economy.starting_balance 1000 新玩家开始时拥有的钱。
economy.max_balance 1000000000000000000 单个玩家可持有的最高金额,范围为 1 到 $1Qi。
economy.daily_reward 100 每日奖励发放的钱。
economy.tax_rate 0.1 交易和订单的税率,以小数表示(0.1 = 10%)。
display.balance_separator "." 千位分隔符,例如 "," 会显示为 $1,000。
display.currency_symbol "$" 每笔金额旁显示的符号,最多 16 个字符。使用 "" 表示无符号。
display.currency_symbol_position "prefix" "prefix" 会显示为 $100,"suffix" 会显示为 100$。
display.currency_name "" 聊天消息中可选用此名称代替符号,例如 "Gold" 会显示为 100 Gold。菜单中仍显示符号。
display.scoreboard_enabled true 显示余额侧边栏。
commands.standalone true 允许不带 /eco 前缀使用 /pay、/daily 等命令。
commands.standalone_admin false 允许不带 /eco 前缀使用 /addmoney、/setmoney 等命令。
shop.enabled true 启用固定价格商店。
selling.enabled true 启用出售功能。
selling.daily_limit 10000 玩家每天通过出售最多可赚取的金额。0 表示不限制。
selling.worth_enabled true 启用物品价值查询(/worth)。
dynamic_prices.enabled false 根据活跃玩家余额中位数调整商店购买价格。参见 动态商店定价。
dynamic_prices.min_multiplier 0.5 允许的最低价格倍率,范围为 0.5 到 100。
dynamic_prices.max_multiplier 5.0 允许的最高价格倍率,范围为 0.5 到 100。
dynamic_prices.min_active_days 30 玩家必须在最近多少天内登录,才计为活跃玩家。0 表示计入所有玩家。
dynamic_prices.update_minutes 60 价格倍率重新计算的间隔分钟数。最短为 1。
auction.enabled true 启用拍卖行。
auction.expiration_hours 168 未售出的拍卖过多少小时后到期,物品将转入递送。0 表示永不到期。
auction.max_active_per_player 0 玩家同时可进行的拍卖数量上限。0 = 不限。可按玩家单独覆盖此设置。
orders.enabled true 启用订单板。无论是否启用,递送功能仍可使用。
orders.expiration_hours 168 未完成的订单过多少小时后到期,并退还托管款项。0 表示永不到期。
orders.max_active_per_player 0 玩家同时可持有的未完成订单数量上限。0 = 不限。可按玩家单独覆盖此设置。
transaction_log.enabled true 将每笔余额变动记录到每日日志文件。
transaction_log.retention_days 7 保留交易日志的天数。

webhook.json

键 默认值 说明
webhook_enabled false 将交易发送到 webhook_url。
webhook_url "" 兼容 Discord 的传入 Webhook URL。
webhook_min_amount 0 跳过低于此金额的交易 Webhook 通知。

prices.json

每个商店物品对应一条目,以物品 ID 为键:

{
  "minecraft:diamond": {
    "category": "ores",
    "stack": 64,
    "unit_buy": 800,
    "unit_sell": 200
  }
}

category 接受 top.sub 作为子页面,stack 是 Shift+点击时的批量数量,unit_buy/unit_sell 分别是单个物品的价格(0 会禁用对应方向)。已安装模组中的物品会自动添加,以其模组 ID 作为类别,并将 0 设为两种价格。

编辑器还会写入一些额外键:

  • components:自定义物品的 NBT(名称、附魔、容器内容)。添加 #label 后缀可区分同一物品的重复条目,例如 minecraft:shulker_box#loot_rare。
  • "removed": true:将物品从商店中移除,但保留其其他键,以便之后从 已移除物品中重新添加。删除 removed 键即可将其放回商店。
  • "dynamic_price_enabled": false:将某个物品或 _categories 下的某个类别排除在动态定价之外。

占位符

通过 Text Placeholder API(Fabric)或 Placeholder API NeoForge(NeoForge),向其他模组提供经济数据。两者均为可选项;即使不安装也能运行此模组,但必须将对应的 JAR 放入 mods/,占位符才能正常解析。

占位符 说明
%economycraft:balance% 原始余额,例如 1000。
%economycraft:balance_formatted% 格式化后的余额,例如 $1.000。
%economycraft:balance_short% 缩写后的余额,例如 $1.2k。
%economycraft:daily_sell_remaining% 玩家今天通过出售还能赚取的金额。达到上限时显示 ∞。
%economycraft:top_name <rank>% 该排名玩家的名称(1 = 最富有)。
%economycraft:top_balance <rank>% 该排名对应的原始余额。
%economycraft:top_balance_formatted <rank>% 该排名对应的格式化余额。
%economycraft:top_balance_short <rank>% 该排名对应的缩写余额。

超出玩家人数的排名会解析为无效值。


交易日志与 Webhook

每次余额变动都会记录到配置文件夹中的 logs/transactions-YYYY-MM-DD.log,并保留 transaction_log.retention_days 天(默认 7)。设置为超过 90 天时,启动时会在控制台发出警告。

在 webhook.json 中启用 webhook_enabled,还可将每笔交易 POST 到兼容 Discord 的 Webhook;使用 webhook_min_amount 仅通知金额较大的交易。


开发者 API

常规版 EconomyCraft JAR 已包含供其他服务端模组使用的 API v1,无需另外安装运行时 API 模组。该 API 涵盖余额与付款、货币格式化、只读物品价格、排行榜数据以及余额变动事件。公共类位于 com.reazip.economycraft.api.v1。

有关设置、示例和完整参考,请参阅 开发者 API Wiki。


常见问题

EconomyCraft – Multiplayer Economy 支持哪些 Minecraft 版本?

EconomyCraft – Multiplayer Economy 支持 Minecraft Java 版 1.21–26.3,共 17 个版本,可用的加载器:Fabric / NeoForge。下载时注意选择和你游戏版本一致的文件。

EconomyCraft – Multiplayer Economy 怎么安装?

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

评论

登录后评论和评分

ReaZip 的其他作品

查看全部 →