I made this as my first project. This is a very simple pong game. It was made around simple logical mechanics. The ball has X and Y speeds. They have the same value and they both run at once resulting in the ball going to the left up on the screen. When it touches either of the walls it's Y speed gets multiplied by -1 making the value either negative or- positive...? My english sucks lol. I mean you get the deal. If it was going up it will go down and vice versa but X speed stays the same so it will change from up left to down left, etc, etc. When the ball collides with a paddle it gets it's X speed value multiplied by -1 so its the same deal as with walls but it goes from left to right, etc. When the ball's X cordinates are smaller than screen (ball misses paddle) It resets its position to the center and adds 1 to player score variable. Same goes with AI score variable when the ball's X gets higher than X of the window. The AI paddle's mechanic are pretty simple too. If ball's Y position is bigger than Paddle's Y position it mover upwards, else it goes down. That would be it if it comes to how the game works! Im making another project right now and im hyped to finish it. If you want to see the code you can see it on my GitHub. Hope y'all had fun reading this. I made a normal version, 2 player version and 2 AIs version.