This is a read-only archive of the old Scratch 1.x Forums.
Try searching the current Scratch discussion forums.

#351 2010-05-04 04:29:35

markyparky56
Scratcher
Registered: 2008-03-20
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Jens wrote:

markyparky56 wrote:

markyparky56 wrote:

I found another glitch.

http://img101.imageshack.us/img101/2558/glitch2.gif
If you put a rounded reporter block into a boolean block, such as the ones in the picture, then take it out it makes it only allow you to enter numbers (Or intergers) and no text (Or strings)

Did anyone see this?

Hi, markyparky56.

Thanks for this detailed bug report! The screenshot is really helpful, but I'm still having problems reproducing this obvious bug. Can you tell me if this is happening in the Block Editor or in the regular scripting area? Is there perhaps any way you can post it somewhere on the web?

Thanks again for all the awesome bug reports, guys!

Ok, i managed to re-create it. Try puting a variable block in the if block.
Like this:
http://img85.imageshack.us/img85/4920/glitchreconstuction.png
does this help?

Edit:
Update:Ok, i just downloaded 2.99.005
How to do it:
Make a random block. Names not important.
Insert a script variables block.
Add an If block. Put a boolean < ( ) > ( ) > in, in that, put (a) > 0 then a variable set block into that, then copy the if block and take out the (a), you will have glitched it!

Last edited by markyparky56 (2010-05-04 04:34:15)


http://j.mp/jgVnTq
Check out my game engine development site: NewDawn I'm a Level 171 Scratcher.I am http://bit.ly/nkvLNT

Offline

 

#352 2010-05-04 05:19:24

Jens
Scratcher
Registered: 2007-06-04
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Hmmm, I must be making something wrong, because I still cannot reproduce the glitch that obviously happens to you. But I'll keep trying anyway. Thanks!


Jens Mönig

Offline

 

#353 2010-05-04 05:24:50

markyparky56
Scratcher
Registered: 2008-03-20
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Jens wrote:

Hmmm, I must be making something wrong, because I still cannot reproduce the glitch that obviously happens to you. But I'll keep trying anyway. Thanks!

Strange, i can't get it to do it again... strange...


http://j.mp/jgVnTq
Check out my game engine development site: NewDawn I'm a Level 171 Scratcher.I am http://bit.ly/nkvLNT

Offline

 

#354 2010-05-04 06:01:19

Jens
Scratcher
Registered: 2007-06-04
Posts: 1000+

Re: BYOB 3 - Discussion Thread

bharvey wrote:

nXIII wrote:

While searching for a different glitch to take a picture of, I got this:
http://i40.tinypic.com/24ymuc7.png
Is that supposed to happen?

Hah!  Thanks for helping me win an argument with Jens.  smile   He thinks that THE SCRIPT [REPORT FOO]
and THE [FOO] BLOCK are equivalent, and one can be displayed as if it were the other.

And I still do!

The problem with this is that you're trying to call THE (CALL <>) BLOCK with a command block ("say ..") as argument. This has nothing to do with THE SCRIPT, in fact, if you just add a REPORT <foo> command block the the script inside THE SCRIPT this will turn it into a perfectly valid reporter (!) and will prevent it from freezing, and even answer "foo".

Therefore I still maintain that THE <aReporter> BLOCK is just syntactic sugar for THE SCRIPT (report <aReporter> ). I even implemented it that way.  smile


Jens Mönig

Offline

 

#355 2010-05-04 06:09:46

markyparky56
Scratcher
Registered: 2008-03-20
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Jens wrote:

bharvey wrote:

nXIII wrote:

While searching for a different glitch to take a picture of, I got this:
http://i40.tinypic.com/24ymuc7.png
Is that supposed to happen?

Hah!  Thanks for helping me win an argument with Jens.  smile   He thinks that THE SCRIPT [REPORT FOO]
and THE [FOO] BLOCK are equivalent, and one can be displayed as if it were the other.

And I still do!

The problem with this is that you're trying to call THE (CALL <>) BLOCK with a command block ("say ..") as argument. This has nothing to do with THE SCRIPT, in fact, if you just add a REPORT <foo> command block the the script inside THE SCRIPT this will turn it into a perfectly valid reporter (!) and will prevent it from freezing, and even answer "foo".

Therefore I still maintain that THE <aReporter> BLOCK is just syntactic sugar for THE SCRIPT (report <aReporter> ). I even implemented it that way.  smile

I think I should be taking notes on how to have a good arguement...


http://j.mp/jgVnTq
Check out my game engine development site: NewDawn I'm a Level 171 Scratcher.I am http://bit.ly/nkvLNT

Offline

 

#356 2010-05-04 10:20:02

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Jens wrote:

And I still do!

The problem with this is that you're trying to call THE (CALL <>) BLOCK with a command block ("say ..") as argument....

No, Jens, I was responding to #324, not #332.  Here's nXIII's picture again:
http://i40.tinypic.com/24ymuc7.png
The point is that a script to report something is not the same as the something; we may be saving the script to report the something later.

Last edited by bharvey (2010-05-04 10:23:11)


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#357 2010-05-04 10:35:24

Jens
Scratcher
Registered: 2007-06-04
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Oh, okay, in this case you win  smile
Wait! didn't I fix that last night?


Jens Mönig

Offline

 

#358 2010-05-04 13:55:04

nXIII
Community Moderator
Registered: 2009-04-21
Posts: 1000+

Re: BYOB 3 - Discussion Thread

bharvey wrote:

bharvey wrote:

I guess each SWITCH could fluid-let the global variable (I mean, save it and restore it when done).

No, it couldn't, not if you want multiple threads to be able to use your SWITCH block in parallel.

I still think your (nXIII) idea is amazingly brilliant, but it won't really replace support for variadic input groups.

I don't think you know what I mean by switch statements, here is my implementation: Switch Statements in BYOB
_________

Small glitch:
http://i44.tinypic.com/xpuky.jpg


nXIII

Offline

 

#359 2010-05-04 16:00:42

dav09
Scratcher
Registered: 2009-03-25
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Thanks Jens for all your hard work, Byob 3 is another great idea !
The thing i was hoping for is advanced mesh?  sad
Still good  smile

Last edited by dav09 (2010-05-04 16:01:40)

Offline

 

#360 2010-05-04 16:36:47

Jens
Scratcher
Registered: 2007-06-04
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Hey dav09, I'm curious which advanced mesh functions you'd be interested in. Is there anything special you'd like to do that requires mesh?


Jens Mönig

Offline

 

#361 2010-05-04 16:52:41

Jens
Scratcher
Registered: 2007-06-04
Posts: 1000+

Re: BYOB 3 - Discussion Thread

nXIII wrote:

bharvey wrote:

bharvey wrote:

I guess each SWITCH could fluid-let the global variable (I mean, save it and restore it when done).

No, it couldn't, not if you want multiple threads to be able to use your SWITCH block in parallel.

I still think your (nXIII) idea is amazingly brilliant, but it won't really replace support for variadic input groups.

I don't think you know what I mean by switch statements, here is my implementation: Switch Statements in BYOB
_________

Small glitch:
http://i44.tinypic.com/xpuky.jpg

Whoa, nXIII. I'm awestruck! Your switch mechanism is brilliantly beautiful. This is great stuff, you should be writing the tutorial about it, honestly!

Not sure about the "small glitch". It's a feature that BYOB lets you drop (certain) reporters (variables, list items, call blocks, of blocks and some others) onto a C-shaped command slot, and I believe it's an extremely cool and useful one, too: You don't have to put the command blocks themselves into the C-shaped slot, instead you can assign them to a variable first or get them from another function (it's all first class, remember?). I even made it so that the block reformats itself if this happens: Instead of vertical alignment a C-shaped slot that's filled with a reporter reverts to the regular label-text-flow and looks just like any old command block.

Or were you meaning something else?


Jens Mönig

Offline

 

#362 2010-05-04 16:53:02

xly
Scratcher
Registered: 2010-04-17
Posts: 100+

Re: BYOB 3 - Discussion Thread

To BH or JM

I've created the Make a counter bis  (2nd example page 20 of the tutorial)
I've not found the way to use it correctly
How to pass it "next" or "reset" as to get the counter number or 0 ?

Thanks

Offline

 

#363 2010-05-04 17:22:34

nXIII
Community Moderator
Registered: 2009-04-21
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Jens wrote:

nXIII wrote:

bharvey wrote:


No, it couldn't, not if you want multiple threads to be able to use your SWITCH block in parallel.

I still think your (nXIII) idea is amazingly brilliant, but it won't really replace support for variadic input groups.

I don't think you know what I mean by switch statements, here is my implementation: Switch Statements in BYOB
_________

Small glitch:
http://i44.tinypic.com/xpuky.jpg

Whoa, nXIII. I'm awestruck! Your switch mechanism is brilliantly beautiful. This is great stuff, you should be writing the tutorial about it, honestly!

Not sure about the "small glitch". It's a feature that BYOB lets you drop (certain) reporters (variables, list items, call blocks, of blocks and some others) onto a C-shaped command slot, and I believe it's an extremely cool and useful one, too: You don't have to put the command blocks themselves into the C-shaped slot, instead you can assign them to a variable first or get them from another function (it's all first class, remember?). I even made it so that the block reformats itself if this happens: Instead of vertical alignment a C-shaped slot that's filled with a reporter reverts to the regular label-text-flow and looks just like any old command block.

Or were you meaning something else?

Oh, OK. I was using that in the switch statement originally, due to it wanting a completely-vertical layout (which looks nice for a switch statement), but it ended up having large holes near the edges of the reporters, like this:
http://i41.tinypic.com/fooqp5.jpg


nXIII

Offline

 

#364 2010-05-04 18:21:21

PlayWithFire
Scratcher
Registered: 2010-01-20
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Jens wrote:

Hey dav09, I'm curious which advanced mesh functions you'd be interested in. Is there anything special you'd like to do that requires mesh?

i'm not dav09 but i'd like to see a way to create lobbies or hopefully something you could program with like a block saying host mesh or join mesh.  something to make it more like an online console game as opposed to a game where you have to share ip addresses.  and when i say console game i don't mean something like super smash bros brawl where you have to type in a friend code, i mean like modern warfare where you join a lobby automatically.

Last edited by PlayWithFire (2010-05-04 18:21:50)


http://scratch.mit.edu/static/projects/PlayWithFire/1610180_sm.png
Check out the DG Games Website For the latest news on games like Infected

Offline

 

#365 2010-05-04 21:11:14

shadow_7283
Scratcher
Registered: 2007-11-07
Posts: 1000+

Re: BYOB 3 - Discussion Thread

PlayWithFire wrote:

Jens wrote:

Hey dav09, I'm curious which advanced mesh functions you'd be interested in. Is there anything special you'd like to do that requires mesh?

i'm not dav09 but i'd like to see a way to create lobbies or hopefully something you could program with like a block saying host mesh or join mesh.  something to make it more like an online console game as opposed to a game where you have to share ip addresses.  and when i say console game i don't mean something like super smash bros brawl where you have to type in a friend code, i mean like modern warfare where you join a lobby automatically.

I don't think that is too complex of an idea. Having a group you can join would probably (correct me if I'm wrong) only require a bit of extra code and work.

The only problem with your idea is the online playing experience. You don't really know who you are playing with, and for all you know, the people playing might not have the same ideas as yourself about how to... conduct themselves online. It could lead to problems with bullying, unwanted experiences, and just overall bad game play. So I don't think this is a very good idea.

Offline

 

#366 2010-05-04 22:24:15

PlayWithFire
Scratcher
Registered: 2010-01-20
Posts: 1000+

Re: BYOB 3 - Discussion Thread

try playing some more online games, if your strict enough with the creation of the games then it's enjoyable for everyone who plays them.  if you don't want bullying just don't give the players a chance to communicate


http://scratch.mit.edu/static/projects/PlayWithFire/1610180_sm.png
Check out the DG Games Website For the latest news on games like Infected

Offline

 

#367 2010-05-04 22:41:12

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

nXIII wrote:

I don't think you know what I mean by switch statements, here is my implementation:

Oh!  You're brilliant!

I did know what you meant by SWITCH; what I missed was that CASE is a reporter.

May we put this in the tools project?  (With attribution of course.)

(PS Sorry for the delayed response; I spent the day at a School, which has mediafire in its proxy's blacklist.)


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#368 2010-05-04 22:54:20

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

xly wrote:

I've created the Make a counter bis  (2nd example page 20 of the tutorial)
I've not found the way to use it correctly
How to pass it "next" or "reset" as to get the counter number or 0 ?

Usually I use the ASK procedure but here's how to do it with just primitive blocks, to make the mechanism clearer:

http://cs.berkeley.edu/~bh/callcall.gif

Note that there are no grey borders around anything.

Is that what you were looking for?

Last edited by bharvey (2010-05-04 22:56:10)


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#369 2010-05-04 23:07:12

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

P.S. Inside SWITCH you refer to a variable VAL; that's supposed to be the upvar VALUE, right?

I was going to ask why you needed the upvar at all, since in your example the value-providing expression is just a variable reference and you could drag that variable into the case scripts, but I guess the idea is that the value expression could be something more complicated that you wouldn't want to have to duplicate, right?

Oh, but you still don't need it, because your CASE block just matches a single value, so it knows which value it matched.  smile   If if were me, the first input to CASE would be a predicate slot, so you could put in a [< > = <foo>] block for the single-value case, or a [<my-list-of-cases> CONTAINS < >] block to match a fixed set of values, or a [IS < > A NUMBER?] block, or anything!  Or do you think that would be too confusing?


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#370 2010-05-04 23:42:04

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

nXIII wrote:

Oh, OK. I was using that in the switch statement originally, due to it wanting a completely-vertical layout (which looks nice for a switch statement)

You could just rename the CASE block to something like CASE <value> (FOR USE INSIDE A SWITCH BLOCK) and that'd be long enough to make sure they always wrap.  smile


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#371 2010-05-05 05:38:19

xly
Scratcher
Registered: 2010-04-17
Posts: 100+

Re: BYOB 3 - Discussion Thread

Tp Bharvey 22:54

OK, fine, it works.
Another issue : I can easily create bugs when trying to set into the block editor Control commands using WHILE.

See the first page (XLbug01) into of http://www.xleroy.net/Byop/Thumbnails.html

Offline

 

#372 2010-05-05 05:45:43

Jens
Scratcher
Registered: 2007-06-04
Posts: 1000+

Re: BYOB 3 - Discussion Thread

xly wrote:

OK, fine, it works.
Another issue : I can easily create bugs when trying to set into the block editor Control commands using WHILE.

Excellent, I'm glad it works for you now!

Did you try the latest "bleeding edge" image (005)? I remember fixing the WHILE bug. Please let us know if it still causes errors for you. Thanks!


Jens Mönig

Offline

 

#373 2010-05-05 11:18:50

markyparky56
Scratcher
Registered: 2008-03-20
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Jens wrote:

Hey dav09, I'm curious which advanced mesh functions you'd be interested in. Is there anything special you'd like to do that requires mesh?

I think he means something like what we have in Panther.
http://img696.imageshack.us/img696/1530/meshbocks.png


http://j.mp/jgVnTq
Check out my game engine development site: NewDawn I'm a Level 171 Scratcher.I am http://bit.ly/nkvLNT

Offline

 

#374 2010-05-05 16:36:20

nXIII
Community Moderator
Registered: 2009-04-21
Posts: 1000+

Re: BYOB 3 - Discussion Thread

bharvey wrote:

nXIII wrote:

I don't think you know what I mean by switch statements, here is my implementation:

Oh!  You're brilliant!

I did know what you meant by SWITCH; what I missed was that CASE is a reporter.

May we put this in the tools project?  (With attribution of course.)

(PS Sorry for the delayed response; I spent the day at a School, which has mediafire in its proxy's blacklist.)

Thanks! Wow, I'm pretty much speechless...
Of course you can put this in the tools sprite! I would be HONORED!
If you want, I will make a modification that takes a predicate instead of a value.

bharvey wrote:

P.S. Inside SWITCH you refer to a variable VAL; that's supposed to be the upvar VALUE, right?

I was going to ask why you needed the upvar at all, since in your example the value-providing expression is just a variable reference and you could drag that variable into the case scripts, but I guess the idea is that the value expression could be something more complicated that you wouldn't want to have to duplicate, right?

Oh, but you still don't need it, because your CASE block just matches a single value, so it knows which value it matched.  smile   If if were me, the first input to CASE would be a predicate slot, so you could put in a [< > = <foo>] block for the single-value case, or a [<my-list-of-cases> CONTAINS < >] block to match a fixed set of values, or a [IS < > A NUMBER?] block, or anything!  Or do you think that would be too confusing?

Well, the main reason I used an upvar was for the default case, and if I make a modification that takes predicates it will be more useful.


nXIII

Offline

 

#375 2010-05-05 16:52:24

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

nXIII wrote:

Well, the main reason I used an upvar was for the default case

Oh yeah.  I was so excited about CASE that I didn't think about the default branch.  smile

I think I can make the mod for taking predicates, thanks!

Don't be speechless.  You're fantastic.  You've taken the BYOB ideas to heart faster and more deeply than anyone else, especially the OOP parts, and you're listed as "main programmer" on the Panther wiki to boot.


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

Board footer