We've done most of the hard design work for our simple robots game. To make it (relatively speaking) fun to play, we need to add some finishing touches.
New kinds of enemies. Fending off the same kind of robot all the time could get boring. This is where a good design for our interface or abstract base class will help. We'll see how good our design was when we try to add new subclasses, so we might have to go back and tweak our original interface.
Logic to actually run the game. Games are more fun when you can actually win, so we need to decide how that happens, and if we need to design a new class to manage the gameplay. And about the actual game structure: should we have multiple levels? is there a score? ...
Finishing touches and parameter adjustment. This is where most of the work would come in if we wanted to get this to a finished product stage. We need to answer questions like:
- What's a fair initial configuration? How do we ensure that it's possible to win each time?
- What speed(s) should the characters be allowed to move?
If we have time, we'll take a look at how our class design would have to change if we wanted to support additional game entities, like objects or powerups for the human character to gather up.