游戏中的数学之魔塔数学

前言:这几天心血来潮找找以前玩过的老游戏,就随手下载了一个PK32。今天早上又看到光良50岁的热搜,一方面感叹时光飞逝,一方面也感觉到作者刘景雄在代码方面的强悍。
足足五页的游戏却只有7.3M的软件大小,还有几乎完备的美术。故此写了这篇文章。

一、基础数据

这种游戏想必大家多少也有些了解。所谓的计算,就是我先攻击,我的伤害=我的ATK-敌人DEF,然后敌人生命值下降这些。然后敌人攻击我。敌人伤害=敌人ATK-我的DEF,然后我的生命值下降这些。直到一方的生命值下降为0为止。

首先我们先将一些数据来数学化。

设我的攻击为MATK,防御为MDEF。敌人的攻击为EATK,防御为EDEF,生命值为EHP。最终受到的伤害为DMG。

这样的话伤害公式为DMG=(EATK-MDEF)*EHP/(MATK-EDEF)。这里面敌人的属性都是定值。所以DMG、MATK、MDEF这三个变量与这些定值构成了一个三元函数。

因为在pk32的21层魔塔里并没有越升越贵或者同价格攻防数量不等等说法,所以不必考虑这些条件。

二、开始计算

我们的目标是计算什么条件下提升攻击收益高,提升防御收益高。当然在21层魔塔中不必考虑过多。因为本身游戏难度不高,所以可以在多数条件下防杀敌人(防御力大于等于敌人攻击力。而攻击力只要能破防

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值