关于 Shoppy Stock

umv044S.thumb.jpg.973762a1198996535d85081ea0cb0c48.jpg

Shoppy Stock为 RUST 服务器经济引入了大量以前不可用的创新功能。
该插件可以创建多个具有不同货币的商店、具有商品列表的股票市场、高度可定制的服务器销售中心以及许多其他功能。

视频预览(1.0.0版)

特征

全球的

  • 超过 12 个详细的 RUST 主题 GUI 窗口。
  • 写的时候考虑到了性能。所有插件操作对于服务器来说都是轻量级的。
  • 高度可扩展的插件。限制你的只是你的想象力!
  • 通过 PopUp API 完全可定制的 PopUp 消息。
  • 命令和 API 货币管理。
  • 对任何显示的消息和项目的完整语言支持。
  • 无处可逃支持。
  • 完整的 UI 颜色更改支持。
  • NPC互动商店和股市支持。

商店

  • 创建多个具有不同货币的商店。
  • 通过其他经济插件的支持,轻松将您的旧货币转移到插件。
  • 使用自定义图标将您的商店商品分为几类,以便于导航。
  • 使用一个搜索栏搜索所有类别。
  • 购买您需要的确切数量的物品。
  • 完整的自定义项目支持。
  • 您可以配置可转账的货币。
  • 将货币转移给在线/离线玩家。
  • 当货币是一种物品时,您可以将其作为虚拟货币存入商店。
  • 当您关闭商店时,该页面会被保存,因此您可以轻松返回原来的位置。
  • 为每个操作配置完整的权限系统。
  • 每日/擦拭巾购买限制。
  • 设置购买的冷却时间。
  • 折扣系统。

股市

  • 使用不同的货币创建多个不同的市场。
  • 标记您最喜欢的项目并将其放入“收藏夹”选项卡中。
  • 自动添加所有普通 RUST 项目,并能够将不需要的项目列入黑名单。
  • 对所有列表进行排序以实现更好的经济管理的选项很少。
  • 创建商品的销售和购买请求。
  • 可配置的服务器销售价格历史记录。
  • 基于权限的系统,决定一个玩家可以创建多少列表。
  • 列表可以取消、退款或放回市场,无需任何费用。
  • 每个市场行为的可配置税收。
  • 对耐久性和植物基因等方面的附加信息支持。
  • 价格滚动可以配置为在特定时间运行。
  • 需求系统将根据需求增加/降低市场上物品的价格。消息需要 DiscordCore。
  • 销售中心配有价格计算器,包含超过 15 个基于销售量、在线玩家等的变量。
  • 股票市场经纪人。您可以授予访问银行的权限,玩家可以在其中存储服务器销售列表中提供的物品,也可以选择退款。您还可以设置提醒价格和即时出售价格,即使您离线,这也会执行弹出窗口或即时出售您的银行资源。
  • 自定义类别和完整的自定义项目支持。
  • 可配置的 Web API 供您的服务器开发人员使用,或者在您离线时检查商品价格。需要网络服务器。
  • 服务器技术人员的统计模块可以更轻松地进行经济设置。

权限
下面列出的权限是静态的,无法更改。配置文件提供了数百种可能的权限。

  • shoppystock.admin – 允许访问货币管理命令。

命令
所有命令都可以完全自定义。这是默认命令的列表。

  • /market /shop /s /m – 打开 Shoppy Stock UI。
  • /list – 打开窗口以在 RP 股票市场创建卖出请求。
  • /sell – 打开在 RP 股票市场上出售物品的窗口。
  • curr – 管理命令。运行此命令时将提供完整的用法说明。(聊天和控制台命令)
  • updateprices <shopName> – 强制更新商店的库存价格。 (聊天和控制台命令)

帮助页面

由于该插件提供了广泛的功能,对于某些用户来说,在没有指导的情况下配置某些方面可能会很困难。因此,我们在下面提供了一个简短的演练。

配置文件
该插件非常广泛,导致配置文件被分成三个不同的文件,其中两个文件因每个商店而异。
首先,在您的 Oxide/config 文件夹中,您将找到默认配置文件,其中包含添加或删除更多商店和股票市场的所有基本配置行。
其次,在ox/data/ShoppyStock文件夹中,您会发现三个文件夹。
第一个是商店,其中包含主配置文件中创建的每个商店的所有配置。
第二个是 StockMarket,其中包含几个文件夹,其中包含所有与股票相关的内容。稍后将提供更多相关信息。
最后,UserData 包含每个商店玩家的货币、用户名和每日/擦除购买的数据。

StockMarket 文件夹
在StockMarket 文件夹中,您最多可以找到六个文件夹,分别是AlertData、Config、FavouriteData、PlayerData、PriceCache 和Statistics。AlertData
文件夹包含有关玩家设置的警报和即时销售价格的数据。
Config 文件夹包含每个可用股票市场的所有配置文件。
FavouriteData 文件夹保存玩家标记的收藏夹项目的数据。
PlayerData 文件夹包含所有买入/卖出请求及其银行的数据。
PriceCache 文件夹包含当前商品价格的所有必要数据及其图表运行的价格/销售历史记录的缓存。该文件的大小取决于您的时间线的长度。
最后,统计文件夹包含所有玩家在市场上收集的所有统计数据,分为全局/玩家值,并进一步分为所有时间/每日操作。这些值应帮助您了解服务器上正在出售的资源数量,并证明您的默认销售金额计算或价格计算器是合理的。

服务器销售物品 → 默认销售金额计算 (DSAC)
默认销售金额计算 (DSAC) 是确定给定期间内销售的物品数量的关键组件。
它反映了该时期所有玩家的平均物品销售量。
例如,在平均在线人数为20-30人的PvE x10服务器中,出售的木材数量可以设置为1800000。
但是,这个值只是一个示例,不建议您仅以此为基础进行配置。
一个好的股市需要时间和努力。

Web API
该插件提供了 Web API 功能,使您能够通过网站查看市场价格。
要激活此功能,您需要支持 PHP 的网站托管并下载提供的名为 apiupdate.php 的 PHP 文件。
点击这里下载!
它应放置在与“Web Price API – 链接”指向的同一目录中。
虽然有经验的用户可以出于安全原因更改文件名,但他们也应该记住修改插件代码。
确保该文件具有足够的权限来创建输出 api.html 文件(可以在 PHP 文件中更改该文件的目录)。
如果配置正确,输出应可在 <Web Price API – Link>/api.html 中找到。

始终按小时运行计时器 “
始终按小时分钟运行计时器”功能设置计时器开始滚动股票市场价格的时间。
例如,如果值设置为 0、30 和 60,计时器将开始按小时或半小时(x:00 或 x:30)滚动价格。
同样,如果值为 0、20、40 和 60,计时器将按小时或每隔 20 分钟(x:00、x:20 或 x:40)开始滚动价格。

股票市场 – 默认类别
股票市场包含 4 个默认类别。
有时您想在打开股市时首先显示它们。以下是它们的配置使用代号:

  • 我的列表
  • 银行管理
  • 收藏夹
  • 所有项目

股票市场 – 类别图标
这些选项的格式如下:“config/rust 默认类别名称”:“URL”。

股票市场 – 自定义项目信息 Lang Key
对于自定义项目,可以在列表中创建自定义信息标签,类似于克隆的工具条件或遗传信息。
您可以为某些类型的物品添加自己的标签,例如“升级原料”。

股票市场 – 退款存储名称
需要在 RedeemStorageAPI 中创建具有此名称的存储。
否则,某些操作中的项目可能会消失,并且插件将生成错误。

自定义项目列表
在股票市场中配置的所有项目都必须具有精确的密钥格式。
正确的格式是:<短名称>-<skinId>。
例如,skinId 为 2497693972 的金属胸甲的密钥将为“metal.plate.torso-2497693972”。

使用所有原版项目生成商店配置
转到ox / config /文件夹中的主插件配置,并在要添加所有原版项目的商店部分中搜索“ 配置生成 – 使用所有默认项目生成”并将其设置为true
毕竟,转到Oxide/data/ShoppyStock/Shops/并删除所需的商店 JSON 文件并重新加载插件。
该插件应该生成一个包含所有普通 RUST 项目的新配置。

商店商品 – 命令
命令支持 2 种类型的变量。

  • {userId} – 将替换为买家的 steamId。
  • {userName} – 将替换为买家的昵称。

社区问答

乘数事件
问:需求系统如何运作?重量如何发挥作用?
答:需求基于主配置​​中的“乘数事件”工作。每个事件都有自己的“权重”,代表它们在需求卷上滚动的机会。需求出现频率的值可以在 /data/ShoppyStock/StockMarket/Config/<shopName>.json 中的股票市场配置中找到。主配置中的名称必须与数据文件中的名称相同才能使其正常工作。
问:最小和最大工作如何?
答:这是一个随机值,价格将乘以/除以该值。因此,如果价格为 1.4,滚动需求介于 1.4 和 1.8 之间,则随机值将为 1.685,价格将为 2.359。如果价格大于或小于最大值,它将锁定在接近最小值/最大值的值。

股票市场 – 时间戳
问:它有什么用?这是历史趋势吗?
答:如果您运行股票市场一段时间,该插件将存储价格数据,并且所有经过许可的玩家都可以在图表中使用该数据。保存的数据量相当于最高时间戳,因此如果您想开始收集数据,我建议将其设为真实值,即使不向玩家授予高时间戳值的权限。

数据文件夹,股票市场配置
问:阻止乘数列表键
答:这些列表不应与已实施的价格乘数奖金相乘,但提供价格奖金的项目尚不可用。

商品价格计算器
问:价格变化 – 规则曲线
A:这是股票价格的随机值。每次滚动价格时,它都会从价格中添加或减去一定的百分比,以使其更加“现实”,并且在没有其他事件运行的情况下不会停留在一个位置。
问:价格变化 – 相同价格行为最小/最大
答:市场上的行为不是随机的,如果每次都上涨或下跌。您可以指定价格上涨或下跌的时间(不包括其他事件)。您可以做到连续五卷价格上涨,然后接下来两卷价格下降。
问:价格变化 – 增加的机会
A:这是执行上面列出的操作的机会。它采用“<价格百分比>”:<价格上涨机会(百分比)> 格式。其目的是让价格在低位时更容易上涨,而在高位时则更难上涨。据我记得,基本配置如果价格低于 50%,则价格上涨 2%,低于 47%,则上涨 4%,等等。 问
:价格下降 – 销售金额惩罚乘数
A:如果列出的任何值是超过时,价格滚动始终为负数,再加上它乘以配置值,当市场上短时间内售出大量商品时,价格实际上会更快地下降。
问:降价 – 销售量最高价格罚金
答:如果您的玩家出售过多的任何物品,您可以将该价格设置为在一段时间内锁定一定比例。如果他们出售 10000% 的 DSAC 木材,则 24 个价格滚动的价格最多锁定为 25%。
问:价格上涨 – 目标未实现(这里指的是哪个目标?)
答:如果某些物品的需求量较低,且 DSAC 售出量低于 100%,您可以鼓励玩家耕种和出售每次滚动价格时,价格都会增加一定的乘数。比如当售出的商品少于 10% 时,将价格上涨速度提高 1.5 倍。
问:默认卖出金额计算 – 玩家在线乘数(相对于玩家在线的设定值有什么作用?)
答:如果您的服务器人口在 20 到 150 之间,您只需根据当前玩家数量乘以或除以 DSAC 值即可轻松管理 DSAC 值。每次价格滚动时都会检查玩家数量。
问:价格乘数 – 事件之间的最小时间距离(这里的事件指什么?(是玩家购买或出售列表吗?) 答:指的是
我在前面乘数事件中描述的价格乘数。
问:价格乘数 -基于销售金额的机会 (0-100)(此配置有什么作用?)
答:如果售出的商品不足或太多,您可以使价格乘数更频繁地运行。问:价格乘数
[最小操作与最大操作actions]
A:这是价格上涨或下跌事件运行的时间。

服务器销售物品
问:父价格如何影响服务器销售价格?
答:当你想添加金属碎片和金属矿石之类的物品时,父物品很有用,但鼓励玩家熔炼它们,因为金属碎片的价格总是比金属矿石高出一定的数量。

面向开发者的 API

  • int GetCurrencyAmount(string shopName, BasePlayer player) – 返回玩家的余额。如果没有找到返回0。
  • int GetCurrencyAmount(string shopName, ulong userId) – 返回玩家的余额。如果没有找到返回0。
  • bool TakeCurrency(string shopName, BasePlayer player, int amount) – 获取玩家货币。如果采用则返回 true,如果未采用则返回 false。
  • bool TakeCurrency(string shopName, ulong userId, int amount) – 获取玩家货币。如果采用则返回 true,如果未采用则返回 false。
  • void GiveCurrency(string shopName, ulong sellerId, int amount) – 给予玩家货币。
  • string FormatCurrency(string shopName, BasePlayer player) – 返回玩家的格式化余额。

示例文件(版本 1.0.0)
包含视频中的所有配置文件,不包含大多数自定义项目。不建议运行此文件,
点击此处下载!

默认主配置(版本 1.0.6)
点击此处!

默认商店配置(版本 1.0.6)
点击此处!

默认股票市场配置(版本 1.0.6)
点击此处!

 

 

原网址https://codefling.com/plugins/shoppy-stock

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。