凯发娱乐城

龙8国际.娱乐城

注册游戏账号

新葡京娱乐城

E世博.娱乐城

进入游戏大厅

博天堂娱乐城

乐天堂.娱乐城

真人棋牌游戏开户

您现在的位置:主页 > 游戏问答 > 正文

如何设计捕鱼达人游戏中的死亡概率?

来源:http://www.wangtouleyuan.com 作者:游戏问答

真人棋牌游戏

博天堂

  /*更新内容*/

  可执行文件我分享到了微云中,有兴趣的朋友可以下载来玩.

  嗯,建议游戏策划要用我下面内容的时候和我讨论一下。。 这已经是很早之前的设计了。

  4a20f840267f76a4e5be0aaa91

  之前连接失效了,这是新的.2015年8月7日 13:47:15

  环境:win8.0以上 , 支持DX11的设备.

  操作:右键更换炮弹 F1-F7触发鱼潮 PS:没有加钱快捷键

  //原文

  在几年前我在街机上面玩过捕鱼达人这样的游戏,后来自己毕业设计的引擎需要一个Demo。

  我就山寨了一个捕鱼达人,先放些截图。

  下面是我设计的主要思路,与原版的游戏应该会有出入。

  我来谈一下我设计的主要思路

  设计之初,我想过要给鱼一些生命值。所谓生命值就是打中一下扣N点的血。

  后来我认为,这样的处理方式不靠谱也不符合预期。

  原因有三:

  一:玩家有可能一炮就中大鲨鱼,大鲨鱼的血量必定是最高的,血量的设计不科学。

  二:如果加入了血量,那么只要玩家有耐心,肯投入,必定会中鱼。

  三:如果扣完血还不中,说所谓系统的控制。那么这样和没有血量的鱼没有区别(因为血量扣到0了还看系统脸色等于没血量)

  于是我移除了血量的设计,这样的设计就纯看脸 23333333

  捕鱼达人的鱼被不被打中在设计中应该要注意如下几点:

  一:有没有必中的概率;

  二:碰撞检测的难度;

  三:游戏的平衡;

  一般游戏设计是纯随机,但是一款商业游戏或者游戏机室的游戏不应该纯随机(原因你懂的)

  那么既然没有纯随机,就会有一个收支比(付出与收益的比值)

  我采用了两个变量保存收支比,m_nTotalPay与m_nTotalGain;

  每一炮打出去的时候,我会计算一个权值:

  fPayGainPower = m_nTotalPay / (float)m_nTotalGain;

  得出收支比;这样的收支比设计者可以定期清空(因为游戏机室不一定一直都是同一个玩家,我个人没有清空)

  之后我们可以针对收支比进行一个计算,当收支比小于0.5的时候,也就是说玩家收入是支出的一倍,那么我会把倍率调整到0;

  if (fPayGainPower <= 0.5)

  m_SystemPower = 0.0;

  其余的值可以从0.0-1.5不等,具体逻辑游戏设计师可以自己定义。

  数值的话你具体可以自己设置一下,如果联网游戏,那么服务器也可以主动设置这个值。

  当用户赚得多,系统权值低,用户赚得少,权值高。如果用户赔到底裤都没有了,权值最高。

  PS:当用户的钱快花完了也可以相应调高权值,激励玩家充值(逃

  这个值会赋值到炮弹,炮弹打出去之后会对鱼进行一个碰撞检测。具体的碰撞检测会根据游戏设计师的设计逻辑会有所改变。

  例如下面矩形就是一条鲨鱼的碰撞盒。

  只要网碰中了红色的区域,就会进行捕获的一个随机。

  捕获的随机是,不同的鱼类有不同的权值,炮弹有不同的权值,1级炮弹和7级炮弹也不一样。

  下面是鱼的权值(随机后结果超出这个值即可抓获)

  下面是炮弹的权值

  一级 0.1

  二级 0.2

  三级 0.3

  四级 0.4

  五级 0.5

  六级 0.6

  七级 0.7

  捕获的权值nCatchPower 是

  100的一个随机数 * 大炮的权值 * 系统给定的权值

  nCatchPower = (rand() % 100 + 1) * fCanonPower * m_SystemPower;

  最后判断CatchPower和鱼的权值,当Catch数值高,鱼就被捕获,进入结算流程。

  这样游戏可以一直进(keng)行(qian)下去让玩家快(ku)乐(bi)地玩耍拉。

  这是我的设计方法,希望抛砖引玉:)

  有兴趣的童鞋都可以一起讨论。

  • 本文标题:如何设计捕鱼达人游戏中的死亡概率?
  • xpj

    9you娱乐城

    特别推荐