I have made a video to display all my learning for my 20Time project. I'm really proud of all the work I have accomplished in five weeks! You can also see my thinglink below my video to look through my blog posts, animations and games.
2oTime Video Presentation
Thinglink for my 20Time Project
This week was spent finishing the game I started last week, Cheese Chase. I ran into so many problems this week when trying to make my game better. Last week I had the cheese moving in the fourth level so I tried having the cats move in level 5, but I realized once I had them move, the sprites would not return to their original positions when the game restarted. I had to move all the sprites back to their original spots, which, in turn, moved the other costumes of the same sprite and I couldn't figure out how to fix it. After working for about 30 minutes, I had to revert back to the game before I had made any changes because I couldn't figure out how to fix it. That was a 30 minutes completely wasted except for the fact that I realized having the cheese and cat move is going to be too complicated for my game, so I took that aspect out.
After giving up on having the cat and cheese move, I decided to just make each level harder by placing more cats closer together so getting to the cheese is more difficult. I know the game is not too easy because I played it over and over to make sure all the scripts were working correctly and it would normally take me 2 - 3 tries to make it to the end of the game. The game is not too difficult either, but it's difficult enough to keep players interested. Remember, I've only been coding for 5 weeks and I am by no means an expert.
Once I had the game finished, I wanted to make a "Congratulations" page that appeared at the end. I decided to make it so the user can write his/her name on the last page as evidence that they finished. The mouse sprite follows the user's mouse and I enabled the pen feature to follow the mouse so they can write their name and take a screenshot of it as evidence that they passed. I had wanted users to be able to post this screenshot in the comments section, but the comments section doesn't allow picture posts. I ran into another hurdle on the congratulations page because I wanted the soundtrack playing in the background to stop and to play the voice over I recorded to congratulate the user. I worked on fixing this one script for over an hour. The problem was I couldn't make the soundtrack end and have my voiceover play. The coding blocks cover almost all the options you need to make a game, but sometimes I feel like they are missing some blocks. I ended up coming up with a hack to solve the problem. I had the script for the soundtrack on the mouse sprite and couldn't get it to stop and play my voiceover as a second sound. So, I moved the script to play the soundtrack onto the cheese sprite and on the congratulations page I had all the scripts for the cheese stop and then played the voiceover on the mouse's script. It worked!! (I apologize if that is all gibberish - but I'm using the vocabulary I learned from Scratch).
Lastly, I wanted my game to record how many plays it receives. I found a forum where other scratch users were discussing how to record usernames of the players who played their game. Most of the discussion was way over my head. They were discussing how to use blocks that I've never even seen before and didn't apply to my game. However, one user gave a comment (comment #8) that explained how to record the number of plays and I used it. I gave this user credit in my "Notes and Credit" section of my game, so I'm being a good user.
Even though this game was a lot of work and had me really frustrated, I am proud of what I have learned throughout this process. The biggest thing I learned about coding is that it really puts your problem solving skills to the ultimate test. Do you know what to do when you get stuck on something? Do you give up or get frustrated really easily? Then coding isn't for you. Or, maybe it is because it will force you to improve your problem solving skills.
Scripts for each sprite in Cheese Chase
(When compared to the scripts I was writing on week 1, you can see I've come a long way)
After five weeks of coding and creating games using Scratch, I have learned a tremendous amount about coding and the skills that are required. I started out with ten inquiry questions and after five weeks, these are the answers I've come up with.
10 Inquiry Questions
As I logged into Scratch this week to begin my new game for week 4, a prompt appeared that asked me if I wanted to become a Scratcher. Basically, it looks like if you work on Scratch for a certain period (I have been on here for about a month) and/or complete a certain number of projects, you get special privileges. I noticed that I didn't have access to the "cloud variable" option which is used to keep score until I became a Scratcher this week. I was wondering how to add a cloud variable! It's nice that they only allow you to become a Scratcher if you are "respectful, constructive, give credit and help keep the site friendly." You also have the option to opt out of being a Scratcher, but I chose "I agree!"
I've noticed over the last three weeks that creating and finishing an entire game in one week takes a lot of work. It's a lot of trial and error and takes fine tuning to make a game great. So what I decided was that my last two weeks for this project would be focused on making only one game, but making it really good. I have the initial set up of the game so far with four levels and it progressively gets harder as you move through the levels.
I looked through the already created sprites that Scratch had and based a game off of those. I can create and add my own sprites, backgrounds, and sounds but they're hard to find and even harder to perfect. Therefore, I created a game that has a mouse as the main sprite that is trying to find and eat cheese. I had to create a cheese sprite and a cat sprite to make my game work. To create a sprite you have to find a picture online, size it correctly, and upload it. It took quite a bit of coding for this game and I sat there stumped quite a bit on why certain coding patterns didn't work. One of the most helpful things I realized this week was how to use the "if...then..." block. I found out you need to have the forever block around it so it is constantly checking for the "if...then..." situation. Otherwise it will only check for it once and most of the time the situation isn't happening right when you begin the game. I'm still struggling as to why it only works sometimes and not every time I use it, but I've only been on here for 4 weeks.
I am really proud of this game (so far...it's still not done, so if you pass level 4 it gets messed up). This is the best one I've created so far. Please take a minute to play it and let me know what you think! I'll be working on the same game next week so any ideas would be greatly appreciated!
Here are the coding patterns for each of my sprites: the mouse, the cheese and the cat. For the cheese and the cat I had to find a picture online and then erase any white background behind it so it didn't appear with a big white square behind it in my game. The cat (as you can see in the game) isn't as well done, but I did my best.
This week I designed my very own game on my own without tutorials from scratch. I had a hard time deciding what kind of game I wanted to design, but I figured my classmates were going to be the ones who looked at it the most so I made a game that would appeal to them. I'll let you play the game first, and then you can read about how I did it. Enjoy!
I realized a few things this week. On Scratch, you have a small window that you have sprites move through. It may appear that the screen is moving, but it is actually only the sprites moving in a certain direction to make it appear as if the screen is moving. I had to realize this before I started my game because most games need objects to come in and out of the screen for it to be fun.
This game took me quite a while. I kept getting stuck on figuring out how to make the game work. First, I had to figure out how to make the red lines move across the screen. If the otter hits any of the red lines I had to figure out how to make the game end. Originally I had the words next to the red lines in red as well, but if the otter hit the words in red it ended the game. Therefore, I had to change the words to white. Figuring out how to add a timer to keep score was a challenge as well. I had to look up how to add a timer, and then figure out how to make the timer stop when the otter hit a red line. (I added my resources to my 20Time Pinterest board on how to add a timer). I also had to figure out how the user can move the otter to avoid the red lines. The ocean background doesn't help the visual illusion that the otter is moving through the ocean, but I haven't figured out how to do that part yet. I feel really good about this game, but I know the next two weeks are going to be challenging because taking a game to the next level is a huge leap. I spent more time on this game than on any of the work I've done in past weeks. I caught myself taking breaks and then coming back with new ideas of how to make it better. I can see how people can get caught up in making their game "perfect" because there's so many things you can manipulate, add and change. I hope to add a "high score" variable (which looks really hard) next week and to make the game look more realistic. I will be making a game next week that is suited for a larger audience, but I thought I would start small this week.
Below I have screen shots of the coding patterns for each sprite. The otter was one sprite, all the red lines at the top of the screen were another sprite and the last sprite was the red lines on the bottom of the screen. I just had the lines change "costume," move across the screen by gliding and disappear. I've learned so much about how to make a game using Scratch. I can't wait to support my students in their learning next year.
Since I had such success last week with following the tips on Scratch, I continued onto the next type of animation they had on their list: animate your name. I had 6 sprites this time instead of only 2 in my dance off animation from last week. The coding was not as long because each sprite had a different coding pattern and did not depend on the timing of the other sprites. This time I made it so the sprites change only when the user clicks on them. Last time the sprites had coding that allowed them to move simply when you clicked the green flag for it to begin. This animation allows the user to interact with the sprites because you need to click on them for them to move. Otherwise not much happens. I was also able to embed my animation this time on here, so I don't have to do a screencast of the animation. (For some reason when I embed it on weebly it is blank on my draft post but once I publish it, its there!) Try it out for yourself below!
The new parts I learned to use this week were making the sprites change color (this requires a code, you don't just select the color), making the sprites glide around the screen using a coordinate grid (this required some math skills that I know would be awesome for my 5th graders to learn through coding) and how to change the sprite's sizes. I used the Tips section to help me animation letters A, N, D, and R. I still had two letters left in my name so I decided to experiment with those two. I first learned how to make the sprites "glide" by moving around the coordinate grid. I learned this with the help of the Tips section when doing the letter D. On the last letter A, I used what I had learned about gliding and added the "pen" feature which allows the sprite to draw. You would think this would have been really easy for me since I teach students how to use the coordinate grid, but it actually took some trial and error to get the pen to go exactly where I wanted it to. I definitely got better at understanding the pen feature though. And with the letter E I learned how to use the "point towards" feature which allows the sprite to flip and turn towards other sprites. Below is all the coding patterns for each letter. If you notice, one A has more coding than the other. The last A had the most coding because of all the moves I had it make on the coordinate grid with the pen feature. This is the one letter I did independently without the help of the Tips section. I'm pretty proud of this last letter!
I wanted to explore some more games this week as well so I could start trying to figure out what kind of game I would like to create. I played one game (below) in which you had to move the cube to avoid hitting the triangular pyramids. It gets progressively harder as the game goes on, so that's something I want to learn how to do. It's such a simple game, but I caught myself getting into the game and really trying hard to pass the pyramids. I went to comment on this game because it didn't have many comments and this pop up appeared:
I think having that pop-up there is VERY helpful. I was only going to say nice things to the creator, but if Scratch is being used by kids, it's definitely a helpful reminder.
And lastly this week, I created my very own game! It is a very simple game, and not challenging by any means, but I actually made one. The Tips section teaches you how to make a pong-type game, but I changed it to make it my own. You basically have to keep the soccer ball out of the goal using a paddle. I added the effects of changing the sprite color, moving, turning around, sounds, and new things like keeping a score and having the ball bounce off the paddle. Check it out below!
I started my project by looking around at games that others have created on Scratch. I wanted to do this before I even attempted to start my own. The first game I played was tacos vs. fajitas. You get to choose which side you want to fight for and you have to shoot jalapeños at the opposing team to get points. The most amazing part of this game was the music. It is a dark, heavy, mysterious song that makes the game so much better. I commented and asked how they got the music on their game. The creator responded and told me how to add sound. I can't wait to try to make my own. And this was the first game I even played! After looking around at the Scratch site at what has been created including animations, music, games, stories and more, I went to look at how to begin my own game. I was presented with this screen:
I had no idea what any of this meant or where to begin. I started looking around the "tips" section and they have a sidebar that opens up to give you step-by-step instructions on how to begin. This was super helpful!
Step-by-step instructions tab
I learned how to add motion, sound, text, repeating steps, changing the background and adding more characters (which are called "sprite"s) through coding. After going through the steps they provided, I went off on my own. It took a lot of trial and error to get the sprites to move the way I wanted them to. You cannot copy and paste code anywhere, you have to add each piece one by one. I ended up creating a very short animation and it took over an hour! I ended up writing a ton of code for my two sprites and made them have a dance off! Below I have a few screenshots of the code I wrote and a screen cast of my animation.
Coding for my animation
Screencast of my first animation using Scratch
You can also view my animation here. Getting the animation just right took a while and everything had to be timed perfectly, which was difficult. Next week I plan to continue working on Scratch to create more intricate animations. Ultimately I hope I can put together a game to show off my coding skills. After working on this for a while I can already see how challenging and time-consuming it can be. If I had questions as to why a certain piece of code was not working I had to keep editing it to find the problem. I hope to find some other methods of support besides the Scratch "tips" section. I have started a padlet to help organize my research for my project. I don't have much research so far, but as my coding becomes more and more advanced I'm sure I will add more.
I decided, based on my colleagues' recommendations, to use the web-based Scratch application (https://scratch.mit.edu/) to learn how to create and share games. My goal is to design a game on Scratch that other Scratch users can play and comment on to enhance my coding skills. I am really interested in how coding works and I enjoy puzzles and logic challenges. This would be the play aspect of my project. I would have to sit down, work at and innovatively create a game using the provided software to demonstrate my learning. This would be the making aspect of my project. And lastly, I would have to research, watch videos, interact with other Scratch users and learn about how to code in order to create my own game. This would be the knowledge aspect of my project. There are also areas in which I can fail because coding requires trial and error as well as learning how to put certain pieces of the puzzle together to make a comprehensive game.
Throughout the five weeks of learning and creating, I would like to answer these 10 inquiry-based questions:
Second Idea (Second choice)
I would like to sign up and download Minecraft (https://minecraft.net/) to learn how to navigate and collaboratively work with others to create a world online. Many of my students currently play Minecraft and our school district has been discussing potentially adding Minecraft to our classrooms. My principal told myself and another teacher that we could have a few extra Mac computers in our rooms next year to have our students use Minecraft. I am signed up for a professional development course this summer, through my district, to learn about Minecraft modding. I know very little about the game so far besides what I saw my students do on the day they all played Minecraft together at the Code to the Future campus. The only disadvantage to Minecraft is that it is not a web-based program so my students would be unable to play it on their chromebooks.
My goal is to create a character, build buildings, and interact with other users to enhance my Minecraft skills. I am really interested in how Minecraft works in general. I know it is a video game, which can be fun and entertaining. This would be the play aspect of my project. I would have to sit down, work at and innovatively create a character, buildings, and navigate the various parts of the game to demonstrate my learning. This would be the making aspect of my project. And lastly, I would have to research, watch videos, interact with other Minecraft users and learn about how to build things in order to create my own building. This would be the knowledge aspect of my project. There are also areas in which I can fail because Minecraft is a totally unknown game to me. I will most definitely not get everything right on the first try because there are so many different aspects of the game.
Throughout the five weeks of learning and creating, I would like to answer these 10 inquiry-based questions:
My district has recently opened a Code to the Future campus at one of our school sites and has made coding classes available for our students on weekends and over the summer. Our school participated in the “Hour of Code” this year to expose students to computer science and show them that anyone can learn to code (https://hourofcode.com/us). All the schools in our district that had 100% of the students participate in the Hour of Code were entered into a drawing and the winning school was able to take each class to the Code to the Future campus and have a day of code. Our school, W.D. Hall Elementary, won the raffle. Each class participated in a day of code and learned from the Code to the Future teachers. Our fifth grade class was lucky enough to get a special coding day of Minecraft. I would love to learn more about Minecraft and how to integrate it into my curriculum, but Minecraft is not a web-based application so having a class set of chromebooks restricts my students’ usage. This lead me to two possible options for my 20Time project. I am really interested in learning how to integrate computer science into my classroom. I can either learn about and play Minecraft or learn how to code and create a game of my own. Both include learning how to teach my students to participate in collaborative learning with technology.
First Idea (First choice)
I would like to use the web-based Scratch application (https://scratch.mit.edu/) to learn how to create and share games. I want to learn how to make games using coding so I can be better equipped next year to have my students participate in coding in my classroom. My principal informed us that we have the opportunity to have the Code to the Future staff teach our students 6 weeks of coding next year. I am really excited for this. However, only the Code to the Future staff would be instructing. I would like to know how to help and take the instruction farther than the six week duration. The nice thing about this project is I can have all my kids also use Scratch on their chromebooks, whereas Minecraft cannot be used on chromebooks.
My goal is to design a game on Scratch that other Scratch users can play and comment on to enhance my coding skills. I am really interested in how coding works and I enjoy puzzles and logic challenges. This would be the play aspect of my project. I would have to sit down, work at and innovatively create a game using the provided software to demonstrate my learning. This would be the making aspect of my project. And lastly, I would have to research, watch videos, interact with other Scratch users and learn about how to code in order to create my own game. This would be the knowledge aspect of my project. There are also areas in which I can fail because coding requires trial and error as well as learning how to put certain pieces of the puzzle together to make a comprehensive game.
Throughout the five weeks of learning and creating, I would like to answer these 10 inquiry-based questions: