Codea / Lua pong游戏CPU对手不准确

时间:2013-01-25 19:45:42

标签: lua cpu pong codea

我最近在lua(codea)设计并编写了一个乒乓球游戏;您可以在多人游戏和单人游戏中与CPU对战。

我的问题是,我可以让CPU完美地玩bat_cpu = ball_y,但这不会让游戏变得很有趣。

因此我制作了一个简单的不准确系统来计算球击中CPU蝙蝠的位置:

bat_cpu = ball_y + inaccuracy

以前将不准确定义为:

inaccuracy = math.random(-40,40)

但蝙蝠仍然完全遵循ball_y,我希望它犯错误,而不是那么快。

有没有人知道如何模拟CPU蝙蝠所以它会犯一些错误(高速,准确等)。

1 个答案:

答案 0 :(得分:2)

您没有提及何时应用此计算,但可能会在每帧的基础上完成。这意味着您可能会应用这些不准确之处,但它们会在0左右频繁更改,这意味着您根本看不到效果。

您可以对每次点击的随机计算产生偏差:例如,bias = math.random(-20, 20)然后inaccuracy = bias + math.random(-40, 40);然后,您可以在每次点击时重置bias

您还可以移动目标:计算CPU命中的位置,并随机移动目标。对于每个帧,您需要根据您想要击球的球位置进行插值,并且因为击球目标是错误的,所以它对目标的接近也是不准确的。