Discuss Scratch
- Discussion Forums
- » Suggestions
- » My Suggestions (Updated 8/22/14)
- 1234abcdcba4321
- Scratcher
1000+ posts
My Suggestions (Updated 8/22/14)
This isn't for your own ideas, everyone.
Updated. Really big update this time.
Updated. Really big update this time.
I'd highly appreciate it if you were to follow me. Don't forget to go to my profile.
All of my programming suggestions <— You should really get the suggestions move back to the suggestions forum!
Five hundred posts! I never expected to get up there… In only 2-3 months.
Does anyone know what a signature is? I mean, I've already seen 6-7 people get confused.
- AonymousGuy
- Scratcher
1000+ posts
My Suggestions (Updated 8/22/14)
I thought about saying that but thought it would be spammish. This isn't for your own ideas, everyone.
Updated. Really big update this time.
Lets see…
Seems like it would be a nuisance to pick up and change the value of. I already seem to be changing the variable / list in a lot of the "set [v] to []" and other blocks.([variable v]) // category=variables
([list v]) // category=list
Well lists aren't arrays, so would this be the width and height in pixels?([length v] of [list v]) //supposed to be list blocklength, area, width. That should be enough.
And what would this be used for again? The video has on-flipped, so why not show-flipped?[show-flipped v] variable [variable v] // category=variables
[show-flipped v] list [list v] // category=list
Excuse me, but I think I have Custom reporters. These would be simple reporter blocks.already suggested that.
There would be a new return block.return [block] // category=customIt would be a cap block. this says the value of the block. If the script reaches the bottom, it would return what's in the return block at the bottom. (Where you drag the return block from). Same if a “stop script” block is used in the custom reporter.define custom reporter // is a C-block
...
if <(a) > [0]> then
return ((a) * (-10)) // category=custom
end
return (a) // category=custom
I know that's been suggested before. Next up, global custom blocks.
And finally, local variables.Yes.
In the custom block option screen, there would be a new option: “Add local variable”. This would give the script it's own variable. What pressing the button, you would be able to name it, but that's it.
The vars would be accessible in dropdowns once the blocks are dragged into the script.
Last edited by AonymousGuy (Jan. 19, 2014 23:45:56)
- 1234abcdcba4321
- Scratcher
1000+ posts
My Suggestions (Updated 8/22/14)
I'm going to add height, I forgot that
Lemme add another idea…
Lemme add another idea…
Last edited by 1234abcdcba4321 (Jan. 19, 2014 23:16:26)
I'd highly appreciate it if you were to follow me. Don't forget to go to my profile.
All of my programming suggestions <— You should really get the suggestions move back to the suggestions forum!
Five hundred posts! I never expected to get up there… In only 2-3 months.
Does anyone know what a signature is? I mean, I've already seen 6-7 people get confused.
- 1234abcdcba4321
- Scratcher
1000+ posts
My Suggestions (Updated 8/22/14)
There we go, all done. Well, the main idea is.
I'd highly appreciate it if you were to follow me. Don't forget to go to my profile.
All of my programming suggestions <— You should really get the suggestions move back to the suggestions forum!
Five hundred posts! I never expected to get up there… In only 2-3 months.
Does anyone know what a signature is? I mean, I've already seen 6-7 people get confused.
- AonymousGuy
- Scratcher
1000+ posts
My Suggestions (Updated 8/22/14)
Oops. I think you misunderstood me. My “mock-up art” link was actually my thread for that suggestion. There we go, all done. Well, the main idea is.
- 1234abcdcba4321
- Scratcher
1000+ posts
My Suggestions (Updated 8/22/14)
Huh? Yeah, I assumed you linked to that thread. It's where I got the idea from anyways, just with a “few” changes.Oops. I think you misunderstood me. My “mock-up art” link was actually my thread for that suggestion. There we go, all done. Well, the main idea is.
I'd highly appreciate it if you were to follow me. Don't forget to go to my profile.
All of my programming suggestions <— You should really get the suggestions move back to the suggestions forum!
Five hundred posts! I never expected to get up there… In only 2-3 months.
Does anyone know what a signature is? I mean, I've already seen 6-7 people get confused.
- 1234abcdcba4321
- Scratcher
1000+ posts
My Suggestions (Updated 8/22/14)
I thought about saying that but thought it would be spammish. This isn't for your own ideas, everyone.
I guess. I felt like projects with a lot of variables and/or lists can be annoying to navigate.Updated. Really big update this time.
Lets see…Seems like it would be a nuisance to pick up and change the value of. I already seem to be changing the variable / list in a lot of the "set [v] to []" and other blocks.([variable v]) // category=variables
([list v]) // category=list
Yes.Well lists aren't arrays, so would this be the width and height in pixels?([length v] of [list v]) //supposed to be list blocklength, area, width. That should be enough.
I guess this isn't really needed, but… Things where you toggle what's showing. It would be easier.And what would this be used for again? The video has on-flipped, so why not show-flipped?[show-flipped v] variable [variable v] // category=variables
[show-flipped v] list [list v] // category=list
Indeed I did. It got turned down on.Excuse me, but I think I have Custom reporters. These would be simple reporter blocks.already suggested that.
There would be a new return block.return [block] // category=customIt would be a cap block. this says the value of the block. If the script reaches the bottom, it would return what's in the return block at the bottom. (Where you drag the return block from). Same if a “stop script” block is used in the custom reporter.define custom reporter // is a C-block
...
if <(a) > [0]> then
return ((a) * (-10)) // category=custom
end
return (a) // category=customI know that's been suggested before. Next up, global custom blocks.
Seems like other peoples did better, so I reposted it.
I'm glad you like it.And finally, local variables.Yes.
In the custom block option screen, there would be a new option: “Add local variable”. This would give the script it's own variable. What pressing the button, you would be able to name it, but that's it.
The vars would be accessible in dropdowns once the blocks are dragged into the script.
Oh, and if you were wondering, I added a little more.
Last edited by 1234abcdcba4321 (Jan. 20, 2014 00:39:59)
I'd highly appreciate it if you were to follow me. Don't forget to go to my profile.
All of my programming suggestions <— You should really get the suggestions move back to the suggestions forum!
Five hundred posts! I never expected to get up there… In only 2-3 months.
Does anyone know what a signature is? I mean, I've already seen 6-7 people get confused.
- AonymousProfessor
- Scratcher
100+ posts
My Suggestions (Updated 8/22/14)
little more.Oh, and if you were wondering, I added a When will it end? :P
Arrays: I would like them, but they would be quite confusing for New Scratchers (Based off of my confusion over the purpose of lists when I started)
And I didn't see anything else that's different, so…
I am @AonymousGuy's test account!
The word “test” in test accounts is outdated. That is why mine has professor instead!
Thanks @MicroMacro for the profile image!
- 1234abcdcba4321
- Scratcher
1000+ posts
My Suggestions (Updated 8/22/14)
Just the () is showing? blocks was what I added.
Also, yeah I know whey would be confusing, as my friends don't even know what lists are for yet.
Also, yeah I know whey would be confusing, as my friends don't even know what lists are for yet.
I'd highly appreciate it if you were to follow me. Don't forget to go to my profile.
All of my programming suggestions <— You should really get the suggestions move back to the suggestions forum!
Five hundred posts! I never expected to get up there… In only 2-3 months.
Does anyone know what a signature is? I mean, I've already seen 6-7 people get confused.
- DerAxeEffekt
- Scratcher
100+ posts
My Suggestions (Updated 8/22/14)
I like them, exept for:
move mouse to x:() y:()
hide [mouse pointer v]
show [mouse pointer v]
(insert oversized quotation mark) If it is on the internet, it must be true. (insert another oversized quotation mark)
-Abraham Lincoln
- 1234abcdcba4321
- Scratcher
1000+ posts
My Suggestions (Updated 8/22/14)
Added a very, very small item to the suggestion.
I'd highly appreciate it if you were to follow me. Don't forget to go to my profile.
All of my programming suggestions <— You should really get the suggestions move back to the suggestions forum!
Five hundred posts! I never expected to get up there… In only 2-3 months.
Does anyone know what a signature is? I mean, I've already seen 6-7 people get confused.
- CodeLegend
- Scratcher
500+ posts
My Suggestions (Updated 8/22/14)
I'm going to try to give input on most of these.
All in all, these ideas were pretty good! I'd like to see them updated. I hope my five years of Scratch experience has helped you.
This won't work. If you think about it logically, there has to be a direction that you're bouncing off of. Imagine you're facing NE. If you bounce off the top edge, you will be facing SE. If you bounce off the right edge you'll be facing NW. I think the “If on edge, bounce” block should just be “bounce”.if <touching [edge v]?> then // If you want the old if on edge bounce
bounce // category=motion
end
I think there should be a function to move the mouse.A good idea, but what would it be used for? I think this would cause more harm than good.move mouse to x: () y: () // category=motionTo make it possible to leave projects, it would only work if you're focused on the game. You could press esc to leave the project, and it gives you a warning. (Like the username block.)
Make size an effect.I agree that it should be possible to detect effects, but size does not need to be one. If size is an effect, then why aren't direction, position, and costume?change [size v] effect by (25)Allow the detection of more than just size.
set [size v] effect to (0)([size v] effect) // category=looks
Why not add an eraser mode to pen?This seems like a lot, but I completely agree. There is no way to clear pen off only a portion of the screen without clearing all of it, and this would make that possible. There are workarounds for changing the rgb/hsl of colors, though. It's just very difficult.Set pen mode to [draw v] // category=penIt would have draw, erase, and off.
It would replace pen up and pen down.
Easy pen color controls:set pen [hue v] to () // category=penIt would have hue, brightness, colorness (saturation), red, green, and blue.
change pen [red v] by () // category=pen
It would replace those blocks… You know which ones I'm talking about, right?
I think you should be able to hide/show the mouse.I'm neutral on this one. I think the mouse show/hide should be a separate block. Many people use show/hide in sprites and then duplicate the sprites, and they don't want to have to change all of the little dropdown tabs.Show [mouse-pointer v] // category=looksThe dropdown would include all sprites.
Hide [mouse-pointer v] // category=looks
The variable and list tabs are too big. Change the variable and list blocks to one block with a dropdown:Again, I'm neutral. This could be helpful to people making *huge* projects, but otherwise it would be confusing to newer scratchers. Projects typically don't have more than 10 variables/lists.([variable v]) // category=variablesThe scratchblocks can't render it correctly. It's supposed to be a dropdown.
([list v]) // category=list
How about some advanced stuff?Geez! That seems a bit overkill. These are a lot of blocks that will barely be used at all.set [variable v]'s display type to [normal v] // category=variablesAs for the ()'s () block, the second dropdown would have slider min, slider max, and display type.
set [variable v]'s slider min to [] // category=variables
set [variable v]'s slider max to [] // category=variables
([variable v]'s [slider min v]) // category=variables
move [variable v] to x: () y: () // category=variables
move [list v] to x: () y: () // category=list
resize [list v] to () pixels wide and () pixels tall // category=list
<variable [variable v] is showing?> // category=variables
<list [list v] is showing?> // category=list
Replace the length of list with a new block:([length v] of [list v]) // supposed to be list blocklength, area, width, height. That should be enough.
The video has on-flipped, so why not show-flipped?[show-flipped v] variable [variable v] // category=variables
[show-flipped v] list [list v] // category=list
Now, a new section: Arrays!Again, geez! This is a bit much. Arrays can be made with lists in any amount of dimensions. It just requires a lot of experience. There are custom blocks some Scratchers made that essentially do this.
Arrays would have several options:Name of array: []Now, in the dimensions option, 0 creates a variable, 1 creates a list. Otherwise, you get an array.
Dimensions in array: ()
Pick one:
() for this sprite only
() for all sprites
() cloud (scratchers only)
As they're more complicated, I think they should be able to be edited easily with an edit menu like custom blocks.
Arrays of more than 2 dimensions would have NO visual indicator.
Arrays would have similar blocks as lists:
- The () contains () and add () list blocks would support arrays with it's dropdown.
– The add block would insert it at spot 1 in every dimension.
- In 2D arrays, the same visual blocks as lists would be available, too.
- New blocks:shift [item] () places in dimension () of [array v] // Does what you'd think it doesAn array begins with an empty queue.
bring [item] to place () in dimension () of [array v] // Effectively the set function for the above
delete [item] in [array v] // Do you need to know what it does?
[show v] array [array v] // 2D arrays only
(length in dimension () of [array v])
[add v] dimension () from queue of [array v] // add, remove, add-flipped. This is needed for the next block.
item (), (), () of [array v] // The dimensions used would be the dimensions in queue. Supposed to be red.
Because it's complicated, if you have more than one of the same item in an array, it would just do it for all of them.
And don't forget the actual array block. It would have to be more complicated than the list block, though.
I think the when [] > () block should have more settings.
I'm assuming this wouldn't be a new block, it would just have all the variables in the dropdown. This is good.when [variables can go here too v] [> v] (10) // wow, it ended up purple? how'd that happen?
To help with the when gf clicked block, there should be a block for when someone leaves the project. It would be a full-scratcher only block and would only trigger if the user is a full scratcher.Once a project has been left, the scripts have already stopped running… There are other ways to do that with cloud data, it's just a bit difficult.when project left // category=eventsOf course, it would be a hat block.
The only reason why I want it is to change cloud data.
Here's a not-confusing way for a broadcast received? boolean.Yes! Yes! Finally someone who understands how Scratch works! I have seen this so many times without the ‘last (1) seconds’ at the end. This is the perfect solution. Of course… There is a simple workaround.([message1 v] received in last (1) secs?) // category=events
How about a “Link to” block? It would be full scratchers only and would have a confirmation message (also with a “Don't accept links this session” option that makes the confirmation message disappear and no others to show up, making you not go to any links)I completely agree, although I think it should be Scratch-only.Link to [link.link/link] // category=control
I also think we should have an “auto-copy” block. It would automatically copy what's in the textbox.This is good. Maybe also a (clipboard) reporter?copy [thing] to clipboard // category=control
Workaround: There could be a forever in the other sprite that would set a variable to something.<color [#f0f] is touching [sprite v]?> // I think this block would be useful.
I want more booleans.I agree with all of these, but why is there a (1) in the timer block? There don't need to be multiple timers; there is a workaround for that.<showing?>Advanced timer settings!
<Mouse is showing?>[reset v] timer (1) // category=sensingWith start and stop in the dropdown.
The event block that uses the timer could be split a bit more.
How about a “stop asking” block?Stop asking // category=sensing
There should be more key sensing: tab, Lctrl, Rctrl, Lshift, Rshift, Enter, Backspace, any letter, any number. I'd also like -=\;',./ alt and the F keys, along with any symbol. Any would also be helpful.This can be done by hacking, but I guess it would be better if it could be legitimately done.if <key [any of those above v] pressed?> then
say [YAY!!!!!]
end
Put the +, -, *, /, and mod blocks into a single block with a dropdown.WRONG! (sorry for caps) Strings can be compared in these booleans. For instance, d>b and a<e.(() [+ v] ()) // category=operatorsThere's really no point in having the < and > blocks with square edges. Remove the > and make the < have round inputs.<() < ()> // yes it's boolean
Remove the round block and put it in the dropdown directly below it.Good.([round v] of (9)) // This should be an operator, the category thing wasn't working
A ^ block would also be useful. With that, the 10^, log, e^, ln, and sqrt functions wouldn't be required. (It would also be in the dropdown.)Remember, you can't get rid of blocks! There are thousands of projects that use them.(() [^ v] ()) // category=operators
Dropdowns in custom blocks.So many people have asked for this, it's practically ensured to be in the next update.define I want [thing]s
I want [dropdown v]s // category=custom
All in all, these ideas were pretty good! I'd like to see them updated. I hope my five years of Scratch experience has helped you.
- 1234abcdcba4321
- Scratcher
1000+ posts
My Suggestions (Updated 8/22/14)
Okay, editing. I'm going to try to give input on most of these.This won't work. If you think about it logically, there has to be a direction that you're bouncing off of. Imagine you're facing NE. If you bounce off the top edge, you will be facing SE. If you bounce off the right edge you'll be facing NW. I think the “If on edge, bounce” block should just be “bounce”.if <touching [edge v]?> then // If you want the old if on edge bounce
bounce // category=motion
end
It's possible to do this with real programming, but currently, you have to make something like requiring you to drag, instead of just moving the mouse.I think there should be a function to move the mouse.A good idea, but what would it be used for? I think this would cause more harm than good.move mouse to x: () y: () // category=motionTo make it possible to leave projects, it would only work if you're focused on the game. You could press esc to leave the project, and it gives you a warning. (Like the username block.)
I guess your argument is valid, but the reason why is because the size blocks are RIGHT BELOW the effect blocks.Make size an effect.I agree that it should be possible to detect effects, but size does not need to be one. If size is an effect, then why aren't direction, position, and costume?change [size v] effect by (25)Allow the detection of more than just size.
set [size v] effect to (0)([size v] effect) // category=looks
Yes, exactly why I'm suggesting it. I know how it's possible by now, but that's a REALLY annoying workaround.Why not add an eraser mode to pen?This seems like a lot, but I completely agree. There is no way to clear pen off only a portion of the screen without clearing all of it, and this would make that possible. There are workarounds for changing the rgb/hsl of colors, though. It's just very difficult.Set pen mode to [draw v] // category=penIt would have draw, erase, and off.
It would replace pen up and pen down.
Easy pen color controls:set pen [hue v] to () // category=penIt would have hue, brightness, colorness (saturation), red, green, and blue.
change pen [red v] by () // category=pen
It would replace those blocks… You know which ones I'm talking about, right?
Oh, I guess so. I wanted to be able to hide the mouse, so I decided that I'd might as well toss in a dropdown for all sprites.I think you should be able to hide/show the mouse.I'm neutral on this one. I think the mouse show/hide should be a separate block. Many people use show/hide in sprites and then duplicate the sprites, and they don't want to have to change all of the little dropdown tabs.Show [mouse-pointer v] // category=looksThe dropdown would include all sprites.
Hide [mouse-pointer v] // category=looks
Yes, I understand this. It can still be annoying on projects with a lot of vars though.The variable and list tabs are too big. Change the variable and list blocks to one block with a dropdown:Again, I'm neutral. This could be helpful to people making *huge* projects, but otherwise it would be confusing to newer scratchers. Projects typically don't have more than 10 variables/lists.([variable v]) // category=variablesThe scratchblocks can't render it correctly. It's supposed to be a dropdown.
([list v]) // category=list
I would use them quite a bit… As would some others.How about some advanced stuff?Geez! That seems a bit overkill. These are a lot of blocks that will barely be used at all.set [variable v]'s display type to [normal v] // category=variablesAs for the ()'s () block, the second dropdown would have slider min, slider max, and display type.
set [variable v]'s slider min to [] // category=variables
set [variable v]'s slider max to [] // category=variables
([variable v]'s [slider min v]) // category=variables
move [variable v] to x: () y: () // category=variables
move [list v] to x: () y: () // category=list
resize [list v] to () pixels wide and () pixels tall // category=list
<variable [variable v] is showing?> // category=variables
<list [list v] is showing?> // category=list
Replace the length of list with a new block:([length v] of [list v]) // supposed to be list blocklength, area, width, height. That should be enough.
The video has on-flipped, so why not show-flipped?[show-flipped v] variable [variable v] // category=variables
[show-flipped v] list [list v] // category=list
Yeah, I know that. It'd be nice to just have a built-in feature though.Now, a new section: Arrays!Again, geez! This is a bit much. Arrays can be made with lists in any amount of dimensions. It just requires a lot of experience. There are custom blocks some Scratchers made that essentially do this.
Arrays would have several options:Name of array: []Now, in the dimensions option, 0 creates a variable, 1 creates a list. Otherwise, you get an array.
Dimensions in array: ()
Pick one:
() for this sprite only
() for all sprites
() cloud (scratchers only)
As they're more complicated, I think they should be able to be edited easily with an edit menu like custom blocks.
Arrays of more than 2 dimensions would have NO visual indicator.
Arrays would have similar blocks as lists:
- The () contains () and add () list blocks would support arrays with it's dropdown.
– The add block would insert it at spot 1 in every dimension.
- In 2D arrays, the same visual blocks as lists would be available, too.
- New blocks:shift [item] () places in dimension () of [array v] // Does what you'd think it doesAn array begins with an empty queue.
bring [item] to place () in dimension () of [array v] // Effectively the set function for the above
delete [item] in [array v] // Do you need to know what it does?
[show v] array [array v] // 2D arrays only
(length in dimension () of [array v])
[add v] dimension () from queue of [array v] // add, remove, add-flipped. This is needed for the next block.
item (), (), () of [array v] // The dimensions used would be the dimensions in queue. Supposed to be red.
Because it's complicated, if you have more than one of the same item in an array, it would just do it for all of them.
And don't forget the actual array block. It would have to be more complicated than the list block, though.
I think the when [] > () block should have more settings.
Yes, I do know how.I'm assuming this wouldn't be a new block, it would just have all the variables in the dropdown. This is good.when [variables can go here too v] [> v] (10) // wow, it ended up purple? how'd that happen?To help with the when gf clicked block, there should be a block for when someone leaves the project. It would be a full-scratcher only block and would only trigger if the user is a full scratcher.Once a project has been left, the scripts have already stopped running… There are other ways to do that with cloud data, it's just a bit difficult.when project left // category=eventsOf course, it would be a hat block.
The only reason why I want it is to change cloud data.
…The only thing is, the only way I know how to do that is to have a “server”, which not everyone can keep up.
But it would still be convenient…Here's a not-confusing way for a broadcast received? boolean.Yes! Yes! Finally someone who understands how Scratch works! I have seen this so many times without the ‘last (1) seconds’ at the end. This is the perfect solution. Of course… There is a simple workaround.([message1 v] received in last (1) secs?) // category=events
Cool. I don't.How about a “Link to” block? It would be full scratchers only and would have a confirmation message (also with a “Don't accept links this session” option that makes the confirmation message disappear and no others to show up, making you not go to any links)I completely agree, although I think it should be Scratch-only.Link to [link.link/link] // category=control
Good idea!I also think we should have an “auto-copy” block. It would automatically copy what's in the textbox.This is good. Maybe also a (clipboard) reporter?copy [thing] to clipboard // category=control
More variables are annoying. I also prefer to not use another list entry…Workaround: There could be a forever in the other sprite that would set a variable to something.<color [#f0f] is touching [sprite v]?> // I think this block would be useful.
Multiple timers, yes. I know there's a workaround, but what if you want red stop sign pressed detection? And player-made timers are less accurate.I want more booleans.I agree with all of these, but why is there a (1) in the timer block? There don't need to be multiple timers; there is a workaround for that.<showing?>Advanced timer settings!
<Mouse is showing?>[reset v] timer (1) // category=sensingWith start and stop in the dropdown.
The event block that uses the timer could be split a bit more.
How about a “stop asking” block?Stop asking // category=sensing
I'll remove this suggestion. I never knew why strings were allowed.There should be more key sensing: tab, Lctrl, Rctrl, Lshift, Rshift, Enter, Backspace, any letter, any number. I'd also like -=\;',./ alt and the F keys, along with any symbol. Any would also be helpful.This can be done by hacking, but I guess it would be better if it could be legitimately done.if <key [any of those above v] pressed?> then
say [YAY!!!!!]
endPut the +, -, *, /, and mod blocks into a single block with a dropdown.WRONG! (sorry for caps) Strings can be compared in these booleans. For instance, d>b and a<e.(() [+ v] ()) // category=operatorsThere's really no point in having the < and > blocks with square edges. Remove the > and make the < have round inputs.<() < ()> // yes it's boolean
Since when did I say to remove them?Remove the round block and put it in the dropdown directly below it.Good.([round v] of (9)) // This should be an operator, the category thing wasn't workingA ^ block would also be useful. With that, the 10^, log, e^, ln, and sqrt functions wouldn't be required. (It would also be in the dropdown.)Remember, you can't get rid of blocks! There are thousands of projects that use them.(() [^ v] ()) // category=operators
Thanks!Dropdowns in custom blocks.So many people have asked for this, it's practically ensured to be in the next update.define I want [thing]s
I want [dropdown v]s // category=custom
All in all, these ideas were pretty good! I'd like to see them updated. I hope my five years of Scratch experience has helped you.
Last edited by 1234abcdcba4321 (Jan. 21, 2014 22:28:35)
I'd highly appreciate it if you were to follow me. Don't forget to go to my profile.
All of my programming suggestions <— You should really get the suggestions move back to the suggestions forum!
Five hundred posts! I never expected to get up there… In only 2-3 months.
Does anyone know what a signature is? I mean, I've already seen 6-7 people get confused.
- AonymousGuy
- Scratcher
1000+ posts
My Suggestions (Updated 8/22/14)
That could be used to spam and copy bad things and get rid of data people want on their clipboard.Good idea!This is good. Maybe also a (clipboard) reporter?copy [thing] to clipboard // category=control
Since when did I say to remove them?A ^ block would also be useful. With that, the 10^, log, e^, ln, and sqrt functions wouldn't be required. (It would also be in the dropdown.)Remember, you can't get rid of blocks! There are thousands of projects that use them.(() [^ v] ()) // category=operators
That kind of makes it seem like they should be removed. With that, the 10^, log, e^, ln, and sqrt functions wouldn't be required.
Last edited by AonymousGuy (Jan. 21, 2014 22:53:28)
- meowmoo
- Scratcher
500+ posts
My Suggestions (Updated 8/22/14)
they sould have some more operators:
<[] = [between [] and [] ]>
([numeric equivalent v] of (A))
- meowmoo
- Scratcher
500+ posts
My Suggestions (Updated 8/22/14)
also,
however, mabye instead of :
i think it should be:
Okay, editing. I'm going to try to give input on most of these.This won't work. If you think about it logically, there has to be a direction that you're bouncing off of. Imagine you're facing NE. If you bounce off the top edge, you will be facing SE. If you bounce off the right edge you'll be facing NW. I think the “If on edge, bounce” block should just be “bounce”.if <touching [edge v]?> then // If you want the old if on edge bounce
bounce // category=motion
endIt's possible to do this with real programming, but currently, you have to make something like requiring you to drag, instead of just moving the mouse.I think there should be a function to move the mouse.A good idea, but what would it be used for? I think this would cause more harm than good.move mouse to x: () y: () // category=motionTo make it possible to leave projects, it would only work if you're focused on the game. You could press esc to leave the project, and it gives you a warning. (Like the username block.)I guess your argument is valid, but the reason why is because the size blocks are RIGHT BELOW the effect blocks.Make size an effect.I agree that it should be possible to detect effects, but size does not need to be one. If size is an effect, then why aren't direction, position, and costume?change [size v] effect by (25)Allow the detection of more than just size.
set [size v] effect to (0)([size v] effect) // category=looksYes, exactly why I'm suggesting it. I know how it's possible by now, but that's a REALLY annoying workaround.Why not add an eraser mode to pen?This seems like a lot, but I completely agree. There is no way to clear pen off only a portion of the screen without clearing all of it, and this would make that possible. There are workarounds for changing the rgb/hsl of colors, though. It's just very difficult.Set pen mode to [draw v] // category=penIt would have draw, erase, and off.
It would replace pen up and pen down.
Easy pen color controls:set pen [hue v] to () // category=penIt would have hue, brightness, colorness (saturation), red, green, and blue.
change pen [red v] by () // category=pen
It would replace those blocks… You know which ones I'm talking about, right?Oh, I guess so. I wanted to be able to hide the mouse, so I decided that I'd might as well toss in a dropdown for all sprites.I think you should be able to hide/show the mouse.I'm neutral on this one. I think the mouse show/hide should be a separate block. Many people use show/hide in sprites and then duplicate the sprites, and they don't want to have to change all of the little dropdown tabs.Show [mouse-pointer v] // category=looksThe dropdown would include all sprites.
Hide [mouse-pointer v] // category=looksYes, I understand this. It can still be annoying on projects with a lot of vars though.The variable and list tabs are too big. Change the variable and list blocks to one block with a dropdown:Again, I'm neutral. This could be helpful to people making *huge* projects, but otherwise it would be confusing to newer scratchers. Projects typically don't have more than 10 variables/lists.([variable v]) // category=variablesThe scratchblocks can't render it correctly. It's supposed to be a dropdown.
([list v]) // category=listI would use them quite a bit… As would some others.How about some advanced stuff?Geez! That seems a bit overkill. These are a lot of blocks that will barely be used at all.set [variable v]'s display type to [normal v] // category=variablesAs for the ()'s () block, the second dropdown would have slider min, slider max, and display type.
set [variable v]'s slider min to [] // category=variables
set [variable v]'s slider max to [] // category=variables
([variable v]'s [slider min v]) // category=variables
move [variable v] to x: () y: () // category=variables
move [list v] to x: () y: () // category=list
resize [list v] to () pixels wide and () pixels tall // category=list
<variable [variable v] is showing?> // category=variables
<list [list v] is showing?> // category=list
Replace the length of list with a new block:([length v] of [list v]) // supposed to be list blocklength, area, width, height. That should be enough.
The video has on-flipped, so why not show-flipped?[show-flipped v] variable [variable v] // category=variables
[show-flipped v] list [list v] // category=listYeah, I know that. It'd be nice to just have a built-in feature though.Now, a new section: Arrays!Again, geez! This is a bit much. Arrays can be made with lists in any amount of dimensions. It just requires a lot of experience. There are custom blocks some Scratchers made that essentially do this.
Arrays would have several options:Name of array: []Now, in the dimensions option, 0 creates a variable, 1 creates a list. Otherwise, you get an array.
Dimensions in array: ()
Pick one:
() for this sprite only
() for all sprites
() cloud (scratchers only)
As they're more complicated, I think they should be able to be edited easily with an edit menu like custom blocks.
Arrays of more than 2 dimensions would have NO visual indicator.
Arrays would have similar blocks as lists:
- The () contains () and add () list blocks would support arrays with it's dropdown.
– The add block would insert it at spot 1 in every dimension.
- In 2D arrays, the same visual blocks as lists would be available, too.
- New blocks:shift [item] () places in dimension () of [array v] // Does what you'd think it doesAn array begins with an empty queue.
bring [item] to place () in dimension () of [array v] // Effectively the set function for the above
delete [item] in [array v] // Do you need to know what it does?
[show v] array [array v] // 2D arrays only
(length in dimension () of [array v])
[add v] dimension () from queue of [array v] // add, remove, add-flipped. This is needed for the next block.
item (), (), () of [array v] // The dimensions used would be the dimensions in queue. Supposed to be red.
Because it's complicated, if you have more than one of the same item in an array, it would just do it for all of them.
And don't forget the actual array block. It would have to be more complicated than the list block, though.
I think the when [] > () block should have more settings.Yes, I do know how.I'm assuming this wouldn't be a new block, it would just have all the variables in the dropdown. This is good.when [variables can go here too v] [> v] (10) // wow, it ended up purple? how'd that happen?To help with the when gf clicked block, there should be a block for when someone leaves the project. It would be a full-scratcher only block and would only trigger if the user is a full scratcher.Once a project has been left, the scripts have already stopped running… There are other ways to do that with cloud data, it's just a bit difficult.when project left // category=eventsOf course, it would be a hat block.
The only reason why I want it is to change cloud data.
…The only thing is, the only way I know how to do that is to have a “server”, which not everyone can keep up.But it would still be convenient…Here's a not-confusing way for a broadcast received? boolean.Yes! Yes! Finally someone who understands how Scratch works! I have seen this so many times without the ‘last (1) seconds’ at the end. This is the perfect solution. Of course… There is a simple workaround.([message1 v] received in last (1) secs?) // category=eventsCool. I don't.How about a “Link to” block? It would be full scratchers only and would have a confirmation message (also with a “Don't accept links this session” option that makes the confirmation message disappear and no others to show up, making you not go to any links)I completely agree, although I think it should be Scratch-only.Link to [link.link/link] // category=controlGood idea!I also think we should have an “auto-copy” block. It would automatically copy what's in the textbox.This is good. Maybe also a (clipboard) reporter?copy [thing] to clipboard // category=controlMore variables are annoying. I also prefer to not use another list entry…Workaround: There could be a forever in the other sprite that would set a variable to something.<color [#f0f] is touching [sprite v]?> // I think this block would be useful.Multiple timers, yes. I know there's a workaround, but what if you want red stop sign pressed detection? And player-made timers are less accurate.I want more booleans.I agree with all of these, but why is there a (1) in the timer block? There don't need to be multiple timers; there is a workaround for that.<showing?>Advanced timer settings!
<Mouse is showing?>[reset v] timer (1) // category=sensingWith start and stop in the dropdown.
The event block that uses the timer could be split a bit more.
How about a “stop asking” block?Stop asking // category=sensingI'll remove this suggestion. I never knew why strings were allowed.There should be more key sensing: tab, Lctrl, Rctrl, Lshift, Rshift, Enter, Backspace, any letter, any number. I'd also like -=\;',./ alt and the F keys, along with any symbol. Any would also be helpful.This can be done by hacking, but I guess it would be better if it could be legitimately done.if <key [any of those above v] pressed?> then
say [YAY!!!!!]
endPut the +, -, *, /, and mod blocks into a single block with a dropdown.WRONG! (sorry for caps) Strings can be compared in these booleans. For instance, d>b and a<e.(() [+ v] ()) // category=operatorsThere's really no point in having the < and > blocks with square edges. Remove the > and make the < have round inputs.<() < ()> // yes it's booleanSince when did I say to remove them?Remove the round block and put it in the dropdown directly below it.Good.([round v] of (9)) // This should be an operator, the category thing wasn't workingA ^ block would also be useful. With that, the 10^, log, e^, ln, and sqrt functions wouldn't be required. (It would also be in the dropdown.)Remember, you can't get rid of blocks! There are thousands of projects that use them.(() [^ v] ()) // category=operatorsThanks!Dropdowns in custom blocks.So many people have asked for this, it's practically ensured to be in the next update.define I want [thing]s
I want [dropdown v]s // category=custom
All in all, these ideas were pretty good! I'd like to see them updated. I hope my five years of Scratch experience has helped you.
however, mabye instead of :
if <touching [edge v]?> then
bounce
end
i think it should be:
if <touching [edge v]?> then
bounce in direction ()
end
- 1234abcdcba4321
- Scratcher
1000+ posts
My Suggestions (Updated 8/22/14)
they sould have some more operators:<[] = [between [] and [] ]>([numeric equivalent v] of (A))
IMPORTANT! DO NOT POST YOUR OWN IDEAS IN THIS THREAD!
I'd highly appreciate it if you were to follow me. Don't forget to go to my profile.
All of my programming suggestions <— You should really get the suggestions move back to the suggestions forum!
Five hundred posts! I never expected to get up there… In only 2-3 months.
Does anyone know what a signature is? I mean, I've already seen 6-7 people get confused.
- Zambonifofex
- Scratcher
100+ posts
My Suggestions (Updated 8/22/14)
What's the problem of people posting their ideas here? i mean, sure they will get more attencion by creating a new thread, but posting it can can't cause any harm, can it?they sould have some more operators:<[] = [between [] and [] ]>([numeric equivalent v] of (A))IMPORTANT! DO NOT POST YOUR OWN IDEAS IN THIS THREAD!
Last edited by Zambonifofex (Jan. 26, 2014 01:14:21)
You've just lost The Game
Click here to check out an awesome game, Patapony
- meowmoo
- Scratcher
500+ posts
My Suggestions (Updated 8/22/14)
NOT support you on these.I dochange x by (10)
set x to (0)
change y by (10)
set y to (0)change [variable v] by (1)
set [size v] effect to (0)
change [size v] effect by (25)
I DO want these though.<[ARM32] is a [scratcher v]?> // category=sensing
([post v] number of [ARM32]) // category=sensing
<is [ARM32] a guest?> // category=sensing
I ALSO want these.<[message1 v] received?> // category=events
<I am a [clone v]?> // category=control
<<> xor <>> // category=operators
<<> nand <>> // category=operators
<<> nor <>> // category=operators
#2)also:
<[meowmoo] is a [new scratcher v]? // category=sensing
- meowmoo
- Scratcher
500+ posts
My Suggestions (Updated 8/22/14)
Here's something i would like specified. Instead of:
how about:
<touching [edge v]?>
how about:
<touching [bottom edge v]?>
<touching [right edge v]?>
<touching [top edge v]?>
<touching [left edge v]?>
- Discussion Forums
- » Suggestions
- » My Suggestions (Updated 8/22/14)