Corrupted: A Game to Teach Programming Concepts
We are building a series of custom casual games to support teaching and learning of introductory programming (CS1/2) concepts with a focus on ease of adoption. Our games are innovative twists on popular casual genres, and each game is designed explicitly for teaching specific programming concepts (e.g., conditionals, arrays). Based on these games, faculty can explain and students can explore CS1/2 concepts through engaging gameplay mechanics by working with a simple Application Programming Interface (API) defined for each game. Faculty can construct small and fun games to demonstrate concepts while students can exercise their own understanding and creativity by customizing the game and making it their own. To verify the effectiveness and to ensure educational objectives can be accomplished, sample teaching materials have been developed using these APIs. To support selective adoption of the materials by faculty, the games are well-encapsulated and completely independent from one another. To ensure fun and engaging experiences for students, each game is designed, built, and play tested almost entirely by undergraduate students. Based on two completed games and the associated teaching materials, feedback from novice student programmers indicates that the games are engaging and the associated APIs are straightforward to use. This paper presents our motivation and process for building casual games, and discusses the API development and results.