Winter 2024 CS 32

Programming Assignment 3
Marble Madness

Part 1 due 11:00 PM Saturday, February 24
Part 2 due 11:00 PM Sunday, March 3

The Project 3 specification document is posted.

Updates

To see what the game looks like in action:

You can also download the project skeletons with the code we've written, for Windows, macOS with Xcode, macOS on the command line, or Linux, and make sure you can build and run them. All they'll do is close the window after you type q, but at least you can verify that the graphics library works for you. Even if you're not ready to put time into this project at this moment, test this now! You don't need to write any code to test this.

The only files you will modify are Actor.h, Actor.cpp, StudentWorld.h, and StudentWorld.cpp. Indeed, those will be the only code files you'll turn in, so in implementing your solution, you must not depend on any changes you make to code files other than those four.

At some point in Project 3, you may find the Stringstreams writeup helpful.

As a simple example of how a StudentWorld object and an actor object can interact, this demo zip file has the StudentWorld and Actor files for a simple demo that has one object appear that plays a sound whenever you hit the space key. That object never dies, so type q to end the demo. (Our framework intercepts the q to end the game.)

Notes for Visual C++ users:

Notes for Xcode users: