Something is making me do it: A reflection on 3.5 years of teaching with Game Maker

- presentation to Game Programming in Schools Conference
- Melbourne, Friday September 9th 2005

Introduction:

I began teaching using Game Maker in 2002. I had a simple plan at the start. Since then things have become more complicated.

Initial thinking (2002)

My initial thinking went something like this:

Simple idea

So here was my simple idea:

simple (6K)

I also thought of a simple slogan to go with it:
Have Fun While you Learn!

But since then I've become dissatisfied with that slogan. I no longer like it.

Early success

So, in 2002, I was teaching Game Maker to a group of year 11 students. I didn't know the program very well and neither did they. We were muddling along.

But one day a student came into class and he had been up all night working on his game. He showed the class his game and everyone thought it was great.

To tell you the truth, my first thought was that he hadn't made it. But then I realised he had zoomed past me and now knew more about Game Maker and what you could do with it than I did.

Here are some screen shots from his game:

intro400 (40K)
ladder (30K)

Later on that same student sent me an email and asked for a picture of me so that he could use his teacher as the boss in his game!!

boss400 (28K)

I noticed the time on the email was 3am!! I thought, what a great story, how many teachers can boast that their students are doing homework at 3am in the morning!

Fun: Game Playing

I discovered last year that a group of my year 11s were regularly visiting CyberHive after school hours to play CounterStrike

I've tried to summarise a view of the sort of fun they are having at CyberHive, Grote Street:

fun (6K)

I then contrasted their School experience with my Game Making course with the CyberHive experience. I had observed that my students sometimes found programming to be hard and were reluctant to plan ahead and to document their plans. It didn't matter that they were making games, theory and writing were still being resisted.

hardFun3 (3K)

This led me to worry that the game making experience at school might be significantly different to the game playing experience at CyberHive.

Maybe what I was doing was a con? Maybe game playing and game making were two different genres? Were there enough hooks connecting the two things together? For my students, perhaps game playing was hot and game making cold?

hotOrCold (5K)

Programming is hard

My initial goal had been to find a better way to teach programming. Programming is hard to teach! Was my attempt to use something that was fun (game playing) to teach something that was hard (learning to program) working? Maybe the serious, closed door back to basics methodologies that some teachers favour would be a better way to go?

programHard (13K)

Here's an example of what I mean by a hard programming problem (for me):

snakeSlide (20K)

Each time the snake eats then a new part of its body is created and it becomes longer. The first body part follows the head and the other body parts follow the previous body part, as they are created.

An unsophisticated solution would be to have lots of body parts, body0, body1, etc. and then body0 follows the head, body1 follows body0 and so on.

But there is a far better solution which requires keeping track of the unique id of each body object and it's x and y values at each step, storing those values and then calling them up and getting them to follow at the right time as each new body part is created. This way involves passing ids, creating arrays and accessing them with for loops.

The technical implementation is hard for me too. I don't find programming easy and many of my students have the same problem.

Programming can be bloody difficult and make you tear your hair out in frustration.

challenge (9K)

So, I'm expecting my students to make the transition shown above. Some do get stuck at this point and find the programming hard and the documentation painful.

Yet, on the other hand, it's hard to explicitly teach programming. Students find it hard to sit through a lecture on programming techniques and when I see the eyes glaze over I feel I'm wasting my time.

Thinking more about this I realised that there might be multiple challenges involved, not just the programming challenge.

challengeMultiple (9K)

Then I realised that sorting through the game playing / making mix was creating multiple challenges for both students and the teacher

twoWayChallenges (6K)

So, is my approach to teaching programming working?

When I talk to my students then by and large I think it is.

Although they agree that programming can be very hard and documentation is painful, nevertheless they welcome the chance they have been given to make a computer game. From what they say the connection between game playing and game making is sufficiently rich to motivate them to keep trying.

One idea I've thought about here is to make a game whose goal is to teach aspects of programming. That has arisen from this thought process and is also a challenge for me that would develop my design and programming skills.

Another issue here is teacher development. I started off with a narrow agenda of motivating students to learn programming. I've never been much of a computer game player. Now I find I'm having to face up to my mental block that game playing is a waste of time. For a variety of reasons I'm now changing to think that game playing is an important educational issue that ought to be explored further. Something is making me do it.

I'll finish up with two more examples of games that my current group of year 12s are making

jdhPic400 (38K)

The first one is a top down shooter. The screen shot is not great but JDH (the student) has incorporated a lot of features such as group selection and movement, line of sight shooting, multiple choice of weapons and artificial intelligence.

One of my course requirements is that students have to present a prototype of their game to the class and then listen to their feedback.

In the course of his presentation JDH said something very interesting, "The AI is more important. I'll do the blood later."

His statement directly contradicts the common stereotype about young people, games and violence. The blood wasn't important. He was making a shooter because it provided him with a rich programming environment.

The second game is a 3D car simulation. The student was curious about 3D graphics and on his own initiative used Cinema 4D to make his car graphic (not yet fully rendered) and then found a plugin through the Game Maker forum to import it into his game. It's a good example of a student using a lot of initiative and branching out into an new area without the help of the teacher.

Game Maker provides for rich and flexible 3D environment features which some students find compelling.

ivanPic1_400 (37K)
ivanPic2_400 (40K)

Note the ability of the camera to change it's perspective.

I've published my year 12 course on my website:
http://users.tpg.com.au/billkerr/g/stg2.htm
You are welcome to use it or adapt it to your educational needs. Write to me if you want more detail.

Reference

Some relevant blog entries which I wrote while in the process of preparing my presentation:
Bill Kerr, email: billkerr at gmail.com
Teacher,
Woodville High School,
South Australia

Creative Commons License
This work is licensed under a Creative Commons License.