pong AI

Started by
1 comment, last by IADaveMark 11 years, 5 months ago
I want to incorporate some Ai into my pong game. I don't know what to do first.
Advertisement
Something extremely easy would be to keep track of the Y position of the ball and assign that position to the enemy paddle. This will result in an unbeatable AI if you don't reduce the speed of the paddle. Pong does not require an extremely complicated AI, something like this will suffice :



void GetEnemyPosition( const vector2D& ballPosition,vector2D& enemyPosition)
{
if (ballPosition.y < enemyPosition.y )
enemyPosition.y -= speed; // calculated based on the clock
else if (ballPosition.y > enemyPosition.y)
enemyPosition.y += speed;
// if the position is equal the paddle will not move
}

// the += or -= depends on the axis-system you are using, i'm assuming that the origin
// of the system is in the topleft corner.



P.S. If you want to do something else you could try to predict where the ball will hit the wall. Then randomly make the enemyPaddle spin the ball in some random direction.

Excuse my english please
The first thing you should do is search this entire forum for the word "pong". It has been discussed ad nauseum.

Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC
Professional consultant on game AI, mathematical modeling, simulation modeling
Co-founder and 10 year advisor of the GDC AI Summit
Author of the book, Behavioral Mathematics for Game AI
Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"

This topic is closed to new replies.

Advertisement