Abstract:
Game development is a rapidly growing industry. As the industry grows, so does the complexity of the products that it produces. Despite this growth, there has been a lack of design patterns specific to game development that developers might follow to create well-structured games. Modern game developers mostly make use of traditional software engineering design patterns, or simply organise their code in an ad-hoc manner. In this research, existing research was examined, and opinion polled among game developers to establish a design pattern that was tailored to game design. The result was a design pattern that not only organises the code component of a game, but also considers the creative component of a game as separate modules. This would allow game developers to greatly increase code reusability across mechanically similar games, as changing assets and scripts would be a simple matter of replacing the existing modules. Once the game design pattern was established, a benchmark scenario was implemented using the pattern, and evaluated against the criteria of performance, reusability, extensibility, and usability, alongside two alternative implementations that were developed more traditionally. The evaluation found that games using the pattern could be created and modified 54% faster than with traditional techniques, and that the pattern has room for further enhancement.