Hi Everyone 😄

Welcome to Game Hack at the Cardiff Kids Hackathon. We're going to learn about how to create games with MakeCode. During this event you're going to learn how to recreate a classic arcade puzzle game Sokoban.

We've collected and prepared a set of tutorials for you, to help you learn the game development skills you need to recreate Sokoban. At each step you'll use your new skills to create a new game. Even if you don't manage to complete all the tutorials today, you can always come back to this website to complete the rest anytime after this event. We'll also add links to solutions to all the tutorials after the event has finished.

All of the games that you create with MakeCode are automatically saved, including those you create when you are following the tutorials. You can find all the games you've created by going to https://arcade.makecode.com and look under the section My Projects.

Once you've spent a bit of time learning how to use MakeCode we want you to use your creativity to make your own games. If you would prefer not to follow the tutorials our team are around the entire afternoon to help you bring your ideas into reality.

When you ready to begin scroll to the first tutorial What is MakeCode

[Tutorial 0] What is MakeCode

MakeCode is a game making tool built by Microsoft. You build games by connecting blocks together. Don't lets the simple interface fool you, it's very powerful and you can make some very complex games with it. This style of game development, sometimes called visual scripting, can also be found in tools used to build modern games. For example Unreal engine which was used to create Fortnite has a feature called Blueprints, and Unity which was used to create Beat Saber has an extension called Bolt.

While using MakeCode, if you every want to know more information about a block simply right click it and select `Help` to learn more.

[Tutorial 1] Chase the pizza

In the first tutorial you'll learn how to control a game charachter and collect slices of pizza against the clock. Head on over to Chase the pizza to start the Tutorial 1.

[Tutorial 2] Maze

In this tutorial you'll learn how to create a maze that you have to navigate your game charatcher through. Head on over to Maze to start the Tutorial 2.

[Tutorial 3] Catch the ducks (Solution)

In this tutorial you'll learn how to push non-player charachters around and you will have to catch all the ducks before time runs out. Head on over to Catch the ducks to start the Tutorial 3.

[Tutorial 4] Catch the dogs in the garden (Solution)

In this tutorial you'll learn how to push non-player charachters around that can collide with walls and you will have to catch all the dogs before time runs out. Head on over to Catch the dogs in the garden to start the Tutorial 4.

[Tutorial 5] Catch the cats in the garden (Solution)

In the last tutorial you may have seen that when pushing the dogs around, you can push one dog ontop of the other. If a dog is right next to a wall then you can even walk over the dog. In reality no game charachters should be able to occupy the same space. In this tutorial you'll learn how to push non-player charachters around and cannot be pushed into a space already occupied. You'll have to catch all the cats before time runs out. Head on over to Catch the cats in the garden to start the Tutorial 5.

[Tutorial 6] Sokoban (Microban #58) (Solution)

In this final tutorial you'll use all the skills you have learned to recreate a level from David Skinners Microban set of Sokoban puzzles. Head on over to Sokoban (Microban #58) to start the Tutorial 6, the final tutorial 😄

We really hope you've had fun 😄

There are lots of skills that you have to practice to get good at game development, and there are always new tools and techniques that you have to learn. But the most important part of game development is creativity. Explore the world around your, seek out new ideas, and go out a build some awesome games 😄