功能讲解_VIP功能

2021/1/14404 浏览游戏开发攻略
功能讲解:VIP功能
设计目的:虽然系统已经提供了内购功能,但是有很多游戏类型并不适合用内购方式收费,比如一些解谜游戏,动作闯关游戏,或者游戏作者不想在付费设定方面花费太多精力,这时就适合使用系统提供的VIP功能来获得收益。
玩家体验:对玩家来说VIP可以在官方商城中购买,当前版本可以购买1天,7天,30天的VIP天权,重复购买天数可以累加。在VIP有效期内游玩需要VIP功能的游戏时,可以享受VIP专享的一些权利,比如某解谜小游戏的第一关是免费的,第二关开始需要VIP权限。或者某对战类游戏游玩完全免费,但是VIP可以使用特殊皮肤等。
TapTap
作者收益:对游戏作者来说,可以在逻辑中动态的申请使用VIP功能,这时如果玩家是VIP身份,服务器会自动开始统计VIP游玩时长,如果玩家还不是VIP会自动弹出官方商城。在一天结束后,服务器会统计每个游戏的总VIP游玩时长占今天所有游戏的总VIP游玩时长的比例,将“分配到这天的VIP充值钻石”按这个比例分配给游戏作者。
其中“分配到这天的VIP充值钻石”是指玩家购买VIP时,会将充值的钻石平均分配到VIP有效期的每一天,比如1月1日A玩家购买了3天VIP,B玩家购买了1天VIP。那么1月1日-1月3日的“分配到这天的VIP充值钻石”分别是140钻,70钻,70钻。1月1日这天C游戏的总VIP游玩时长是100分钟,D游戏是300分钟,那么C游戏的作者会得到140/(100+300)*100的钻石量。D游戏作者会分配到140/(100*300)*300的钻石量。
注意,一个游戏作者当天分配到多少钻石取决于在逻辑中动态申请使用VIP功能后玩家在游戏中继续游玩的时间,这就鼓励游戏作者让玩家尽量长的时间进行游戏,也鼓励作者让更多玩家去购买VIP。
首先打开地图编辑器,从下方的“地图类”零件中拖出一个“分机逻辑方块”
TapTap
点击“加入房间”事件添加一个方法,添加如下测试用代码,拖动“地图/会员/会员是否开启”,并点击打开右上角的“调试信息”开关
TapTap
TapTap
begincodeV1;
debug:1;
name:方法1;
1:UIButton A=fun ui.button(Vector3 0.2,0.3,0:Vector3 100,100,0:Color 255,255,255,255:String 使用VIP:Float 50:Float 4);
2:=varf UIButton.A.clickCB0(String 点击A);
3:Bool 是否已经是VIP=fun vip.valid();
endcode
在自定义方法中添加“点击A”方法,拖动“地图/会员/使用会员功能”方法,并点击打开右上角的“调试信息”开关
TapTap
TapTap
进入测试可以看到当前你还不是VIP
TapTap
点击“使用VIP”按钮,会弹出商城界面,如果你购买了VIP,那么测试时“使用会员功能”会返回真
TapTap
在实际使用中,你可以先用“会员是否开启”方法判断玩家是否已经是VIP来决定得界面显示内容,比如如果对方不是VIP则在一些VIP专属功能上面显示一个锁,玩家点击这个锁的时候调用“使用会员功能”方法来让玩家去买VIP,注意,这时即使玩家去买了VIP,服务器也没有开始计时,你应该在玩家关闭了商城界面回到游戏后,等玩家再次点击VIP相关功能时再一次调用“使用会员功能”来开始计时,切记必须是“使用会员功能”方法返回真才说明服务器开始计时了,你才会得到钻石分成。
而如果用“会员是否开启”方法判断出玩家已经是会员了,那么你调用“使用会员功能”就会直接返回真,也就不需要玩家做任何操作,服务器就开始统计这个游戏的VIP游戏时长了。
6
4