For this project, you may choose an arbitrary game that is played in a 2D or 3D environment with one or more players. The aim of this project is to implement a user interface and game engine with 2D or 3D graphics and suitable dynamics (physics) simulations to run this game and potentially add networking capabilities. The focus could be specifically on 2D or 3D environments, how to generate, store, manage and render them. You could consider specific rendering effects, e.g, towards realism in real-time or some non-photorealistic rendering approach. You may consider realising the usual Newtonian physics for the specific game context or consider alternative physics, such as an adaption of quantum mechanics for a game (e.g. see Alice in Quantumland). Depending on the complexity of the graphics, one may also focus on advanced game AI in these environments or multi-player networking and synchronisation.
You will need good programming skills in a language of your choice (C, C++, D, Java, Python, Scheme, Haskell, Lisp, etc) and will have to acquire a good understanding of graphics and game dynamics, related mathematics, and potentially networking and AI techniques. Ideally, the result is released under the AGPL V3 or a compatible license.