Game Development Reference
defects using the same input devices available to the normal player. Black box testing
is the most cost-effective way to test the extremely complex network of systems and
modules that even the simplest videogame represents.
Figure 8.1 illustrates some of the various inputs you can provide to a videogame and
the outputs you can receive back. The most basic of inputs are positional and control
data in the form of button presses and cursor movements. These can come from a
variety of input devices: joysticks, keyboards, mice, and such esoteric devices as dance
pads, bass fishing controllers, maraca controllers, and drum controllers. Audio input
can come from microphones in headsets or attached to a game controller. Video input
can come from USB cameras. Input from other users can come from a second con-
troller, a local network, or the Internet. Finally, stored data such as saved games and
options settings can be called up as input from memory cards or a hard drive.
Figure 8.1 Black box testing: planning inputs and examining outputs.
Once some or all of these types of input are received by the game, it reacts in interesting
ways and produces such output as video, audio, vibration (via force feedback devices),
and data saved to memory cards or hard drives.
The input path of a videogame is not one-way, however. It's a feedback loop, where
the player and the game are constantly reacting to each other. Players don't receive
output from a game and stop playing. They constantly alter and adjust their input on
the fly based on what they see, feel, and hear in the game. The game, in turn, makes
similar adjustments in its outputs based on the inputs it receives from the user. Figure
8.2 illustrates this loop.