Scratchreferenceguide 14
Scratchreferenceguide 14
edu
REFERENCE GUIDE
1
Scratch is developed by the Lifelong Kindergarten Group at the MIT Media Lab, with fnancial support
from the National Science Foundation, Microsoft, Intel Foundation, Nokia, and the MIT Media Lab research
consortia.
1. INTRODUCTION
Scratch is a new programming language that makes it easy to create interactive stories,
games, and animations and share your creations with others on the web.
Tis Reference Guide provides an overview of the Scratch software. If you are just
getting started with Scratch, we encourage you to try the Getting Started Guide frst
(available from the Support section on the Scratch website). Ten, if you want more
detailed information, come back to the Reference Guide.
Te Scratch website has many other resources to help you learn Scratch: Video tutorials,
Scratch cards, and Frequently Asked Questions (FAQs). Please see
http://info.scratch.mit.edu/Support/
Tis guide is for Scratch version 1.4, released July 2009. For the latest version of this
Reference Guide, please see: http://info.scratch.mit.edu/Support/
BASIC INGREDIENTS OF A SCRATCH PROJECT
Scratch projects are made up of objects called sprites. You can change how a sprite
looks by giving it a diferent costume. You can make a sprite look like a person or a
train or a butterfy or anything else. You can use any image as a costume: you can draw
an image in the Paint Editor, import an image from your hard disk, or drag in an image
from a website.
You can give instructions to a sprite, telling it to move or play music or react to other
sprites. To tell a sprite what to do, you snap together graphic blocks into stacks, called
scripts. When you click on a script, Scratch runs the blocks from the top of the script to
the bottom.
version 1.4
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
2
2. SCRATCH INTERFACE
STAGE
Te Stage is where you see your stories, games, and animations come to life. Sprites move and
interact with one another on the Stage.
Te Stage is 480 units wide and 360 units tall. It is divided into an x-y grid. Te middle of the
Stage has an x-coordinate of 0 and a y-coordinate of 0.
To fnd out x-y positions on the Stage, move the mouse
(cursor) around and look at the mouse x-y display just
below the Stage.
Click the Presentation Mode button when you want to present your project. To exit
Presentation Mode, press the Esc key.
Click the View Mode buttons to switch between small and large stage view. You can
use small stage view to display Scratch on small screens or to expand the Scripts Area.
y
x
x:240 y:180
x:240 y:-180
x:-240 y:180
x:-240 y:-180
x:0 y:0
LANGUAGE
TABS
Edit scripts,
costumes, or sounds.
GREEN FLAG
A way to start scripts.
STAGE
Where your Scratch
creations come to life.
NEW SPRITE BUTTONS
Create a new character or
object for your project.
SPRITE LIST
Thumbnails of all your
sprites. Click to select and
edit a sprite.
SCRIPTS AREA
Drag blocks in, snap them
together into scripts.
BLOCKS PALETTE
Blocks for
programming
your sprites.
CURRENT
SPRITE
INFO
TOOLBAR PRESENTATION MODE
Present your project.
SPRITE
ROTATION
STYLE
VIEW MODE
Change to large or
small stage view.
STOP SIGN
Stops all scripts.
SAVE
SHARE
MOUSE X-Y DISPLAY
Shows location of cursor.
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
3
NEW SPRITES
When you start a new Scratch project, it begins with a single cat sprite.
To create new sprites, click on these buttons:
Paint your own costume for a new sprite using the Paint Editor.
Select a costume for a new sprite or import an entire sprite.
Get a surprise sprite.
If you want to delete a sprite, select the scissors from the Toolbar and click on the sprite.
Or right-click (Mac: Ctrl+click) on the sprite and select delete from the pop-up menu.
To make a sprite that looks like part of the Stage background, right-click (Mac: Ctrl+click)
the Stage and select grab screen region for new sprite.
SPRITE LIST
Te Sprite List displays thumbnails for all sprites in a project. Te name of each sprite
appears below its thumbnail.
To see and edit a sprites scripts, costumes, and sounds, click on the sprites thumbnail
in the Sprite List or double-click on the sprite itself on the Stage. (Te selected sprite is
highlighted and outlined in blue in the Sprite List.)
To show, export, duplicate, or delete a sprite, right-click (Mac: Ctrl+click) on the sprites
thumbnail in the Sprite List. To show a sprite that is of the Stage or hidden, Shift+click
on the sprites thumbnail in the Sprite List - this will bring the sprite to the middle of the
Stage and show it.
You can rearrange the sprites in the Sprite List by dragging the thumbnails.
Just as a sprite can change its appearance by switching costumes, the Stage can change
its appearance by switching backgrounds. To see and edit the scripts, backgrounds, and
sounds associated with the Stage, click on the Stage icon at the left of the Sprite List.
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
4
BLOCKS PALETTE and SCRIPTS AREA
To program a sprite, drag blocks from the Blocks Palette to the Scripts Area. To run a
block, click on it.
Create scripts (programs) by snapping blocks together into stacks. Click anywhere on the
stack to run the whole script, from top to bottom.
To fnd out what a block does, right-click (Mac: Ctrl+click) on it, then select help from the pop-
up menu.
When you drag a block around the Scripts Area, a white highlight indicates where you can
drop the block and form a valid connection with another block.
To move a stack, pick it up from the top block. If you drag out a block from the middle of a
stack, all of the blocks beneath it will come along with it. To copy a stack of blocks from one
sprite to another, drag the stack to the thumbnail of the other sprite in the Sprite List.
Some blocks have white editable text felds inside, such as . To change the value,
click inside the white area and type in a number. You can also drop rounded blocks, like
, inside these areas.
Some blocks also have pull-down menus, such as . Click on the to see the
menu.
To clean up the Scripts Area, right-click (Mac: Ctrl+click) and select clean up from the menu.
To export a screenshot of the Scripts Area, right-click and select save picture of scripts.
To add a comment to the Scripts Area, right-click (Mac: Ctrl+click) and select add comment. A
yellow comment area will appear, and you can type in text.
To resize the width of the comment area, use the handle on the right edge. Click the triangle
at the top-left to collapse or expand the comment area.
Comments can be added anywhere in the Scripts area, and you can move them around by
dragging them.
To attach a comment to a block, drag the comment on top of the block. To detach the
comment, drag the comment away from the block.
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
5
COSTUMES
Click the Costumes tab to see and edit the sprites costumes.
Tis Sprite has two costumes. Te sprites current costume (girl1-walking) is highlighted. To
switch to a diferent costume, simply click on the thumbnail of the costume you want.
Tere are four ways to create new costumes:
Click to paint a new costume in the Paint Editor.
Click to import an image fle from your hard disk.
Click to take photos from a webcam (built into or connected to your computer).
Each time you click the button (or press the spacebar), it takes a photo.
Drag in one or more images from the web or your desktop.
Scratch recognizes many image formats: JPG, BMP, PNG, GIF (including animated GIF).
Each costume has a costume number (displayed to its left). You can rearrange the order of the
costumes by dragging the thumbnails. Te costume numbers update if you change their order.
Right-click (Mac: Ctrl+click) on a costume thumbnail to convert the costume into a new sprite, or
to export a copy of the costume as a separate fle.
SOUNDS
Click the Sounds tab to see the sprites sounds.
You can record new sounds or import sound fles. Scratch can read MP3 fles and uncompressed
WAV, AIF, and AU fles (encoded with 8-bits or 16-bits per sample, but not 24-bits per sample).
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
6
CURRENT SPRITE INFO
Current Sprite Info shows a sprites name, x-y position, direction, lock state, and pen state.
You can type in a new name for the sprite.
Te sprites direction indicates which direction the sprite will move when it runs a move block
(0=up, 90=right, 180=down, -90=left). Te blue line on the thumbnail shows the sprites direction.
You can drag this line to change the sprites direction. Double-click on the thumbnail to set the
direction back to its original state (direction=90).
Click the Lock to change the sprites lock state. An unlocked sprite can be dragged in presentation
mode and the web player.
You can see the current pen color (next to the Lock) when the pen is down.
To export a sprite, right-click (Mac: Ctrl+click) the sprite on the Stage or in the Sprite List.
Exporting saves the sprite as a .sprite fle, which can then be imported into another project.
ROTATION STYLE
Click the Rotation Style buttons to control how the costume appears as the sprite changes its
direction.
Rotate: Te costume rotates as the sprite changes direction.
Left-right fip: Te costume faces either left or right.
No-rotate: Te costume never rotates (even as the sprite changes direction).
TOOLBAR
Click on the Toolbar to select a tool, then click on other objects to perform an action.
Duplicate: Duplicate sprites, costumes, sounds, blocks, or scripts. (Shift+click for multiple.)
Delete: Delete sprites, costumes, sounds, blocks, and scripts. (Shift+click for multiple.)
Grow: Make sprites bigger. (Shift+click for larger size steps.)
Shrink: Make sprites smaller. (Shift+click for larger size steps.)
To return to the arrow cursor , click on any blank area of the screen.
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
7
MENU
Click the Language icon to change the language for the Scratch user interface. Anyone
can add or edit language translations of Scratch. To add or change a translation, please
refer to the Support section of the Scratch website (http://info.scratch.mit.edu/Translation/).
Click the Save icon to save your project.
Click the Share icon to upload your project to the Scratch website.
From the File menu you can create a new project, open an existing project, and save
projects to the Scratch Projects folder or to other locations.
Import Project brings all of the sprites and backgrounds from another project into the
current project. Tis feature is useful for combining sprites from multiple projects.
Export Sprite saves the current sprite as a .sprite fle, which can then be imported into
another project.
Project Notes allows you to write and save notes about your project, such as
instructions on how to use it.
Quit exits the Scratch program.
Te Edit menu provides several features for editing the current project.
Undelete allows you to retrieve the last block, script, sprite, costume, or sound you
deleted.
Start Single Stepping allows you to watch Scratch programs run one step at a time. Each
block is highlighted as it runs. Tis feature can be useful for fnding bugs in programs,
and for helping new programmers understand the fow of a program. Set Single
Stepping allows you to choose the speed of single stepping (from slow to turbo speed).
Compress Sounds or Compress Images to reduce the overall project fle size. Compressing
may reduce the quality of the sounds or images.
Show Motor Blocks adds motor blocks to the Motion category. You can use the motor
blocks to program a motor connected to your computer. Te motor blocks work with
LEGO Education WeDo (http://www.legoeducation.com).
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
8
From the Share menu you can upload your project to the Scratch website.
From the Help menu you can access a Help page with links to reference materials, tutorials,
and frequently asked questions. You can also access a page with all the Scratch help screens.
GREEN FLAG
Te Green Flag provides a convenient way to start many scripts at the same time.
Click the Green Flag (at the top-right corner of the stage) to start all scripts that have
at the top.
Te Green Flag remains highlighted while scripts are running.
In Presentation Mode, pressing the Enter key has the same efect as clicking the Green Flag.
On the Scratch website, as soon as you view a project, the Green Flag is automatically
triggered.
PAINT EDITOR
You can use the Paint Editor to create or edit costumes and backgrounds.
TOOLBAR
OPTIONS AREA
CANVAS
UNDO/REDO
CLEAR
Erase canvas.
SCALE BUTTONS
Change size of
current selection.
ROTATE BUTTONS
Rotate current
selection.
FLIP BUTTONS
Flip current selection
horizontally or vertically.
CURRENT COLORS
COLOR PALETTE
Pick the current colors.
IMPORT IMAGE
SET COSTUME
CENTER
ZOOM
ALTERNATE PALETTE
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
9
Te Paint Editor Toolbar has the following tools:
Paintbrush: Paint freehand using the current foreground color. When you click on this
tool, the Options Area shows the brush size. Click to pick a diferent brush size.
Eraser: Erase with freehand strokes. Te areas that you erase become transparent. When
you click on this tool, the Options Area shows the eraser size. Click to pick a diferent
eraser size.
Fill: Fill connected areas with a solid color or gradient. When you click this tool, the
Options Area shows the fll style (solid color, horizontal gradient, vertical gradient, or radial
gradient). Gradients blend from the selected foreground color to the selected background
color.
Rectangle: Draw a flled or outlined rectangle (Shift+drag for a square) using the current
foreground color. When you click this tool, the Options Area shows the fll style (solid or
outlined). Te outline thickness is determined by the paintbrush size.
Ellipse: Draw a flled or outlined ellipse (Shift+drag for a circle) using the current
foreground color. When you click this tool, the Options Area shows the fll style (solid or
outlined). Te outline thickness is determined by the paintbrush size.
Line: Draw a straight line (Shift+drag for a horizontal or vertical line) using the current
foreground color. When you click on this tool, the Options Area shows the brush size.
Click to pick a diferent brush size.
Text: Add text to the drawing. When you click on this tool, the Options Area allows you to
change the font face and font size. Each costume can only have one block of text.
Selection: Select a rectangular region, then move it to a new location (press delete to
remove the selection, Shift+delete or Shift+backspace to crop).
Stamp: Select a rectangular region, then copy it to new locations (Shift+click+drag for
repeated stamping).
Eyedropper: Use the tip of the eyedropper to choose the foreground color (click on the
Canvas and drag the eyedropper to pick a color from outside the Canvas).
Te Current Colors (foreground and background) are shown below the Options Area. You can
click the color swap arrow to exchange the foreground and background colors. Click in the Color
Palette to pick a new foreground color (Shift+click to select a background color). To switch
between the default palette and the continuous color palette, click the Alternate Palette.
Click the Set Costume Center button to select the location within the drawing that will be used
as the center of rotation when the Costume is rotated on the Stage.
Click the Zoom buttons (in or out) to increase or decrease the view magnifcation of the Canvas.
When the zoom is greater than 100%, scroll bars are used to pan around the Canvas. Zoom does
not change the size of the image.
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
10
To change the size of the Canvas content, or just the current selection, click on the Scale buttons
(grow or shrink). You can Shift+click on the buttons to enter a precise value. Shrinking decreases
the size and resolution of the image.
To rotate the Canvas content, or just the current selection, click on the Rotate buttons (counter-
clockwise or clockwise). You can Shift+click on the buttons to enter a precise value.
To fip the Canvas content, or just the current selection, click on the Flip buttons (horizontal or
vertical).
Click on the Import button to open an image from fle and add it to the Canvas.
Click the Clear button to remove all content from the Canvas.
If you make a mistake, you can click the Undo button repeatedly to undo the last several actions.
If you change your mind, you can click the Redo button to restore the undone actions.
3. SCRATCH BLOCKS
TYPES OF BLOCKS
Tere are three main types of blocks in the Blocks Palette:
Stack Blocks: Tese blocks have bumps on the bottom and/or notches on the top, such
as . You can snap these blocks together into stacks. Some stack blocks have an input
area inside them, where you can type a number (such as 10 in the block) or
choose an item from a pull-down menu (such as pop in the block). Some
stack blocks, such as , have a C-shaped mouth where you can insert other
stack blocks.
Hats: Tese blocks have rounded tops, such as . Tese blocks are placed
at the tops of stacks. Tey wait for an event to happen, such as a key being pressed, then
run the blocks underneath them.
Reporters: Tese blocks, such as and , are designed to ft in the input
area of other blocks. Reporters with rounded ends (such as or ) report numbers
or strings, and ft in blocks with rounded or rectangular holes (such as or ).
Reporters with pointed ends (such as ) report boolean values (true or false) and ft inside
blocks with pointed or rectangular holes (such as or ).
Click on any reporter block to see its current value.
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
11
Some reporter blocks have a check box next to them, such as . If you click in the check
box, a monitor appears on the stage, displaying the current value of the reporter. As the value
of the reporter changes, the monitor updates automatically. A monitor can display the value of
the reporter in several diferent formats:
a small readout with the name of the reporter
a large readout without any name
a slider that allows you to manipulate the value
of the reporter (available only for variables)
Double-click or right-click (Mac: Ctrl+click) on a monitor to change from one format to another.
Te slider format is available only for user-created variables. Right-click (Mac: Ctrl+click) on the
monitor in slider format to adjust its minimum and maximum values.
LISTS
You can now create and manipulate lists in Scratch. Lists can store numbers as well as strings of
letters and other characters.
To create a list, go to the Variables blocks category and click . Once you make a
list, several list blocks will appear. Te list blocks are described in the Block Descriptions section
of this guide.
When you create a list, a list monitor will appear on the stage. A list monitor shows all the items
in a given list. You can type items directly into a list monitor.
At frst the list will be empty, with length 0. To add to the list, click the + button on the bottom
left of the list monitor. Te length will increase by 1. Alternatively, you can add to the list using
the list blocks (e.g., ).
You can resize the list monitor from the bottom right-hand corner.
Note: You can right-click (Mac: Ctrl+click) on a list monitor to export a list to a plain .txt fle.
You can also import any saved plain .txt fles with values on separate lines.
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
12
STRINGS
Strings are made of letters, words, or other characters (e.g., apple; October 2009; You win!).
Strings can be stored in variables or lists (such as or ).
You can join together strings using . You can compare strings using the following
blocks: , , or .
Strings are evaluated as 0 in mathematical operation blocks (such as: ) and in blocks
that expect a number (such as and ).
KEYBOARD INPUT
You can use to prompt a user to type in a response on the keyboard. Te
response is stored in . Te question appears on the screen and the program waits until
the Enter key is pressed or the check mark is clicked.
The question appears in a voice The question appears at the bottom of
balloon when used in a sprite. the screen when used in the Stage.
is shared by all sprites (global) and is changed each time runs. If you
want to save the current answer, you can store it in a variable or list, such as:
BLOCK DESCRIPTIONS
Te Scratch blocks are organized into eight color-coded categories: Motion, Looks, Sound,
Pen, Control, Sensing, Operators, and Variables.
Motion
Moves sprite forward or backward.
Rotates sprite clockwise.
Rotates sprite counterclockwise.
Points sprite in the specifed direction. (0=up, 90=right,
180=down, -90=left)
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
13
Points sprite toward mouse-pointer or another sprite.
Moves sprite to specifed x and y position on Stage.
Moves sprite to the location of the mouse-pointer
or another sprite.
Moves sprite smoothly to a specifed position over
specifed length of time.
Changes sprites x-position by specifed amount.
Sets sprites x-position to specifed value.
Changes sprites y-position by specifed amount.
Sets sprites y-position to specifed value.
Turns sprite in opposite direction when sprite touches
edge of Stage.
Reports sprites x-position. (Ranges from -240 to 240)
Reports sprites y-position. (Ranges from -180 to 180)
Reports sprites direction. (0=up, 90=right, 180=down, -90=left)
MOTOR BLOCKS
Te motor blocks only appear if you choose Show Motor Blocks in the Edit menu or if you plug in a
LEGO WeDo. Tese blocks work with a LEGO WeDo motor. (See http://www.legoeducation.com)
Turns motor on for specifed amount of time.
Turns motor on.
Turns motor of.
Sets power of motor and turns motor on. (Ranges from 0 to
100)
Sets or changes direction of motor, but does not turn
motor on. (this way = clockwise; that way = counterclockwise; reverse =
change direction)
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
14
Looks
Changes sprites appearance by switching to diferent
costume.
Changes sprites costume to next costume in the cos-
tume list. (If at end of the costume list, jumps back to frst costume.)
Reports sprites current costume number.
Changes Stages appearance by switching to a diferent
background.
Changes Stages background to next background in
the background list.
Reports Stages current background number.
Displays sprites speech bubble for specified
amount of time.
Displays sprites speech bubble. (You can remove speech bubble
by running this block without any text.)
Displays sprites thought bubble for specifed
amount of time.
Displays sprites thought bubble.
Changes a visual efect on a sprite by specifed amount.
(Use pull-down menu to choose efect.)
Sets a visual efect to a given number. (Most visual efects range
from 0 to 100.)
Clears all graphic efects for a sprite.
Changes sprites size by specifed amount.
Sets sprites size to specifed % of original size.
Reports sprites size, as % of original size.
Makes sprite appear on the Stage.
Makes sprite disappear from the Stage. (When sprite is
hidden, other sprites cannot detect it with touching? block.)
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
15
Moves sprite in front of all other sprites.
Moves sprite back a specifed number of layers, so that
it can be hidden behind other sprites.
Sound
Starts playing a sound, selected from pull-down menu,
and immediately goes on to the next block even as
sound is still playing.
Plays a sound and waits until the sound is fnished
playing before continuing with next block.
Stops playing all sounds.
Plays a drum sound, selected from pull-down menu, for
specifed number of beats.
Plays a musical note (higher numbers for higher pitches) for speci-
fed number of beats.
Rests (plays nothing) for specifed number of beats.
Sets the type of instrument that the sprite uses for
play note blocks. (Each sprite has its own instrument.)
Changes sprites sound volume by specifed amount.
Volume ranges from 0 to 100.
Sets sprites sound volume to specifed value.
Reports sprites sound volume.
Changes sprites tempo by specifed amount.
Sets sprites tempo to specifed value in beats per
minute.
Reports sprites tempo in beats per minute.
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
16
Pen
Clears all pen marks and stamps from the Stage.
Puts down sprites pen, so it will draw as it moves.
Pulls up sprites pen, so it wont draw as it moves.
Sets pens color, based on choice from color picker.
Picking the color also changes the pen shade.
Changes pens color by specifed amount.
Sets pens color to specifed value. (pen_color=0 at red end of
rainbow, pen_color=100 at blue end of rainbow. Ranges from 0 to 200 to go
around the color wheel.)
Changes pens shade by specifed amount.
Sets pens shade to specifed amount. (pen_shade=0 is very
dark, pen_shade=100 is very light. Default is 50, unless set with color picker.)
Changes pens thickness.
Sets pens thickness.
Stamps sprites image onto the Stage.
Control
Runs script below when green fag is clicked.
Runs script below when specifed key is pressed.
Runs script below when sprite is clicked.
Waits specifed number of seconds, then continues
with next block.
Runs the blocks inside over and over.
Runs the blocks inside a specifed number of times.
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
17
Sends a message to all sprites, then continues with the
next block without waiting for the triggered scripts.
Sends a message to all sprites, triggering them to
do something, and waits until they all fnish before
continuing with next block.
Runs script below when it receives specifed broadcast
message.
Continually checks whether condition is true; when-
ever it is, runs the blocks inside.
If condition is true, runs the blocks inside.
If condition is true, runs the blocks inside the if por-
tion; if not, runs the blocks inside the else portion.
Waits until condition is true, then runs the blocks
below.
Checks to see if condition is false; if so, runs blocks
inside and checks condition again. If condition is true,
goes on to the blocks that follow.
Stops the script.
Stops all scripts in all sprites.
Sensing
Reports true if sprite is touching specifed sprite, edge,
or mouse-pointer. (Select from pull-down menu.)
Reports true if sprite is touching specifed color. (Click on
color patch, then use eyedropper to select color.)
Reports true if frst color (within sprite) is touching
second color (in background or another sprite). (Click on
color patch, then use eyedropper to select color.)
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
18
Asks a question on the screen and stores keyboard
input in the . Causes the program to wait until
the Enter key is pressed or check mark is clicked.
Reports keyboard input from the most recent use of
. Shared by all sprites (global).
Reports the x-position of mouse-pointer.
Reports the y-position of mouse-pointer.
Reports true if mouse button is pressed.
Reports true if specifed key is pressed.
Reports distance from the specifed sprite or
mouse-pointer.
Sets the timer to zero.
Reports the value of the timer in seconds. (The timer is
always running.)
Reports a property or variable of another sprite.
Reports the volume (from 1 to 100) of sounds detected
by the computer microphone.
Reports true if computer microphone detects a sound
volume greater than 30 (on scale of 1 to 100).
Reports the value of specifed sensor. To use this block, you
need a sensor connected to your computer. You can use this with a Scratch sensor
board (http://www.playfulinvention.com/picoboard.html) or with LEGO WeDo
(http://www.legoeducation.com).
Reports true if specifed sensor is pressed. To use this block,
you need to have a Scratch sensor board connected to your computer. (See http://
www.playfulinvention.com/picoboard.html)
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
19
Operators
Adds two numbers.
Subtracts second number from frst number.
Multiplies two numbers.
Divides frst number by second number.
Picks a random integer within the specifed range.
Reports true if frst value is less than second.
Reports true if two values are equal.
Reports true if frst value is greater than second.
Reports true if both conditions are true.
Reports true if either condition is true.
Reports true if condition is false; reports false if
condition is true.
Concatenates (combines) strings.
Reports the number of letters in a string.
Reports the letter at the specifed position in a string.
Reports result of selected function (abs, sqrt, sin, cos, tan, asin,
acos, atan, ln, log, e^, 10^) applied to specifed number.
Reports remainder from division of frst number by
second number.
Reports closest integer to a number.
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
20
Variables
Click to create and name a new variable. When you create a
variable for the frst time, the variable blocks will appear. You choose whether the
variable is for all sprites (global) or just for one sprite (local).
Deletes all blocks associated with a variable.
Reports value of the variable.
Changes the variable by specifed amount. If you have more
than one variable, use the pull-down menu to select the variable name.
Sets the variable to specifed value.
Shows the variable monitor on the stage.
Hides the variable monitor so it is not visible on the
stage.
Click to create and name a new list. When you create a list for
the frst time, the list blocks will appear. You can choose whether the list is for all
sprites (global) or just for one sprite (local).
Deletes the blocks associated with the list.
Reports all the items in the list. (The items are separated by
spaces. However, if the items are individual letters or digits, spaces are omitted.)
Adds the specifed item to the end of the list. The item can
be a number or a string of letters and other characters.
Deletes one or all items from a list. You can specify which item
to delete by choosing from the pull-down menu or typing in a number. Choosing
last deletes the last item in the list. Choosing all deletes everything from the
list. Deleting decreases the length of the list.
Inserts an item at the specifed position in the list. You
can specify where to insert the item by choosing from the pull-down menu or
typing in a number. Choosing any inserts at a random place in the list. Choosing
last adds the item to the end of the list. The length of the list increases by 1.
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
21
Replaces an item in the list with the specifed value.
You can specify which item to replace by choosing from the pull-down menu or
typing in a number. Choosing any replaces a random item in the list. The length
of the list does not change.
Reports the item at the specifed position in the list. You
can specify which item to report by choosing from the pull-down menu or typing
in a number. Choosing any reports a random item in the list.
Reports how many items are in the list.
Reports true if the list contains the specifed item. The
item must match exactly to report true.
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
22
4. APPENDIX
SYSTEM REQUIREMENTS FOR SCRATCH VERSION 1.4
Computer OS:
Windows XP, Windows 2000, Windows Vista
Mac OS X 10.4 or later
Display: 800x480 or larger, thousands or millions of colors (16-bit color or greater).
Disk: At least 120 megabytes of free space to install Scratch
Note: Scratch comes with a large media library and a collection of Sample projects. If you have
very limited disk space, you can delete the Media and Projects folders from the Scratch folder.
Memory: Most computers have enough memory to run Scratch. Older computers may run
Scratch slowly.
Sound: To take advantage of sound ouput and input, you need speakers (or headphones) and a
microphone. Many laptops have speakers and microphones built in.
CHANGING DEFAULT SETTINGS
Default Sprite
Te default sprite for new projects is the Scratch cat. To use a diferent sprite as the default,
export the sprite, rename the exported fle as default.sprite, and place it in the Costumes folder.
To replace only the default costume, place an image fle called default.jpg (or .png or .bmp or .gif)
in the Costumes folder.
Disabling Sharing to Website
In some cases, you may not want users to upload their Scratch projects online at all. Adding the
following line to the fle Scratch.ini will hide the Share menu and button:
Share=0
Default Language
Scratch starts using the language specifed by the locale of the computer, but this can be
overridden. In the Scratch.ini fle, add the line:
Language = [ISO-639-2 code]
Note that this setting will be changed whenever the user changes the language setting (if the
Scratch.ini fle is writeable) so that Scratch will start up in the language that was last in use.
REFERENCE GUIDE http://scratch.mit.edu
REFERENCE GUIDE
23
Default Project Notes
By default, the Project Notes in a Scratch project are blank. If you want to provide questions
or instructions whenever users frst edit a projects notes, you can create a default Project
Notes fle. Simply make a text fle with your default notes, save it with UTF8 encoding, name it
defaultNotes.txt, and put it into the Scratch folder.
If the user does not edit the default notes, then nothing is saved in the Project Notes. Te user
has to change at least one character for the notes to be saved in the project.
NETWORK AND DRIVE SETTINGS
Customizing the Default Home Folder
By default, Scratch assumes the users home folder is on the local C: drive. However, in
networked settings, users folders are often kept on a networked drive. Adding this line to the
Scratch.ini fle:
Home=J:\MySchool\Students\Grade5\*
will tell Scratch that user folders are kept in the folder J:\MySchool\Students\Grade5\. Note
that the asterisk is replaced by the name of the user who is logged in. You may omit the asterisk
if you want all users to share the same folder for their Scratch projects.
Visible Drives
In network Windows settings, it is sometimes useful to limit which drives are visible to the
user. Tis can by done by adding a line such as:
VisibleDrives=J:,M:
to the Scratch.ini fle.Lettered drive names must end in a colon, and the drive names must be
separated by commas. If visible drives are set, users will not be able to see any other drives
(including USB drives), and they wont be able to navigate up the fle hierarchy to parts of the
disk outside of the Scratch folder and their home folder.
Proxy Servers
Proxy server settings can be specifed in the Scratch.ini fle using the following entries:
ProxyServer=[server name or IP address]
ProxyPort=[port number]
FURTHER INFORMATION
For more information and updates on network installation and customization, please see:
http://info.scratch.mit.edu/Network_Installation