更新于:

4.3 动态定价

  • 在该示例中,玩家每次购买和出售的价格会随着对应次数不同而不同。如果这个商品烂大街了,那么它的购买和出售价格都会下降,非常适合平衡你的服务器经济! 第 1 步 修改 config.yml 文件下的这些内容:
1
2
3
4
math:
# 是否启用基本数学运算检测?
# 这将会对 + - * / 四种运算符进行识别.
enabled: false

修改为

1
2
3
4
math:
# 是否启用基本数学运算检测?
# 这将会对 + - * / 四种运算符进行识别.
enabled: true

即可。

  • 将:
1
2
3
placeholder:
data:
can-used-in-amount: false

修改为

1
2
3
placeholder:
data:
can-used-in-amount: true

第 2 步 打开你的商店配置,找到你需要启用动态定价的商品。 例如,我想为该商品启用:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
items:
A:
display-name: 'Custom Name!'
price-mode: ALL
product-mode: CLASSIC_ALL
products:
1:
material: sea_lantern
buy-prices:
1:
economy-type: exp
amount: '5+{buy-times-server}*0.2-{sell-times-server}*0.1'
max-amount: 15
min-amount: 1
start-apply: 0
placeholder: '{amount} 经验值'
sell-prices:
1:
economy-type: exp
amount: '5+{buy-times-server}*0.2-{sell-times-server}*0.1'
max-amount: 15
min-amount: 1
start-apply: 0
placeholder: '{amount} 经验值'

首先,你需要将 price-mode 设置为 ALLANY。 我在这里写的部分数量设置是数学表达式,如果你数学不好的话就让我给你解释:

  • 5 为价格基数,也即起始价格;
  • 0.2 表示玩家每次购买后的加价;
  • 0.1 表示玩家每次出售后的降价。 我们也添加了诸如 max-amountmin-amount 选项,以防止价格变动幅度过大的情况出现。