Rave Cave


This project was created as a coursework submission for our 3rd Year Group Project.

Key Features:

  • Creation of custom game engine tailored for our project, built by integration of our own custom code and the external libraries SFML1, Irrlicht2, GLM3 and Anax4.
  • Rendering using the irrlicht engine.
  • As of the printing of this report, we had the grand total of:
    • 13,000+ final lines of code,
    • 1,350+ git commits,
    • 3000+ source files changed throughout the project,
    • 41,000+ git additions,
    • 24,500+ git deletions.
  • Automated Continuous Integration testing using Travis CI.
  • Extremely modular and flexible core game framework using the ​Anax “entity component system” library.
  • Cross platform support using the CMake build system
  • Creation of a separate client and server, with common code in a shared library that is linked at compile time.
  • Low latency networking for synchronizing game state between the server and all connected clients, created with a packet based interface provided by SFML.
  • Tight synchronisation of music with client and server game clocks, over a variable latency network using NTP.

This project won the Graphcore prize for best 3rd year games project.

  1. https://www.sfml-dev.org/ 

  2. https://irrlicht.sourceforge.io/ 

  3. https://github.com/g-truc/glm 

  4. https://github.com/miguelmartin75/anax