Yet Another 3D Java Game

What Does It Do

A ball, rolling within a maze needs to get to their destination at the other end, while avoiding holes. When the ball falls into a hole it is returned to the beginning of the maze. The player cannot directly control the ball. Instead, the player must alter the angle of the maze floor, tilting it using the up, down, left and right arrow keys. The ball obeys the laws of physics and will roll due to gravitational pull and accelerate until it hits the wall. The ball will stop rolling when it hits the wall.


  1. You may see more than one cyliner. The largest one is the end.
  2. You may see more than one ball. Your goal is to make the smallest ball fall into the end.
  3. You must win in (level * 20) seconds.
  4. The score is initially 10.
  5. If the score is less than 0 or the time is up, the game is stopped.
  6. You can restart the stopped game, but your socre will be halved.
  7. If you fall into a hole, the score is reduced by 10.
  8. If you win, the remaining time (in seconds) will add to your score.
  9. 'r' to restart game, 'c' to change the map, and 'q' to quit the game.

How to Run

The main class src/Game/ You need to download a copy of jMonkeyEngine from here and add the .jar file to the class path.


In order to run this program, you need to have at least: OpenGL 1.0 Java 6


This program is under the BSD license.

This program uses a game engine called jMonkeyEngine , which is completely open-source under the BSD license.

For more information, see LICENSE.