This long-term, ongoing project seeks to teach software design principles to undergraduate participants by designing and implementing multi-user software inspired by the board game Castle Panic. Our talented, interdisciplinary team of computer scientists and designers has integrated a wide range of pedagogical domains into the project, such as object oriented software engineering, UML diagrams for design documentation, version control techniques, human computer interaction and aesthetic design principles, as well as socket-based peer-to-peer networking. Written in Java with the Swing library for the user interface, the project leverages object oriented design principles such as inheritance and data encapsulation through Java interfaces. Our expanded 7-person team has leveraged our extensible code base to implement many new features since last semester, including a completely redesigned GUI, network multiplayer, and a host of creative game mechanics.