Final Projects

Spring 2000


291PacMan

This is an enhanced version of the classic game Pacman. In the game we will be implementing the basic functions that are included in the original version of PacMan and will be adding new features to the game. This won't be no wippy PacMan getting cherries...PacMan will be loaded with different weapons, set mines and decoys to blow the ghosts away. On the other hand, the ghosts will also be given some added power to challenge PacMan as the levels progress. We will also add extra graphics when PacMan is killed, beats a level, and gets an extra life. We are also considering a two player option, where both players go head-to-head to the finish.
291PacMan Writeup

Group Photo

  • Irshad Pathan: game play
  • James Davis: game play, graphics
  • Fahim Bhatty: graphics
  • Juan Inton: game play, sound

3D Chess

3D Chess will be like the classic game of chess but extrapolated into 3 dimensions. It will feature 3D graphical representations of the 3D board and pieces using shaded triangle approximations. The board will be user customizable and will be fully rotatable and scalable. The game also will have a mouse interface and a save/restore game feature.
3D Chess Writeup

Group Photo

  • Mark Budden: Game Play, Mouse Interface, General
  • Ron Roth: 3D Graphics
  • Tim Palacios: 3D Graphics
  • David Scalzo: Opening/Menu Screens, Timers, Load/Save

3D Pacman

Our team is going to implement a 3D 'Doom style' Pacman. We'll use Protected Mode so that we can use high resolution graphics. This game will feature similar gameplay and some of the sounds from the classic game. The game will have keyboard and mouse interface (...similar to Doom).
3D Pacman Writeup

Group Photo

  • Brian Jupin: Engine, Interface, Graphics
  • Jinwoo Kim: Engine, Graphics
  • Ethan Zeman: Engine, Interface&Sound
  • Dinna Yap: Engine, Interface&Sound

Advanced Audio Player

The program will play WAV files and CDs. It will include the following features: - modifiable playlist - mouse controlled graphical interface - sound visualization - play MP3s* - equalizer* - ability to shell to dos (music will continue playing)* - customizable interface (skins)* * these features will be implemented, time permitting
Advanced Audio Player Writeup

Group Photo

  • Wojciech Lewkowicz (Woj.): graphics, website
  • Siddhant Bhansali: audio
  • Tom Novak: interface

Agent 00291

Agent: Agent 00291 Mission: Fight the forces of evil that inhabit Everitt Lab while searching for the golden MP which you need to pass your class. After finding the MP you must escape Everitt unharmed to load the MP onto the supercomputer. Must be completed: 1205 hours This is your mission if you choose to accept it. Expertise needed: Protected mode, high resolution graphics (2D),Game Play
Agent 00291 Writeup

Group Photo

  • Ruchira Bajaj: Graphics and Animation, Web Page
  • Brian Einsweiler: Graphics, Handlers
  • Nancy Dedakia: Game Play, Handlers
  • Jarvis Leverson: Enemy AI, Collision Checking
  • Tony Puleo: Game Play, Enemy AI

Air Command

This project will be a side scrolling shoot-em-up game, where the player controls a jet and accomplishes various missions (like blowing up Everitt). It will utilize a 640X480 resolution, will have sound, will have limited AI for a variety of enemies, and if time permits will allow the use of a joystick in addition to the keyboard input. It will need collision checking (massively) along with bitmap, and character manipulation. A total of 4 team members will be needed.
Air Command Writeup

Group Photo

  • Mike Word: AI, Graphics, Enemy Movement
  • Leyla Badakhshanian: Keyboard, Timer, Gameplay
  • Gabe Bergman: Graphics
  • Scott Bessler: Collision Detection, Gameplay

Asteriods..The Next Generation

Our final project will be a spin off of the old arcade game asterioids. We plan on implementing the game in high res graphics in protected mode. In addition we will also use sound. The game play will be taken to a new level. Instead of one screen full of asteriods you need to destroy to advance to the next level, we will implement a larger gameboard, with spaceships, asteriods and space mines. We also plan on adding new weapons and power ups. Areas of expertice include knowledge of high res graphics, knowledge of the sound lib, knowledge on how to rotate image files on screen, and how to detect various forms of collision.
Asteriods..The Next Generation Writeup

Group Photo

  • Neil Patel: Engine
  • Mike Edwards: Graphics
  • Eric Kretzer: Engine/Sound
  • Jonathan Loveall: Engine

Battleship

This is a real mode game that looks like the MB game, but is very different (it's still turn based though). First, the ships move, the carrier launches aircraft, the sub can submerge, the destoryer hunts the sub, and the cruiser shoots down aircraft. The battleship rules the waves and can fire her guns on any square on the field. This project needs 3 or 4 team members to help with Gameplay, networking, graphics, and sound. The game will be 2 player, and will need 2 computers.
Battleship Writeup

Group Photo

  • Steve Nalywajko: Gameplay / Networking
  • Jenni Kaul: Gameplay / Networking
  • Joel Biskie: Graphics / Sound
  • Tim Drews: Graphics / Sound

Columns

A puzzle game where blocks of the same color need to be matched. There are five different color and each piece will have 3 blocks. Each block will be a color and a pieace will contain a randomly generated group of these colors,(they could all end up being the same color). If three blocks(not piece) of the same color are matched then those blocks are cleared. More then 3 blocks could be cleared if the same color piece is touching the 3 blocks that have been matched. The blocks could touch vertically, horizontally or diagonally as long as three of the same color blocks touch and there needs to be at least 3. There will be a point total and the more points attained the faster the pieces gets. The piece can also move the block to change the order of the colors, There will be a 'white' piece which will have all 3 blocks white that will take on the color of the block it touches and will clear all the blocks of the color touching that color block. If blocks get cleared, horizonatally or diagonally, then the blocks above them will fall to fill the empty block that was left from the blocks that cleared.
Columns Writeup

Group Photo

  • Ibrahim Jilani: Gameplay
  • Hussain Jilani: Gameplay
  • James Player: Graphics/Custom Hardware

Cyber-Tanx

Cyber-Tanx will be a 3-d battle game based on a 2-d plane. We will utilize two seperate windows. One will be used for the driver view and the other will be used for the shooter view. The game is meant to be played with two players using the keyboard/mouse as the main input for the driving/shooting. There will be other tanks that will serve as targets for the player(s). The graphics will be rendered in 3-d wire frame similar to the movie Tron. The project will require four members in implementing the 3-d wire frame engine, the physics engine, 3-d models, and a menu system with the option of sound and AI if time permits.
Cyber-Tanx Writeup

Group Photo

  • Steve Pachol: Physics engine/Game Engine
  • Ron Li: 3D Graphics, Interrupts, Menu
  • David Bradsher: 3D Graphics, Game Engine
  • Gustavo Medina: Physics engine/Game Engine

Delivery Order-processing system

Okay, basically the program is used for taking orders in a pizza delivery service. This will be run on a client-server network, where orders will be placed and entered into the client machines, and displayed and printed on the server. There will be a graphical interface, hi-resolution (likely 640x480x32bit colors), that is run by keypress and mouse. Features will include an updatable text database (saved on the server) of customers, an updatable menu (prices, etc), and a specials category for short-term menu changes. Upon full input of order, the order (Customer, address, phone number, order, price, time) will output onto the server. The program will then return to the menu screen for further input. Exit to menu screen will be possible at any screen. The user can exit the program from the menu screen. The program should be user-friendly, efficient, and colorful. Group already mainly established, any who wish to join may email the team leader.
Delivery Order-processing system Writeup

Group Photo

  • Charles Bank: Coordinator/ IO interface
  • Jillian Lee Windelborn: Data Structures, File Processing
  • Jeff Brasen: Network Interface
  • Christopher Ellison: Graphical Interface

Dirty Fighting

Like street fighter, only with "low blows". 640x480 32-bit color, 2D side-view one-on-one fighting game. Set on the hallowed halls of the UIUC campus, duke it out for the right to not roll around on the floor, crying and holding your injured loins.
Dirty Fighting Writeup

Group Photo

  • Mark Flider: Graphix
  • Saeed Noursalehi: (Dirty) Fighting Engine

Eagle Hunter (Shooting Gallery)

Our project is to construct a side scrolling shooting gallery type game in 640x480x32, loosely based on the original ‘Duck Hunt’ for the 8-bit Nintendo system. There are several components to this game. First, and most notable is the 4 level parallax scrolling that will be employed to make the background scroll in a realistic manner. Further the ‘eagle’s’ flight across the screen will be animated, containing several frames of motion to make it look more realistic. The next component of our game is collision detection. In order to determine if the ‘eagle’ has been hit, we must implement collision detection between the mouse pointer and the actual duck graphic. In order to add complexity to the game system, we decided to add a second player competitive mode, in addition to the one player mode. In the second player controls the eagle and attempts to evade the first player ‘hunter’. Additionally, our game will feature multiple weapons that can be purchased as the player gains more points from killing ‘eagles’. Each weapon will have a different area of effect. For example a long rifle will be extremely accurate, but it will only hit a very small section of the screen (1pixel). In contrast, a shotgun will ‘hit’ the ‘eagle’ if it gets anywhere within the outer rectangle that defines the ‘eagle’ image. Additional weapons will include the SIG SG552 Commando assault rifle, and time permitting hand grenades (similar to T2 arcade game grenades that kill everything on screen) and a pistol. In addition, each weapon will have a different recoil effect, which will ‘knock’ the mouse cursor upwards to simulate the effect of the recoil of the weapon. Weapon purchasing will be done via the ‘weapons shop’ section of the game, which will include pictures of all of the weapons, with mouse-over graphics and a nice looking GUI to conduct purchasing.
Eagle Hunter (Shooting Gallery) Writeup

Group Photo

  • Brandon Barr: Gameplay/Graphics
  • Dan Lasky: Graphics/Animation
  • Chris Moy: Interface/Protected Mode Sound
  • Geewah Mak: Gameplay/Interface
  • Eric Hill: Interface/Weapons

ECE291 Pinball

Our project will be to implement a 2D pinball game, a la Epic Pinball. The game will have high-res graphics and a full digital soundtrack. If time permits, multiple tables will be included
ECE291 Pinball Writeup

Group Photo

  • Joel Jordan: Sound
  • Ryan Mokos: Graphics
  • Kuan Chen:

ECE291 Zelda

This game will imitate Nintendo's Zelda, but will be from the perspective of an ECE student. Evil LAS students have taken over the campus and you must destroy them and regain control of Everitt. Four team members will be needed to work on the gameboard, gameplay, graphics, and the other aspects of the game.
ECE291 Zelda Writeup

Group Photo

  • Nick Riordan: Game Play/Design & Implementation
  • Keith Bushell: Game Play
  • Daniel Grzeda: Graphics
  • Craig Stapleton-Corcoran: Sound/Graphics

Escape from Everitt!!

Our team of three will create a 2-D 1 player virtual shoot 'em up game that pits a lonely ece291 student against his classmates and worse, his evil professors. This game will have three levels, each of which will have a boss to beat at the conclusion. We will need to be proficient in protected mode, synchronous gameplay, graphics, and sound to produce a game that will strike fear in each and every student that dares to enroll in the ECE department.
Escape from Everitt!! Writeup

Group Photo

  • Dennis Matthews: Sound
  • Nicola Lostumbo: Graphics
  • mohamed mohamed: Game Play

Fastball

A spinoff from the classic "Breakout". The player has a paddle which they can move from side-to-side. They use this to deflect a ball around a gameboard attempting to break bricks. You knock all the bricks out, you progress to the next level. Some bricks have hidden surprises which have various effects such as shrinking the paddle, changing the physics, etc... You lose a ball by having it go off the bottom of the screen. Lose all your balls, you lose the game. Hours: 100 3 additional team members. Graphics, gameplay, sound(?), and more!
Fastball Writeup

Group Photo

  • David Scherba: Gameplay
  • Bradley Berkin: Graphics
  • Chien Liang, Teo: Sound
  • Cheng Chang Wong: Graphics/ Gameplay

I Can't Believe It's Not GameBoy!

This project will partially emulate Nintendo's system that just refuses to die -- the GameBoy. It will take advantage of the sound and graphics capabilities of the Win32 API (using the win32NASM package -- we realize we are on our own with the Win32 API, but most of that code is complete at the time of this writeup), mainly for sound and graphics output and keyboard input (and possibly joystick input). The CPU and graphics processors will both be fully compatible with the GameBoy. The I/O system (including user interface and Win32 "glue"), sound processor, and memory system will be at least partially compatible with the GameBoy. NO COMMERCIAL ROMS WILL BE INCLUDED IN OUR HANDIN. Any ROMs we include will either be under a lisence that allows free distribution or we will get explicit permission from their authors. If we demonstrate a commercial ROM in class, we will provide proof of ownership and we will not distribute it. Three team members are required.
I Can't Believe It's Not GameBoy! Writeup

Group Photo

  • Joel Hardy: Graphics processor and I/O system
  • Chris Bennett: Sound Processor
  • Scott Rubik: CPU

Punic Wars

The plan is to make a two player game that centers around the Punic Wars of Rome vs Carthage. The interface will be similar to Sid Meier's Civilization. Each player controls one city (Rome or Carthage) and uses strategy in city improvement and manufacture of miltary units with turn based fighting to wipe out the opponent's city. Expected time is from 400-500 prog hours including planning. The game will feature PM graphics, likely 640x480 with 16-bit color. A mouse interface is a must, and we hope to implement simple event-driven sounds. We hope to focus on not just flashy graphics, but also good gameplay. Skills Needed: Graphics, Sound, Gameplay Engine, Mouse Interfacing We are flexible about this idea, and member specialities.
Punic Wars Writeup

Group Photo

  • Anthony Syzdek: GamePlay
  • Kevin Hallen: Graphics
  • Karim Benjelloun: Public Relations
  • Curt Bilyeu: General

Realtime 3d render engine and demo.

The product of this project will be a demo. A program which will show off the skills and creativity of the authors as well as the raw processing power of the computer. The first portion of the demo, the 3d render engine, will consist of a set of routines to draw (render) 3d polygon objects onto a 2d screen with lighting, shading and foreshortening(perspective) effects. Time allowing texture mapping will be implemented. Second part of the demo will be a sound engine. It will be resposible for loading sound samples, playing them, providing statistics on the playback, etc... Again, time allowing it will incorporate ability to mix multiple sound streams as well as apply sound effects to them (ex: echo). Third portion of the demo will be demo engine itself. It will consist of a set of routines needed to abstract the scene managment; loading 3d objects, setting up the scene, using 3d engine to render and animate them, using sound engine to load samples, play them, mix them together and enable sound effects. It will also coordinate (synchronize) the music with graphics.

Our demo will run in protected mode under DPMI and will use ece291lib for managing the frame buffer (since VESA 2.0 does not work under Win2K). MMX instructions will be utilized to improve performance. (basically we will create simple OpenGL like renderer, OpenAL like sound library, and code to demonstrate them both, of sourse all in assembly:)

to see an professionally done demos checkout:
heaven-7 64kb intro
or
mhc full demo
These run under Win2k
Realtime 3d render engine and demo. Writeup

Group Photo

  • Michal Sabala: render engine
  • Andy Price: sound engine
  • Philip Kim: demo engine

Revenge of the Insane ECE Student

Something went wrong in the Fab Lab. An estranged student was exposed to a toxic mix of chemicals causing him to lose control and horribly mutate. You are this student running aimlessly destroying whatever possible. The basic idea of this project began as a Rampage clone(the old nintendo game). Essentially you are a mutated being that is destroying buildings. It is a 2-d side view game where you can punch, climb, and eat things. We will be implementing this in protected mode with 32 bit color. Instead of cities in the US we will be using locations in U of I.
Revenge of the Insane ECE Student Writeup

Group Photo

  • Chris Chelmecki: Movement/Gameplay
  • Ben Bronk: Audio
  • J C Ho: Graphics/Gameplay
  • Rob Beard: Gameplay
  • Chris Tsay: Graphics

Robotic Arm Controler

Our project is to design a software interface to a robotic arm. Each of the arm's joints are controlled by RS-232 interface boxes which will be connected to our PC. The software designed will enable a joystick attached to the computer to provide the user with two dimensions of movement on the arm.

The programming challenges with this project center around interpreting the documentation for the servo control box (connected to the PC through the serial port) which controls the movement of the arm. The result of this project will be a library to support the servo control box as well as a user interface to control the robotic arm. A GUI will be designed to give the user feedback about the current position of the arm's joints as well as interface the joystick to control the arm.

Robotic Arm Controler Writeup

Group Photo

  • Kevin Michael Woley: GUI design, Main Program Control
  • Michael Barber: RS-232 Interfacing
  • Vic Elarde: Joystick Interfacing, File Input Control
  • Paul M. Jones: Serial Input/Output, Website Design

Space Ballistica 291

We are going to implement a 2D-space (aerial view) shoot-em-up type game loosely based on the classic game Asteroids. We will be using protected mode with high resolution graphics (640 x 480). A single player will control the spacecraft from an aerial view which can move and rotate across the entire screen area in all directions using the keyboard. The gameplay will consist of avoiding and destroying asteroids. If the player destroys all the asteroids in a level, the player advances to the next level. There are 15 levels in all. Areas of expertise will consist of graphic file implementation done under a protect mode environment. Also gameplay will be crucial so that smooth graphics can be implemented with the collision checking and movement of the ship, asteroids, and weapon.
Space Ballistica 291 Writeup

Group Photo

  • Nathan McClenathan: gameplay
  • Peter Chan: graphics
  • Ghazy Mahjub: intorduction and game over scenes
  • Steve Strang: gameplay

Tank Tactics

The major goal of our project is to create a tank fighting game that is based off of the original scorched earth game. To solidfy and enhance our game, we plan to implement real time play, buyable weapon systems, engine systems for tank movement, extensive menu system, and enhanced 640x480 graphics and animations. A complete and proffesional looking game is our aim. Sound and networking will be implemented time permitting. The project requires game design, sound, networking, graphics, animation, physics,and menu design expertise old website
Tank Tactics Writeup

Group Photo

  • Peter Chen: Gameplay/Design
  • Bill Little: Gameplay/Menu
  • Aalok Shah: Sound/Networking
  • James Wilde: Graphics/Animation
  • Dave Schmitt: Physics/Interface

Territory

This game will provide a 640x480 16-bit color, 2D top-view of a playing field that contains one human player and a number of computer generated enemies. The object of your player is to try to gain as much territory as possible. To do this you run around on the screen while lines are being drawn behind you. When you create a box with the lines you have drawn by running around, that box becomes part of your territory. But, if a computer player captures you or breaks your line befor you have completed the box, you die. There will be various levels of play which will controll the speed of computer players and the number of them. A certain percent of the board must be taken as your own territory under a desired time limit to go on to the next level.
Territory Writeup

Group Photo

  • Stu Johnson: game control, design
  • Joseph Kim: Sound
  • Sung H. Kim: Graphics
  • Jason Leake: AI

This Ain't Yo Mama's Gaming Engine

Our game will implement a 1st person perspective gaming engine. The engine will implement a ray-caster with the graphic mode tentatively set at Mode X (320x240x256). The ray-caster will involve a Wolfenstein like ray-caster. The game will run in protected mode. We also plan on implementing sound into the game. If time permits, we will implement weapons and enemies as sprites, as well as any other ideas we come upon when constructing the game. The MAMA Engine Development Team consists of five members. Estimated Programming Hours = Alot
This Ain't Yo Mama's Gaming Engine Writeup

Group Photo

  • Matthew Wasilewski: Sound and Gameplay
  • Jake Norbut: Engine and Graphics
  • Tom Tsou: Graphics Engine and Intro
  • Martin Puig: Mathematics and Physics algo's
  • Manas Venepally: Sound and Gameplay

Video/Audio Hardware Demo

We made a nice demo using sound and visual effects. Visual effects included a fire effect and a lens effect. There was to be a tunnel effect to be added but time did not permit us to implement it. We did have some other cool effects, like drawing circles of different colors on the screen and allow them to move around. The second fire effect is just a slight variation of the first fire effect. The lens effect was used twice on two different backgrounds, one with a background loaded from file, and the other with a changing background. We also were able to change colors of the background image by simply rotating the pallette. We also implemented sound into the whole thing to make it much cooler. We borrowed the sound code but the code still had bugs in it in which we had to modify for our needs.
Video/Audio Hardware Demo Writeup

Group Photo

  • Patrick Clerkin: video effects
  • C.J. Oster: Sound and Visual Effects
  • Matt Gumbel: video effects
  • Vishal Patel: video effects

Warsong 291

A turn based strategy game based on the original Warsong for the Sega Genesis. There are various units with different strengths and weaknesses that fight it out in simulated battles. We plan on using 640 x 480 x 32 bit color and sound. We plan on creating AI as well.
Warsong 291 Writeup

Group Photo

  • Shawn Kuo: AI/Game Engine
  • Scott Van Dyke: Sound/Game Engine
  • Eric Chun: Graphics

White Water Kayak

Plan to make a two player game in which the objective is to race against time or opponent to finish the river course in a kayak overcoming obsticles along the way. 320x200x256, top down view of the river, Screen split in half to center in each player's kayak.
White Water Kayak Writeup

Group Photo

  • Rick Tilbury: Basic Game Play
  • Paul Van Ryn: Obstacle Design
  • Andrew Uhm: Sound
  • David Choe: Loading Images

Worms 291

Create a side scrolling worms game with several weapons and with one level (for starters). Essentially Worms is a multiplayer game where a player's goal is to be the last one standing on the level. Players aim to destroy their competitors via their weapons. We expect this project to take about sixty programming hours per group member. The project will be programmed in protected mode and will utilize high res graphics.
Worms 291 Writeup

Group Photo

  • John Koktzoglou: Graphics & Gameplay
  • Cole Zemke: Gameplay
  • Thuan Le: Interrupts