Discuss Scratch

ihgfedcba
Scratcher
100+ posts

Scratch 3.0 Technical Discussion

imfh wrote:

ihgfedcba wrote:

IAmCyanCat wrote:

to be honest scratch 3.0 has pros…. but it has more cons,
my main problem is that we can't do json hacking anymore.
It should work similarly as in the classic days. Open the sb3 zip, edit the json file with Notepad, then JSONhack whatever.

It’s not that simple. The JSON file is now minified so it doesn’t have any whitespace. Even once you put it through a JSON formatter, it's not possible to put a block where a block is not supposed to go. They changed how it works so inputs can either accept blocks or not accept them. If it can’t accept blocks, no amount of hacking will get one in.
But is it still possible to import two sprites with 40—50 megabytes of music each, JSONhack to merge two sprites into one sprite over the project limit, then upload?

It appears that updating the project “Music player” is still possible even though it's made over the limit by uploading two sprites and merging with a JSONhack. But is the procedure to make such a project in the first place still possible in Scratch 3.0?

Last edited by ihgfedcba (Jan. 20, 2019 12:15:13)

Bloxy_Cola
Scratcher
13 posts

Scratch 3.0 Technical Discussion

SimpleScratch wrote:

Bloxy_Cola wrote:

Can someone help? I've downloaded the 3.0 editor offline and I cannot make an SVG out of sprite costumes, can you help?
Exporting .svg s currently not possible but a workaround is to export the sprite, change extension it from .sprite3 to .zip and then open it.

The costumes are now available as .svg
Thanks!

imfh
Scratcher
1000+ posts

Scratch 3.0 Technical Discussion

ihgfedcba wrote:

imfh wrote:

ihgfedcba wrote:

IAmCyanCat wrote:

to be honest scratch 3.0 has pros…. but it has more cons,
my main problem is that we can't do json hacking anymore.
It should work similarly as in the classic days. Open the sb3 zip, edit the json file with Notepad, then JSONhack whatever.

It’s not that simple. The JSON file is now minified so it doesn’t have any whitespace. Even once you put it through a JSON formatter, it's not possible to put a block where a block is not supposed to go. They changed how it works so inputs can either accept blocks or not accept them. If it can’t accept blocks, no amount of hacking will get one in.
But is it still possible to import two sprites with 40—50 megabytes of music each, JSONhack to merge two sprites into one sprite over the project limit, then upload?

It appears that updating the project “Music player” is still possible even though it's made over the limit by uploading two sprites and merging with a JSONhack. But is the procedure to make such a project in the first place still possible in Scratch 3.0?

Yes, you could merge two sprites by editing the JSON.

However, I don't think you can get around the upload size limit like that. I'm pretty sure the it's the server not the client that prevents you from uploading or saving something too large. It's possible there isn't a size limit for the Scratch Desktop and if so you wouldn't need to JSON hack it. There was a bit of chat about it on page 10-11. All that said, I don't know much about the size limit, so everything I just said could be completely wrong.

Scratch to Pygame converter: https://scratch.mit.edu/discuss/topic/600562/
1-UP-Pancakestudios
Scratcher
58 posts

Scratch 3.0 Technical Discussion

I just noticed that the remixtree is gone but the Url is not… https://scratch.mit.edu/projects/Number/Remixtree/

Put /Remixtree/ in a Scratch project url to get remixtrees. They are still there!

Youtube Chanel
Iliketea3
Scratcher
27 posts

Scratch 3.0 Technical Discussion

I can't export sounds, I right clicked on a sound and all it said was, “duplicate”,“delete”. Is the feature removed?
Greenduck54
Scratcher
500+ posts

Scratch 3.0 Technical Discussion

Iliketea3 wrote:

I can't export sounds, I right clicked on a sound and all it said was, “duplicate”,“delete”. Is the feature removed?
Not removed, just not added yet

I used to make stuff on here, now i just come on when i'm bored, don't expect anything from me now.
Last edited by Greenduck54 (Jan. 1, 2020 00:00:00)
oh no, the joke is dead because that time is no longer in the future :I
Last edited by Greenduck54 (Apr. 20, 2069 00:00:00)
that's better
;
MrMeowington
Scratcher
100+ posts

Scratch 3.0 Technical Discussion

infinitytec wrote:

MrMeowington wrote:

It seems that projects that use the pen extension in any way crash Scratch completely on mobile.
I wouldn't be surprised if that's a RAM issue.
Would 3GB of RAM with nothing else running be enough? I was using an iPhone 7 Plus.

Hey there! I don't use this account anymore. You can find me over at @Scratch137.
NitroCipher
Scratcher
500+ posts

Scratch 3.0 Technical Discussion

It would be extremely easy to implement this much requested block:

<is pen down? ::pen> //Implentation shown here: https://github.com/NitroCipher/scratch-vm/blob/patch-1/src/extensions/scratch3_pen/index.js

I hope my post helped you in some way! Post count: 500+

Current project: [s3Blocks: scratchblocks rewritten for Scratch 3.0] ::#4b4a60 //https://scratch.mit.edu/discuss/topic/290031/ Basically done!
This is my signature identifier “aWFtbml0cm9jaXBoZXI=”
_nix
Scratcher
1000+ posts

Scratch 3.0 Technical Discussion

NitroCipher wrote:

It would be extremely easy to implement this much requested block:

<is pen down? ::pen>
Out of curiosity's sake, what's are people's uses for this block? (Google isn't finding me any results for suggestion topics for this block, even though I think I've seen it on the suggestions forum before…)

Last edited by _nix (Jan. 24, 2019 16:17:19)


══ trans autistic lesbian enbydoggirls // 16 17 18 19 20, she/they
sparrows one word to the paragraph // <3 // ~(quasar) nebula
infinitytec
Scratcher
1000+ posts

Scratch 3.0 Technical Discussion

MrMeowington wrote:

infinitytec wrote:

MrMeowington wrote:

It seems that projects that use the pen extension in any way crash Scratch completely on mobile.
I wouldn't be surprised if that's a RAM issue.
Would 3GB of RAM with nothing else running be enough? I was using an iPhone 7 Plus.
Considering my Galaxy S8 has 4GB of RAM and has issues probably not.

Mobile devices are underpowered as well, so 3-4 GB might be just fine on desktops. I should try with my Raspberry Pis.


Not here much, but sometimes I lurk.
God has a plan. He has a plan for everything, and everyone.
Greenduck54
Scratcher
500+ posts

Scratch 3.0 Technical Discussion

infinitytec wrote:

MrMeowington wrote:

infinitytec wrote:

MrMeowington wrote:

It seems that projects that use the pen extension in any way crash Scratch completely on mobile.
I wouldn't be surprised if that's a RAM issue.
Would 3GB of RAM with nothing else running be enough? I was using an iPhone 7 Plus.
Considering my Galaxy S8 has 4GB of RAM and has issues probably not.

Mobile devices are underpowered as well, so 3-4 GB might be just fine on desktops. I should try with my Raspberry Pis.
It works fine for me on PC, I have 2GB ram

I used to make stuff on here, now i just come on when i'm bored, don't expect anything from me now.
Last edited by Greenduck54 (Jan. 1, 2020 00:00:00)
oh no, the joke is dead because that time is no longer in the future :I
Last edited by Greenduck54 (Apr. 20, 2069 00:00:00)
that's better
;
ihgfedcba
Scratcher
100+ posts

Scratch 3.0 Technical Discussion

imfh wrote:

ihgfedcba wrote:

imfh wrote:

ihgfedcba wrote:

IAmCyanCat wrote:

to be honest scratch 3.0 has pros…. but it has more cons,
my main problem is that we can't do json hacking anymore.
It should work similarly as in the classic days. Open the sb3 zip, edit the json file with Notepad, then JSONhack whatever.

It’s not that simple. The JSON file is now minified so it doesn’t have any whitespace. Even once you put it through a JSON formatter, it's not possible to put a block where a block is not supposed to go. They changed how it works so inputs can either accept blocks or not accept them. If it can’t accept blocks, no amount of hacking will get one in.
But is it still possible to import two sprites with 40—50 megabytes of music each, JSONhack to merge two sprites into one sprite over the project limit, then upload?

It appears that updating the project “Music player” is still possible even though it's made over the limit by uploading two sprites and merging with a JSONhack. But is the procedure to make such a project in the first place still possible in Scratch 3.0?

Yes, you could merge two sprites by editing the JSON.

However, I don't think you can get around the upload size limit like that. I'm pretty sure the it's the server not the client that prevents you from uploading or saving something too large. It's possible there isn't a size limit for the Scratch Desktop and if so you wouldn't need to JSON hack it. There was a bit of chat about it on page 10-11. All that said, I don't know much about the size limit, so everything I just said could be completely wrong.

But, I could update the project https://scratch.mit.edu/projects/214860997/ which is about 90MB (2.0 limit is 50MB). So, either the limit changed or Scratch still allows uploading projects over the limit if they were somehow created.

The way the 50MB limit worked in Scratch 2.0 is that if you tried to upload or duplicate a sound it would prevent the user from doing so if it's over the limit. However it WILL let the user upload a sprite beyond the limit. Then, with JSONhacks, it is possible to have a single sprite over the limit.

So, in a list, that would be the following:

1. Upload a sprite beyond the limit.
2. Use JSONhacks to merge the two sprites into a single sprite beyond the limit.
3. Load the project into Scratch.
4. Upload the project into Scratch.
5. Update online as necessary.

From my experience step 5 works fine, even though the project is about 90MB. Don't know about the previous ones.
imfh
Scratcher
1000+ posts

Scratch 3.0 Technical Discussion

ihgfedcba wrote:

But, I could update the project https://scratch.mit.edu/projects/214860997/ which is about 90MB (2.0 limit is 50MB). So, either the limit changed or Scratch still allows uploading projects over the limit if they were somehow created.

The way the 50MB limit worked in Scratch 2.0 is that if you tried to upload or duplicate a sound it would prevent the user from doing so if it's over the limit. However it WILL let the user upload a sprite beyond the limit. Then, with JSONhacks, it is possible to have a single sprite over the limit.

So, in a list, that would be the following:

1. Upload a sprite beyond the limit.
2. Use JSONhacks to merge the two sprites into a single sprite beyond the limit.
3. Load the project into Scratch.
4. Upload the project into Scratch.
5. Update online as necessary.

From my experience step 5 works fine, even though the project is about 90MB. Don't know about the previous ones.

thisandagain wrote:

Greenduck54 wrote:

So, when an offline editor comes for 3.0, will it have no size limit? Because it should not have a size limit if it is taking up purely the user's hard drive space.

We haven't started on the offline editor yet, but that sounds correct to me.

If all it takes to bypass the size limit is making a larger than the size limit project, then anything created in the Scratch Desktop offline editor is immune to the size limit. I think the server is letting you have a project that large and that its not bypassing the size limit.

thisandagain wrote:

_nix wrote:

thisandagain wrote:

SuperScratchMaker123 wrote:

There's going to be a project size limit for Scratch 3, Im imagining its bigger than Scratch 2's 50MB limit.. So my question is, what's the project size limit for Scratch 3.0?

It will be the same size, but the exciting thing is that we have greatly improved compression in Scratch 3.0 so you should be able to fit bigger / more complex projects with the same number of bytes.
I've seen this is true project-wise – I've seen the work on improving the SB3 format – but are assets also going to be compressed better? The issue I've seen most people face is from uploading too many sounds or pictures.

Over time, yes. Particularly for sounds there is quite a bit we can improve.

I would guess that is actually compressing it on the server differently. It's also possible the size limit has been increased. The downloaded project still takes up ~80MB, but it is possible the server compression is different. Either way, I would think the size limit on the server would be based on the actual size of the project and not rely on the offline editor keeping the size limit.

Scratch to Pygame converter: https://scratch.mit.edu/discuss/topic/600562/
ihgfedcba
Scratcher
100+ posts

Scratch 3.0 Technical Discussion

imfh wrote:

thisandagain wrote:

Greenduck54 wrote:

So, when an offline editor comes for 3.0, will it have no size limit? Because it should not have a size limit if it is taking up purely the user's hard drive space.

We haven't started on the offline editor yet, but that sounds correct to me.

If all it takes to bypass the size limit is making a larger than the size limit project, then anything created in the Scratch Desktop offline editor is immune to the size limit. I think the server is letting you have a project that large and that its not bypassing the size limit.

The way the 10MB project limit worked in Scratch 1.4 is that it's possible to create a project of arbitrary size, but as soon as the project is attempted to be uploaded online it gives a size error. This is different from Scratch 2.0 which tries to prevent editing beyond the limit but doesn't prevent uploading beyond the limit.

The update of Music player was done by editing and saving, not by uploading.

We'll have to investigate how Scratch 3.0 reacts to:

a. editing a project beyond the limit offline
1. uploading an audio file
2. uploading a picture
3. transferring an audio file to another sprite, duplicating it
4. transferring a picture to another sprite, duplicating it
5. uploading a sprite
b. editing a project beyond the limit online
6. uploading an audio file
7. uploading a picture
8. transferring an audio file to another sprite, duplicating it
9. transferring a picture to another sprite, duplicating it
10. uploading a sprite
c. loading a project over the limit
11. offline
12. online
d. uploading a project over the limit
13. offline
14. online
e. updating a project over the limit
15. online

Scratch 1.4:
allows: 1, 2, 3, 4, 5, 11
prevents: 13
not applicable: 6, 7, 8, 9, 10, 12, 14, 15

Scratch 2.0:
allows: 5, 10, 11, 12, 13, 14, 15
prevents: 1, 2, 3, 4, 6, 7, 8, 9

Scratch 3.0:
allows: 15
unknown: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
liamdadude
Scratcher
500+ posts

Scratch 3.0 Technical Discussion

What y'all at MIT should add is PRIVATE SHARING. With private sharing, you can share it but it's only available for your
friends to see


Hi! Im liamdadude! check out my website
liamdadude
Scratcher
500+ posts

Scratch 3.0 Technical Discussion

Also, as a programmer I WOULD NEVER PUT A SPACE i would have done the logical thing, PUT A UNDERSCORE!!!?!!?

Last edited by liamdadude (Jan. 31, 2019 08:58:52)



Hi! Im liamdadude! check out my website
0037318
Scratcher
100+ posts

Scratch 3.0 Technical Discussion

liamdadude wrote:

Also, as a programmer I WOULD NEVER PUT A SPACE i would have done the logical thing, PUT A UNDERSCORE!!!?!!?

The only reason people don't use spaces is that most programming languages don't allow you to. What other reason do you have to omit spaces?

Blocks Scratch are missing

<string [thing to test for v] includes [thing to search for]?::operators>
if <condition 1::operators> then {
...
} else if <condition 2::operators> then {
...
} else {
...
}::control
return [thing to return]::custom-arg cap
<[] \<= []::operators>
<[] \>= []::operators>
create instance of [thing to make copy of v] with values [1] [10] [-20]::control
(get value [value to get v] of [sprite to get from v]::sensing)
execute based on text [code to execute]::control
break::control cap
continue::control cap
store cookie [name of cookie] [value]::variables
(get cookie [name of cookie]::variables)
(replace [item to look for] with [item to replace with] in [string to do this for]::operators)
(amount of times [item to look for] shows up in [string to do this for]::operators)

And finally, text code.
MinecraftM153
Scratcher
100+ posts

Scratch 3.0 Technical Discussion

liamdadude wrote:

What y'all at MIT should add is PRIVATE SHARING. With private sharing, you can share it but it's only available for your
friends to see
Scratch Team ain't adding that anytime soon…

The complete list of Rejected suggestions wrote:

3. Disabling “See inside”, restricting sharing, etc.:
Several people want to be able to lock their projects so that they are read-only, and other people can't see the code to copy their scripts, sounds, or artwork. However, the motto of Scratch is “Imagine - Program - Share”. By putting a project on the site, you give anyone who sees it the right to see and use your project data as long as they give credit.

Restricting sharing (i.e. sharing a project so only some people can see it) is also not going to be implemented.

Paddle2See wrote:

We depend very heavily on our community to help us keep an eye on things and make sure that the Community Guidelines are being followed. Reducing the number of people that can see a project increases the likelihood that inappropriate content could be shared without being reported. That's a risk that we are not willing to take. Keeping everything out in the open is the best way we have found to help keep Scratch friendly and safe.

I like to make drawings move elsewhere, but on here I do mainly coding experiments. Check them out if you want!
liamdadude
Scratcher
500+ posts

Scratch 3.0 Technical Discussion

How about mobile offline editor?


Hi! Im liamdadude! check out my website
infinitytec
Scratcher
1000+ posts

Scratch 3.0 Technical Discussion

liamdadude wrote:

How about mobile offline editor?
Definitely possible.


Not here much, but sometimes I lurk.
God has a plan. He has a plan for everything, and everyone.

Powered by DjangoBB