December 14, 2009

Senior Programming Class holds "Super Tetris" Competition

Tetris
"Super Tetris" extends the popular Tetris game by adding pieces of 5, 6, or 7 squares. Groups of students pass qualification, group elimination, semifinals, and the final match. They learn how to create graphical user interfaces, use TCP sockets to communicate, and develop strategies to win.

In Fall 2009, the ECE 462 "Object-Oriented Programming using C++ and Java" held their "Super Tetris" competition.  Super Tetris extends the popular Tetris game by adding pieces of 5, 6, or 7 squares per piece. Two programs compete side-by-side.  When a line is eliminated, this line excluding the last filled square (or squares) is sent to the bottom of the opponent's side.  When this line is eliminated the second time, the line is completely removed from the game.  If a player cannot place a new piece, this player loses the game.  Tetris is one type of 2-dimensional packing problem and it has been proven NP-hard.

Forty-six students are divided into 15 groups.  The groups passed qualification, group elimination, semifinals, and the final game. This assignment is divided into four stages: piece generation, single-player game, two-player game, and competition.  The students learned how to create graphical user interfaces, use TCP sockets to communicate, and develop strategies to win.  The instructor is Yung-Hsiang Lu; he received the Purdue "Class of 1922 Helping Students Learn Award" (with David Meyer and Cordelia Brown) in 2008.  The teaching assistant is Guangwei Zhu; he received the Magoon Teaching Award in 2009.

Demo videos