Skip to content

MrXiaoM/SweetAdaptiveShop

Repository files navigation

SweetAdaptiveShop

可高度自定义的动态价格商店插件,价格将随着销量按指定函数变化。

简介

收购商店被易得的商品卖爆刷钱,稀有的商品却少有人向系统出售,做限购太过死板,直接取消收购又过于强硬… 试试让价格随着销量变化如何?

你可以设定一个收购商品的基础价格,玩家每向商店提交一个物品,就会增加这个物品的动态值,增加多少由你说的算。当动态值上升到一定程度,一条由你指定的价格缩放函数将参与进来,将价格按函数计算来降低。

并且,每个玩家每天只能在一个分组里面抽到少量物品。是的,每天只能卖几样东西,假定玩家不开小号,那么如果他们想要卖更多物品,除了等到抽到相应商品,就只能相互交易了。

这样一来,系统收购物品,收得越多,这个物品越不值钱。你还可以让动态值在一个周期结束(每天、每周、每月)之后重置,不至于让一个物品一直处于最低价。这也可以迫使玩家在物品价格变得相对较高时,再向系统出售;或者建立商店,以更高的价格出售给其他玩家。

注意:默认配置中的表达式 1 - value / 100 仅供演示,该表达式未经过科学的分析验证,不一定适合该物品的市场规律。

以及,在 Minecraft 服务器这种可以无限印发货币的经济系统,如果货币在玩家之间流通低,玩家没有消费欲望,经济崩溃是迟早的。像这样的插件只能稍微延缓这个过程,最主要还是要靠你自己,规划好官方收购价格,以及为玩家提供更多样的金币消费、流通渠道。光只有转账和箱子商店,效率是很低的。

命令

根命令 /sweetadaptiveshop,别名 /sashop 或者 /sas
<>包裹的是必选参数,[]包裹的是可选参数。
最前面标记了P的命令只能由玩家执行,标记了C的命令即可以由玩家执行,也可以由控制台执行

  命令 描述
  玩家命令
P /sashop open buy [分组] 打开收购商店菜单
P /sashop open sell [分组] 打开出售商店菜单
P /sashop open order 打开收购订单菜单
P /sashop open custom <菜单> 打开自定义固定商店菜单
  管理员命令
C /sashop open buy [分组] [玩家] 为玩家打开收购商店菜单,需要目标玩家有相应分组的权限
C /sashop open sell [分组] [玩家] 为玩家打开出售商店菜单,需要目标玩家有相应分组的权限
C /sashop open order [玩家] 为玩家打开收购订单菜单
C /sashop open custom <菜单> [玩家] 为玩家打开自定义固定商店菜单,需要目标玩家有相应权限
C /sashop give <玩家> <物品模板> <数量> <物品类型> <时间…> 给予玩家特定道具。其中,物品模板可到 template.yml 添加,物品类型可填 buy, sell 或 order。时间计算操作与我的变量扩展基本一致,只不过多个计算操作是用空格而不是下划线隔开。时间填写 0infinite 代表永久。
C /sashop refresh <玩家> <类型> [分组] 刷新在线玩家的商店/订单。类型可填 buy, sell 或 order,其中只有 buy, sell 可以填写分组。
C /sashop test <玩家> <类型> 获取在线/离线玩家的商店/订单列表,其中包括ID、到期时间等数据,用于调试。类型可填 buy, sell 或 order。
C /sashop reload database 重新连接数据库
C /sashop reload 重载配置文件,不重连数据库

示例

  • 打开收购菜单 /sashop open buy
  • 给予玩家收购刷新券 /sashop give 玩家 buy-refresh 数量 buy infinite

权限

  • sweet.adaptive.shop.group.分组ID 允许通过 /sashop open <buy/sell> [分组] 命令打开某个分组的收购商店菜单
  • sweet.adaptive.shop.order 允许打开收购订单菜单
  • sweet.adaptive.shop.custom 允许打开自定义商店菜单
  • sweet.adaptive.shop.buy.商品ID 允许随机抽到某个收购商品的权限,该权限可在商品配置里修改
  • sweet.adaptive.shop.sell.商品ID 允许随机抽到某个出售商品的权限,该权限可在商品配置里修改
  • sweet.adaptive.shop.order.订单ID 允许随机抽到某个订单的权限,该权限可在订单配置里修改

变量

%sashop_buy_dynamic_<商品ID>% - 获取某个收购商品的动态值
%sashop_sell_dynamic_<商品ID>% - 获取某个出售商品的动态值

About

Minecraft 自适应动态价格商店插件

Resources

License

Stars

Watchers

Forks

Contributors

Languages