Games can be a valuable tool for enriching computer science education, since they can facilitate a number of conditions that promote learning: student motivation, active learning, adaptivity, collaboration, and simulation. Additionally, they provide the instructor the ability to collect learning metrics with relative ease.