SlideShare a Scribd company logo
Sage Franch | @theTrendyTechie
Building a Game with
TouchDevelop
Meet Sage Franch | @theTrendyTechie
• Technical Evangelist
– Interfacing with developers
– Bringing Microsoft’s technology to you!
• Proud geek and “Trendy Techie”
– Find me online at my blog trendytechie.ca
• Advocate for equality in technology
• Student at Dalhousie University
Game Development with TouchDevelop
Why TouchDevelop?
• It’s a snap to learn.
• You learn coding concepts without worrying about semantics.
• It makes building mobile games and apps easy.
• It runs on anything (laptop, desktop, tablet, phone).
• You can share your code and creations with friends.
• It’s free
• All you need is a browser.
Which browsers can I use?
• TouchDevelop is supported on the latest versions of most
browsers.
• To avoid a delay in your classes, make sure ahead of time that
the browsers are updated
• For a full list of supported browsers, see here:
https://www.touchdevelop.com/app/current.browsers
The Agenda
• TouchDevelop tour
• Important Coding Concepts:
– Objects, Functions and Parameters
– Variables
– The TouchDevelop coordinate system
– Conditional statements
– On every frame
– Loops
• Play time! :D
• Resources for teaching and learning
touchdevelop.com
TouchDevelop Tour
build
testsave
sign in
build
testsave
sign in
What You Need to Know
Important Coding Concepts
Objects, Functions and Parameters
object function parameter
• Object: a representation of something in the game
• Function: performs an action on the object it is associated with
• Parameter: specifies the value of the function
Variables
• A variable holds data that can be used throughout a script.
• Every variable has a name, a type, and a value.
• A variable’s type describes the kind of data the variable can hold.
– For example: A number, a string, a sprite
• In TouchDevelop, a variable’s type is determined when it is
initialized.
The TouchDevelop coordinate system
(0, 0) x axis
y axis
yINCREASING
1234567…
Conditional Statements
A conditional statement is special code for making decisions based
on some condition.
So what’s a condition? Anything statement that can be either true
or false.
If I am hungry, then I eat.
The action taken if the
condition is false.
The action taken if the
condition is true.
Otherwise, I sleep.
The condition.
(It’s either true or false.)
In code, conditional statements are also called
if-then-else statements
Condition
Code to execute if
the condition is
true goes here.
Code to execute if
the condition is
false goes here.
BUT you have to pay attention to when the condition
is checked…
Computer games are a series of very fast frames
Frame 1 Frame 2 Frame 3
Frame 4 Frame 5 Frame 6
A game frame-by-frame
Use “on every frame” to perform checks continuously
Loops
A loop is a special tool in coding
that lets us write code once and
repeat it as many times as we’d
like
Repeat the following block of code X times:
End of repeated block
You get to specify this value.
Whatever code you put here
gets repeated X times.
Tells the program that any
code after this isn’t part of the
code to be repeated.
The syntax for a loop…
The number of times the code is repeated.
The code that will be repeated.Tells the program that any
code after this isn’t part of the
code to be repeated.
aka.ms/jetpackstarter
Let’s play!
So how do I get started?
It’s easy!
1. Go to http://www.touchdevelop.com
2. Click .
3. And .
Resources for Teaching and Learning
Two Recommended Formats
One-Day Event
• Provide students with a “half-
baked” game to fix and customize
• Jetpack Jumper prompted tutorial
• Estimated time: 2 hours maximum
Multi-Day Event
• Build a side scroller game from
scratch
• Use CODExist MVA as reference
• Estimated time: 6-12 hours
(flexible)
Pre-course checklist
• Will you provide students with devices or will they bring their
own?
• Do you have a reliable internet connection?
• If the students will be watching videos or working with tutorials,
have you asked them to bring headsets?
When teaching TouchDevelop
• Emphasize the excitement of coding
• Be prepared to handle students with different levels of coding
experience
• Make sure to leave time for customization
• Encourage students to share their games, both in show-and-tell
in person and online on social media
• Provide NEXT STEPS – how can they continue once the program
is over? Publish their game to app stores, build more games, etc.
TouchDevelop Resources
• Jetpack Jumper Tutorial with prompts: aka.ms/startcoding
• “Broken” Jetpack game without prompts: aka.ms/jetpackstarter
• Complete Jetpack Jumper: aka.ms/jetpackcomplete
• Hour of Code video: http://channel9.msdn.com/events/Hour-of-
Code/2014/LearningToCode
• CODExist: The Birth of Bot course on Microsoft Virtual Academy
(build a side scroller game from scratch):
http://www.microsoftvirtualacademy.com/training-
courses/codexist-the-birth-of-bot
Sage Franch
@theTrendyTechie
sage.franch@outlook.com
Adarsha Datta
@AdarshaDatta
addatta@microsoft.com

More Related Content

PDF
Touch develop intro
PPTX
Monitor troubleshooting
PPT
Smartboard
PPTX
Hour of Code_13-16_StoreTraining
PDF
"Startups, comment gérer une équipe de développeurs" par Laurent Cerveau
PDF
Traits of a Good Engineer
PPTX
Hour of Code - Mohamed Emam
PDF
Binary crosswords
Touch develop intro
Monitor troubleshooting
Smartboard
Hour of Code_13-16_StoreTraining
"Startups, comment gérer une équipe de développeurs" par Laurent Cerveau
Traits of a Good Engineer
Hour of Code - Mohamed Emam
Binary crosswords

Similar to Game Development with TouchDevelop (20)

PPTX
Oops concepts variables and How to handle variable in testing
PPTX
From SLO to GOTY
PDF
The Science of Compliance - Early Code to Secure your Node (11/6/19)
PPTX
scratch.pptx
DOCX
Training report anish
PDF
Bug Hunting Safari
PPTX
introduction to problem solving and programming
PDF
PROGRAMMING FUNDAMENTALS BASICS LECTURE 1
PPTX
2-Common-tools-equipment-in-CSS-&-Visual Arts.pptx
PDF
Software as a craft (February, 2018)
PDF
The Good, the Bad and the Ugly things to do with android
PPTX
It's XP Stupid (2019)
PDF
It's XP, Stupid
PPTX
Testing for the deeplearning folks
PDF
TeelTech - Advancing Mobile Device Forensics (online version)
PDF
Build tic tac toe with javascript (4:11 dc)
PDF
Dodo does-math
PDF
What schools should be teaching IT students
PPTX
Assistive Technology Selection for Employment
PPT
Twelve practices of XP_Se lect5 btech
Oops concepts variables and How to handle variable in testing
From SLO to GOTY
The Science of Compliance - Early Code to Secure your Node (11/6/19)
scratch.pptx
Training report anish
Bug Hunting Safari
introduction to problem solving and programming
PROGRAMMING FUNDAMENTALS BASICS LECTURE 1
2-Common-tools-equipment-in-CSS-&-Visual Arts.pptx
Software as a craft (February, 2018)
The Good, the Bad and the Ugly things to do with android
It's XP Stupid (2019)
It's XP, Stupid
Testing for the deeplearning folks
TeelTech - Advancing Mobile Device Forensics (online version)
Build tic tac toe with javascript (4:11 dc)
Dodo does-math
What schools should be teaching IT students
Assistive Technology Selection for Employment
Twelve practices of XP_Se lect5 btech
Ad

More from Sage Franch (6)

PPTX
Crafting a Compelling (and Honest) Speaker Bio
PPTX
The 2030 Workplace - Evolving Your Organization with Emerging Tech
PDF
Singularity-Proof Yourself by Sage Franch
PPTX
Blockchain, Cryptocurrency, and the Cloud
PPTX
Artificial Intelligence as an Interface - How Conversation Bots Are Changing ...
PPTX
Turning Your Passion Into Your Career
Crafting a Compelling (and Honest) Speaker Bio
The 2030 Workplace - Evolving Your Organization with Emerging Tech
Singularity-Proof Yourself by Sage Franch
Blockchain, Cryptocurrency, and the Cloud
Artificial Intelligence as an Interface - How Conversation Bots Are Changing ...
Turning Your Passion Into Your Career
Ad

Recently uploaded (20)

PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Approach and Philosophy of On baking technology
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
Spectroscopy.pptx food analysis technology
PPTX
Big Data Technologies - Introduction.pptx
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Encapsulation theory and applications.pdf
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Empathic Computing: Creating Shared Understanding
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
NewMind AI Weekly Chronicles - August'25-Week II
Approach and Philosophy of On baking technology
Spectral efficient network and resource selection model in 5G networks
Chapter 3 Spatial Domain Image Processing.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
MIND Revenue Release Quarter 2 2025 Press Release
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Spectroscopy.pptx food analysis technology
Big Data Technologies - Introduction.pptx
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Encapsulation theory and applications.pdf
sap open course for s4hana steps from ECC to s4
Building Integrated photovoltaic BIPV_UPV.pdf
Per capita expenditure prediction using model stacking based on satellite ima...
Empathic Computing: Creating Shared Understanding
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
MYSQL Presentation for SQL database connectivity
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf

Game Development with TouchDevelop

  • 1. Sage Franch | @theTrendyTechie Building a Game with TouchDevelop
  • 2. Meet Sage Franch | @theTrendyTechie • Technical Evangelist – Interfacing with developers – Bringing Microsoft’s technology to you! • Proud geek and “Trendy Techie” – Find me online at my blog trendytechie.ca • Advocate for equality in technology • Student at Dalhousie University
  • 4. Why TouchDevelop? • It’s a snap to learn. • You learn coding concepts without worrying about semantics. • It makes building mobile games and apps easy. • It runs on anything (laptop, desktop, tablet, phone). • You can share your code and creations with friends. • It’s free • All you need is a browser.
  • 5. Which browsers can I use? • TouchDevelop is supported on the latest versions of most browsers. • To avoid a delay in your classes, make sure ahead of time that the browsers are updated • For a full list of supported browsers, see here: https://www.touchdevelop.com/app/current.browsers
  • 6. The Agenda • TouchDevelop tour • Important Coding Concepts: – Objects, Functions and Parameters – Variables – The TouchDevelop coordinate system – Conditional statements – On every frame – Loops • Play time! :D • Resources for teaching and learning
  • 10. What You Need to Know Important Coding Concepts
  • 11. Objects, Functions and Parameters object function parameter • Object: a representation of something in the game • Function: performs an action on the object it is associated with • Parameter: specifies the value of the function
  • 12. Variables • A variable holds data that can be used throughout a script. • Every variable has a name, a type, and a value. • A variable’s type describes the kind of data the variable can hold. – For example: A number, a string, a sprite • In TouchDevelop, a variable’s type is determined when it is initialized.
  • 13. The TouchDevelop coordinate system (0, 0) x axis y axis yINCREASING 1234567…
  • 14. Conditional Statements A conditional statement is special code for making decisions based on some condition. So what’s a condition? Anything statement that can be either true or false. If I am hungry, then I eat. The action taken if the condition is false. The action taken if the condition is true. Otherwise, I sleep. The condition. (It’s either true or false.)
  • 15. In code, conditional statements are also called if-then-else statements Condition Code to execute if the condition is true goes here. Code to execute if the condition is false goes here.
  • 16. BUT you have to pay attention to when the condition is checked…
  • 17. Computer games are a series of very fast frames Frame 1 Frame 2 Frame 3 Frame 4 Frame 5 Frame 6
  • 19. Use “on every frame” to perform checks continuously
  • 20. Loops A loop is a special tool in coding that lets us write code once and repeat it as many times as we’d like Repeat the following block of code X times: End of repeated block You get to specify this value. Whatever code you put here gets repeated X times. Tells the program that any code after this isn’t part of the code to be repeated.
  • 21. The syntax for a loop… The number of times the code is repeated. The code that will be repeated.Tells the program that any code after this isn’t part of the code to be repeated.
  • 23. So how do I get started? It’s easy! 1. Go to http://www.touchdevelop.com 2. Click . 3. And .
  • 24. Resources for Teaching and Learning
  • 25. Two Recommended Formats One-Day Event • Provide students with a “half- baked” game to fix and customize • Jetpack Jumper prompted tutorial • Estimated time: 2 hours maximum Multi-Day Event • Build a side scroller game from scratch • Use CODExist MVA as reference • Estimated time: 6-12 hours (flexible)
  • 26. Pre-course checklist • Will you provide students with devices or will they bring their own? • Do you have a reliable internet connection? • If the students will be watching videos or working with tutorials, have you asked them to bring headsets?
  • 27. When teaching TouchDevelop • Emphasize the excitement of coding • Be prepared to handle students with different levels of coding experience • Make sure to leave time for customization • Encourage students to share their games, both in show-and-tell in person and online on social media • Provide NEXT STEPS – how can they continue once the program is over? Publish their game to app stores, build more games, etc.
  • 28. TouchDevelop Resources • Jetpack Jumper Tutorial with prompts: aka.ms/startcoding • “Broken” Jetpack game without prompts: aka.ms/jetpackstarter • Complete Jetpack Jumper: aka.ms/jetpackcomplete • Hour of Code video: http://channel9.msdn.com/events/Hour-of- Code/2014/LearningToCode • CODExist: The Birth of Bot course on Microsoft Virtual Academy (build a side scroller game from scratch): http://www.microsoftvirtualacademy.com/training- courses/codexist-the-birth-of-bot

Editor's Notes

  • #5: Lots of complicated stuff, like building a physics engine, is done for you.
  • #24: When you are signed in, your work is automatically saved.