< Scratch File Format (1.4)

This is part of a technical description of the file format.

Entries in an Object Table are known as Objects. There are two kinds of object:

In Scratch, pretty much everything — the stage, a sprite, a list, a block, a variable watcher — is an Object. An Object has a number of attributes, in the same way that each sprite can have its own variables. Most objects have a "name" attribute. For example, the Stage's attributes include a list of sprites on the stage, a dictionary of global variables, list of background, and the currently selected background.

See Object-Oriented Programming for further explanation of objects.


All objects (excluding inline values) have the following structure:

  • classID: one byte describing the type of object.
...a couple of extra bytes if it's a User-class Object, describing the version and how many fields the object has...