jhaslowh / UFO_Attack

CS 426 Senior Project
Other
3 stars 0 forks source link

UFO Attack

About

In this game you play an alien space bear. Use your high tech ship and weapons to conquer the Earth. Your ship is equipped with an abduction ray that can be used to abduct people from the planet. You use these people to gain new weapons and cause more destruction.

In the docs folder above you can find some screenshots and details on the NPCs.

Building / Running

OpenGL 3.0 or greater is required to run the game.
There is a precompiled version of the game for both ubuntu and windows in the build folder.

A zip file containing the builds only can be downloaded from the release page. https://github.com/jhaslowh/UFO_Attack/releases/tag/v1.0

Windows
To compile on windows, run the project with Visual Studio 2010 or greater and build it.

Linux
To compile on linux, navigate to the src folding and run make. The build will be in the Build folder and will be named "UFOAttack".
If you get errors while building on linux, you may need the opengl header files (See below).

Controls

Level Normal Controls
Player/UFO
AWSD : Move Player / UFO
Q : Switch Between player and ufo
R : Reload
F : Switch weapon

Player
Space: Jump
E : Interact

UFO
E : Abduction Ray

Level Editor Controls
1 : Toggle Editor Mode
Use mouse scroll wheel to zoom.
Right Click and drag to move camera.

Editor Modes

Terminal Commands
` or ~ : Toggle on/off
Commands:

Commands for Level Editor (Must be in screen with one)

Commands while in Game Screen

Commands while in Level Select

Technical Information

Implemented

The following is a list of all engine specific implemented features.

Libraries

SDL
http://www.libsdl.org/
Used for

SDL mixer 2.0
http://www.libsdl.org/projects/SDL_mixer/
Used for

GLEW
http://glew.sourceforge.net/
Used to access newer OpenGL functions

GLM
http://glm.g-truc.net/0.9.5/index.html
Used for matrix math

SOIL
http://www.lonesock.net/soil.html
Used to load texture files

OpenGL Headers for linux

You will need to get the OpenGL headers if you are compiling the code on linux. You can either look for there here..

http://www.opengl.org/registry/
http://www.khronos.org/registry/

or run these commands. The freeglut library might not be nessesary.

sudo apt-get update  
sudo apt-get install libglu1-mesa-dev freeglut3-dev mesa-common-dev  

Credits

Created by
Jonathan Haslow-Hall
James Dressel
Andrew Geyster

Character Designs
Chris Dike
Lucy Niedbala