Friday, September 27, 2013

"Scratching" games

Interview with student 'T' about the process of making a game on Scratch:

The challenge was I had the whole theme and how I was going to make the game in my head, but the problem was I didn't know how to make "lives."  So I tried a few games on Scratch until I found one I liked and went onto 'remix.'  And then found out how they did lives.  I found out they made lives as a variable and then I had lives, but the only problem was, it kept going after 'death' so I had to look at the game a little bit more that I had gotten lives off and then I found one thing that I was missing. (what was missing?) I forgot to put in one block that when lives went to 'zero' I forgot to put in the block 'stop all.' I also had a thing that when lives reached 'zero' I had it go to a different background and that was the background I labeled 'destroy' because that is when the spaceship is dead.  I went on and it was done.  I went on to its page to see what it would look like when it's published and how it would work when it was published. Then I got rid of all the minor little glitches (what were they?)  Sometimes even though I put 'stop all' it would still keep going after death (why?) Because while I was trying to get it to stop its lives, I did something that made it keep going after death.  I pressed a button that made it keep it going after death (what was it?)  I set a block to 'when lives reach zero' but it's supposed to be 'when lives reach one.'
And another minor glitch was it wouldn't start back up again on its own so you would have to reload your computer.  (so how did you fix that?)  Because I forgot to put in the button "when space is pressed," "set lives to five" and "go to mouse pointer."  It fixed it because I forgot to put in the space is pressed thing and then I tried it again, it was working again.  It wasn't working because of the block I left out.  And that's how I made my first through fifth game.  I'm on my sixth game.

Interview with "A" about the process of creating blocks.  He came in one day and announced that he figured out how to create blocks...here is his story...

I hit 'more blocks' and there was nothing there but a 'make block' button and I typed in 'jump.'  And then a window popped up with options and a space to type.  In the place where you type what the block says, I put in 'jump.'  And then I hit 'okay.'  In the scripts area, there's a new event block that was purple that said 'define jump.'  I used to not know what to do with it, but then I noticed that it wants me to define what jump will do.  So I put the 'change y' block down below the 'define.'   And I put the 'change y by 10.'  (why did you do this? why by 10?)  Change y to change where it is standing to make it go up 10.  So I went to 'more blocks' and instead of there just being 'make a block' button, there is an actual block there that said 'jump.' So I went to events, got a 'when space key pressed' block and dragged it into the scripts area.  Under that block, I dragged a jump block.  I hit the space key and the cat that I was using jumped.  Also I forgot.  I added another y block to the define thing that was minus 10 so it jumped up and back down.  (what were you thinking at that time?)  I was thinking at that time if I could control what the 'y' would be without going back to the define.  So I clicked on 'make a block' called the block jump again, but this time, I added a number input from 'options.'  I pressed 'okay' and saw 'define jump height' and the height was a circle so I put down the 'y' block under 'define' and then I clicked on the circle that said 'height' and dragged it to where the 'change y' was.  So it changed y by height.  and then I noticed I wanted it to go back to the ground after it's gone up.  I wish I could pull up my thing right now so I could see the block...(goes to get his computer...)  I had to experiment a bit, but then I found out after the 'change y by height,' if I added a 'wait 3 seconds' block and then a "change y by" and then a "multiplication block" like this -1*height then it will jump up and down perfectly. I also did other blocks like Run and "Unrun"  ( how is making your own blocks different?)  Because you don't need to keep putting on the code.  Like say you want it to move 10 blocks and back 10 blocks, you don't have to move so many 'move blocks' if you make your own.

Thursday, September 26, 2013

123-Let's Scratch

Started Scratching with my 3/4 graders following the creative computing curriculum from MIT media lab and the design-based learning approach.  Students are creating an e-design notebook to document their experience along the way.  First session was viewing the intro video and then discussing what makes Scratch different from other computer experiences - play vs. create etc.
Next session was students brainstorming three things they could show about themselves in an "All About Me" Scratch project - photos, videos, sprites, change background
Students are also using Scratch for science (zoogle) project and in ELA by using it to show an example of figurative language (idiom, pun, etc)

Quotable quotes:
H: (when about to show me his Scratch) - I didn't really test this one...
A: (in the background) Then it's not going to work if you didn't test it...
Mrs. M:  What makes you say it's not going to work if you don't test?
A:  Because you have do some, then test or else you don't know if it works or not.
Iterative thinking and practice in action!

Students facing challenges in Scratch:
G:  I keep trying to make a block called wait 5 seconds, but whenever I press on the script then, it ignores the block

Here is a student helping with a solution:
H:  There are two ways to do this.  First way is go into 'controls' and look at top block which is 'wait' and then type in number of seconds and that is a 'wait 5 seconds block.'  There is another way which is to make a block through the make a block section and define it by using the 'wait' block and then put in 5 seconds.