Workshop Presentation

advertisement
Game Design with Kodu Game Lab
Introductions
• Richard Olsen
Assistant Director, ideasLAB
• Ashley Spagnol
Eltham Primary School
Kourse Overview
Module 1
What is Kodu Game Lab
What is a Game
Module 2
Solve three tutorials
Learn about bots and objects
Write our first program
Kourse Overview
Module 3
Generate Game Ideas
Look at School Examples from Australia
Design templates used by students
Module 4
Design Patterns and Code Recipes
Game Space
Kourse Overview
Module 5
Game Progress
Game Play
Game Communication
Module 6
Design Process
Debugging and Troubleshooting
Kourse Overview
Module 7
Next Steps
Getting Help Online
Kodu Kup
Module 1
Kodu Team Hello
Activity 1.1
Introduce Yourself
If you were a game character what would
you be like?
Activity 1.1
Name: Imberius
Powers: The ability to steal food from others
without being detected.
3 Things that make me special:
1. Stealth
2. Pick pocketing
3. Charm
Activity 1.2
Kodu is a visual programming language
made specifically for creating games. It is
designed to be accessible for children and
enjoyable for anyone. The visual nature of
the language allows for rapid design
iteration using only an Xbox game controller
for input (mouse/keyboard input is also
supported).
What is Kodu Game LAB?
• Visual programming language aimed at
kids for rapid game development
• 3D worlds and game play
• Xbox Controller or Keyboard and Mouse
• Currently in Technical Preview
• Small Games
What does it take to teach kids to program?
• What has been excluded:
– Loops
– Branching
– Variables
– Typing
– Syntax Errors
What does it take to teach kids to program?
• So what has been left in?
– Objects
– Message Passing
– Sensors
– Filters
– Actuators
– Modifiers
Huh?
What CAN YOU MAKE?
Activity 1.3
What is a game?
Record the names of five (5) of your
favourite games in the space provided in
your manual.
Activity 1.3
What are the key factors that makes a
game, a game?
Activity 1.3
•
•
•
•
•
Games are fun.
Games have rules.
Games have an objective.
Games have winners and losers.
Games require players to make decisions
and require skill.
• Games are an experience.
Activity 1.3
“If you’ve written a software subroutine that
takes more than ten arguments, look again.
You probably missed a few. ”
Alan Kay
“A game is a problem-solving activity,
approached with a playful attitude.”
Jesse Schell
Activity 1.4
Game Review
Name: Bonk-Out
Objective: Knock over the castles while protecting the sticks.
Rules: The A button launches the pucks. Push bots can also
launch pucks. Pucks destroy everything but the player. The
player can control the pucks by bouncing them away.
Why is it fun? The game is fun because it is simple and fast
moving.
Activity 1.4
Share what you find……
Module 1: Recap
We have covered:
- Rationale for using Kodu Game Lab
- The definition of a game
- Examples of games made with Kodu
Game Lab
Module 2
Activity 2.1: Tutorial 1
Objective: Kodu wants to visit the castle.
Activity 2.2: Tutorial 2
Activity 2.2: Tutorial 3
Activity 2.3: Getting to Know the Bots and Objects
Activity 2.4: Programming Bots
Physical Sensors
Activity 2.4: Programming Bots
Physical Actions
Activity 2.4: Programming Bots
WHEN sensor filter
DO action modifier
Activity 2.5: Programming Bots
Our first game:
Ideas
• Tag
• Treasure Hunt
Requirements
• 1 bot that the player controls
• 1 bot controlled with AI
Activity 2.5: Programming Bots
Module 2: Recap
We have covered:
• We have completed Tutorials 1,2 & 3
• We met the bots and objects
• We have an understanding of the Kodu
Game Lab programming language
• We have written our first program
Module 3
Activity 3.1: Generating Game Ideas
If we were going to start making our first
second Kodu Game Lab game now (we’re
not), what would you make?
Think of an idea for a Kodu Game Lab
game, record your idea in your manual.
Activity 3.2: Game Ideas
Activity 3.3: School Case Studies
Yarra Road Primary School
•Grade 5 and 2 students working together in pairs
•Cyber safety theme
•Requirement to include a maze
Activity 3.3: School Case Studies
Laurimar Primary School
•Worked in pairs
•Provided assessment criteria
Activity 3.3: School Case Studies
Eltham Primary
School
Activity 3.3: School Case Studies
Elsternwick Primary School
Module 3: Recap
We have covered:
• We have started thinking about the games
we may make.
• We have learnt how some schools have
used Kodu Game Lab
• We have
Module 4
Activity 4.1: Designing Games
Activity 4.2: Game Design Patterns
• A way to describe design choices that reoccur in many
games
• An explanation to why these design choices have been
made
• A guide of how to make similar design choices in your
own game project
– What is required to make the pattern emerge
– What consequences can the pattern have on game play?
Activity 4.2: Game Design Patterns
Name
Problem
Solution
Consequences
Activity 4.2: Kodu Game Lab Recipes
Code Recipes
Are language specific solutions to common
coding problems.
Activity 4.2: Kodu Game Lab Recipes
• Game Space
• Game Progress
• Game Play
• Game Information
Activity 4.3: Game Space Patterns
Open World
Games using the open world design patterns
allow the player to roam wherever they want.
Open world games usually involve non-linear
game play with players able choose the
sequence in which they complete game tasks.
The camera follows the player (which is the
default with Kodu Game Lab) and therefore
open world games are more suitable for single
player games.
Activity 4.3: Game Space Patterns
Activity 4.3: Game Space Patterns
Race
Racing games require the player to race
around a pre-defined track or space. Often
there are checkpoints, with goal either to
beat opponents or register a fast time.
Racing games closely mirror real life races
and are therefore a simple pattern to
understand and to play.
Activity 4.3: Game Space Patterns
Activity 4.3: Game Space Patterns
Side Scrolling
A platform game is a game that the player can
only move in 2D dimensions, it also called a
side scroller. Side Scrolling games usually
require the player to do lots of jumping, over
gaps and over other obstacles that may or may
not be moving. Side scrolling games were
extremely popular in the 80s and have a
nostalgic feel when played.
Activity 4.3: Game Space Patterns
Activity 4.3: Game Space Patterns
Maze
Using a maze as your game world turns
your game into a puzzle requiring the player
to use skill to find the correct route. Some
mazes have a single route that needs to be
discovered while other mazes have multiple
possible routes.
Activity 4.3: Game Space Patterns
Activity 4.3: Game Space Patterns
Fixed Board
Some games spaces are small fixed areas.
These game spaces are more suited to
multiplayer games without split screen
functionality. By having a set space and a
fixed camera all players have the same
perspective.
Activity 4.3: Game Space Patterns
Module 4: Recap
We have covered:
• The importance of the game space
• The role of game design patterns
• The role of Kodu Game Lab Recipes
• Explored common game space patterns
and recipes
Module 5
Activity 5.1: Game Progress Patterns
Time Limit
Time Limits require a player to complete an
action or achieve a goal or alternatively sets a
time that the player must survive in the game in
order to win. Countdown clocks usually display
the time remaining to give the game a sense of
urgency. Some games feature time bonuses
that are gained through achieving certain tasks.
Activity 5.1: Game Progress Patterns
Activity 5.1: Game Progress Patterns
Scores
Scores are a numerical representation of a
player’s success. Points can be added to a
players score for achieving certain goals or
deducted for failed activities. A player’s score is
usually displayed at all times during a game,
often points achieved are displayed as an
overlay as the goal is achieved adding to the
sense of achievement and progress.
Activity 5.1: Game Progress Patterns
Activity 5.1: Game Progress Patterns
Health
The health of the players bot can also be
used to indicate progress within the game. A
health bar shows the current health of the
character and provides immediate feedback
to player.
Activity 5.1: Game Progress Patterns
Activity 5.1: Game Progress Patterns
Save Points
Save Points (also called Check Points) are
convenient points in a game, usually after a hard
section of the game has been completed where the
game is either saved automatically or given the
option. If the user fails during the next section of the
game, the game is restarted from the save point
rather than returning the player to the beginning of
the game. This alleviates the problem of players
needing to replay easier sections of the game in
order to reach their sticking point.
Activity 5.1: Game Progress Patterns
Activity 5.1: Game Progress Patterns
Activity 5.1: Game Progress Patterns
Activity 5.1: Game Progress Patterns
Activity 5.1: Game Progress Patterns
Multiple Levels
Having multiple levels in a game is a great
way to convey a sense of progress to the
player. Games also use levels to increase
the difficulty and/or introduce new game
mechanics.
Activity 5.1: Game Progress Patterns
Video: Halox Dual
Activity 5.1: Game Progress Patterns
Activity 5.1: Game Progress Patterns
Activity 5.1: Game Progress Patterns
Activity 5.2: Game Play Patterns
Power Ups
Power-Ups give a time limited advantage to the player
that picks them up. Power Ups require players to make
strategic decisions about when to use them as power up
need to be earned or require time to recharge.
Power Ups solve the problem of having to complete a
variety of tasks of varying difficultly as they let the user
have increased abilities to face harder challenges without
making the tasks (without power ups) too easy.
Activity 5.2: Game Progress Patterns
Activity 5.2: Game Play Patterns
Transfer of Control
Some games allow the player to control
different characters at different stages of the
game. This could include when a player’s
character enters a car or boards a boat. The
new character would usually have different
abilities and therefore the game play would be
different resulting in greater interest for the
player.
Activity 5.2: Game Play Patterns
Activity 5.2: Game Play Patterns
Big Boss
Games or levels in games often finish with a
battle with a Big Boss. The Big Boss is a
much more difficult opponent and often has
different abilities to the previous opponents.
Battling the Big Boss is a great way to build
a sense of progress and to give closure to
game.
Activity 5.2: Game Play Patterns
Activity 5.2: Game Information Patterns
Alarms
Alarms can be used in games to warn
players of danger. They can be used
indicate that a phase of the game is about to
begin or end. Different sounding alarms can
be used to notify the player of different
events.
Activity 5.2: Game Information Patterns
Activity 5.2: Game Information Patterns
In Game Information
Dialog boxes can be used to display
information to the user, this information may
simply notify the user of their progress in the
game or it may provide information that the
player needs to successful complete the
game.
Activity 5.2: Game Information Patterns
Module 5 Recap
We have covered:
• Game Progress Design Patterns and
Recipes
• Game Play Patterns and Recipes
• In Game Information Patterns and Recipes
Module 6
Activity 6.1: Game Ideas
Activity 6.2: Troubleshooting and Debugging
Identifying risks: Can we do this in Kodu?
There are many things that are possible or
impossible to create with Kodu Game Lab.
When designing a new game it is crucial that
the game designer identifies the parts of the
game that may not be possible and creates
them first, that way if the game is impossible to
create time has been wasted creating the other
parts.
Activity 6.2: Troubleshooting and Debugging
Debugging: Why isn’t this working?
When the game is playing as expected there
are debugging lines that can be turned on.
As the name suggests the Debugging Lines
of Sights and Sounds will show where the
bot can and can’t see and hear and is very
useful in discovering why any code is not
working as expected.
Activity 6.2: Troubleshooting and Debugging
Copy, Paste, Clone: Is there a quicker
way to do this?
When creating multiple bots with the same
programming it is quicker and easier to
clone and paste the bot or object. Bots and
objects can also be cut and pasted between
projects.
Activity 6.2: Troubleshooting and Debugging
Using Versioning: Whoops I changed
something I shouldn’t have!
When saving major changes to Kodu Game
Lab games it useful to save it as a new
version. This effectively creates backups of
your game which is useful if you happen to
make changes that cause your game to stop
working.
Activity 6.2: Troubleshooting and Debugging
Using the Resource Meter: Why is my
game running so slowly?
Kodu Game Lab is for making small games
and when games get too large Kodu starts
to slow down, often making the game
unenjoyable and unplayable.
Activity 7.1: Next Steps
How do you plan to use Kodu Game Lab
at your school?
Activity 7.2: Getting Help Online
• Workshop Resources
http://media.planetkodu.com/workshop/resources.html
• Planet Kodu
http://planetkodu.co
• Kodu Kwestions
http://planetkodu.com/kwestions
HELP??
Download Kodu Game Lab
http://fuse.microsoft.com/kodu
Join the Kodu community at:
http://planetkodu.com
Download