Discuss Scratch
- Discussion Forums
- » Questions about Scratch
- » How did the "loud" block survive the update of scratch 3.0?
- GlitchyZorua
-
Scratcher
100+ posts
How did the "loud" block survive the update of scratch 3.0?
I have a lot of questions. This block was removed in Scratch 2.0, but the “loud?” block still exists, and still functional, its just that its red. and it isn't available in the sensing blocks
Fast forward to Scratch 3.0, Scratch removed all of the “Hacked or Rare blocks” Except for some… and one of them being “loud?”
…How? it even has its color restored its color back! and… is still functional. You are telling me after all this time, after doing a rewrite of the full editor, this little block managed to slip in it.
Its just seems like they left it there intentionally.
Oh and there are STILL many other obsolete blocks, that managed to slip in to the editor somehow.

Fast forward to Scratch 3.0, Scratch removed all of the “Hacked or Rare blocks” Except for some… and one of them being “loud?”
…How? it even has its color restored its color back! and… is still functional. You are telling me after all this time, after doing a rewrite of the full editor, this little block managed to slip in it.
Its just seems like they left it there intentionally.
Oh and there are STILL many other obsolete blocks, that managed to slip in to the editor somehow.

- meepeygamer567
-
Scratcher
500+ posts
How did the "loud" block survive the update of scratch 3.0?
Hmm seem like a joke. This block that you’re stating isn’t on the editor. There is this block although.
(loudness)That block is to sense how loud it is. Thanks troller
Last edited by meepeygamer567 (Oct. 7, 2021 22:29:37)
- GlitchyZorua
-
Scratcher
100+ posts
How did the "loud" block survive the update of scratch 3.0?
Hmm seem like a joke. This block that you’re stating isn’t on the editor. There is this block (loudness)::sensing although. That block is to sense how loud it is. Thanks trollerI'm not joking
It's in this project: https://scratch.mit.edu/projects/580301207/
this isn't some sort of troll. believe me!
Last edited by GlitchyZorua (Oct. 7, 2021 22:30:02)
- GlitchyZorua
-
Scratcher
100+ posts
How did the "loud" block survive the update of scratch 3.0?
Hmm seem like a joke. This block that you’re stating isn’t on the editor. There is this block (loudness)::sensing although. That block is to sense how loud it is. Thanks trollerI'm not joking
It's in this project: https://scratch.mit.edu/projects/580301207/
this isn't some sort of troll. believe me!
Yes, this block existed. no this isn't some sort of troll. No, its not a rickroll, I'm trying to be honest.

Last edited by GlitchyZorua (Oct. 7, 2021 22:38:44)
- CST1229
-
Scratcher
1000+ posts
How did the "loud" block survive the update of scratch 3.0?
It was intentionally left in

(scratch-blocks source code)
There are also lots of other unused blocks:

(scratch-blocks source code)
There are also lots of other unused blocks:
Blockly.Blocks['control_while'] = {
/**
* Block to repeat until a condition becomes false.
* (This is an obsolete "hacked" block, for compatibility with 2.0.)
*/
...
Blockly.Blocks['control_for_each'] = {
/**
* Block for for-each. This is an obsolete block that is implemented for
* compatibility with Scratch 2.0 projects.
* @this Blockly.Block
*/
...
Blockly.Blocks['control_get_counter'] = {
/**
* Block to get the counter value. This is an obsolete block that is
* implemented for compatibility with Scratch 2.0 projects.
* @this Blockly.Block
*/
...
Blockly.Blocks['control_incr_counter'] = {
/**
* Block to add one to the counter value. This is an obsolete block that is
* implemented for compatibility with Scratch 2.0 projects.
* @this Blockly.Block
*/
...
Blockly.Blocks['control_clear_counter'] = {
/**
* Block to clear the counter value. This is an obsolete block that is
* implemented for compatibility with Scratch 2.0 projects.
* @this Blockly.Block
*/
...
Blockly.Blocks['control_all_at_once'] = {
/**
* Block to run the contained script. This is an obsolete block that is
* implemented for compatibility with Scratch 2.0 projects. Note that
* this was originally designed to run all of the contained blocks
* (sequentially, like normal) within a single frame, but this feature
* was removed in place of custom blocks marked "run without screen
* refresh". The "all at once" block was changed to run the contained
* blocks ordinarily, functioning the same way as an "if" block with a
* reporter that is always true (e.g. "if 1 = 1"). Also note that the
* Scratch 2.0 spec for this block is "warpSpeed", but the label shows
* "all at once".
* @this Blockly.Block
*/
...
Blockly.Blocks['event_whentouchingobject'] = {
/**
* Block for when a sprite is touching an object.
* @this Blockly.Block
*/
...
Blockly.Blocks['looks_changestretchby'] = {
/**
* Block to change stretch. Does not actually do anything. This is an
* obsolete block that is implemented for compatibility with Scratch 1.4
* projects as well as 2.0 projects that still have the block.
* The "stretch" blocks were introduced in very early versions of Scratch,
* but their functionality was removed shortly later. They still appeared
* correctly up until (and including) Scratch 1.4 - as "change stretch by"
* and "set stretch to" - but were removed altogether in Scratch 2.0, and
* displayed as red "undefined" blocks. Some Scratch projects still contain
* these blocks, however, and they don't open in 3.0 unless the blocks
* actually exist (though they still don't funcitonally do anything).
* @this Blockly.Block
*/
...
Blockly.Blocks['looks_setstretchto'] = {
/**
* Block to set stretch. Does not actually do anything. This is an obsolete
* block that is implemented for compatibility with Scratch 1.4 projects
* (see looks_changestretchby).
* @this Blockly.Block
*/Last edited by CST1229 (Oct. 7, 2021 22:59:20)
- Maximouse
-
Scratcher
1000+ posts
How did the "loud" block survive the update of scratch 3.0?
Scratch 3.0 still contains all unused blocks that existed in stable releases of 2.0, for compatibility reasons. The only “hacked blocks” 3.0 broke are dropdowns replaced with reporters, for example
(item (1 v) of (list name))
- mybearworld
-
Scratcher
1000+ posts
How did the "loud" block survive the update of scratch 3.0?
According to https://github.com/LLK/scratch-blocks/blob/develop/blocks_vertical/sensing.js#L361-L363, it was intentionally left in, so Scratch 1.4 projects still work.
- GlitchyZorua
-
Scratcher
100+ posts
How did the "loud" block survive the update of scratch 3.0?
It was intentionally left inWow! That's pretty cool!
(scratch-blocks source code)
There are also lots of other unused blocks:Blockly.Blocks['control_while'] = {
/**
* Block to repeat until a condition becomes false.
* (This is an obsolete "hacked" block, for compatibility with 2.0.)
*/
...
Blockly.Blocks['control_for_each'] = {
/**
* Block for for-each. This is an obsolete block that is implemented for
* compatibility with Scratch 2.0 projects.
* @this Blockly.Block
*/
...
Blockly.Blocks['control_get_counter'] = {
/**
* Block to get the counter value. This is an obsolete block that is
* implemented for compatibility with Scratch 2.0 projects.
* @this Blockly.Block
*/
...
Blockly.Blocks['control_incr_counter'] = {
/**
* Block to add one to the counter value. This is an obsolete block that is
* implemented for compatibility with Scratch 2.0 projects.
* @this Blockly.Block
*/
...
Blockly.Blocks['control_clear_counter'] = {
/**
* Block to clear the counter value. This is an obsolete block that is
* implemented for compatibility with Scratch 2.0 projects.
* @this Blockly.Block
*/
...
Blockly.Blocks['control_all_at_once'] = {
/**
* Block to run the contained script. This is an obsolete block that is
* implemented for compatibility with Scratch 2.0 projects. Note that
* this was originally designed to run all of the contained blocks
* (sequentially, like normal) within a single frame, but this feature
* was removed in place of custom blocks marked "run without screen
* refresh". The "all at once" block was changed to run the contained
* blocks ordinarily, functioning the same way as an "if" block with a
* reporter that is always true (e.g. "if 1 = 1"). Also note that the
* Scratch 2.0 spec for this block is "warpSpeed", but the label shows
* "all at once".
* @this Blockly.Block
*/
...
Blockly.Blocks['event_whentouchingobject'] = {
/**
* Block for when a sprite is touching an object.
* @this Blockly.Block
*/
...
Blockly.Blocks['looks_changestretchby'] = {
/**
* Block to change stretch. Does not actually do anything. This is an
* obsolete block that is implemented for compatibility with Scratch 1.4
* projects as well as 2.0 projects that still have the block.
* The "stretch" blocks were introduced in very early versions of Scratch,
* but their functionality was removed shortly later. They still appeared
* correctly up until (and including) Scratch 1.4 - as "change stretch by"
* and "set stretch to" - but were removed altogether in Scratch 2.0, and
* displayed as red "undefined" blocks. Some Scratch projects still contain
* these blocks, however, and they don't open in 3.0 unless the blocks
* actually exist (though they still don't funcitonally do anything).
* @this Blockly.Block
*/
...
Blockly.Blocks['looks_setstretchto'] = {
/**
* Block to set stretch. Does not actually do anything. This is an obsolete
* block that is implemented for compatibility with Scratch 1.4 projects
* (see looks_changestretchby).
* @this Blockly.Block
*/
I'm pretty sure one of the obsolete music blocks has that gunshot sound effect from scratch 1.4– I guess you can understand why it was removed.
Last edited by GlitchyZorua (Oct. 11, 2021 14:59:28)
- Scratch137
-
Scratcher
1000+ posts
How did the "loud" block survive the update of scratch 3.0?
Wow! That's pretty cool!I had no idea that was a thing. I opened Scratch 1.4 to check, and as it turns out:
I'm pretty sure one of the obsolete music blocks has that gunshot sound effect from scratch 1.4– I guess you can understand why it was removed.

It doesn't work in Scratch 3.0, however. I tested it, and it seems that it defaults to the closest instrument below it. In 3.0, that's instrument 21, or Synth Pad.
EDIT: Scratch 2.0 is the same as 3.0 in this regard.
Last edited by Scratch137 (Oct. 12, 2021 00:01:12)
- GlitchyZorua
-
Scratcher
100+ posts
How did the "loud" block survive the update of scratch 3.0?
exactly. why did the scratch team think this was a good ideaWow! That's pretty cool!I had no idea that was a thing. I opened Scratch 1.4 to check, and as it turns out:
I'm pretty sure one of the obsolete music blocks has that gunshot sound effect from scratch 1.4– I guess you can understand why it was removed.
It doesn't work in Scratch 3.0, however. I tested it, and it seems that it defaults to the closest instrument below it. In 3.0, that's instrument 21, or Synth Pad.
- kccuber
-
Scratcher
1000+ posts
How did the "loud" block survive the update of scratch 3.0?
i think they just imported the entire Squeak MIDI library without looking lolexactly. why did the scratch team think this was a good ideaWow! That's pretty cool!I had no idea that was a thing. I opened Scratch 1.4 to check, and as it turns out:
I'm pretty sure one of the obsolete music blocks has that gunshot sound effect from scratch 1.4– I guess you can understand why it was removed.
It doesn't work in Scratch 3.0, however. I tested it, and it seems that it defaults to the closest instrument below it. In 3.0, that's instrument 21, or Synth Pad.
- Scratch137
-
Scratcher
1000+ posts
How did the "loud" block survive the update of scratch 3.0?
That'd make sense, considering the sheer number of instruments compared to 2.0 and 3.0. 128 is WAY more than 21.i think they just imported the entire Squeak MIDI library without looking lolexactly. why did the scratch team think this was a good ideaWow! That's pretty cool!I had no idea that was a thing. I opened Scratch 1.4 to check, and as it turns out:
I'm pretty sure one of the obsolete music blocks has that gunshot sound effect from scratch 1.4– I guess you can understand why it was removed.
It doesn't work in Scratch 3.0, however. I tested it, and it seems that it defaults to the closest instrument below it. In 3.0, that's instrument 21, or Synth Pad.
- GlitchyZorua
-
Scratcher
100+ posts
How did the "loud" block survive the update of scratch 3.0?
I'm surprised that they didn't look into it before adding all of them lolThat'd make sense, considering the sheer number of instruments compared to 2.0 and 3.0. 128 is WAY more than 21.i think they just imported the entire Squeak MIDI library without looking lolexactly. why did the scratch team think this was a good ideaWow! That's pretty cool!I had no idea that was a thing. I opened Scratch 1.4 to check, and as it turns out:
I'm pretty sure one of the obsolete music blocks has that gunshot sound effect from scratch 1.4– I guess you can understand why it was removed.
It doesn't work in Scratch 3.0, however. I tested it, and it seems that it defaults to the closest instrument below it. In 3.0, that's instrument 21, or Synth Pad.
- CPSR92
-
Scratcher
16 posts
How did the "loud" block survive the update of scratch 3.0?
Idk
———————————
—————————————
The next signature
———————————
obsolete!:: #FF0000 stackoh look i have 2 signatures
—————————————
The next signature
Last edited by CPSR92 (March 18, 2022 20:04:10)
- AIGamesDeveloper
-
Scratcher
1000+ posts
How did the "loud" block survive the update of scratch 3.0?
Idk
———————————obsolete!:: #FF0000 stackoh look i have 2 signatures
—————————————
The next signature
Please do not necropost
If you want to create a signature, please go to the bottom of the forums home page and click ‘change your signature’
Thanks!
- Discussion Forums
- » Questions about Scratch
-
» How did the "loud" block survive the update of scratch 3.0?