Asteroid Hunter
by Harry Bui

:: Description :: Features :: Game Controls ::
Gameplay Instructions :: Screenshots :: Links :: Download ::

Description

Asteroid hunter allows players to control a jet airplane in space. The jet's movements are controlled by the mouse, while bullets and rockets can be shot by clicking appropriate buttons of the mouse. While the jet is flying, randomly generated asteroids will appear. Players can destroy the asteroids by shooting it.

Features

Stars:
- Stars are randomly generated.

Asteroids:
- Asteroids are randomly generated with random size, rotation, and speed.
- When a bullet hits an asteroid, mini explosion are animated on the surface of the asteroid.
- Asteroids have life according to the size; larger asteroids mean more life.
- Lighting is enabled on the asteroids along with textures.
- When asteroids are destroyed, there is a particle effect that animates.

Jet:
- Hyperspeed mode allows the jet to move faster.
- Lighting is enabled on the jet.
- Jet rotate according to mouse movements.
- If jet hits asteroids, the jet animates collision and destroys the asteroid.

Ammunition:
- Bullets travel faster than rockets.
- Rockets have smoke particle effect when shot.
- Only three rockets can be on the screen at a time.
- Each of the three rockets has its own light source and lights up asteroids as it travels along the screen. Each asteroid has attenuation.

Gameplay:
- Scores are calculated if asteroids are destroyed. Larger asteroids are worth more points.
- Levels are upgraded when a certain number of points are achieved.
- Points are also given if asteroids are destroyed with the jet colliding with them. However, the jet's life is lost.

Game Controls

Left Click: Shoot single bullet
Right Click: Shoot single rocket
Space Bar: Shoot single bullet
'r': Shoot single rocket
'p': Play/Pause Toggle
's': Hyperspeed Toggle
'q': Quit Game
'h': Help

Gameplay Instructions

Shoot asteroids for points. Larger asteroids are worth more points. Levels are upgraded at 100, 500, 1000, 5000 points. When levels are updated, the speed of asteroids are increased. The red bar at the top represents the jet's life. Life is decreased only when jet collides with asteroids. The green bar represents rocket allowance. Only three rockets are allowed to be on screen at once. The rockets replenishes when it hits an asteroid, or when it is out of view. The game is over when all life is exhausted.

Screenshots

Normal gameplay

Hyperspeed mode

Mini-explosion on surface of asteroid when hit by bullet

Particle effect when asteroid is destroyed.

Smoke particle effects on rockets.
Notice the lighting on asteroids (different light sources per rocket).

Asteroid destroyed after jet collides with it.

Links

OpenGL Basic Tutorials:
http://www.morrowland.com/apron/tut_gl.php

Particle System:
http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=19

Smoke Simulation:
http://www.cs.usask.ca/grads/fey399/ProjectReport829.htm

Space Simulation:
http://www.cs.usask.ca/undergrads/aam396/opengl/

Textures:
http://hem.passagen.se/timov/down.htm