模块功能
物物交换为玩家提供了使用材料兑换材料的方式,减少部分材料的冗余,提供某些珍贵材料的获得方式。
一般游戏中的金币、钻石等并不具有经济学意义的货币属性,所以对于大多数游戏来说,所有的资源流转都是以物物交换来实现的。
模块实现
字段内容
1.1 消耗物及兑换物的id及数量
消耗物相关字段:consume_item_id
, count
兑换物相关字段:item_id
,count
1.2 可交易次数
所有交易物品均可以设置最大交易次数,
lifetime_limit
为总次数上限,
可购买数量会根据运营需求不定期增加,届时需要更新配置文件以添加。
1.3 每日每周可交易次数
daily_limit
, weekly_limit
根据实际的需要,有时会设置每日交易,每周交易的限额。
1.4 道具格子
一组消耗物和兑换物为一个兑换组。
1.4.1 确定兑换组
在确定兑换组的交易模块中,比如每周刷新的普通商店中,表结构如下:
.
├── id
└── list<
├── `consume_item_id`
├── `count`
├── `item_id`
├── `count`
├── `lifetime_limit`
├── `daily_limit`
└── `weekly_limit`
在上述的情况下,daily_limit 和 weekly_limit 字段不需要,而是整个商店添加一个自动刷新时间的字段。
1.4.2 随机兑换组
在有些商店中,格子数量是固定的,比如《剑与远征》这个商铺是确定格子数的,但是里面的内容是随机的。
那么它的表结构有什么区别呢?
.
├── shop_id
├── refresh_time
└──list<slot_id
├── `unlock_level`
├── list<
├── `consume_item_id`
├── `count`
├── `item_id`
├── `count`
├── `lifetime_limit` = 1
└── `weight`
一共会有三点区别:
- 会在外部增加一个slot的列表,玩家实际购买的不是具体的兑换组,而是具体的某个格子上的物品。
- 增加
unlock_level
,因为有些格子是需要一定的玩家等级,或者主线进度等条件来进行解锁的。 - 增加
weight
,用来进行随机,简单随机规则会在后续的内容中讲到。
总结
交易模块是游戏中使用最为频繁的模块,在了解最基本结构的情况下,如何最为有效的进行扩充和调整来最高效的实现设计目的,是持续研究交易模块的意义之所在。
内容原创,转载请注明出处