Experience with Dream Coders: developing a 2D RPG for teaching introductory programming concepts

  • Authors:
  • Jack Keng-Wei Chang;Long Hoang Dang;Jebediah Pavleas;Joseph F. McCarthy;Kelvin Sung;Jason Bay

  • Affiliations:
  • University of Washington, Bothell, Bothell, WA;University of Washington, Bothell, Bothell, WA;University of Washington, Bothell, Bothell, WA;University of Washington, Bothell, Bothell, WA;University of Washington, Bothell, Bothell, WA;Glu Mobile Inc., Kirkland, WA

  • Venue:
  • Journal of Computing Sciences in Colleges
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

The Dream Coders Project aims at developing video games to facilitate learning of introductory programming concepts with two ultimate goals. First, to produce a collection of game-based assignments that faculty can use to teach introductory programming concepts, even if they have no background in computer graphics or video game development. The faculty should be able to adopt any of the assignments and integrate them into their existing classes with minimal overhead. Second, to develop a framework for overcoming the typical shortcomings of using video game-based assignments in introductory programming classes: they are typically "pseudo" games that are neither fun nor playable outside of class assignments. This paper discusses the first phase of the project-we designed and implemented a traditional top-down Role Playing Game (RPG) where students play the role of the hero, and can explore and extend a fantasy environment that is incomplete in functionality. Through a series of programming assignments, students can add functionality and increase the playability (and fun) of the game. The programming assignments are independent from one another, so that the faculty can pick and choose specific ones to integrate into their existing courses. The discussion in this paper focuses on two perspectives: building the RPG game as a 10-week-quarter undergraduate independent study course; and the process, schedule, and results from the project. As an independent study course, the project was a success. We were able to deliver a completed RPG game with multiple "quests" integrated as programming assignments. The paper concludes with lessons learned from this project and a discussion of the pros and cons of using a complete playable game for teaching introductory programming concepts.