Obstacle Trouble

By Tony Chen

Introduction

The goal of the game is to make it all the way throught the golden gate. Your character is a ball. It only has 3 lives. You lose a life when you run into an object (ice cream or lolipop) You are limited to taking 500 steps to reaching the goal. You have 60 seconds. Get to the gate before time runs out!

Note: The lights are initially off to throw the player off. You will have to run pass the light switch (which looks like a spotlight) near your spawn point to light the game up.

Controls

Character Controls
"8 numpad" - move character up
"5 numpad" - move character down
"4 numpad" - move character left
"6 numpad" - move character right

Camera Controls
w - move forward
s - move backwards
a - strafe left
d - strafe right
Drag left mouse click - rotate camera around

Game Light Controls
This is basically an extra feature. If you would like to move the game light around (light source is located near starting the starting point).
i - move light forward
k - move light backwards
j - move light left
l - move light right
u - move light down
o - move light up

Menu
Right click - opens the game menu

Game Demo

Concepts

Collision Detection
You can't walk throught a solid object in real life. Each time the game randomly generates the obstacle objects, the game would know what space is being occupied in the game. If the ball happens to run into that occupied space, then the game would know that the character has ran into an object, causing you to lose. This also applies to the world boundary so that the character will not be able to leave the game.

Lighting
The game only uses one light source. The light starts near the starting point of the character. The light is important because it simulates the real life environment, allowing the player to visualize better because the objects appear 3D to the human eye.

User Interaction
The game is based on terminal interation as well as in-game interaction (displaying the character lives, steps, and timer).
The game closes when you pass through the gate or fail to do so. A summary of your game will be displayed on the terminal after the game ends.

The game will also assign you a Player ranking: CHEATER, Pro, Veteran, Newbie, and Lowest of the low, depending on how fast the player finishes the game (makingit throught the gate).

Features

Game Setting
The player is allowed to change game settings.

Game Resolution: supports screensizes of 320x240 to 1920x1080.
Game Light: Players are allowed to change the color of the game lighting.

Character Setting
You can customize your character.

Character color: Personalize it by changing its material color (8 to choose from).
Character movement speed: Enabling this allows the player to change how fast the character is traveling. Player can choose from a speed of 0.1 to 0.5, 2.0 for the "special" speed.

Cheats
Feel like the game is too hard? You can enable some cheats to help you out.

Transparent Objects: Make the objects transparent if you have trouble seeing behind objects.
Wallhack: Enablng this allows the player to walk through objects without any collision detection.
God Mode: If 3 lives are not enough, make it so that you won't lose.
Infinite Time: Enabling this gives the player unlimited time.

BUT seriously, why would you use cheats when this game is easy in the first place? D:

References

CPE 471 lecture notes and slides