当前位置: 首页 > 知识库问答 >
问题:

如何计算游戏中的可能成功率:x随机(12)=>y

何嘉运
2023-03-14

我正在尝试编写一行Ruby代码,用于计算文本冒险游戏中简单技能测试的可能成功率。测试是“如果x随机(12)=

在游戏中,玩家有一定的技能,并且偶尔必须测试这些技能加上一个随机数才能获得大于或等于给定难度的数字。我想计算能够赢得该技能测试的成功率百分比。

作为冒险游戏的一个例子,你试图在丛林中追踪一些动物。要做到这一点,你必须测试你的跟踪技能。例如,如果你的追踪技能为3,并且你在1-12之间添加了一个随机数,那么你需要获得至少9分或更高的分数才能成功。基本上:随机技能(12)=

那么在Ruby中,用我目前的技能分数计算成功机会的算法是什么?谢谢!

共有1个答案

邵骁
2023-03-14

你可以做到这一点。

def success_rate(skill, success_level, random_range=12)
  delta = success_level - skill

  return [100 - (delta.to_f / random_range * 100), 100].min.round(2)
end
 类似资料:
  • 我试图计算随机森林SRC的中位生存率。 我得到了生存功能 我想得到生存函数的中值(值< code >老兵. pred $生存== 0.5,例如,第一行) 问题是,生存函数很少有意义。在我们的例子中,精确到0.5 所以我们有最接近的值

  • 我用随机数生成了一个简单的游戏。如果数字是正确的,请在文本字段中输入正确的数字,并与ramdom数字游戏相匹配,然后再次尝试。但如果号码与ramdom匹配,请始终显示消息,然后重试。我在下面写下了迄今为止我所做的尝试。 lbltxt上打印的文本是什么。getText()我等于txtRam txtfield,但no等于罚款,但显示为重试

  • 我的程序应该要求用户猜测 0 到 100 之间的数字,但我似乎无法正确输出。目前,如果用户数大于随机数,它会打印出无限数量的“您的数字太高”。此外,如果第一个 UserGuess 很低,那么以下所有数字都将具有相同的提示:(“您的数字太低”),尽管它们实际上大于随机数。我不知道我做错了什么。任何帮助将不胜感激。谢谢!

  • 编辑:这个问题不是重复什么是游戏2048的最优算法? 这个问题问“赢得比赛的最好方法是什么?” 这个问题问‘我们如何计算出游戏的复杂性?' 这让我想到了它的复杂性。对于像国际象棋这样的确定性游戏,它有可能(在理论上)计算出所有导致胜利状态的可能的走法,并向后工作,选择保持导致结果的最佳走法。我知道这导致了大量可能的移动(在宇宙中原子数量范围内的东西)…但2048年是不是比较复杂? PsudoCod

  • 我目前的android应用程序使用Google play games服务作为一个基于回合的游戏。它已经发布,工作正常,但我想增加玩家与“电脑”对手对抗的能力,作为一个“真实”的人。这可能吗?这“合法”吗?从搜索Google play服务文档和代码来看,这似乎是不可能的。死了有谁知道不一样吗?