This course is built on the simple idea of starting with a platform game and adding familiar game patterns and features -
One way to learn coding in depth is to learn how to make the sample game from scratch and you can do that by following this Tutorial to create game from scratch Part One and Part Two
Another fun way is to remix this starting template of a Platform Game by adding in different features which we call Game Patterns
There is material here for a five session course on game making. This takes two forms:
- Session Materials to run with a group of participants
- An online course you can work through by yourself
This course uses MakeCode Arcade as its tool. There are several advantages to this tool.
- Like Scratch the block coding tool reduces chances of getting stuck with code syntax errors
- Unlike scratch it is created with arcade like games in mind and includes relevant tools like acceleration for gravity
- There are fun hand-held devices you can easily play your game on. Great for group playtesting.
- The support and making community is small but very friendly and responsive
The shape of this course could be applied to any game making platform. In fact there are similar courses available see Phaser Game Making (Javascript) and Making Serious Games in Scratch
This ethos of this course is broadly in-line with concepts of Project Based Learning. More specifically here's how some of those ideas come into focus with this material.
This intention of this course is not to teach the underlying concepts of computer science from first principles. Here the idea is to build competency with the practicalities of using the coding tool. In an art studio students start by experimenting with materials and getting to know their tools first. Large concepts come later.
Many sessions start with games and the overall ethos is to try to encourage an informal approach to learning which prioritises a positive connection to the making experience over absorbtion of testable curriculum knowledge.
The use of a menu of Game Patterns as the hub of our learning allows and encourages the course participants to set their own goals and to monitor their own progress. It is also flexible enough to provide materials for those who want to learn concepts in a structured way although it priorities opportunities for more messy approaches to learning.
The starting point for participants of this course are the Game Patterns of a platform game which are likely to be familiar to them from exposure to family oriented video consoles or mobile games. Through the process of adding these patterns to their games, participants will come into contact with Coding Concepts needed to enact these features using the specific tools of the MakeCode system. In this way the Zoom into the Detail needed to make ideas into reality.
In the same process course participants also have the chance to connect the more immediate learning in the context of games to Wider Patterns of Computing and Systems. While this is not explicitly taught, parents and facilitators Zoom out to point out how the concepts and patterns in Games can be applied in other fields, for example those of Interactive Media Design and Systems Thinking.
To encourage messy, experimental learning many of the computer science concepts that it would be possible to teach are intentionally put into the background to prioritise a inclusive process. Care has been taken to reduce the number of concepts and patterns in these areas to a manageable amount.
In addition to these subject related learning dimentions, there are notes on process related learning dimensions outside of subject knowledge that may be useful to facilitators and parents. These included:
- Design Practices: including goal setting, creating, testing adn reflecting
- 21st Century Skills: including communication, collaboration, creativity, critical thinking and digital literacies
If you want to get started or begin to investigate what is available the following links will help you.
- View the Menu of Game Patterns which contains a short intro on how to apply them to the starting game template
- Get an overall understanding of the starting game template with step-by-step tutorials - Part One and Part Two
- Browse the Group Course contents or start to work your way through the individual online course
- Check out the potential Learning Dimensions of this project