Pacman image

Final Projects

These are videos of the final projects for CMSC 425, Spring 2015. The ordering is random.


Leap Attack
by Man Kit (Patrick) Lee


Leap Attack is a 3D game, which is played with Leap motion devices. There are two game environments in this game. In the Earth game, it challenges the player's reaction time. Many cannons will shoot color balls to attack the player randomly from different directions. The player has to use their hands to block or hit away these balls. There is a health bar to measure the player's health. The screen will flash if the player is hit. If the player can sustain their health for one minute without losing all the health, he/she wins.

In Space game, many asteroids are floating towards the player. Few customized gestures are implemented to trigger the laser and flame to destroy asteroids. The player's score and health are displayed on top of the screen. The number of the asteroids will increase over time. Explosions happen when an asteroid collides with the laser, flame or player. Since it is a 3D environment, the player has to determine the correct direction of asteroid in order to shoot out the asteroids.

The player can hit the space bar to pause the game, and hit escape to return to the main menu.


Explode
by Anis Abboud


Explode is a simple but challenging puzzle game. Drag boxes left/right. They can push each other. 3 or more boxes on a line explode. Explode all to win! Are you up for the challenge? http://www.explode.cc


Battlemasters
by Devin Gajewski


Battlemasters is an experiment in basic fighting game mechanics. It tries to blend the movement and footsies of Street Fighter with the simplicity and two-button combat found in Smash Bros. Movement inputs are digital and therefore do not require a joystick, just like street fighter. However, unlike street fighter, there are no button combination moves; no half-circle or quarter-circle or dragon-punch style inputs. Instead, attacks use the basics of the Smash Bros. system, where the direction being held in combination with either a Normal or Special attack button determines the intended attack. The demo character I have developed has Normal attacks on button 1, and Special attacks on button 2, and both buttons respond to directional inputs. Button 2 casts a hadoken style move, and pressing button 2 with a direction changes the trajectory and type of hadoken. Button 1 is the Normal attacks move, and adding directional inputs varies the intended attack fairly greatly. These moves also change when used in the air, where the player can use either a normal aerial attack or a downward aerial attack. Therefore, Battlemasters takes the Street Fighter fighting experience and merges it with the simplicity of Smash Bros.


Aidolon!
by David Graham, Khoa Ha & Cy Neita


The game is primarily rhythm-based with action-RPG elements. You will alternate control between two characters and maneuver around a ring to avoid attacks to the rhythm of the song. The goal of the game is to reduce the opponent's number of fans to zero without being reduced to zero fans yourself.

(Prof's note: Youtube blocked the audio because of copyrighted material. A version with audio can be found here.)


Captain Space Ball
by Tu Truong, Matt Rzepka & Yang Heng Chen


Captain Space Ball is a modification to the Roll-A-Ball Unity tutorial with brand new features added in. The game starts with the main character, a sphere (our captain), on a space station. From this space station, the character is able to interact with an NPC to buy ship upgrades (of course you do not start with any points to be able to buy them). What are these ship upgrades for? They are for various missions that can be accessed through warp ports only reachable after boarding a ship and flying around to. During the missions, the game becomes a 2D side scrolling shooter and you will try your luck at surviving waves of enemies trying to gain as many points as possible to be able to buy ship upgrades.


Space Shooter Sim
by Maximilian Chiang


Space Shooter Sim is an arcade-style, 3D space flight simulator. In this game, you play as one ship within a team of allied space ships, flying to meet the enemy fleet. Your mission is to destroy as many enemy ships as possible to ensure your team's victory! The battle will take place within an asteroid field. These asteroids can deal and receive damage and may break apart when destroyed. Use them to your advantage if and when you find yourself overwhelmed by enemy forces.


Grinding for XP
by John Federkeil & Caleb Journot


Grinding for XP is a single-player, 3D, sandbox style game created using the Unreal Engine 4. The game is based around two protagonists fighting their way through an environment filled with enemies. Upon encountering an enemy in the sandbox environment, the game transitions into turn based combat, where the two protagonists fight enemies by selecting what type of attack to use and which enemy to target. The protagonists have a basic attack consisting of a simple sword swing and a special attack in which they launch a fireball at the targeted enemy. The fireball deals considerable damage but uses a large amount of mana, which the protagonists can regain using basic sword attacks. If the player decides the battle is lost, they can run from the fight to live another day.


Toward the Light
by Dan Galdi, Nadeem Malik & Evan Wang


Toward the Light is a 3D platformer in which the player's goal is to reach an illuminated door. However, the levels are completely dark and filled with obstacles and traps. To help navigate through the level, everytime the player dies, she will respawn and her past lives will be repeated with a luminescent ghost. Using these ghosts, the obstacles, puzzles, and hidden passages in the level will slowly be revealed.

Some levels also contain sets of carefully placed portals that add to the challenge of the game. Some portals may be dead ends, while others may allow the player to progress through the level.

The player can use the mouse to pan the camera to look around for the tricky spots of the level. This can lead to the discovery of hidden paths when using the ghosts as a source of light. The player also has a limited jump distance and height which allows us to challenge the player with tricky jumps and also forces the player to discover other paths in order to complete the level. Additionally, the player can fast forward and rewind ghosts to give the player more control exploring the level.


Super Gridworld Bros
by Alex Yee & Shiliang Zhang


Super Gridworld Bros is a multiplayer game where players must destroy discrete terrain blocks to knock their opponents off the map. Players are given several weapons with varying strengths and cool downs, such as a close range drill tool and a long range pellet. Each player has a score and earns one point when their opponent falls off. When a player falls off, they immediately respawn above the terrain and receive two seconds of anti-gravity to help them reposition before they fall back onto the map. There is also a limited chat feature and basic menus to allow players to host or join the game.


Shyft
by Kevin Klein


Shyft is a puzzle platformer where your goal is to shift to each of the characters and use their unique properties in order to have all three characters reach the Shyft symbol in each level.

In the levels, you can interact with objects of the same color. Some of them are switches and some of them break or stay together depending on who touches it. For instance, blue blocks will probably be okay for blue to be on but might break if the others try. Alternatively, a red block might only be broken by red touching it. Red can also push blocks around when necessary. There are also switches for each character, colored for them accordingly. They are always the blocks next to ground pieces.


Harvv
by Stephen Christian


Harvv is a top-down isometric puzzle solving game, where the player programs a robot, named Harvv, to navigate various levels autonomously using programming blocks. The goal of each level is simple: to reach the blue box at the exit. Each programming block has unique properties; some instruct Harvv to move forward or turn, while others repeat the last few commands, while others manipulate variables. It is up to the player to combine these blocks to create a functional program that will bring Harvv to his goal, while still remaining under the program block limit for each level.


Hair
by Ali Eskandari & James Wills


Hair is a single player on rails first person game for the Oculus Rift. You play as a teenage girl with incredible hair. Your hair is constantly falling over the screen and you have to flip it out of the way to see properly. The entire game is set in a single high school hallway and all of the other students are complimenting you on your hair. When someone says something to you have to acknowledge them in some way, either by flipping your hair or responding politely. These responses require the player to literally speak various phrases ("Thank you", "I love your shoes") which will be verified using a voice recognition service.


SquareOne
by Geoffrey Ji, Kevin Judd & Shri Tanna


SquareOne is a side-scrolling cooperative shooter developed for Android. Motion is detected via the accelerometer and players can shoot via touch. Players can connect through WiFi and their Google Play accounts. Your team fights against an army of enemy squares who have different personalities and battle styles depending on their color. Planks will randomly generate throughout the level, and can be used tactically as either shields or platforms. The game is cooperative, but there is competition in who can kill the most enemies. Points can be earned and redeemed for health and bombs. Our game was developed with Unity. The sprites and sound effects in our game come from the Unity store and other free websites, and the music was composed and recorded by our team.


Ballistix
by David Tau


Ballistix is a 4-player online game inspired by a minigame in Crash Bash for the Playstation. The game field is a square formed by 4 cylindrical goalposts. Each player controls a paddle which is used to deflect balls away from their goal. Balls will bounce off the paddle itself, but players can also press space to create a pulse which pushes balls away from their paddle. Once 10 balls have entered a player's goal, that player is eliminated, and a wall will spawn blocking their goal. The objective of the game is to be the last player standing.


2D
by Alex Tyler


2D is a two dimensional platformer with an extra mechanic. Whenever the player jumps, they change colors from red to blue or blue to red. When they are red, they can only interact with red objects, and when they are blue they can only interact with blue objects. Players must use this mechanic to progress to the end of each level to beat the game.


Dymanic Color
by Kyle Headley


This is a drawing program where the canvas is always changing. 'Paint' spreads out after it's been placed, bleeds into other paint, and can drip down the canvas. The entire thing can spin around, splattering paint about. Optionally, the user can draw without these effects.

The 'game' was written as an experiment in gpgpu programming. All effects are implemented as separate shader programs. This allows great speed, and simplicity of adding content. I used WebGL for ease of prototyping and distribution. Available online at http://kyleheadley.github.io/GPUSandbox/.


Iosis
by Simeon Anfinrud, Daniel Manzella, Randolph (Sam) Edwards & Sara Shen


Iosis is a turn-based strategy game that rewards players for tactical positioning and engagements. Written in Gamemaker and inspired by popular strategy games like Fire Emblem and Final Fantasy Tactics, Iosis has a top-down perspective that zooms in for more detailed battle sequences. It features a variety of unique weapons and classes each with their own strengths and weaknesses, original music and art, as well as a full AI that determines enemy movement and attacks. The goal of Iosis is to carefully maneuver your units and make tactical engagements to defeat the enemy, minimize your losses, and claim victory!


RNG
by Youcef Moumena


Baby is trapped in a world he has never seen before! Help him travel throughout all of the dangerous obstacles and make it home.

RNG is a rouge-like platformer that uses procedural generation to create a new and dangerous world every time you play! The main objective of the game is to take the main character, Baby, and guide him all the way to the exit so he can go home. Baby is always located the top of the world and his way home is always located at the bottom of the world. Be careful though, if Baby steps on any spikes or gets hit with the falling spears he will get knocked out and force to run through the maze again. Luckily, Baby has two special powers. When you press the left shift key you can reverse time (helps you get back up to places where you can get stuck), but be careful not to use it too much because if you do you will spawn monsters that will chase Baby down and Baby will faint! Baby can also wall jump, so use the skill wisely. A monster is always located in the level when it starts, and more monsters spawn the longer it takes you to complete the level as well! So HURRY!

This game was implemented in Unity, but a custom platform and movement controller was built to deal with collision detection between the player and the platform. The levels are also randomly generated, so no two levels are the same (up to chance of course). This was done by randomly generating a solution path in a 4 x 4 array and then selecting different random room templates that have special features, such as openings in certain directions and spike locations.


One-Way
by Damiano Melcarne


One-Way is a top down shooter game playable on the web and android devices. You play as a fighter jet sent out to destroy as many enemies as possible. The name One-Way comes from the fact that there is no turning back once you start. Enemy aircraft and mines are spawned in an infinite series of waves. As waves progress, the number of enemies that are spawned increase and types of enemies that are spawned change. A new wave is spawned when all enemies in the current wave have been destroyed or have left the screen. Spawn parameters are appropriately adjusted to increase wave difficulty as time passes. Every four waves begins a minefield wave. Minefield waves consist of the player dodging mines instead trying to destroy opposing aircraft.

There are 5 types of enemies. Fighter, Bomber, Fighter Ace, Bomber Ace and Mine. Each enemy is distinguished by their design and color. The Ace enemies are upgraded versions of their counterparts with faster firing rates, higher firing chances and stronger shields (more health). Mines do not shoot but they have high HP and low point rewards so the player is better off avoiding them instead of seeking to destroy them. When an enemy is successfully hit, it blinks red. When an enemy no longer has HP, it is destroyed and points are rewarded.

The player is controlled using the WASD keys or arrow keys on web, or touch on a mobile device. The plane is constantly firing so there is no need to pull a trigger. The player has 5 shields when at max. If the player is hit by an enemy or enemy bullet, a shield is removed. If a player loses a shield, the shield will regenerate after 10 seconds. A blinking animation is played when the player is hit. If a player runs out of shields, they explode and the game is over. The game was built entirely with Unity.


Gro
by Chijioke Okonkwo & Daniel Lins


Gro is a simulation game, inspired somewhat by the SimCity franchise. You place down the gros (growing single-color towers) and connect them with paths. Once connected, the gros start outputting blops, and the simulation begins! The blops and gros come in four colors: Blue, Yellow, Green, and Red. They all interact with each other differently. Planning smartly and ahead of time will make your simulation run more smoothly, and increase your blop points! You need blop points to do any placing, so the faster you can produce them, the better. A bad planned system can be hard to manage. With many hidden strategies and nice aesthetic, Gro is a good game to play if you want test your hands at building the perfect system.


SimpleMOBA
by Ethan Tran


This game recreates features from popular real time action strategy games such as League of Legends (LOL) or Defense of the Ancients (DOTA). A feature these games have are the real time strategy (RTS) controls, where you control one player (hero) from a bird's eye view. Other key features this game recreates are the two opposing teams that try to destroy each other's base. Both sides create AI units (minions/creeps) that can be used to apply pressure to the opposing team. There is also a champion/hero/class/role selection in the beginning of the game that allows the player to decide what strengths and weaknesses they want to bring to the team composition.


Knick Knack Narrative
by Mary Allison Abad & Aaron Koji Lopez


The toys in your childhood bedroom have magically come to life and are trying to protect each other from the evil advances of the house cat, Dr. Fluffykins. Play as a knight or a robot and defend yourself destroying the hairballs of doom while gathering coins to unlock new toys.

Knick Knack Narrative is a 2D platformer featuring endless waves of enemy hairballs that traverse the screen from top to bottom along the platforms. The player's objective is to gather as many coins as possible to buy and unlock new characters with different abilities. Each time the player picks up a coin, the player's character is randomly chosen from the set of unlocked toys to continue playing the level.

Is Dr. Fluffykins really evil, or is he just misunderstood this whole time? Maybe he wanted to destroy the toys... or maybe he just wanted to join in on the toys' fun. Play to find out!


Space Rocks!
by Mike Constantine


For this game, I took the basic Unity tutorial for the space shooter game and gave it more features. You are a space ship that can make left and right, and up and down. There are asteroids (space rocks) and enemy spaceships hurling towards you. Your job is to avoid them, or better yet, destroy them for points! The more enemies and rocks you hit, the higher your score. Features:

  • If you hit 5 enemies in a row without dying, you become invincible for 5 seconds. Enemy shots cannot destroy you, and you can destroy rocks and enemy ships by simply colliding with them.
  • Boss battle: You can only hit the boss in the area that is lit up red. This area alternates as the game goes on. So sometimes you have to shoot its right wing, and other times you have to shoot its left wing.

Germs
by Baris Gokpinar


You are a germ in a bloodstream and your goal is to collect smaller cells and grow bigger. The bigger you grow, the bigger cells you can eat and the higher score you can reach. You can use this score to buy upgrades for your germ and even get some friendly germs to help you out. But be careful, if you try to eat a cell thats bigger than you, you will lose your score and shrink back to your original size!


Karnage
by Jonathan Reynolds


Karnage is a 3D two player fighting game programmed in C# and implemented using the Universal Fighting Engine. The game includes all the basic aspects of a typical fighting game such as:

  • a health HUD
  • sound effects
  • combo moves
  • special moves
  • character selection
  • stage selection

The game is best of three rounds and includes a total of three playable characters. Each character has their own distinct special moves and attacks.


Western
by Chris Purdy


In this 2D game, you star as a dashing red square as you evade the constant gunfire of the Mafioso green squares. In each level, you are pitted against a number of green squares as they try to wipe you off the face of the planet: you are engaged in a constant shootout until the enemies are taken out.

The game uses a probabilistic model for determining damage dealt between two parties. Each character targets one specific opponent at a time and calculations are done to determine the probability that if a bullet is fired, it will connect with the opponent. The more cover you have in front of you with respect to your opponent, the less likely he is to deal significant damage to you. The more exposed your opponent is, the more likely you are to deal damage to him. Therefore, it is in your interest to take advantage of the environment in order to maximize your ability to both evade and deal damage.


Interactive Terrain and Erosion Simulator
by Corey Lowman


An interactive procedural terrain generator using Perlin noise and erosion to generate pseudo-realistic terrain. Features include:

  • Terrain generation based on parameters like octaves, persistence, etc.
  • Live change the terrain generated by changing the parameters
  • Perform live erosion on the terrain to smooth things out in a pseudo-realistic way
  • Color the terrain in various ways (elevation, steepness, realism)
  • Place trees randomly on the terrain according to steepness

Snowboard Racer
by James (Jake) Truckle & Joey Mangino


A two player snowboard racing game where the players see who can reach the bottom of the mountain first. Features different size mountains, obstacles, jumps, controller support, custom physics, and handmade terrain. The game also has single player maps where you can race down the courses alone.


Frost Bound
by Andrew Hoosier


Frost Bound is a 2D action platformer set in an arctic environment, where the goal is to simply kill the boss at the end of the level. The game features a hero who wields a spear and a shield in order to attack/defend against the monsters that threaten the region. But beware, this game was designed to be difficult. Monsters are three times the size of hero and can only be killed with a blow to the head. To make matters worse, the hero can only take three hits before he dies. There are no potions, no save points, or additional lives to help you. If you die, you must restart from the beginning of the game. You must act quickly and effectively in order to move through the level unscathed.


The Adventures of Dave Jr.
by Tim Crawford & Kien Ho


The Adventures of Dave Jr. is a 2.5D platforming game that takes much inspiration from the world of Super Mario in both artistic direction and gameplay. The main character, Dave Jr., is not directly controlled by the player. Instead he must rely on all of the platforms to help guide him from the start to the end goal. He must avoid falling off into the abyss, as well as touching any deadly platforms. There are many different colored platforms, each with its own properties and actions. There are several tutorial levels to explain the controls and the functions of each platform. After that are several normal levels and three hard levels. There are also two bonus plinko-style levels that will grant the player additional lives based on where they land.


Swiveler
by Brian Summers


Swiveler is a 2D puzzle platformer that gives the player the power of swiveling pieces of the environment in order to complete the puzzle and reach the exit. Platform games generally task players with moving from start to finish using the pieces given to them. In Swiveler, players cannot reach the exit without first changing something in the world around them. Swiveler was developed for PC using Unity and scripts were written in C#.

Players control their character with the usual A for left, D for right, and spacebar for jump. Players also have the ability to rotate squares, designated with a number, using the alpha-numeric 1 through 9 keys and to slide certain platforms using click and drag motions with the mouse. When rotating pieces of the map, anything contained within that piece will rotate with it. Players are able to make rotations concurrently while moving their character, creating a need for some coordination and skill in the player. Platforms can only slide when two slidebars are connected, represented by the long, black, rectangular pieces, and cannot slide when the player is standing on said platform. Swiveler also contains a title screen menu, in-game menu, a controls screen, and a level selector. Currently the game contains five puzzles.


Elementalist
by Jason Li & David Zhu


You are an elementalist that needs to go and stop *insert generic bad guy* from doing bad things. Collect, combine, and use elements to get past puzzles and enemies to your goal. To make this work, the character will have to go through puzzles using an initial element to unlock other elements to make different areas of the level accessible. This will culminate into one final area where the player can use all abilities to get through the game and fight a boss. For demonstration purposes, we created a single level where the player collects all of the three elements (fire, wind, water) at once in order to show off the different combinations you can use.


Trace
by Bryan Doyle


Welcome to Trace, where you must match the pattern of your character's attacks to win the fight! Featuring multiple characters with unique specializations and patterns, Trace requires a balance of speed and accuracy to defeat your opponents! Featuring an original soundtrack, composed for this game, Trace brings excitement and skill to the casual gaming scene.


  Return to CMSC 425 Home

Web Accessibility