Remixing with Scratch
Standing on the shoulders of Giants
We are using Scratch at DHF to begin learning video game development. Scratch is a visual programming environment developed by MIT, and it is a powerful tool both for learning the fundamentals of coding, as well as for prototyping game designs.
One of the awesome features of Scratch is the ability to Remix the projects of other users, and learn how they built their programs. This is particularly useful for understanding how other users designed particular game mechanics. I wanted to learn how to create scrolling backgrounds for use in my projects so that I could build game environments that were larger than the 480x360 project screen that Scratch provides. After some searching on the Scratch Wiki, I found this Mario Scroller.
Since I wanted to help my students at DHF, I remixed this project by adding comments to all my blocks of code to explain what each block does to users who look at the code. Other changes included tweaking the speed of the scrolling and changing the height of the jump. Remixing allows us to make changes to the programs of others, and fiddle with all the moving parts of the code.
Scrolling is one game mechanic that allows game designers to create game environments larger than a single screen. If you look at the mario scroller, you will notice that Mario never actually moves left or right on the screen, the background moves behind him instead. Only his vertical jump changes the position of the character on screen.
You can find more about a variety of game mechanics at the Scratch Wiki. Just search for keywords!