首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >计算游戏中的死亡和死亡

计算游戏中的死亡和死亡
EN

Code Review用户
提问于 2013-12-19 22:21:49
回答 1查看 156关注 0票数 1

我试图制作一个程序来计算你的k/d比(杀死/死亡,这是在FPS游戏中用来让人们相信它是一种技能),你需要多少杀死而不死一次才能到达goalKD。它也有一个部分,计算你需要多少战斗,如果你给程序,你的平均战斗死亡和战斗死亡。

有一个有效的方法来编程吗?目前,我的方式是让我进入程序员-效率地狱。

代码语言:javascript
复制
For i = 1 to 100000 {
    While GoalKD>KDratio {
      Kills = BattleKills + Kill
      Deaths = BattleDeaths + Death
      KDratio = Kills / Deaths
      i++
  }
}

我正在用SmallBasic编程,因为我对它非常熟悉,而且我认为它很容易读懂。此外,如果可能的话,不要马上给出答案,给我一些提示,让我练习我的思想。将答案添加到一个扰流板框中。

EN

回答 1

Code Review用户

回答已采纳

发布于 2013-12-19 22:58:51

对于所需的杀人部分,您正在试图解决以下问题:

代码语言:javascript
复制
k{current} + n
--------------  = r
  d{current}

其中,r是目标速率,n是您要寻找的数字。一些基本代数:

代码语言:javascript
复制
n = rd - k

对于战斗部分,你需要解决

代码语言:javascript
复制
k{current} + b * k{battle}            // current kills + additional kills
--------------------------  = r
d{current} + b * d{battle}            // current deaths + additional deaths

k{current} + b * k{battle} = r * (d{current} + b * d{battle})  // multiply both sides by d{current} + b * d{battle}

k{current} + b * k{battle} = r * d{current} + r * b * d{battle})  // just showing multiplication of r

b * (k{battle} - r * d{battle}) = r * d{current} - k{current}  // subtracting terms from each side

     r * d{current} - k{current}
b =  ---------------------------  // dividing by k{battle} - r * d{battle}
     k{battle} - r * d{battle}

在上面的代码中,这将变成

代码语言:javascript
复制
need = Math.ceiling( GoalKD * Deaths - Kills )
battles = Math.ceiling( ( GoalKD * Deaths - Kills ) / (BattleKills - GoalKD * BattleDeaths) )

我不是SmallBasic的人,所以请原谅上面的语法错误.

(编辑以修复所需的数学错误,重新战斗,并向数学添加注释。)

票数 13
EN
页面原文内容由Code Review提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codereview.stackexchange.com/questions/37806

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档