| This article or section documents something not included in the current version of Scratch (3.0). It is only useful from a historical perspective. |
Experimental blocks were blocks that were experimental and unofficial, and did not appear in the Block Palette. They were available from Scratch 1.0 through 1.2 and 2.0. In 1.0, they were accessed by shift-clicking the Extras menu and choosing "show experimental blocks"; in 1.1 and 1.2, through Shift-Click-R. They are similar to the Motor Blocks, which are also not displayed by default; however, the Motor blocks are fully functional.
Sound Blocks
There were 13 experimental Sound Blocks. All were Stack-shaped. They were:
start movie::soundstop movie::soundchange seconds by (1)::soundset seconds to (0)::soundchange zoom by (10)::soundset zoom to (100)%::soundchange horiz. pan by (10)::soundset horiz. pan to (0)::soundchange vert. pan by (10)::soundset vert. pan to (0)::soundchange fade by (10)::soundset fade to (100)%::soundset fade color to [#F00]::sound
These blocks had no functionality, and were likely intended for use with the Scratch MoviePlayerMorph. The blocks were removed in Scratch 05May08.
Sensing Blocks
There were 9 experimental Sensing Blocks. 6 were Reporter Blocks, and 3 were Stacks. They were:
(camera motion::sensing)(camera direction::sensing)(camera relative x::sensing)(camera relative y::sensing)(camera absolute x::sensing)(camera absolute y::sensing)track motion::sensingtrack color::sensingauto calibrate red::sensing
These blocks appear to be intended for camera sensing, but in all versions of Scratch that include them, they do not work and their Stage Monitors simply display "a ScratchSpriteMorph()". The blocks were removed in Scratch 15May08. True camera support was later added in Scratch 2.0.
Experimental Blocks in 2.0
Scratch 2.0 contains 5 experimental blocks not available through normal means. They were colored yellow in early alpha versions of Scratch 2.0, but were changed to red in later versions. These experimental blocks are still present in Scratch 3.0 in the form of hidden blocks. They are:
(noop:: #c3af00)— A reporter block that reports the value of a hidden counter. The block is supposed to be called "counter", but is instead called "noop" due to 2 copies of the block spec being present; this was fixed in Scratch 3.0.
clear counter:: #c3af00— A stack block that resets the counter value to 0.
incr counter:: #c3af00— A stack block that increases the counter value by 1. It was renamed to "increment counter" in Scratch 3.0.
while <> { }:: #c3af00└─ A C block that continuously runs scripts held inside its loop until the specified boolean statement is false.
for each [ v] in [] { }:: #c3af00└─ A C block that works like the Repeat () block, except a specific variable of choice is incremented each time the stack ran. Due to an error, the input used a string input instead of a number input; this error was fixed in Scratch 3.0.
Workarounds
Because of the 5 blocks' straightforward functionality, all of them can be replicated with the following workarounds:
Counter
(counter) // Using a variable
Clear Counter
set [counter v] to [0]
Incr Counter
change [counter v] by (1)
While ()
repeat until <not <. . .:: grey>> . . . end
For Each () in ()
set [i v] to [0] repeat (. . .:: grey) change [i v] by (1) . . . end
See Also
References
| Sound Blocks |
Start Movie • Stop Movie • Change Seconds by () • Set Seconds to () • Change Zoom by () • Set Zoom to ()% • Change horiz. pan by () • Set horiz. pan to () • Change vert. pan by () • Set vert. pan to () • Change Fade by () • Set Fade to ()% • Set Fade Color to () |
| Control Blocks |
Counter • Clear Counter • Incr Counter • For Each () in () • While () |
| Sensing Blocks |
Camera Motion • Camera Direction • Camera Relative X • Camera Relative Y • Camera Absolute X • Camera Absolute Y • Track Motion • Track Color • Auto Calibrate Red |

