Discuss Scratch

  • Discussion Forums
  • » Suggestions
  • » Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit) [RSS Feed]
reallysoftuser
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)



Alternatively, “Containers” or “Packages”

———————————————————————————————————————————

If you've ever used the app Siri Shortcuts then you know how variables work in there.
They can hold more than just numbers and strings.
They can hold entire lists, images, audio, and more.
Something I also like in Siri Shortcuts is base64 encoding, where you can encode text, images, audio, you get the point

I would like a combination of both of these in Scratch, which we can call Packs.

Basically, variables but they can hold audio, images, text by encoding it.
Since they could possibly be abused, they would have the same restrictions as cloud variables if you're a new scratcher.
However, if you're viewing a project using packages, they will still work as intended. You will not be able to use the blocks in “See Inside” if you're a new scratcher, though.
———————————————————————————————————————————

The Blocks

encode [sample text] to [my package v] :: #C0C0C0 // used to encode text and numbers to base64, or set a package to base64 encodeed text
encode [costume1 v] to [my package v] :: #C0C0C0 // used to encode costumes to base64
encode [pop v] to [my package v] :: #C0C0C0 // used to encode audio to base64
(decode [my package v] :: #C0C0C0) // used to decode text and numbers, returns the decodeed text or number
start sound [my package v] :: #C0C0C0 // play an encodeed sound
play sound [my package v] until done :: #C0C0C0 // ditto
switch costume to [my package v] :: #C0C0C0 // switch costume to encodeed image

And finally, cloud packages!

(decode [my package ☁ v] :: #C0C0C0)
(decode package [my package ☁ v] from project [https://scratch-mit-edu.ezproxyberklee.flo.org/projects/46130596/]:: #C0C0C0)
close package [package1 v]:: #C0C0C0 // when a package is closed, it cannot be read by using the "decode package from project" block
open package [package1 v]:: #C0C0C0
———————————————————————————————————————————

Stealing, no thanks!
Once you deliver a package from one users project to another's, it will give full credit to the project and user you received the package from, on your project's page, similar to a remix.
This does not happen if you're using packages from your own project.
———————————————————————————————————————————

Why would this be useful?
Good question! It would be useful because it could reduce project size, transfer data from one project to another, create databases, and even more!

How to work around the asset size limit using packages

encode [oversized wav v] to [my package v] :: #C0C0C0

// delete the original wav file

forever
play sound [my package v] until done :: #C0C0C0
end

// now you can listen to your favorite music without worrying about project size

And delivering a package from one project to another…

encode (decode package [my package ☁ v] from project [https://scratch-mit-edu.ezproxyberklee.flo.org/projects/46130596/]:: #C0C0C0) to [my package v] :: #C0C0C0 // transferring data
———————————————————————————————————————————




ThatExplosivePigeon wrote:

reallysoftuser wrote:

Added more blocks for Cloud Functionality! The “decode container from project” block allows you to transfer costumes, audio and strings from one project to another!
You could make entire databases with this!
This is one of the most original suggestions I have ever seen, almost like the sun effect extension. I support this. But these blocks could be easily abused to steal stuff so if they can reach into projects you don't own, no support. If they can't Full support.

ScratchCatHELLO wrote:

reallysoftuser wrote:

Added more blocks for Cloud Functionality! The “decode container from project” block allows you to transfer costumes, audio and strings from one project to another!
You could make entire databases with this!

Support because of this. However, I'm not really sure if that would allow you to make databases unless you used cloud variables, so there would still be significantly limited storage.

TheTrillion wrote:

Support. This would be nice for playing audios with large sizes and much more.

Last edited by reallysoftuser (May 3, 2022 19:43:44)

NormalMaker
Scratcher
500+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

How many things can one ‘container’ hold?
Also, I'm pretty sure you got the idea from here.

Last edited by NormalMaker (March 24, 2021 15:11:54)

reallysoftuser
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

NormalMaker wrote:

How many things can one ‘container’ hold?
Good question. It can only hold 1 costume, audio, or string.
reallysoftuser
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

Added more blocks for Cloud Functionality! The “decrypt container from project” block allows you to transfer costumes, audio and strings from one project to another!
You could make entire databases with this!

Last edited by reallysoftuser (March 24, 2021 15:24:07)

ThatExplosivePigeon
Scratcher
100+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

reallysoftuser wrote:

Added more blocks for Cloud Functionality! The “decrypt container from project” block allows you to transfer costumes, audio and strings from one project to another!
You could make entire databases with this!
This is one of the most original suggestions I have ever seen, almost like the sun effect extension. I support this. But these blocks could be easily abused to steal stuff so if they can reach into projects you don't own, no support. If they can't Full support.
reallysoftuser
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

ThatExplosivePigeon wrote:

reallysoftuser wrote:

Added more blocks for Cloud Functionality! The “decrypt container from project” block allows you to transfer costumes, audio and strings from one project to another!
You could make entire databases with this!
This is one of the most original suggestions I have ever seen, almost like the sun effect extension. I support this. But these blocks could be easily abused to steal stuff so if they can reach into projects you don't own, no support. If they can't Full support.
Workaround
close container [container1 v]:: #C0C0C0 // when a container is closed, it cannot be read by using the "decrypt container from project" block
open container [container1 v]:: #C0C0C0
ScratchCatHELLO
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

reallysoftuser wrote:

Added more blocks for Cloud Functionality! The “decrypt container from project” block allows you to transfer costumes, audio and strings from one project to another!
You could make entire databases with this!

Support because of this. However, I'm not really sure if that would allow you to make databases unless you used cloud variables, so there would still be significantly limited storage.
reallysoftuser
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

I changed the name from “Containers” to “Packages.”
The posts above this one are from before the rename.
Bacteria999
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

ThatExplosivePigeon wrote:

reallysoftuser wrote:

Added more blocks for Cloud Functionality! The “decrypt container from project” block allows you to transfer costumes, audio and strings from one project to another!
You could make entire databases with this!
This is one of the most original suggestions I have ever seen, almost like the sun effect extension. I support this. But these blocks could be easily abused to steal stuff so if they can reach into projects you don't own, no support. If they can't Full support.

ScratchCatHELLO wrote:

reallysoftuser wrote:

Added more blocks for Cloud Functionality! The “decrypt container from project” block allows you to transfer costumes, audio and strings from one project to another!
You could make entire databases with this!

Support because of this. However, I'm not really sure if that would allow you to make databases unless you used cloud variables, so there would still be significantly limited storage.
Well, what if I told you that this might be the first case of suggestion plagiarism?
the2000
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

Bacteria999 wrote:

Well, what if I told you that this might be the first case of suggestion plagiarism?
Or maybe it's just a duplicate. Though I guess they are pretty similar suggestions…
Bacteria999
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

the2000 wrote:

Bacteria999 wrote:

Well, what if I told you that this might be the first case of suggestion plagiarism?
Or maybe it's just a duplicate. Though I guess they are pretty similar suggestions…
He appeared in my thread before he made this suggestion. Also, he sometimes announces his suggestion in mine. But I don't mind, the competition is fun .

Last edited by Bacteria999 (March 24, 2021 17:15:09)

dhfbei8987
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

reallysoftuser wrote:

Added more blocks for Cloud Functionality! The “decrypt container from project” block allows you to transfer costumes, audio and strings from one project to another!
You could make entire databases with this!
Wow, the syntax is complex! Support! Decrypting, encrypting (I'm still learning), would be pretty useful!
the2000
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

Bacteria999 wrote:

the2000 wrote:

Or maybe it's just a duplicate. Though I guess they are pretty similar suggestions…
He appeared in my thread before he made this suggestion. Also, he sometimes announces his suggestion in mine. But I don't mind, the competition is fun .
Could've just been subconsciously copying you, but yeah that is pretty sus ngl.

(why did I say that)
reallysoftuser
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

the2000 wrote:

Bacteria999 wrote:

Well, what if I told you that this might be the first case of suggestion plagiarism?
Or maybe it's just a duplicate. Though I guess they are pretty similar suggestions…
It's not a duplicate. His suggestion is fundamentally different from mine, has less blocks, would be implemented differently, and all of the blocks in his suggestion are different

Last edited by reallysoftuser (March 24, 2021 17:43:54)

ScratchCatHELLO
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

reallysoftuser wrote:

I changed the name from “Containers” to “Packages.”
The posts above this one are from before the rename.

that's even more confusing because it's really easy to confuse that with custom extensions
goldenlion06
Scratcher
500+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

useful, but this is suggested a lot, and how could boxes/storage/containers NOT use data from inside. lets say there is one sound that is 40kb. and another picture is 60kb. how could that be compacted into 20kb or however much the package is worth in data?
Futurebot5
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

This is almost exactly the same as Bacteria999's topic, I'd call it a dupe.
reallysoftuser
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

Futurebot5 wrote:

This is almost exactly the same as Bacteria999's topic, I'd call it a dupe.

reallysoftuser wrote:

the2000 wrote:

Bacteria999 wrote:

Well, what if I told you that this might be the first case of suggestion plagiarism?
Or maybe it's just a duplicate. Though I guess they are pretty similar suggestions…
It's not a duplicate. His suggestion is fundamentally different from mine, has less blocks, would be implemented differently, and all of the blocks in his suggestion are different
Plus, this suggestion is actually game changing, especially with the cloud functionality and the encrypting/decrypting
reallysoftuser
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

goldenlion06 wrote:

useful, but this is suggested a lot

I have never seen someone suggest a block that lets you encrypt a string/costume/audio file, upload it to the cloud, and transfer it to another project using a block
Futurebot5
Scratcher
1000+ posts

Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit)

reallysoftuser wrote:

Plus, this suggestion is actually game changing, especially with the cloud functionality and the encrypting/decrypting
Cloud is a dupe.
  • Discussion Forums
  • » Suggestions
  • » Packs (Better Variables + Cloud Variables, Store Base64 Encoded Data, Work Around the Project Size Limit) [RSS Feed]

Powered by DjangoBB