1.2  Problem

Creative Project: An Interactive Game

During the next four weeks you will design and program an interactive game in the style you have done in the first course. A game consist of several different game pieces. The game pieces move either on each tick of the clock, or in response to the keys (typically the arrow keys). There may be other changes in the game pieces over the time or in response to the key events (x key launches a shot, an animal gets hungrier as the time goes on, ...). The game pieces interact in some predefined manner. Finally, something (the state of a game piece, the interaction between game pieces) triggers the end of the game.

  1. Brainstorm with your partner about a game you would like to design. It should have at least two interacting game pieces, one of them should respond to the key events, one or both of them should respond to the time ticks. There should be an opportunity to expand the game to multiple game pieces (of at least one kind).

    Our drawing will be limited to an image composed of an overlay of basic shapes: an outline of a circle, a solid disk, a solid rectangle, a line, or a text.

  2. Write a design proposal for your game that includes the following:

    1. Game name and a sketch of one or more game scenes, including what the scene will look like at the start of the game.

    2. A list of (Scheme) data definitions for the game pieces.

    3. For each game piece describe (in English) its behavior in response to either the tick event or to the key event, or to both.

    4. Describe (in English) what are the properties and the positions of the various game pieces at the start of the game.

    5. Describe (in English) what conditions will lead to the end of the game.

  3. Add a short document outlining the possible extension to your game (how it may include multiple game pieces, increase the difficulty of the game. etc.)

Note 1: The complete description should not exceed two pages. It must be typed, though the screenshots can be drawn by hand.

Note 2: You will get comments on your design describing what features are to be implemented, which should be postponed or modified.