Summary
In this lesson, students will be introduced to algorithms and programs. They will begin to consider the coding requirements of their game and choose a suitable game development platform to use.
Curriculum codes
Digital Technologies: AC9TDI8P05 AC9TDI8P06 AC9TDI8P07 AC9TDI8P08 AC9TDI10P05 AC9TDI10P06 AC9TDI10P07 AC9TDI10P08 AC9TDI8P09 AC9TDI10P09
General capabilities
Critical and creative thinking: Generating
Digital literacy: Creating and exchanging
Learning intention
In this lesson, you will learn about algorithms and programs. You will begin to explore the features of the game development platforms that you can use to build your game and within your team you will choose a platform to use.
Prerequisites
It is recommended that lessons 1, 2 and 3 are completed prior to beginning this lesson.
What you need
- Storyboards from lesson 3
- Game Design Document (GDD)
- Algorithm example document
Before the lesson
- Have images of the crossing the road algorithm flowchart and program ready to show students.
- Prepare a copy of the Algorithm example document to show students.
Activities
Introduction (20 mins)
- Explain to teams that every game needs elements – images, characters, icons, sounds, music, levels, an interface, and so on.
- Ask teams to refer to their storyboards from the previous lesson to answer these focusing questions:
- What are the elements you will need for your game?
- How do you want your game to work?
- What happens in your game?
- What do you expect someone who plays it to do?
- How do you want the game elements to interact and be used?
- Explain to the class that to make a game work we use programs.
- A program controls the game elements, telling them what to do at different times during the game, in response to different actions by the game player: where, when and how to move; what points to add or subtract; what enemies to make appear or disappear; which level to load; what music or sound to play; and so on.
- Introduce algorithms, pseudocode and programs to the class.
- An algorithm is a step-by-step instruction to solve a problem. For example, a cake recipe is an algorithm to solve the problem ‘how do I bake this cake?’
- Algorithms can be explained in flow diagrams or written in words.
- Pseudocode is a way to design algorithms and describe processes using plain language. It is a structured format that resembles programming logic. It is designed to bridge the gap between your planned game mechanics and the actual code you write in a programming language.
- A program is an implementation of an algorithm, written using a specific programming language. Programming languages use either words or visual code blocks.
- Show the class this example of an algorithm flowchart and program from the Algorithm example document.
- Discuss this algorithm with the class:
- What is the problem it is trying to solve?
- Which is easier to understand, the flowchart or the program?
- Explain to the class that the program is built using visual code ‘blocks’. Show the class an example of the same program written using the Python coding language in the Algorithm example document.
Teacher tip: For advanced students, you could give them the Python algorithm without comments and provide the comment version for them to check after their analysis.
Main Activity (30 mins)
- Explain to the class that they will use a game development platform to create their game.
- A game development platform is an application that allows you to collect and construct all the elements you need and program them to do what you want them to do.
- Exactly how the platform works depends on the platform itself.
- Show the class the Information about recommended platforms table found on the Challenge landing page.
- Ask teams to review and select a game development platform that will best suit their skills and game ideas.
Teacher tip: Teams must have chosen a game development platform by the beginning of next lesson.
Reflection/Sharing Tasks (10 mins)
- Students identify the game development platform they will use. Record this in their GDD with explanation for why they have made this choice.
- If necessary, set up account(s) in chosen platform.
- If time permits, teams can begin their game development – which could include programming development. Refer students to the ‘Getting started’ links in the Game development platform summary.