又一个商店

又一个商店

支持 Hytale 的商店插件,包含服务器商店、玩家商店、实体商店方块、物品与货币交易、库存/补货、任务与进度规则、分类、地图标记、经济系统集成以及游戏内管理工具。

游戏玩法

YetAnotherShop

YetAnotherShop 是一个强大的原生 Hytale 服务器商店系统。它提供管理员管理的服务器商店、玩家拥有的商店、实体商店方块、物品和货币支付、YASCurrency 数字和实体现金支持、玩家购买订单、基于任务的商品、库存和补货系统、数量选择、每个玩家的购买限制、进度要求、分类、商店链接、地图标记、店主通知、玩家商店活动历史记录、多语言支持以及一个广泛的游戏内管理界面。

该插件专为想要超越简单购买/出售菜单的服主而设计。你可以创建经典的 NPC 商人、生成商店、玩家市场、任务商店、进度锁定的商人、奖励商店、物品换物品的交易、玩家购买订单板、基于现金的市场摊位,以及直接放置在世界中的完全实体商店摊位。


用户文档链接:点击此处

主要功能

  • 原生 Hytale UI:使用游戏内自定义 UI 页面,而非网络或 HTML 菜单。
  • 服务器商店:完全由管理员控制。
  • 玩家商店:玩家可以创建和管理自己的商店。
  • 玩家商店购买订单:允许店主从其他玩家那里购买想要的物品。
  • 实体商店方块:既可用于服务器商店,也可用于玩家商店。
  • 多种商店方块变体:包括根据安装版本而不同的颜色、幻想、豪华和任务板风格。
  • 商店链接:可链接到方块、容器、HyCitizens NPC 以及可选的支持实体目标。
  • 仅限链接商店:特定的商店只能通过其链接的世界对象打开。
  • 世界地图标记:使用支持的 Hytale 地图标记图标显示可见的商店位置。
  • 数量选择器:用于一次购买或出售多个物品。
  • 每个玩家的购买限制:包括每次购买上限、每日、每周、终身和冷却时间限制。
  • YASCurrency 集成:用于数字账户支付和实体现金支付(当安装了 YASCurrency 时)。
  • 结构化交易原因:用于支持的经济提供者,允许更清晰的交易历史记录条目。
  • 捕获箱子和容器友好链接:通过改进的容器检测实现。
  • 改进的商店工具提示:针对商品、货币、现金成本、任务操作、被阻止的购买和购买验证反馈。
  • 玩家商店店主通知:关于购买和缺货事件。
  • 玩家商店活动历史记录:用于跟踪最近的销售和库存事件。
  • 游戏内管理面板:用于创建、编辑、复制、链接和配置商店。
  • 玩家商店编辑器:用于直接在游戏中管理个人商店。
  • 包含英语和德语本地化

YASCurrency 支持

  • 支持 YASCurrency 作为可选的经济提供者。
  • 支持 YASCurrency 数字账户余额用于普通商店购买。
  • 支持 YASCurrency 实体现金支付(当现金物品可用时)。
  • 实体现金购买支持现金处理、找零处理、服务器端验证和交易历史记录支持。
  • 商店购买原因包括结构化信息,例如商店、商店 ID、提供、提供 ID 和数量(如果可用)。
  • 这允许 YASCurrency 显示更清晰的交易历史记录,而不是通用的技术性付款说明。
  • 实体现金购买可以创建可读的账户历史记录条目,而无需更改最终的数字账户余额。
  • 现金出价和找零处理在服务器端进行验证。
  • 数字和实体现金支付可以与基于物品的支付和其他可选的经济提供者一起使用。
  • 如果未安装 YASCurrency,则集成保持可选,并且不硬性依赖它。

玩家商店

  • 玩家可以创建自己的商店,并通过专用的游戏内编辑器进行管理。
  • 玩家商店商品由真实的存储库存支持。
  • 玩家可以从自己的库存中选择商品并配置价格。
  • 支持基于物品的支付和数字货币支付,具体取决于可用的经济提供者。
  • 支持 YASCurrency 账户支付(当安装了 YASCurrency 时)。
  • 支持玩家购买订单,店主可以在其中搜索物品并支付其他玩家以获取这些物品。
  • 购买订单使用存入的商店预算、想要的物品数量和用于收集物品的结算存储。
  • 支持分类、商品描述、预览设置、库存显示、支付选项和提供限制。
  • 包括每个玩家商店数量、每个商店提供数量、每个商店购买订单数量、每个提供商品数量、支付选项、分类和活动历史记录的可配置限制。
  • 每个提供的商品数量和每个提供的支付选项数量上限为支持的 UI 最大值,各为 3 个。
  • 玩家商店可以链接到实体商店方块或容器。
  • 已链接的玩家商店可以被限制,只能从链接的世界对象打开。
  • 当其他玩家在其商店购买时,店主可以收到实时通知。
  • 当某个提供在购买后缺货时,店主可以收到实时通知。
  • 每个玩家商店都可以切换店主通知。
  • 玩家商店活动历史记录存储销售和缺货事件,即使店主离线。
  • 玩家商店编辑器包括常规设置、商品、支付、限制、预览、链接和活动的标签页。
  • 提供列表使用紧凑模式徽章清晰标记销售提供和购买订单。

玩家商店购买订单

  • 玩家商店店主可以为想要的物品创建购买订单。
  • 购买订单允许访客向店主出售物品,而不是从商店购买物品。
  • 购买订单仅限于玩家商店,可以在全局范围内启用或禁用。
  • 每个购买订单使用一个想要的物品和一个货币支付选项。
  • 店主必须在玩家能够向购买订单出售物品之前存入购买预算。
  • 存入的预算限制了可以从访客处购买的物品数量。
  • 当访客向购买订单出售物品时,该物品从访客处移除,访客收到付款,收集到的物品则为店主存储。
  • 未使用的购买预算在购买订单被移除或更改时(如适用)将被退还。
  • 购买订单支持与普通销售相同的每个玩家提供限制,包括每次交易上限、每日、每周、终身和冷却时间限制。
  • 购买订单显示清晰的库存/想要数量信息,例如仍需要多少物品。

玩家商店通知与活动

  • 当玩家从你的玩家商店购买时,会收到实时 Hytale 通知。
  • 当你的一项提供缺货时,会收到实时 Hytale 通知。
  • 购买通知和缺货通知有独立的开关。
  • 离线的店主不会收到排队的实时通知,但活动条目仍会保存。
  • 持久的销售和库存清空事件活动历史记录。
  • 玩家商店编辑器中的活动标签页。
  • 活动管理操作,例如标记为已读和清除历史记录。
  • 使用 maxHistoryEntriesPerShop 可配置每个商店的最大活动历史记录大小。
  • 设计具有上限的历史记录存储,以避免在长期运行的服务器上数据无限增长。

商店方块与链接

  • 专用的服务器商店方块和玩家商店方块。
  • 多种视觉变体,适用于不同的商店风格。
  • 将商店链接到世界中的实体方块。
  • 将商店链接到容器,实现箱子式商店设置。
  • 在支持的情况下将商店链接到 HyCitizens NPC。
  • 如果需要,可以通过服务器配置启用可选的通用实体/NPC 链接。
  • 为了与其他交互密集型模组更安全地兼容,通用实体/NPC 链接默认禁用。
  • 链接的商店方块具有安全的取消链接和清理行为。
  • 商店方块受到保护,不能被普通工具破坏,应通过商店 UI 进行管理。
  • 链接的商店可以配置为仅限链接,防止玩家通过命令直接打开它们,如果需要物理交互的话。

捕获箱子、容器与链接兼容性

  • 商店链接支持实体方块、容器和兼容的世界对象。
  • 容器类目标的检测范围更广,包括箱子、板条箱、桶、储物柜、橱柜、储物袋、篮子以及类似的容器命名模式。
  • 这提高了与捕获箱子、储物箱以及来自服务器设置或外部内容包的其他类似容器的方块的兼容性。
  • 安全的取消链接和清理行为有助于防止过时的方块或容器链接。
  • 容器链接与实体商店方块链接分开处理,以避免意外的方块删除。

库存、补货、数量与限制

  • 每个提供无限制或有限的库存。
  • 可配置的当前库存和最大库存。
  • 支持补货数量和补货间隔。
  • 独立的库存显示和补货显示设置。
  • 用于普通商店购买的数量选择器。
  • 用于玩家商店购买和玩家商店购买订单的数量选择器。
  • 快速数量操作,例如 x1、x10 和所有可用。
  • 所有可用选项受库存、预算、背包空间、购买力和活跃购买限制的约束。
  • 每次购买的最大数量。
  • 基于每日、每周、终身和冷却时间的购买限制。
  • 购买限制按每个玩家和每个提供计算。
  • 限制适用于服务器商店、玩家商店销售和玩家商店购买订单。
  • 当提供或整个商店被删除时,限制历史记录会被清理。
  • 对库存、付款、背包空间、购买限制、购买订单预算和要求进行服务器端验证。
  • 玩家商店在最终购买前始终验证当前库存和托管资金。
  • 当有限库存的提供在购买后变空时,可以通知玩家商店店主。

管理界面

  • 创建、编辑、复制和删除服务器商店。
  • 创建、编辑、复制、移动和删除提供。
  • 配置商品、产出、支付选项、库存、补货、分类、规则、任务设置、购买限制和链接。
  • 管理商店设置、可见性、访问权限、地图标记和集成行为。
  • 配置玩家商店限制、购买订单限制、商品/支付限制和活动历史记录限制。
  • 配置是否启用玩家商店购买订单。
  • 配置是否允许玩家商店销售带有元数据的书籍和纸张物品。
  • 直接在管理 UI 中预览商品。
  • 在商店或提供被删除时自动清除与限制相关的数据。
  • 当达到商品、产出、支付选项或成本限制时显示明确的限制消息。
  • 管理可选集成和特定提供者的行为。
  • 为测试或设置播种演示内容。

服务器商店

  • 创建无限数量的管理员管理的商店。
  • 配置商店名称、描述、图标、分类、排序、可见性和访问行为。
  • 创建和管理包含多种商品和支付选项的提供。
  • 使用有限库存、无限库存、补货定时器和购买限制。
  • 独立显示或隐藏库存和补货信息。
  • 通过规则、进度要求、任务、自定义提供者、区域或声望系统来限制商店。
  • 通过命令打开商店,链接到方块/NPC,或限制为仅物理访问。
  • 服务器商店管理页面在达到配置的商品/产出或支付选项限制时显示清晰的反馈。

商品与提供

  • 标准物品商品。
  • 货币商品。
  • 任务商品。
  • 每个提供多个产出商品。
  • 每个提供多个支付选项。
  • 物品换物品的交易。
  • 基于货币的购买。
  • 基于 YASCurrency 账户的购买。
  • YASCurrency 实体现金购买(如果可用)。
  • 用于物品到货币销售的玩家商店购买订单。
  • 具有分类、标题、副标题、描述、标签、图标和排序的混合商店布局。
  • 提供激活开关、可见性控制、要求检查和每个提供购买限制。

工具提示与用户反馈

  • 商品卡片可以显示详细的购买工具提示,包括物品产出、货币产出、物品成本、货币成本和现金成本。
  • 任务提供会显示上下文相关的工具提示,显示可用、已阻止、已完成、进行中、奖励就绪和提供者特定的任务状态。
  • 被阻止的购买按钮会解释当前无法购买提供的原因,例如缺少要求、货币不足、库存限制、背包空间或购买限制。
  • 紧凑的工具提示行为使大型商店页面保持可用,同时在重要的交互区域仍显示详细信息。
  • 货币和现金成本使用紧凑标签和工具提示,以避免商店卡片过于拥挤。
  • 针对过时的提供、缺失的商品、无效的付款、库存不足、资金不足、背包已满和活跃的购买限制显示验证反馈。

书籍与纸张保护

  • 可以通过配置允许或阻止玩家商店销售带有元数据的书籍和纸张物品。
  • 这有助于保护服务器经济免受可复制或元数据繁重的书写物品的影响,这些物品在外部模组中可能允许类似复制的流程。
  • 如果禁用,受影响的玩家商店物品将在列表和购买验证期间被阻止。
  • 当无法添加书籍和纸张物品时,物品选择器会显示一条清晰的消息。
  • 服务器商店模板仍然可用于管理员管理的奖励,不受此玩家商店安全设置的影响。

任务商品

  • 直接从管理 UI 创建基于任务的商店商品。
  • 选择可用的任务提供者,例如 QuestLines 或 MMOSkillTree(如果已安装)。
  • 支持特定提供者的任务选择,因此选择任务提供者可以显示该提供者的可用任务。
  • 支持任务操作,例如接受、开始、打开、追踪、完成、奖励和自定义任务操作流程。
  • 任务商品可以显示不同的状态,例如可用、进行中、已完成、锁定、冷却中、奖励就绪或已领取。
  • 适用于任务板、每日合同、进度商店和奖励商人。
  • 任务提供在适当的情况下使用任务流程行为,而不是普通的商品/支付/限制配置。

规则与要求

  • 商店可见性规则。
  • 商店访问和购买要求。
  • 提供可见性规则。
  • 提供购买要求。
  • 要求操作符,例如等于、不等于、大于、大于或等于、小于、小于或等于、包含。
  • 任务状态要求。
  • 任务进度要求。
  • 任务标签和任务变量检查。
  • MMOSkillTree 技能和进度检查。
  • RPGLeveling 进度检查。
  • 区域和声望提供者支持(如果可用)。
  • 为高级服务器集成提供自定义提供者规则支持。

支付与经济

  • 基于物品的支付。
  • 数字货币支付。
  • YASCurrency 数字账户支付。
  • YASCurrency 实体现金支付(如果可用)。
  • 每个提供多个支付选项。
  • 可选的 VaultUnlocked 集成。
  • 可选的 Ecotale 集成。
  • 可选的 YASCurrency 集成。
  • 自动或手动经济提供者配置。
  • 特定提供者的货币键和标签。
  • 当没有安装经济提供者时,支持纯物品商店的后备方案。
  • 玩家商店购买订单需要支持的货币提供者和存入的购买预算。
  • 服务器端验证防止使用过时、为空、买不起或无效的支付选项。
  • 结构化交易原因传递给支持的提供者,以获得更清晰的交易历史和更好的外部经济显示。

分类与 UI

  • 商店本地分类系统。
  • 自定义分类名称、颜色、图标、排序和可见性。
  • 商店 UI 中的分类标签页。
  • 为具有许多分类的商店提供多行分类布局。
  • 长分类名称会缩短以保持 UI 可读性。
  • 商品可以属于一个或多个分类。
  • 商店 UI 可以显示商品产出、支付成本、库存、想要数量、补货状态、任务状态和访问状态。
  • 玩家商店管理员列表使用紧凑徽章来区分销售和购买订单,而不会隐藏商品名称。

命令

  • /yetanothershop/yas:打开默认商店页面。
  • /yetanothershop <商店>/yas <商店>:通过别名打开特定商店,除非该商店是仅限链接的。
  • /yas myshop:打开玩家商店编辑器。
  • /yetanothershopadmin/yasadmin/yasa:为有权限的用户打开管理界面。

可选集成

  • YASCurrency:数字货币支持、实体现金支付、可读的交易原因和现金购买历史支持。
  • VaultUnlocked:经济和货币支持。
  • Ecotale:经济和货币支持。
  • QuestLines:任务商品、任务板行为、任务操作和任务状态检查。
  • MMOSkillTree:技能、进度和任务相关的规则。
  • RPGLeveling:等级和进度要求。
  • HyCitizens:可选的旧版 NPC 商店链接支持。

公共 API

  • 从其他插件读取服务器商店和玩家商店。
  • 查询提供、分类、链接、所有者、库存状态和玩家商店限制。
  • 按别名、所有者、方块引用、容器引用或链接目标查找商店。
  • 通过 API 为玩家打开商店。
  • 适用于服务器网络、自定义系统、任务插件、经济插件和外部集成。

用例

  • 出生点商店。
  • NPC 商人。
  • 任务板。
  • 奖励商人。
  • 玩家市场。
  • 玩家购买订单板。
  • 实体市场摊位。
  • 基于现金的市场摊位。
  • 进度锁定的商店。
  • 基于技能的商店。
  • 每日或每周限时商店。
  • 物品换物品交换系统。
  • 基于货币的服务器经济。
  • 具有所有者活动跟踪的玩家运营交易区。

兼容性说明

  • YASCurrency 集成是可选的,需要在服务器上安装 YASCurrency。
  • 实体现金支付需要 YASCurrency 现金物品可用。
  • VaultUnlocked 和 Ecotale 仍然是可选的经济提供者。
  • 任务和进度集成仅在安装了受支持的提供者插件时才激活。
  • 为了与其他交互密集型模组更安全地兼容,通用实体/NPC 链接默认禁用。
  • 当多个销售一起认领时,玩家商店结算付款可能会被汇总,因为付款可以代表聚合的商店收入,而不是单个物品交易。

为什么选择 YetAnotherShop?

YetAnotherShop 旨在灵活、沉浸式和服务器友好。它结合了经典的管理员商店与真正的玩家拥有的商店、实体世界交互、购买订单、任务集成、进度要求、经济支持、YASCurrency 现金和账户支付、数量选择、每个玩家限制、店主通知和持久的玩家商店活动跟踪。无论你想要一个简单的出生点商人、一个玩家运营的市场、一个购买订单板、一个基于现金的交易摊位,还是一个复杂的任务锁定交易系统,YetAnotherShop 都为你提供了直接在游戏中构建它的工具。