Class assignments and computer games don’t usually have much overlap, but one Tuesday evening a few weeks back, it was Demo Day in Ming Chow’s computer science class, Introduction to Game Development, and the work was all about the play.
Click the play button to see a video of the game Bump ’n Jump developed by Mireille Gallegos, A11, Aaron Haurwitz, A09, Martin Rosas, E09, and Christopher Snyder, A11.
The 16 students in the Experimental College class had to present two-dimensional computer games they and their team members had developed from scratch and play them—for a grade. The playing was relatively easy: killing off relentless zombies in the Right 2 Live game by one team, gobbling up stars and points and avoiding various enemies in another one called Bump ’n Jump. But the work that led up to the demos was anything but easy.
The students, about half of whom are computer science majors, have clearly played many a computer and video game, but it’s another thing entirely to build one from scratch. “This project developing two-dimensional games is not easy,” says Chow, E02, E04. “They have to put together a project proposal and a design document, usually six to nine pages, outlining the plan for the game and what they want to include. Then, of course, there’s development. It’s a team-based approach that simulates software development in the real world, game industry or non-game industry.”
Chow, who started teaching the course three years ago, is an avid game player. “I’ve had every Nintendo system ever made, except for the Virtual Boy,” he says. When he was in high school, he created a number of games and hacked open-source games. Now he’s tinkering around with developing games for the mobile platform—think of all those iPhone apps that are making the rounds.
“The current generation is so attuned to video games or games of some sort,” he says. “Games are not going away—they are part of life, part of the culture.” It’s also big business. In 2007, U.S. computer and video game software sales alone totaled some $9.5 billion, according to the Entertainment Software Association.
Building computer games is a great way to teach the real-life engineering skills that students need, Chow says. “In the real world, you’re going to work on big projects, and you’re going to work with other people in teams,” he says. That’s why the class is broken up into four groups, which have to work on the 2D project and a final group project as well.
“The best part of the class is the assignments, because Ming basically lets us loose to get creative, to play to our own visual strengths and try to grow on the things that we hadn’t experienced before,” says Aaron Haurwitz, A09.
“Most of the computer science projects I’ve made,” says Ronald Laidley, E10, “are trying to get you to learn the language you’re using, like C++, and nothing seems like I was being really creative. I might have been proud of some of the things I’ve done, but nothing like this. This was an actual game that people can play.”
As students wander into the classroom in Braker Hall, there’s a general hubbub as they talk, catching up on their projects. “This 2D game project was not to torture you folks,” Chow says, and most of the students smile.
First up is the team that built a game they call Bump ’n Jump. It’s a classic kids’ computer game, with a bouncing ball that collects points by snagging hovering stars, all the while avoiding roving dogs and others enemies, which will pop the ball and put the player out of business.
The game isn’t necessarily easy: the first student in the group takes the controls at the laptop, which is being projected on the screen, and gets gobbled quickly—it’s his first time with the fully functional game. Eventually he triumphs, conquering the various levels.
“Games are not going away—they are part of life, part of the culture,” says Ming Chow, E02, E04.
The next group members call their project, with tongues planted firmly in cheeks, the Aqua Teen Hunger Force Colon Battleship Colon Mooninites vs. Plutonians. It’s a space-age variation on the classic board game Battleship. There are three levels. “Hard is brutal, normal is OK, and easy is extremely easy,” says one team member before starting it up. “So let’s go with normal.”
The programming is clever. “Normal will guess randomly, but when he hits a ship he’ll follow it,” says team member Michael Degatano, A10. “Hard will start on a random row, and he will know what your smallest ship size is, so after he’s sunk ships, he keeps track of which ones he’s sunk. . . . They’re pretty smart—they’ll find you.”
“I’ve lost to normal,” adds another team member.
And then the four guys in Team ZombieToad take the spotlight, showing off their Right 2 Live game, a take-off on the popular Windows and Xbox game Left 4 Dead. As the industrial music pounds, the players shoot the relentless zombies, who keep coming in wave after wave. By the end, the zombies have overrun our heroes. But not to worry: there’s always another game.
“This is a very good set—I’m very happy with them,” Chow says to the class. “I hope you’re proud of what you did.”
Many of the students are here for fun and learning, but some might well go on to work in game development shops. Three alumni of the class are now working at game companies, Chow reports.
“I love programming video games,” says Degatano, a math major and computer science minor. “It’s what I want to do, though it’s a tough market to get into these days. This course was right up my alley.”
Next up, the final project. Several groups are expanding their 2D projects. But one is starting from scratch. Ming looks a little surprised: their 2D project was impressive already. “All right you guys,” he says, “good luck.”
Taylor McNeil can be reached at taylor.mcneil@tufts.edu.