The requirements are quite vague, they just want us to show that we are able to create an engine which can develop multiply different games, so I'm looking for a design pattern which is as abstract as possible.
We gain more more points for having a decent working design pattern, also software functionality and technical quality
This game engine will be used to develop three game prototypes of different genres. The computer game
prototypes will be used as a vehicle to demonstrate the versatility of the game engine. Groups may create
any game type they wish, including but not limited to Role Playing Games, Motor sport racing, simulation,
first person shooter or platform. It is your responsibility to ensure that your prototype runs on your chosen
target execution platform
If you guys still require more information to assist me with my problem, I can link pretty much the entire documention
It seems to me that Design Patterns aren't the issue. But the flexibility of the game is. For instance, if your game should support: FPS, RPG, and Racing, then that tells me that your camera [class] should be flexible enough to handle those different views. From the start or even on the fly.
Something like (note - this is just pseudocode, pure pseudocode):
public void View (enum ViewType, int? distance, int? rotateAngle)
{
// ....stuff
}
enum ViewType
{
FPS = 0,
TPS, // third person
RPG, // above the world
}