Scratch is an easy to learn multimedia system that encourages community interaction and knowledge sharing. It is primarily intended to be an educational tool for younger users, but it can be enjoyed by people of any age. It features an asset management system based on sprites - objects that can have scripted behaviours, changeable appearances and sounds. The sprites are controlled by a surprisingly powerful andn easy to learn graphical scripting language. Think of it as a good first step toward learning Flash programming
:: The Scratch Community ::
Like many modern multimedia technologies, one of Scratch's best features is it's website and user community. Scratch users can use the desktop based design tool to create and play with their own creations. Doing requires no registration. However, if you want to share your work on the web, you can publish it to the Scratch website at MIT. Once it is there, users can try your work, leave you comments, and, perhaps most excitingly, remix your work. You can remix other's work too. All contributers to remixed work are properly attributed under a Creative Commons Attribution-Share Alike License - and there's a cool way to see how the remixes all fit together.
Program Block Categories: Program blocks are organized in to logical categories to make the easier to find.
Program Blocks: Once you have selected a category, drag block from here into the scripting area.
Asset Editor: This panel can edit scripts, pictures (costumes) and sounds associated with a sprite or the stage.
Scripts: In this tab you drag program block around to edit a script. Some block contain other blocks. Some blocks have editable values.
Costumes: Sprites can have multiple costumes that can be switched to create animtion effects. You can create and edit pictures directly in Scratch, capture them from a camera, or you can import them from a file.
Sounds: Sprites can have sounds that belong only to them. You can record them inside scratch, or import them from a file.
Asset Manager: You can create or import sprites with the icons at the top. Select assets to edit them. Drag them onto the stage to put them in your project.
Editing Tools: Use these to edit your scripts or to manage your sprites. The tools are, from left to right, Clone, Delete, Grow and Shrink.
Presentation Mode: Some effects don't work in the preview stage. You have to switch to presentation mode to see them.
Stage: Drag sprites here if you want them to be part of the completed project. Sprites can be moved, grown or shrunk here. It is also possible to see messages here.
Start/Stop: Many projects won't do anything until you press the green flag. If Scratch seems to slow down, but the stage isn't showing any action, a script may be stuck in a loop. Press the red stop button to stop all scripts.
:: Tutorials ::
Your lab instructor will lead you through an introductory tutorial in your lab session. If you need more help, you can use the excellent video tutorials on the Scratch site, or you can look at/remix an existing project (registration required).
For this lab assignment try to complete these challenges:
Follow the Line
This challenge is based on an idea by Gilles Jobin. The following is his video (it's in french, but you get the idea...). Create a project where you can drop a ball onto a line and have it follow it. This can take as little as 10 linesof script to accomplish:
Jump Man Make a sprite that moves smoothly left and right with the left and right arrow keys, and jumps like Mario when you press the up key. He should jump in a parabola and stop when he touches a line/platform. See the video below for an example:
Parabolic jumping can be achieved like this:
continually add a a "velocity" variable onto the character's position.
When your character is touching the ground:
set the velocity to 0 and keep it there.
When your character jumps:
Set the velocity to a positive value so he will jump up.
The longer the character is in the air the smaller the velocity gets.
Eventually the velocity becomes negative and the character starts to fall.
OR Create a multimedia extravaganza. Use a wide variety of program blocks to control your project.
0-1: Technical requirements
your name must appear in your project somewhere and I must be able to see it easily.
show that you know how to import or create art and sound.
show that you can control sprites in your project in a variety of interesting ways.
0-1: Art - quality and creativity.
What to submit:
Scratch files .(sb files), or links to your published scratch project.
If you remixed someone's work or borrowed sprites, give me links to the projects that you used.
This is due at the beginning of your lab next week.