1444903352226962.jpg

  最近准备做一款以植物大战僵尸为素材的捕鱼类游戏,初期讨论的时候发现大家的思路都比较混乱。本人通过一段时间玩捕鱼之后,大致规划了一个捕杀的计算公式。大家可以参考一下,也欢迎各位朋友指出不足和漏洞。

  1、基础计算公式

  以1个玩家,单个豌豆(消耗1金币,攻击为1)攻击单个普通僵尸(获得10金币,生命为10)作为基础模型。
  假设每次攻击100%击杀僵尸,需要达到收支平衡:攻击子弹消耗(投入)I = 击杀僵尸获利(产出)E
  某一时刻:
  当I>E时,收入大于产出,玩家前越打越少,玩家亏钱公司赚钱,反之。
  当I=E时,不输也不赢,玩家可以持续游戏。
  当1颗豌豆杀死一个僵尸,消耗1金币,获得10金币,玩家净收入为9金币。
  每次攻击并非必定杀死僵尸,则需要计算一颗子弹杀死僵尸的概率:

1444900063119575.jpg

  则概率期望到达的平衡公式为:投入I=击杀概率KP×产出E
  带入概率公式则平衡公式为:

DSC0000.png

  当1颗攻击为1的豌豆,攻击生命为10的僵尸,击杀概率为10%,则可以达到期望平衡。
  某一时刻:
  要I>E,则调低豌豆攻击,或调高僵尸生命,使概率低于10%,则可以达到理论上的公司盈利。
  实际情况模式:

1444900373865465.jpg

  实际结果,有100多次产出过高和过低的情况(时间越后越明显)。所以纯随机不好控制,需要进行实时调整。

  2、实时调整

  对概率进行调整,收入过高时降低概率,收入过低时提高概率,则对概率进行调整,增加实时调整参数AP(-10% 

1444900407186561.jpg

   则击杀概率调整为:

DSC0001.png

  当收入过高,降低AP,降低僵尸击杀率,造成玩家纯收入锐减。
  当收入过低,提高AP,提高玩家收入,避免玩家流失。
  游戏初期,提高AP,提高金币产出,增加玩家收入,强化爽快感,吸引玩家持续游戏。
  游戏中期,适度调高和调低AP,造成收入波峰波谷(类似股票),吸引玩家充值,同时提高游戏黏度。
  游戏后期,降低AP,提高玩家冲击高分的难度,强化玩家之前的比拼,吸引玩家充值,提高收入。
  AP调整为游戏中根据玩家收支情况实时调整,不影响整体数据模型!
  单个玩家的AP调整仅对单个玩家有效:

1444900578160323.jpg

  3、武器定价

  豌豆射手每次发射一颗豌豆,击中一个普通僵尸。
  豌豆射手(1金币)击杀普通僵尸(10金)的几率是10%。
  一颗豌豆对于普通僵尸的期望价值为1金币(10*10%),平衡公式为:

1444900650718541.jpg

  以豌豆射手为基本模型,确定其他几种武器的定价:

  数量优势

1444900717641836.jpg

  • 仙人掌每次发射4颗钉刺,每个钉刺刺中一个普通僵尸
  • 仙人掌的攻击效率约为豌豆射手的3~4倍(不一定每发都中)
  • 则每次使用仙人掌消耗的金币可定为4金币(具体数值以实际调整后为准)

  威力优势

1444900734771033.jpg

  • 火焰豌豆射手每次发射一颗火焰豌豆,威力是普通豌豆的2倍,击中一个普通僵尸
  • 火焰豌豆射手击杀普通僵尸的几率是20%(PA提高2倍)
  • 一颗火焰豌豆对于普通僵尸的期望价值为2金币(10*20%)
  • 则每次使用仙人掌消耗的金币可定为2金币(几率提高到20%以后会大幅度增加收益,可设置略高价值)

  随机优势

1444900852856170.jpg

  • 西瓜大炮每次发射一颗西瓜,西瓜击僵尸后爆炸,波及若干个僵尸。
  • 西瓜大炮每次攻击的僵尸数量不确定,需要进行测试后确定平均值。
  • 因为这种高级武器,在比赛场等不注重效率但注重数量的模式(击杀越多排名越高)中有优势,所以可以提高定价。

  随着版本更新,增加新的武器,其攻击方式和攻击效率都要和基本模型(豌豆射手)进行对比,确定其理论收益。
  理论收益成立后,经过实际测试、微调,使每种大炮单位金币期望价值基本相同。

  4、概率调整

  经过基础计算公式,可以得出武器攻击僵尸的收益比:

1444900920341883.jpg

  带入击杀概率公式:

1444900926185552.jpg

(由于实时定价参数为暂时影响,为了简化计算去除)
  • IR的理论值应该为1,则该武器攻击该僵尸收支相等
  • IR>1,则该武器攻击该僵尸,玩家亏钱
  • IR

  武器数据

1444901180240050.jpg

  僵尸数据

1444902364574069.jpg

  代入我们上的所有僵尸和武器数据后,可得矩阵:

1444902432450536.jpg

  游戏正式上线后,PG(武器价格)、ZG(僵尸掉落)为固定值,不能随意变化。
  由于游戏模式、刷新僵尸机制、玩家数量的不确定因素,可能会造成某个IR过高或过低。或是由于运营或游戏性的需要,有意提高或降低某个武器和某个僵尸的IR值。则只需要调整ZH(僵尸生命)、PA(子弹攻击),就可以调整该武器攻击该僵尸的收支水平。

  5、抽水放水期

  根据游戏整体的收支情况,我们可以设定整个平台的抽水和放水。

  • 抽水期,玩家击杀僵尸的概率普遍降低,投入金币量高于产出金币量。
  • 放水期,投入低于产出。

  抽放水参数TP的调整方法类似实时调整参数AP:

1444903148639870.jpg

  则击杀概率调整为:

1444903157221053.jpg

  当TP>0,则此时为放水期
  当TP
  建议TP的取值范围为-5%
  TP调整对整个平台的玩家有效
  抽水放水调整以1天为期进行调整,游戏上线初期或版本更新缩短至3小时或6小时,版本稳定后放宽时间
  服务器设置收支预警(收入严重小于持续),预警后自动调整抽水。

  6、小黑屋

  某些玩家由于某些原因,获得了超量的收益,因为平台收入和游戏平衡,需要将其纳入“小黑屋”。
  被纳入小黑屋的玩家,其击杀概率被大幅度降低。

1444903187351801.jpg

  建议BP的取值为BP
  KP被降低至负数则为0
  取消小黑屋条件有两种:
  游戏时间:玩家进行一段时间游戏后,自动解除小黑屋状态。
  玩家投入金币数:玩家投入一定量金币后,解除小黑屋。

  7、倍数

  倍数:玩家可选择倍数,提高子弹的消耗N倍,击杀僵尸后获得的金币量N倍。
  例如,1倍下,豌豆消耗1金币,杀死僵尸获得10金币。10倍下,豌豆消耗10金币,杀死僵尸获得100金币。
  倍数设置值为1倍、2倍、5倍、10倍、20倍、50倍、100倍。
  玩家开启某个倍数,受其等级限制、房间上限倍数限制。

  8、房间概率调整

  我们将房间分为初级、中级、高级三种房间。根据其房间的定位,调整在该房间内,玩家击杀僵尸的概率:

1444903204111847.jpg

  初级房:只能使用低倍数,提高击杀概率,随便打打就可以赢钱。
  中级房:可以调整高低倍数,平衡击杀概率,掌握技巧可基本收支平衡。
  高级房:可以开启最高倍数,略微降低击杀概率,赚得多赔得多。
  加入房间参数RP后,击杀概率公式被调整为
  建议初级房的RP为+10%,中间房为0,高级房为-8%(数值可配置,具体数据以实际调整后为准)。