跳到正文

Cobbled Market

用于构建物品市场的服务端模组,搭配 Cobblemon NPC 使用

收藏

介绍

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

Cobbled Market

Matthiesen Core
Cobblemon

此模组为 Cobblemon 服务器提供了一个简单、可配置的商店系统。它允许服主在配置文件中定义商店,
玩家可以通过 Cobblemon NPC 的 Molang 函数或 /market 命令访问。该模组支持多个商店,每个商店都有自己的一套
物品和价格,并且可以轻松自定义以满足任何服务器的需求。

命令

| 命令 | 描述 | 默认权限等级 |
|——————–|—————————————————————————|————————————-|
| /market | 打开商店目录(如果只配置了一个商店则直接打开该商店) | CHEAT_COMMANDS_AND_COMMAND_BLOCKS |
| /market <shopId> | 打开指定商店(Tab 补全已配置的商店 ID) | CHEAT_COMMANDS_AND_COMMAND_BLOCKS |
| /market reload | 从 server.toml 重新加载商店定义 | ALL_COMMANDS |
| /market debug | 用于故障排除或扩展的额外调试命令 | ALL_COMMANDS |

权限等级可以在 config/cobbled_market/permissions.toml 中更改:

可用的权限节点:

  • cobbled_market.command.market
  • cobbled_market.command.market.shop
  • cobbled_market.command.market.reload
  • cobbled_market.command.market.debug

Cobblemon NPC

Molang 函数

以下 Molang 函数可用于 Cobblemon NPC:

  • q.player.market.open() – 打开商店目录(如果只配置了一个商店则直接打开该商店)。成功返回 1.0,否则返回 0.0。
  • q.player.market.shop(<shopId>) – 打开指定商店。成功返回 1.0,否则返回 0.0。

NPC 行为

提供了 market_keeper 行为供 Cobblemon NPC 使用。它可用于创建一个商店管理员 NPC,在交互时打开商店目录或指定商店。

在 NPC 的配置中,添加以下内容:

{
  ...other npc config options...,
  "ai": [
    {
      "type": "apply_behaviours",
      "behaviours": [
        ...other behaviours...,
        "cobbled_market:market_keeper"
      ]
    }
  ]
}

商店

商店定义在每个世界的 config/cobbled_market/server.toml 的 shops 列表中。菜单会从此列表
自动生成:

[[server.shops]]
    shopName = "Example Shop"
    shopIcon = "minecraft:chest"
    shopId = "example_shop"
    [[server.shops.entries]]
        itemId = "minecraft:stone"
        price = 10
        quantity = 64
    [[server.shops.entries]]
        itemId = "minecraft:dirt"
        price = 5
        quantity = 64

专用商店文件

商店也可以在其自己的 TOML 文件中定义,位于 config/cobbled_market/shops/。每个文件必须包含一个商店定义,文件名(不含扩展名)
用作商店 ID。例如,名为 example_shop.toml 的文件将定义一个 ID 为 example_shop 的商店。

示例商店文件

shopName = "Example Shop"
shopIcon = "minecraft:chest"
    [[entries]]
        itemId = "minecraft:stone"
        price = 10
        quantity = 64
    [[entries]]
        itemId = "minecraft:dirt"
        [[entries.options]]
            price = 1
            quantity = 1
        [[entries.options]]
            price = 15
            quantity = 32
        [[entries.options]]
            price = 30
            quantity = 64

在商店中点击物品会立即使用配置的货币提供器购买它。

物品字符串

itemId 和 shopIcon 使用与原版 /give 命令相同的物品语法,因此物品可以包含数据组件:

itemId = "cobblemon:poke_ball"
itemId = "minecraft:diamond_sword[custom_name='\"Excalibur\"',enchantments={levels:{'minecraft:sharpness':5}}]"

要获取现有物品的字符串,请手持该物品并运行 /market debug main-hand-nbt。点击输出即可复制。

购买选项

要以各自的价格提供同一物品的不同数量,请将条目的 quantity 和 price
替换为 options 列表:

[[server.shops.entries]]
    itemId = "minecraft:stone"
    [[server.shops.entries.options]]
        quantity = 1
        price = 2
    [[server.shops.entries.options]]
        quantity = 16
        price = 20
    [[server.shops.entries.options]]
        quantity = 64
        price = 60

每个 price 是该选项数量的总花费,而不是单价。数量必须为正
整数,价格必须为非负整数,两者均不得大于 2,147,483,647。支持零价格选项。
选项列表必须至少包含一个选项;不要将其与顶层的 quantity 或 price 组合使用。

点击带有选项的条目会打开一个分页选择菜单,且不向玩家收费。点击一个选项
会以列出的价格购买该确切数量,菜单保持打开以便重复购买。返回按钮
返回原始商店页面。超过物品堆叠上限的数量会分多个堆叠发放;
无法放入物品栏的物品会掉落给玩家。

传统条目和基于选项的条目可以在同一商店中共存。没有 options 的条目保留其
即时购买行为,即使只显式配置了一个选项也会打开选择菜单。
选项数量提示文本、浏览提示、选择菜单标题和返回商店文本可在
server.menu 下使用 shopOptionsLoreLn1、shopOptionsLoreLn2、purchaseOptionsTitle 和 navBackToShopText 进行配置。

需求

支持的经济提供器

文档

此模组的文档可在 mods.matthiesen.dev

找到版本兼容性

| Minecraft 版本 | Matthiesen Core 版本 | Cobblemon 版本 | 模组版本 |
|——————-|————————-|——————-|—————–|
| 1.21.1 | 1.2.7+ | 1.8.x+ | 1.0.0-beta.1+ |
| 1.21.1 | 1.3.0+ | 1.8.x+ | 1.0.0-beta.11+ |
| 1.21.1 | 1.3.5+ | 1.8.x+ | 1.0.0+ |
| 1.21.1 | 2.0.0+ | 1.8.x+ | 1.1.0+ |

FastStats 指标

此模组使用 FastStats 收集匿名使用统计。这有助于开发者了解
此模组的使用情况并随时间改进它。你可以访问
FastStats:信息 了解更多关于收集的数据及其使用方式。

你也可以在 FastStats:Cobbled Market 页面查看此模组收集的数据。

要退出此数据收集,请在 <game_directory>/config/faststats/config.properties 文件中将 enabled 属性设置为 false。

许可证

MIT – 参见 LICENSE。

常见问题

Cobbled Market 支持哪些 Minecraft 版本?

Cobbled Market 支持 Minecraft Java 版 1.21.1,可用的加载器:Fabric / NeoForge。下载时注意选择和你游戏版本一致的文件。

Cobbled Market 怎么安装?

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

评论

登录后评论和评分

Adammatthiesen 的其他作品

查看全部 →