How I Use It
I teach Video Game Design and Development and have been using GameMaker for about 15 years. I teach students the basics through direct instruction and video tutorials (many created by me, but many created by incredible members of the incredible GameMaker Studio community). Once students have the basics, they create a game design document (plan for their original game). At this point, my role changes from that of instructor to that of guidance and support. Students build their games over a period of time and seek support from their peers and from me as needed. Students may work in design teams and specialization begins to evolve naturally. Some students find that they especially like creating graphics using the built in sprite and animation editor, others find their niche is in level development, and others gravitate toward developing the game mechanics. During the development process we stop at check points for students to give and receive peer feedback. Students evaluate each others' games and provide constructive suggestions. After each round of feedback, students continue to work on their game with a focus on incorporating feedback. Upon submission of final games we celebrate the student accomplishments by playing the final games.
Recently I began to collaborate with the Creating Music teacher in our building. We have added a piece to the project where students in his class create the music for the games created by my students. This requires students to learn the elements of music and collaborate between classes by sharing planning documents, their games, etc. This has been a very exciting addition to the project.
I absolutely love GameMaker Studio. It is scalable as there is a drag n' drop approach to programming objects, as well as a built in programming language (GML - Game Maker Language) that students can learn and incorporate. This helps to make GameMaker a solid development tool for students as young as 5th or 6th grade (some may argue even younger) through high school and beyond. I like to teach the basics and encourage students to be resourceful beyond that. Students are motivated because they are engaged in the development process and are open to extending their learning by seeking out resources to help them accomplish what they want to see in their games. I am continually encouraging others to use GameMaker as an Introduction to Computer Science because of it's low barrier to entry. Students truly learn programming concepts in a visual way that makes a lot of sense and translates well to advancing to coding with any programming language.