Learn to create your own games by dissecting a simple homebrew game.
With a little knowledge, some time, and the right tools, game programming is within your reach. As [Hack #91] and [Hack #92] demonstrated, Python and PyGame are two excellent tools for creating interactive animations. They’re also good for the rest of game programming.
Let’s explore a simple game that has all of the essential features of any 2D arcade game: animation, collision detection, user input, and a winnable challenge. Best yet, it’s a couple of hundred lines of code that you can enhance, change, polish, and adapt to create your own masterpieces.
In Bouncy Robot Escape, you control a robot trying to escape from the laboratory into the wild world of freedom. Several colorful, giant, bouncy balls (a tribute to The Prisoner) block your path. You can block their attack with a small force field. Can you find the door in time?
The game starts by loading several other Python modules:
#!/usr/bin/python import math import random import sys import time import pygame from pygame.locals import *
time modules provide
math, random number, operating system, and time-related functions,
respectively. You’ll encounter them all later. The
pygame lines should look familiar; the second
imports some variables used for input handling.
The main entry point of the game is the
function. It’s very similar to that in
def main( ): ...