Gizmoball [se011 style]
A project by [Terry Koo, Richard Hu, Flora Lee, and Thomas Lin] [team se011]
Your final project (for MIT's Software Engineering course 6.170) is to design, document, build, and test a program that plays Gizmoball. Gizmoball is a version of pinball, an arcade game in which the object is to keep a ball moving around in the game, without falling off the bottom of the playing area. The player controls a set of flippers that can bat at the ball as it falls.
[what we delivered]
A flexible [fully tested and documented] game-developing platform where the user can place assorted bumpers, flippers, paddles, absorbers, balls, asteroids, spaceships and custom shapes on a board. The user can then assign these objects various properties, such as absorbing, glowing, collapsing, friction, gravity, track motion, gun firing, color, keypress triggering, etc. The board created can then be run with realistic physics and smooth animation. Our design allows for countless games to be designed, including the several shown below.
Images from left to right, top to bottom - realistic pool simulation, a ship exploding into asteroids, arkanoid, bomber game, maze screensaver, kitten playing with balls, airplanes dogfighting over MIT, asteroids. And of course, the basic pinball..
"Jeremy [head TA] and Jeff [another TA] are dropping their jaws over this." - Felix [our TA]
"This is all in java?!" - [a TA]
"No matter what we did, we couldn't get the system to run slow." - John Guttag [professor]
"Good job. No, great job." - Felix [our TA]
"What impressed us was that they were able to implement so many different games using the same engine." - John Guttag [professor]
Winner - 6.170 Best Overall Gizmoball Award, Spring 2001 (picture)