Space Gem is a game to teach the basics of music theory to elementary and middle school students. It uses "gems" as an abstraction of musical notes, to ease the cognitive burden associated with understanding modern standard musical notation.
This game was created as a final project for the MIT class 11.127/CMS.590: Design and Development of Games for Learning.
In order to run the game, you will need an up-to-date version of Python (at least 3.6). You can check your Python version by executing python3 --version
in a terminal. If needed, you can find help with installing or updating Python here.
You will also need Pygame. It can be installed by running pip3 install pygame
in a terminal.
You can launch the game with the command python3 game.py
.
game.py
has themain
method for launching and running the gamesetup.py
has general constants that can be adjusted to customize the look and feel of the gameutils.py
has general utility classes likeScene
,Vector
,Button
, andTextBox
menus.py
has the machinery for managing scene transitions- world 1:
- code is in
platformer.py
- level specifications are in
world1.py
- code is in
- world 2:
- code is in
spaceships.py
andinterval.py
- level specifications are in
levels
in pickled (binary) format, they can be changed by editing and re-runningmake-levels.py
- code is in
narratives.py
contains the intro text displayed at the beginning of the game, each world, and each level
- pressing
0
on the title screen unlocks all levels