4.22 out of 5
9 reviews on Udemy

Introduction to Mobile Game Programming for Beginners

Discover How to Develop Mobile Games from Scratch Utilizing Corona SDK
Guillermo Puyol
1,141 students enrolled
English [Auto-generated]
By the end of the course you'll be able to make simple and entertaining mobile games.
You will understand the basics of mobile programming (Displaying graphics, making them move, interacting via touch, and more!)
You will develop a fun game from scratch!


NEW FEATURE! Full Source Code Shared Lesson-by-Lesson so you can follow along easily!

LATEST: Course Updated Again On October 31st 2014


Start programming your own games, with no outlay and no experience whatsoever, immediately – just like my current 1,000+ students! Nothing to pay out at all.

No expensive software is needed – and nothing else is required.

About this course:

  • Over 1,000 very happy students
  • No expensive software is needed – and nothing else is required.
  • Full, free lifetime access
  • All future extra lectures and upgrades are always included for free
  • Unconditional Udemy 30 day money-back guarantee – that's my personal promise of your success!
  • Regular free surprise bonuses to increase your income even more!
  • Now includes image files and place-holder sounds so you can implement the course right away!
  • You also get full, free access to the entire source code of the game we build together in this course! That is a $499 value!


  • Set up a Corona SDK project from scratch
  • Design, Program and Tweak a fun and challenging mobile game (YOU GET ACCESS TO THE SOURCE CODE!)

Today, you can start programming your own mobile game so you too can cash in on this amazing growing industry, with no outlay whatsoever – and with ZERO prior experience!

We'll start with your first game, and the sky is the limit with the knowledge you'll acquire in this course.

This complete course has been taken by over 1,000 students already – see the amazing reviews below!

Indie developers such as Dong Nguyen (Creator of Flappy Bird) have reportedly generated over $50,000 per day in earnings from their mobile games (that's $350,000 dollars in a week!).

Now you can get a piece of that pie and you will need no prior programming knowledge, no super-computers, and you won't need to spend a penny on additional software.

I stress that you need no prior experience and there's nothing to buy or pay for. Nothing!

What you will learn in this course:

In Section 1we go over a quick introduction to Corona SDK and we will set up your very first project.

In Section 2 we dive right into programming by making your first "Hello World!" program. (No programming course would be complete without one!) We then continue to introduce variables,tables,storing tables within tables and more!

Section 3 is all about Control Structures. In this section we cover if blocks, while loops, repeat loops, for loops, functions and we also go over the importance of scope.

Section 4 is where the magic happens and the fun part begins. You will get to program your very first game in this section! You'll learn how to display images on the screen, make the images move and respond to touches, and you'll learn how to create a menu and game mechanics. THIS STUFF IS FUN!

… and much, much more!

You've taken the time to read this far down, and hopefully you've watched some of the preview lessons. Now it is time to take action and get started with the course so you too can be part of this exciting and developing mobile game industry.

Click the "take this course" button, top right, now …every hour you delay is costing you money


Introduction to Corona SDK

In this video we go over the Corona SDK welcome screen as we prepare to create our first project.

If you haven't yet, please download Corona SDK by clicking the orange 'Download Corona' button at:

To download a trial of Lua Glider visit: http://www.mydevelopersgames.com/Glider/

To download Notepad++ visit the download link over at http://notepad-plus-plus.org/

Setting Up Our First Project

In this lecture we will set up our first Corona SDK project and we will learn how to import it into Lua Glider so we can begin programming.

Programming Basics

Hello World!

No programming course would be complete without a "Hello World!" example. In this short lesson you will learn how to display text in the Corona SDK console.

Introduction to Variables

In this lesson you will learn how to declare variables and how to use variables to store strings and numbers that you can later manipulate in your code.

Introduction to Tables

In this lesson we discuss tables. You will learn how to declare tables and we'll go over some of the ways you can populate tables and use them within your code.

Storing Tables Within Tables

Now that we understand the basics about tables we take things a step further. By learning how we can supercharge tables and use them to store other tables, we now have a grasp on a very powerful programming tool.

Programming Basics Quiz

In this short quiz we'll check for understanding of the basics of programming.

Control Structures

if then elseif else

Up until now our code has been very linear. By using control structures we can structure our code to execute lines of code only if a certain set of conditions are met. In this lesson we will cover if statements.

while loops

In this lesson we discuss while loops. While loops allow us to repeatedly execute blocks of code as long as a condition is met.

repeat loops

In this lesson we discuss repeat loops. Repeat loops allow us to repeatedly execute blocks of code as long as a condition is met much like while loops.

The main difference between repeat loops and while loops is that repeat loops will execute the code inside them at least one time because they check for the condition after they excecute.

for loops

In this lesson we discuss for loops. For loops allow us to repeat a chunk of code a set number of times by using a counter.

for loops and tables

In this lesson we utilize a for loop to cycle through the values inside a table and we print them out to the console.

for loops and tables continued

This video wraps up a loose end in the previous lesson.

Introduction to Functions

Functions are a sequence of statements that are executed when called by other sections of the code.

Understanding Scope

In this lesson we discuss the importance of scope. We also learn the difference between global and local variables in Lua and Corona SDK.

Control Structures Quiz

This quiz should help check what you learned about control structures.

Important Exercise

This simple exercise will help you start thinking like a programmer by writing pseudo-code of your morning routine.

Did you do this?

DO NOT move forward if you haven't completed the previous exercise.

Programming Our First Game: Virus Infection

Displaying Our First Virus on the Screen

In this lecture we leave the boring world of the console and display our first graphic on the device screen!

Creating a Virus Factory - Using a function to create our viruses

In this lecture we structure our code better by utilizing functions to draw our viruses onto the screen.

Improving Our Virus Factory and Adding a Background Image

In this lecture our game starts taking shape as we add a background graphic to the screen. We also improve our virus factory function.

Moving Our Virus Around the Screen

Our virus comes to life as we implement a function to make it move around the screen.

Creating a Level Builder Function

Up to this time we were creating our viruses in a very 'manual' way. In this lesson we create a level-builder function that will make creating new viruses a breeze.

Making Our Viruses Respond to Touch Events

Our viruses are now moving around the screen, it is time that we set up some interaction by making them respond to touch events. In this lesson we explore touch events and event listeners.

Making Our Viruses Grow Over Time

Virus are living organisms, so they must grow! Right? In this lesson we take our moving viruses and make them grow over time from babies to full-grown adults.

Dispatching a 'VirusDied' Event

In this lecture we make our viruses dispatch an event when they are touched.

Removing Dead Viruses Off the Screen

Once our viruses get touched they need to be removed off the screen. In this lecture we begin the removal process by stopping the viruses from moving and growing.

Removing Dead Viruses Off the Memory

When removing display objects it is important to make the distinction between removing an object from screen or removing it from memory. In this lecture we ensure our viruses get cleared out of memory so we are not wasting resources in objects we no longer need.

Spawning Our Viruses' Children Onto the Screen

In our game, viruses will respond to touch differently depending on their age. In this lecture we set up the older viruses to spawn younger ones when clicked.

Housekeeping: Removing Unnecessary Print Statements

In this short housekeeping lecture we use Lua Glider's Memory Timeline to check our game's performance. We also comment out unnecessary print statements that were slowing our game down.

Setting Up the endGame Function

As we begin to wrap up the development of our first game we start developing the GameEnd function. This function allows our game to recognize when the game has been lost or won.

endGame Function Continued...

We continue to develop our endGame function.

Wrapping Up our endGame Function

In this lecture we finish the implementation of our endGame function.

Restart Game Function

In this lecture we implement the first part of the restartGame function that will allow us to restart our level if we fail it.

Moving the Player to the Next Level

Now that our player has beat the level we set up a function to move them on to the next level of the game.

Background Music and Sound Effects

In this lecture we'll cover the basic steps to add music and sound effects to our game.

Adding a Basic Menu

In this lecture we create a basic start menu by implementing Corona's storyboard functionality to our game.

Game Over & Restart Screen

In this lecture we create a function that detects the player has beat the game and shows them a screen to restart the game from scratch.

You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.2 out of 5
9 Ratings

Detailed Rating

Stars 5
Stars 4
Stars 3
Stars 2
Stars 1
30-Day Money-Back Guarantee


6 hours on-demand video
2 articles
Full lifetime access
Access on mobile and TV
Certificate of Completion