hi~经过一段时间实验后,字节小游戏 排行榜运营活动功能开放接入啦!
我们期望可以帮助开发者,通过定期运营活动,丰富游戏内容,同时提升游戏数据。
该功能预期帮助游戏提升:新增、留存、在线时长、arpu、录屏分享等数据项。
一、功能概述
- 开发者通过平台提供的各端(头条/抖音等)排行榜,进行游戏内成绩排列;
- 依据排行榜成绩,给用户提供一些游戏内奖励如:荣誉称号/限定皮肤/专属相框/游戏货币等。
二、适用游戏类型
- 单机玩法,每局有分数统计,如《别碰红点》
- io类游戏,如《贪吃蛇大作战》
- 跑酷类游戏,如《汤姆猫跑酷》
三、实验案例及收益——《别碰红点》
- 活动时间: 活动时间1-3天
- 榜单逻辑: 可以设置成3天总榜;或每天单榜
- 活动奖励: 活动期间/活动期间每天全服前xx名,会有活动奖励。x名-xx名是什么奖励,以此类推
- 排行逻辑: 每天活动结束前/活动周期结束前,排行榜实时更新,玩家可通过反复参与游戏而获得更高分数,从而获得更高奖励。
- 参与规则: 可保留游戏普通模式前提下,设置单独的运营副本-冲榜模式,玩家初次进入游戏会有3点体力用于冲榜,每局比赛可看一次视频复活一次;每局结束后分享一次视频可以获得3点体力,玩家在单天的活动时间内可无限次分享视频,获得体力刷新比赛成绩。(可依据游戏实际情况自行设定,也可将游戏日常模式直接改为运营活动模式)
- 活动引导: 每局结束后需要提示玩家,当前分数,排名(只提示1000名内,未进榜单的用户,提示他继续加油,冲进榜单领取奖励;分数在1000名内的用户,告知排名及可获得奖励,并激励再次游戏获得更好成绩)
- 涉及页面: 入口(首页);排行榜;活动规则;结算页等
- 发奖操作: 日榜:每天23:00之后,锁榜,按照排行榜玩家名单发放奖励,也可以等活动周期结束统一发放;总榜:活动周期结束后,按照排行榜玩家名单发放奖励。
以上所有数值/时间,均可自行定义
9. 实验数据效果:提升明显
活动期间及日常数据变化:基于历史数据及活动期间数据对比
时间 | 新增次留 | 在线时长 | 人均ARPU | 人均广告展示 | 投稿率 |
---|---|---|---|---|---|
数据变化 | 3-5% | 5-10% | 20-50% | 20-40% | 100-200% |
四、该功能对开发者的要求
- 活动ui设计需醒目,提高活动参与率;
- 需提前做好活动副本数据打点,收集活动数据,总结活动效果;
- 奖励提前告知用户,并按时发放;
- 游戏内录屏及录屏发布的逻辑需要调优可参考: https://shimo.im/docs/SanvLs6jCogeySBH
五、活动申请流程及要求
- 活动形式及接口为全开放形式,所有 CP 可以根据自家游戏本身玩法及特性设计活动形式,不局限于本文档。
- 接入活动后的产品可联系平台小游戏运营同学,业务侧会根据产品数据判断是否给与额外资源支持。
六、平台提供接口
《活动排行榜接入文档》
- 申请排行榜key
Notice:
- 活动排行榜key在活动日期过后失效, 除非重新配置活动时间等信息
- 设置排行榜更新周期:如果要求每天重新计排行榜,则选“每天”;以此类推
set rank
使用开放数据域接口 tt.setUserCloudStorage,其中key为排行榜key,value形如 {'ttgame': {'score': 1}}
调用接口示例如下:
const data = {
ttgame: {
score: 16,
update_time: 1513080573,
},
cost_ms: 36500,
};
tt.setUserCloudStorage({
KVDataList: [
{
key: 'testRank',
value: JSON.stringify(data)
}
],
});
3. get rank
使用开放数据域接口tt.getCloudStorageByRelation,其中,type字段填写"group",key为排行榜key
调用接口示例如下:
tt.getCloudStorageByRelation({
type: 'group',
keyList: ['testRank'],
extra: {
sortKey: 'testRank'
},
success(res){},
fail(e){}
})
接口返回数据示例:
{
data: [
// 每一项对应一个用户存储的数据
{
avatarUrl: '', nickname: '',
openid: '',
KVDataList: [
{ key: 'test1', value: '' }
// ...
],
money: 0
},
// ...
]
}
4. 获取个人金额
同3接口,遍历,isMe=true
为本人