Discuss Scratch

braxbroscratcher
Scratcher
1000+ posts

Ban Hacked Blocks

Hacked blocks are a huge grey area on scratch. These are the guidelines:

Community Guidelines wrote:

  • Be respectful. When sharing projects or posting comments, remember that people of many different ages and backgrounds will see what you’ve shared.
  • Be constructive. When commenting on others' projects, say something you like about it and offer suggestions.
  • Share. You are free to remix projects, ideas, images, or anything else you find on Scratch – and anyone can use anything that you share. Be sure to give credit when you remix.
  • Keep personal info private. For safety reasons, don't use real names or post contact info like phone numbers or addresses.
  • Be honest. Don’t try to impersonate other Scratchers, spread rumors, or otherwise try to trick the community.
    Help keep the site friendly. If you think a project or comment is mean, insulting, too violent, or otherwise inappropriate, click “Report” to let us know about it.
They don't really break any of the guidelines. But they aren't allowed in normal Scratch, confusing to most members, and honestly, you have to break Scratch to get them. Now then, let's look at this terms of use snippet.

Terms of Use wrote:

3.5 You agree not to use Scratch in any way intended to disrupt the service, gain unauthorized access to the service, or interfere with any other user's ability to use the service. Prohibited activities include, but are not limited to:

  1. Posting content deliberately designed to crash the Scratch website or editor;
  2. Linking to pages containing viruses or malware;
  3. Using administrator passwords or pretending to be an administrator;
  4. Repeatedly posting the same material, or “spamming”;
  5. Using alternate accounts or organizing voting groups to manipulate site statistics, such as purposely trying to get on the "What the Community is
  6. Loving/Remixing" rows of the front page.

Look at the bolded snippet. Taken out of context, it could be interpreted as ‘You agree not to modify Scratch files except with the Scratch editors’.

Now look at the italicized snippet. This means in a common sense, “Don't bypass bans.” However, again, it can be interpreted to classify project file editing as banned.

Here we have a conflict. Hacked blocks aren't banned in the Guidelines, but the terms of use can be interpreted so as to say that they are banned.

I say ban hacked blocks altogether.

We don't need them, they confuse most people, they are downright dishonest with users about what you can and can't do legitimately with Scratch, and most of all, they are an exploit of a weakness in Scratch.

In my opinion, hacked blocks should either be banned or made create-able in Scratch without using tools.

Edit: Just was tipped off by Paddle2See as to if hacked blocks were banned or not. He said that he remembered seeing it in the terms of use somewhere… and look what I found… This may have been what he was referring to.

The Terms of Use wrote:

4.4 You may only submit user-generated projects that were created with (1) the Scratch website editor or (2) an unmodified copy of the Scratch editor compiled from the source code described in Section 5.3. You may not upload any projects that were created, by you or by anyone else, with a modified version of the Scratch editor.

Last edited by braxbroscratcher (April 18, 2016 11:11:31)

MathlyCat
Scratcher
1000+ posts

Ban Hacked Blocks

You realize you're basically dissing extensions people make for Scratch because those are considered “hacked”.

The ST seems fine, and honestly people rarely see or use them.

No support.
braxbroscratcher
Scratcher
1000+ posts

Ban Hacked Blocks

MathlyCat wrote:

You realize you're basically dissing extensions people make for Scratch because those are considered “hacked”.

The ST seems fine, and honestly people rarely see or use them.

No support.
Not really - Block add-ons are banned by the ST. They are supposed to stay on the ScratchX.org website. Plugins that do things like check your messages are fine - they aren't breaking anything, they are interpreting the outputs the Service gives.

So hacked blocks should be in the same boat as block addons. Confined to the ScratchX site.
Sheep_maker
Scratcher
1000+ posts

Ban Hacked Blocks

Hacked blocks like the red square with the two dashed lines shouldn't be allowed, but blocks that are hacked into inputs where they aren't supposed to be in (i.e.
set (var) to (0)
) should be allowed. Also, extension scripts aren't technically hacked (though they show up as “undefined” when it is not installed but Scratch already prevents you from sharing projects with extension scripts), so I think they're OK.

Support for allowing reporters to be put into all dropdowns and boolean inputs.
braxbroscratcher
Scratcher
1000+ posts

Ban Hacked Blocks

Sheep_maker wrote:

Hacked blocks like the red square with the two dashed lines shouldn't be allowed, but blocks that are hacked into inputs where they aren't supposed to be in (i.e.
set (var) to (0)
) should be allowed. Also, extension scripts aren't technically hacked (though they show up as “undefined” when it is not installed but Scratch already prevents you from sharing projects with extension scripts), so I think they're OK.

Support for allowing reporters to be put into all dropdowns and boolean inputs.
Not true. Put extension blocks in an already-shared project. It works.

Now then, think. Using the above block, if (var) wasn't the name of an already-made variable, it would create a variable, again, being dishonest by lying to users.
BookOwl
Scratcher
1000+ posts

Ban Hacked Blocks

braxbroscratcher wrote:

Sheep_maker wrote:

Hacked blocks like the red square with the two dashed lines shouldn't be allowed, but blocks that are hacked into inputs where they aren't supposed to be in (i.e.
set (var) to (0)
) should be allowed. Also, extension scripts aren't technically hacked (though they show up as “undefined” when it is not installed but Scratch already prevents you from sharing projects with extension scripts), so I think they're OK.

Support for allowing reporters to be put into all dropdowns and boolean inputs.
Not true. Put extension blocks in an already-shared project. It works.

Now then, think. Using the above block, if (var) wasn't the name of an already-made variable, it would create a variable, again, being dishonest by lying to users.
How is it being dishonest?
MathlyCat
Scratcher
1000+ posts

Ban Hacked Blocks

braxbroscratcher wrote:

Sheep_maker wrote:

Hacked blocks like the red square with the two dashed lines shouldn't be allowed, but blocks that are hacked into inputs where they aren't supposed to be in (i.e.
set (var) to (0)
) should be allowed. Also, extension scripts aren't technically hacked (though they show up as “undefined” when it is not installed but Scratch already prevents you from sharing projects with extension scripts), so I think they're OK.

Support for allowing reporters to be put into all dropdowns and boolean inputs.
Not true. Put extension blocks in an already-shared project. It works.

Now then, think. Using the above block, if (var) wasn't the name of an already-made variable, it would create a variable, again, being dishonest by lying to users.
Wait how is it lying?

I'm with Sheep_Maker now
braxbroscratcher
Scratcher
1000+ posts

Ban Hacked Blocks

BookOwl wrote:

braxbroscratcher wrote:

Sheep_maker wrote:

Hacked blocks like the red square with the two dashed lines shouldn't be allowed, but blocks that are hacked into inputs where they aren't supposed to be in (i.e.
set (var) to (0)
) should be allowed. Also, extension scripts aren't technically hacked (though they show up as “undefined” when it is not installed but Scratch already prevents you from sharing projects with extension scripts), so I think they're OK.

Support for allowing reporters to be put into all dropdowns and boolean inputs.
Not true. Put extension blocks in an already-shared project. It works.

Now then, think. Using the above block, if (var) wasn't the name of an already-made variable, it would create a variable, again, being dishonest by lying to users.
How is it being dishonest?
Because. If you looked at a list named Blacklist, you would likely report the project. But if a user hid that by making the blacklist get created when a chat is sent… then users wouldn't know that it used a blacklist and therefore would not report.
Abstract-
Scratcher
1000+ posts

Ban Hacked Blocks

Semi-Support. They're confusing, yet people use them to make better projects.
MathlyCat
Scratcher
1000+ posts

Ban Hacked Blocks

Edit: I'm getting mad ninja'd

Last edited by MathlyCat (April 17, 2016 22:08:56)

braxbroscratcher
Scratcher
1000+ posts

Ban Hacked Blocks

MathlyCat wrote:

braxbroscratcher wrote:

Sheep_maker wrote:

Hacked blocks like the red square with the two dashed lines shouldn't be allowed, but blocks that are hacked into inputs where they aren't supposed to be in (i.e.
set (var) to (0)
) should be allowed. Also, extension scripts aren't technically hacked (though they show up as “undefined” when it is not installed but Scratch already prevents you from sharing projects with extension scripts), so I think they're OK.

Support for allowing reporters to be put into all dropdowns and boolean inputs.
Not true. Put extension blocks in an already-shared project. It works.

Now then, think. Using the above block, if (var) wasn't the name of an already-made variable, it would create a variable, again, being dishonest by lying to users.
Wait how is it lying?

I'm with Sheep_Maker now
See above. It hides a list, variable, or other thing. It's like hiding something from the police. It's lying by omission.
Sheep_maker
Scratcher
1000+ posts

Ban Hacked Blocks

braxbroscratcher wrote:

Sheep_maker wrote:

Hacked blocks like the red square with the two dashed lines shouldn't be allowed, but blocks that are hacked into inputs where they aren't supposed to be in (i.e.
set (var) to (0)
) should be allowed. Also, extension scripts aren't technically hacked (though they show up as “undefined” when it is not installed but Scratch already prevents you from sharing projects with extension scripts), so I think they're OK.

Support for allowing reporters to be put into all dropdowns and boolean inputs.
Not true. Put extension blocks in an already-shared project. It works.

Now then, think. Using the above block, if (var) wasn't the name of an already-made variable, it would create a variable, again, being dishonest by lying to users.
I'm aware of that (executing JSshareProject() in the Developer Tools' console also works), I meant that Scratch prevents users from clicking the share button if it contains an extension block.

And when the project is stopped, project-created variables do not get deleted (unless they are created in clones, but it's hard to access a clone's variables) so

BookOwl wrote:

How is it being dishonest?
braxbroscratcher
Scratcher
1000+ posts

Ban Hacked Blocks

Abstract- wrote:

Semi-Support. They're confusing, yet people use them to make better projects.
Yes, but most of them actually just break scratch to do things people are too lazy to code in. It's kinda like using a crowbar to enter through a window because you are too lazy to use the door. Once again, you get arrested.
BookOwl
Scratcher
1000+ posts

Ban Hacked Blocks

braxbroscratcher wrote:

BookOwl wrote:

braxbroscratcher wrote:

Sheep_maker wrote:

Hacked blocks like the red square with the two dashed lines shouldn't be allowed, but blocks that are hacked into inputs where they aren't supposed to be in (i.e.
set (var) to (0)
) should be allowed. Also, extension scripts aren't technically hacked (though they show up as “undefined” when it is not installed but Scratch already prevents you from sharing projects with extension scripts), so I think they're OK.

Support for allowing reporters to be put into all dropdowns and boolean inputs.
Not true. Put extension blocks in an already-shared project. It works.

Now then, think. Using the above block, if (var) wasn't the name of an already-made variable, it would create a variable, again, being dishonest by lying to users.
How is it being dishonest?
Because. If you looked at a list named Blacklist, you would likely report the project. But if a user hid that by making the blacklist get created when a chat is sent… then users wouldn't know that it used a blacklist and therefore would not report.
But you would have to include code that populated the blacklist, therefore showing the user that there is a blacklist.


Also, No Support
braxbroscratcher
Scratcher
1000+ posts

Ban Hacked Blocks

Sheep_maker wrote:

braxbroscratcher wrote:

Sheep_maker wrote:

Hacked blocks like the red square with the two dashed lines shouldn't be allowed, but blocks that are hacked into inputs where they aren't supposed to be in (i.e.
set (var) to (0)
) should be allowed. Also, extension scripts aren't technically hacked (though they show up as “undefined” when it is not installed but Scratch already prevents you from sharing projects with extension scripts), so I think they're OK.

Support for allowing reporters to be put into all dropdowns and boolean inputs.
Not true. Put extension blocks in an already-shared project. It works.

Now then, think. Using the above block, if (var) wasn't the name of an already-made variable, it would create a variable, again, being dishonest by lying to users.
I'm aware of that (executing JSshareProject() in the Developer Tools' console also works), I meant that Scratch prevents users from clicking the share button if it contains an extension block.

And when the project is stopped, project-created variables do not get deleted (unless they are created in clones, but it's hard to access a clone's variables) so

BookOwl wrote:

How is it being dishonest?
Exactly; what if people just use clones of sprites in their project, hiding variables and lists and then deleting the stuff when the project is stopped using a block?
BookOwl
Scratcher
1000+ posts

Ban Hacked Blocks

braxbroscratcher wrote:

Abstract- wrote:

Semi-Support. They're confusing, yet people use them to make better projects.
Yes, but most of them actually just break scratch to do things people are too lazy to code in. It's kinda like using a crowbar to enter through a window because you are too lazy to use the door. Once again, you get arrested.
So, I'm lazy because I don't want to create over 60,000 variables so that I can detect case?
braxbroscratcher
Scratcher
1000+ posts

Ban Hacked Blocks

BookOwl wrote:

braxbroscratcher wrote:

BookOwl wrote:

braxbroscratcher wrote:

Sheep_maker wrote:

Hacked blocks like the red square with the two dashed lines shouldn't be allowed, but blocks that are hacked into inputs where they aren't supposed to be in (i.e.
set (var) to (0)
) should be allowed. Also, extension scripts aren't technically hacked (though they show up as “undefined” when it is not installed but Scratch already prevents you from sharing projects with extension scripts), so I think they're OK.

Support for allowing reporters to be put into all dropdowns and boolean inputs.
Not true. Put extension blocks in an already-shared project. It works.

Now then, think. Using the above block, if (var) wasn't the name of an already-made variable, it would create a variable, again, being dishonest by lying to users.
How is it being dishonest?
Because. If you looked at a list named Blacklist, you would likely report the project. But if a user hid that by making the blacklist get created when a chat is sent… then users wouldn't know that it used a blacklist and therefore would not report.
But you would have to include code that populated the blacklist, therefore showing the user that there is a blacklist.


Also, No Support
Well, again, what if it was a chain of innocent-looking code… where there was a series of blocks that assembled words letter-by-letter? Point is, even though my example was bad, you get the idea.
MathlyCat
Scratcher
1000+ posts

Ban Hacked Blocks

^^^

Is there valid proof that this has happened? Anyways most Scratch haxors are ones who follow the rules and don't exploit often.
BookOwl
Scratcher
1000+ posts

Ban Hacked Blocks

braxbroscratcher wrote:

BookOwl wrote:

braxbroscratcher wrote:

BookOwl wrote:

braxbroscratcher wrote:

Sheep_maker wrote:

Hacked blocks like the red square with the two dashed lines shouldn't be allowed, but blocks that are hacked into inputs where they aren't supposed to be in (i.e.
set (var) to (0)
) should be allowed. Also, extension scripts aren't technically hacked (though they show up as “undefined” when it is not installed but Scratch already prevents you from sharing projects with extension scripts), so I think they're OK.

Support for allowing reporters to be put into all dropdowns and boolean inputs.
Not true. Put extension blocks in an already-shared project. It works.

Now then, think. Using the above block, if (var) wasn't the name of an already-made variable, it would create a variable, again, being dishonest by lying to users.
How is it being dishonest?
Because. If you looked at a list named Blacklist, you would likely report the project. But if a user hid that by making the blacklist get created when a chat is sent… then users wouldn't know that it used a blacklist and therefore would not report.
But you would have to include code that populated the blacklist, therefore showing the user that there is a blacklist.


Also, No Support
Well, again, what if it was a chain of innocent-looking code… where there was a series of blocks that assembled words letter-by-letter? Point is, even though my example was bad, you get the idea.
No, I don't get the idea. How exactly are hacked blocks dishonest?
braxbroscratcher
Scratcher
1000+ posts

Ban Hacked Blocks

BookOwl wrote:

braxbroscratcher wrote:

Abstract- wrote:

Semi-Support. They're confusing, yet people use them to make better projects.
Yes, but most of them actually just break scratch to do things people are too lazy to code in. It's kinda like using a crowbar to enter through a window because you are too lazy to use the door. Once again, you get arrested.
So, I'm lazy because I don't want to create over 60,000 variables so that I can detect case?
No… But using a script to force Scratch to create variables is exploiting a behavior that was encountered with the backpack and backpacked scripts. Stop taking my examples and randomly yanking them out of context and applying them to other situations, please. It's a below-the-belt and rude way to argue.

Powered by DjangoBB