红白机坦克大战中,为什么敌人的发射的炮打不到敌人的坦克(直接穿过)?

来源:百度知道 编辑:UC知道 时间:2024/05/28 08:52:22
问一个可能别人看来很白痴但是确实使我很不解的问题
为什么敌人的发射的炮打不到敌人的坦克(直接穿过)?
自从玩坦克大战以来我就有这样的问题,一个从各个角度看起来都十分完美的游戏却在这一点违背常理。
想过三种解释,我觉得有以下可能
1、制作者没有注意到(这么简单的问题不可能没注意到)
2、制作者的技术不够高(能做出这么精致的游戏,技术也一定不低)
3、制作者不得不这样做(为什么他们会选择回避,宁愿丧失游戏的真实性也不愿去勇敢面对敌人坦克起内讧的问题?)
思来想去觉得这三条解释都不够完美
希望有高手能够解答小弟的问题!谢谢!!

其实这个并不难解释,像FC时代的游戏.由于本身机能的限制,不可能做的太过真实,那样会加重CPU的运行,在FC那样低配置的单板机里.只能尽可能简化代码来实现在游戏运行的同时,还有很好的流畅性.这样不但能大大简化游戏本身的大小,也能提高CPU的运行能力.比如,在坦克大战这个游戏里,敌人本身并不知道找到你来进行攻击.它只是在随机前进或者开火.而并不是刻意对你进行攻击.如果这时,让它可以自己相互攻击的话.自然,用不着你开火,它们自己就能把自己KILL掉的.当然也有同人版本让敌人变的很强大,但都不会让它能对敌人自己进行伤害.

3、制作者不得不这样做(为什么他们会选择回避,宁愿丧失游戏的真实性也不愿去勇敢面对敌人坦克起内讧的问题?)

呵呵,你还没说敌人坦克可以互相穿透呢
如果你学过编程你就会知道,游戏越复杂……所用的代码越多
cpu的处理能力就要越强
比如按下存档选项,如果要让存档的时候放个动画,放段音乐
那是很复杂的
每个指令有其运算的时间
如果cpu每单位时间只能处理2个指令
那么如果按刚才的假设设计存档过程的话,那么估计要花上几十倍的时间才能完成存档的操作
如果我说的不清楚
你可以用flash做个坦克大战(你要在1秒内对屏幕上所有的子弹进行判断,是否有子弹打中了坦克,你现在知道我军坦克为什么是不同颜色了吧?一是玩家好区分,二是编程人员也好区分,对子弹的偏移取像素,有红色,1p挂,有绿色2p挂,白色、青色,敌人呵呵)
回合制的还好放判断,这种即时的游戏,时间是不能牺牲的
所以在游戏性不降低太多的情况下,必要的失真是允许的

所有的游戏都是这样的,你不看魂斗罗里面,你碰到敌人,他没事你死了……你这么强壮,怎么会被他撞死……
就是为了增加难度而已哈哈

PS:有种坦克版本,自己方的子弹也会互相穿过去,这样就没有办法自己人打自己人了(原来打到自己人时,会一闪一闪的不能动)

你会发现很多游戏都有类似的情况
敌人的炮不会击中其他的敌人
玩游戏不能想太多
想多了很多东西都不符合常理
玩游戏不能被游戏玩了

为了增加游戏难度吧
<