游戏里面的被动技能触发机制是怎么做的。比如用一个技能有30%的机率触发另一个技能,这个30%的机率是怎么做的。我个人猜的是用一个随机数,如果这个随机是1-100的话 那么这个30%就是随机数>=70则就触发。是这样吗?
但是,为了考虑到不出现极端情况,就需要改变一下。
魔兽争霸是这样做的:第一次是原概率,然后没有触发的话,第二次提升一点,还是没有触发就继续,直到一定会触发为止。这是为了防止出现极难触发的情况。
比如某个技能:A一下30%的概率暴击,那么第一下就是30%,没有暴击就提升一下,40%,再继续。直到触发为止,当然这个提升只是暂时的调整。
至于随机数,计算机目前还无法真正随机,基本都是伪随机,最好在每次随机时重新调整下随机数种子。
随机数判断很简单,比如1-100,随机出<=30的就可以认定触发了,而50%概率的技能,那么就是随机出<=50了,很简单。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。