Foosball game


for a college project, I would like to simulate a Fireball Kicker table (foosball) in the Blender Game Engine. Should be similar to the Youtube video of AleX3DI.
I have written to him but unfortunately never received an answer. Therefore, I have created a foosball on my own, I have come across in the realization of some problems. So my first question is someone already has a ready-kicker Blendfile with Physic, control and AI so I can learn from it, how to do it.
If not could someone help me with the realization. I already wrote a list of questions in which I need help.

I want to realize the ball with the Bullet physics engine. I noticed that the Bullet physics engine apparently has problems with the collision detection of fast objects and not quite physically correctly. If it happens again and again to put the ball through the field or the ball stuck in the walls. That is why I put the time clock to 120Hz Physics (V2.49b) or 250Hz (V2.53). This made it better but sometimes it still happens. Is it possible to solve the problem with bullet, or is it possible to change the limit of 120Hz or 250Hz?

I would also like to clamp and roll the ball. If I squeezed the ball and the player stick on start-up I can roll the ball. Currently, the players are sticks defined as static objects. I tried to stop the rotation with a collision detection between the player - ball – stop area on the playing field. Unfortunately that did not work. If the ball is already clamped on startup, the logic works (, but if the ball gets clamped during the game play it does not work. So I then wanted to realize the stakes with dynamic object and realize the rotation with the torque or rotational speed. This solution would please me better because I would not set a stop surface or write something in Python. But if the sticks are implemented as dynamic or rigid, the sticks falls on the playing field and the frame rate to about 1 fps.

Next, there’s the AI. I would realize with IPO’s? I want to record my player movement and use it late for the AI according with the ball position. Or is it better to write everything in Python.

HG1 (from Austria)


With python there are many ways of repositioning an object that gets stuck or lost and still maintain good physics. Otherwise I think the only way is to do what you’ve done, raise the fps, and also raise the physics and logic steps to max. And then hope that yours and the users computer can actually maintain the framerate.