The Complete Mobile Game Development Course with Phaser
4.4 (149 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
1,263 students enrolled
Wishlisted Wishlist

Please confirm that you want to add The Complete Mobile Game Development Course with Phaser to your Wishlist.

Add to Wishlist

The Complete Mobile Game Development Course with Phaser

Learn Game Development from total scratch with JavaScript, HTML5 and Phaser
Bestselling
4.4 (149 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
1,263 students enrolled
Last updated 5/2017
English
Current price: $10 Original price: $200 Discount: 95% off
1 day left at this price!
30-Day Money-Back Guarantee
Includes:
  • 10 hours on-demand video
  • 3 Articles
  • 1 Supplemental Resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Build their own cross-platform games with Phaser
  • Create impressive 2D games of different genres
  • Support both keyboard and touchscreen
  • Understand animations, tweens, 2D physics and much more!
View Curriculum
Requirements
  • Basic JavaScript, HTML and CSS knowledge is required
  • A code editor
  • A web browser
  • Students need to install a local web server to run the course examples
Description

The Complete Mobile Game Development Course is a comprehensive video tutorial that teaches you how to create mobile games using JavaScript + the Phaser library.

Learn by Making Real-World Projects

This course has been our most ambitious project up to date, and it incorporates all the feedback and experience gained over the years teaching game development.

This course is built around the concept of learning by creating Real-World projects. The ultimate goal is that all the skills you gain in the course are really valuable for your career in an industry you love.

Games included

  • Farm animal toddlers game
  • Virtual pet game
  • Platformer Super Mario game
  • Multi-level spaceship game
  • Candy Match-3 game

Besides making games you’ll also gain valuable app and web development skills

  • Become a proficient JavaScript and HTML5 developer.
  • Understand the hybrid app development process.
Who is the target audience?
  • Motivated students with basic JavaScript knowledge who are passionate about games and want to make their own
Students Who Viewed This Course Also Viewed
Curriculum For This Course
Expand All 103 Lectures Collapse All 103 Lectures 10:00:53
+
Course Intro
4 Lectures 11:01

In this lesson we introduce the Phaser library.

Preview 04:13

In this lesson, you will learn:

- What is a web server.

- Why you need one to load Phaser games.

- What are some quick options to install.

Setting up a Local Web Server
06:10

What Phaser version to use?
00:34

In this lesson you can download all the course source code and asset files.

Course Source Code and Assets
00:04
+
Game #1 - Farm Animals Toddlers Game
19 Lectures 01:19:17

In this lesson we'll introduce the game we are building in this first module.

Introduction
01:12

In this lesson, you will learn to:

- Show folder structure

- Mobile meta tags

- Creating a new Phaser game

- Creating a State

Preview 05:38

In this lesson, you will learn to

- Show an image on the screen

Preview 03:23

In this lesson, you will learn to:

- Understand the concept of sprite anchor point.

- Place images in the center of the world.

Preview 03:20

In this lesson, you will learn to

- Grow or reduce the size of an image.

Scaling
02:37

In this lesson, you will learn to:

- Flip an image on X and/or Y.

Flipping
01:55

In this lesson, you will learn to:

- Rotate a sprite around the image anchor point.

- Using the update method to rotate a sprite over time.

Rotating
03:23

In this lesson, you will learn to:

- Make the game scale to fit the screen size, keeping the aspect ratio.

- Center a game horizontally and vertically.

- Use Chrome to simulate phone screen sizes.

Screen Scaling
04:00

In this lesson, you will learn to:

- Listen to input events on sprites.

- Listen to pixel perfect user input.

User Input
06:42

In this lesson, you will learn to:

- Create a group of sprites.

Groups
05:26

In this lesson, you will learn to:

- Access and modify the newly created elements of a group.

More on Groups
04:40

In this lesson, you will learn to:

- Implement animal switching with the arrows in our game.

Switching Animals
05:47

In this lesson, you will learn to:

- Implement tween animations.

Tween Animations
04:58

In this lesson, you will learn to:

- Execute a function when a tween animation is finished.

Tween Callbacks
02:57

In this lesson, you will learn to:

- Implement a spritesheet animation.

Spritesheet Animations
05:08

In this lesson, you will learn to:

- Find free sounds to use in your games.

- Transform sound formats with Audacity.

- Cut a sound in Audacity.

Audacity Basics
04:03

In this lesson, you will learn to:

- Load and play audio files in Phaser.

Adding Sound
04:23

In this lesson, you will learn to:

- Show and format text.

Adding Text
05:25

In this lesson, you will learn to:

- Find free artwork that can be used in games

- Understand the importance of licenses

Where to Find Free Artwork
04:20
+
Game #2 - Virtual Pet
14 Lectures 01:30:47

In this lesson we introduce the Virtual Pet project that we create in this module.

Introduction
01:57

In this lesson, you will learn to:

- Setup the basic game structure

- Show some sprites on the screen

Basic Structure
08:20

In this lesson, you will learn to:

- Enable “draggable” behavior on a sprite

- Enable user input in items

Draggable Pet
07:31

In this lesson, you will learn to:

- Implement item selection logic

- Modify the transparency of a sprite

Item Selection
07:48

In this lesson, you will learn to:

- Rotate the pet using a Tween animation

Rotating the Pet
05:21

In this lesson, you will learn to:

- Place the selected item on the background

Placing Items
05:35

In this lesson, you will learn to:

- Place new items on the background according to user selection

- Move the pet towards the new item

Moving the Pet to the Item
07:51

In this lesson, you will learn to:

- Implement a spritesheet animation for the pet

- Destroy the consumed item

Pet Spritesheet Animation
05:38

In this lesson, you will learn to:

- Show updated game stats

Game Stats
05:49

In this lesson, you will learn to:

- Implement a timer loop

- Implement a timed action

- Restart the game

Decresing Pet Stats
07:22

In this lesson, you will learn to:

- Implement multiple states in different files

Multiple States
06:33

In this lesson, you will learn to:

- Understand the Boot state

Boot State
06:11

In this lesson, you will learn to:

- Implement a loading screen

- Implement a progress bar

Loading Screen
06:37

In this lesson, you will learn to:

- Implement a home screen

- Pass values from one state to another

Home Screen
08:14
+
Game #3 - Platformer Monster Kong
16 Lectures 01:33:46

In this lesson we introduce the Monster Kong project that we create in this module.

Introduction
01:55

In this lesson, you will learn to:

- Implement the basic structure of the game.

Basic Structure
05:27

In this lesson, you will learn to:

- Initiate Phaser´s arcade physics engine.

- Enable physical properties on a sprite.

- Set gravity in a game.

Physics and Gravity
07:17

In this lesson, you will learn to:

- Implement collision and overlapping checks between sprites.

Collision Detection
05:27

In this lesson, you will learn to:

- Implement platformer controls with the keyboard.

Keyboard Control
07:24

In this lesson, you will learn to:

- Show on-screen touch controls for a platformer game.

On-screen Controls – Part 1
05:21

In this lesson, you will learn to:

- Implement the logic for the on-screen touch controls.

On-screen Controls – Part 2
06:05

In this lesson, you will learn to:

- Create a group for all platforms.

- Enable physics and check collision for the group.

Platform Group
05:49

In this lesson, you will learn to:

- Define the size of the game world.

- Attach a camera to a sprite.

Camera
03:58

In this lesson, you will learn to:

- Load external text files with level data in JSON format.

Loading JSON Files
07:51

Implement a walking animation for the player.

Player Animation
05:18

In this lesson, you will learn to:

- Add animated bump fires from the external file.

Fire
07:39

In this lesson, you will learn to:

- Place a goal gorilla sprite to beat the game.

Level Goal
05:05

In this lesson, you will learn to:

- Implement a pool of objects to save memory.

- Introduce the concept of the Garbage Collector.

Pool of Objects
08:49

In this lesson, you will learn to:

- Create barrels that rolls down from the gorilla.

- See the pool of objects in action.

Bouncing Barrels
07:39

In this lesson, you will learn to:

- Start making games even when you don´t have any artwork.

Using Rectangles to get Started
02:42
+
Game #4 - Spaceship Game
18 Lectures 01:55:19

In this lesson we introduce the Space Hipster project that we create in this module.

Introduction
01:19

In this lesson, you will learn to:

- Get familiar with the Intel XDK to develop and emulate a game.

Introducing the Intel XDK
06:45

In this lesson, you will learn to:

- Show the project structure

- Show a moving stars background

Basic Structure
07:20

In this lesson, you will learn to:

- Add the player

- Move the player according to the location of the user input

Adding the Player
07:16

In this lesson, you will learn to:

- Create a pool of objects for player bullets

- Use a timer with a loop to carry out bullet creation

Shooting Bullets
04:41

In this lesson, you will learn to:

- Create prefabs to represent game entities with default properties

- Extend the Sprite class

Prefabs
10:39

In this lesson, you will learn to:

- Implement the Enemy prefab

- Understand the enemy behaviors we need to implement

- Create an instance of a prefab

Enemy Prefabs
06:55

In this lesson, you will learn to:

- Implement enemy movement logic

- Create a custom update method in a prefab

Enemy Movement
07:49

In this lesson, you will learn to:

- Make player bullets damage enemies

- Use the damage method all Sprites have

- Overwrite damage to add custom logic

Damaging Enemies
08:50

In this lesson, you will learn to:

- Understand particle effects

- Create explosions with particles

Particle Effects
07:04

In this lesson, you will learn to:

- Implement a prefab for enemy bullets

- Implement a pool of objects for all enemy bullets

- Make the enemies shoot

Enemy Bullets
10:07

In this lesson, you will learn to:

- Make the enemy prefab extend the reset method to have more parameters

Reset Enemies
06:33

In this lesson, you will learn to:

- Pause and resume the timer of the enemies

Pause Timer
01:40

In this lesson, you will learn to:

- Implement a pool of objects for the enemies

Enemy Pool
04:25

In this lesson, you will learn to:

- Represent a level using a JavaScript object

- Load level data from an object

Load Level
10:30

In this lesson, you will learn to:

- Implement generic multi-level functionality

Multiple Levels
06:08

In this lesson, you will learn to:

- Load level data from external JSON files

- Work with multiple levels and JSON files

Level JSON Files
03:51

In this lesson, you will learn to:

- Load a retro 8-bit soundtrack

Soundtrack
03:27
+
Game #5 - Candy Matching Game
16 Lectures 01:51:54

In this lesson we introduce the Candy Matching game that we create in this module.

Introduction
02:08

In this lesson, you will learn to:

- Show the project structure and files

- Initiate the Board grid

Basic Structure
08:41

In this lesson, you will learn to:

- Populate both grids with blocks of a random variation

Populate Grids
09:25

In this lesson, you will learn to:

- Swap two blocks

- Check whether two blocks are adjacent

Swap and Check Adjacent Blocks
07:54

In this lesson, you will learn to:

- Check whether a block is located in a chain

Is a Block Chained
08:38

In this lesson, you will learn to:

- Find all the chains in the board

Find All Chains
03:30

In this lesson, you will learn to:

- Assign zero to all the chained blocks in the grid

Clear Chains
02:40

In this lesson, you will learn to:

- Drop a block within the main grid

- Drop a block from the reserve grid to the main grid

Drop Blocks
05:08

In this lesson, you will learn to:

- After clearing the chains, make blocks fall to cover empty cells

- Use blocks from the reserve to fill remaining empty cells

Update Grid
10:05

In this lesson, you will learn to:

- Add a method to create blocks in Phaser

- Implement a pool of objects to allow object recycling

Create Block
06:18

In this lesson, you will learn to:

- Show the board on the screen

- Add semi-transparent squares on each cell

Draw Board
06:46

In this lesson, you will learn to:

- Add a custom kill method for blocks

- Kill blocks from the Board model, when chains are cleared

Kill Block
07:15

In this lesson, you will learn to:

- Represent blocks falling in the main (visible) grid and the reserve grid

Block Dropping Animations
08:55

In this lesson, you will learn to:

- Animate the swapping of two blocks

- If there are no chains, swap them back to their original positions

Swap Blocks
09:16

In this lesson, you will learn to:

- Allow the user to pick two blocks and swap them if it's allowed

Pick Block
09:26

In this lesson, you will learn to:

- Implement consecutive chains, so a single move can trigger multiple chains

- Fix some bugs

Consecutive Chains
05:49
+
Publishing to iOS and Android
11 Lectures 01:19:11

In this lesson you will learn what hybrid apps are

Intro to Hybrid Apps
03:45

In this lesson we'll take about Cordova, which is an Open Source tool to create hybrid apps

Intro to Cordova
04:54

In this lesson we'll talk about the use of Cordova and the Intel XDK

Using Cordova and the Intel XDK
12:08

In this lesson we'll introduce the concept of Cordova plugins.

Hello World Cordova Plugins
03:31

In this lesson we'll discuss the differences between building your app with Cordova vs Crosswalk

Cordova vs Crosswalk
05:28

In this lesson we'll explain how Phaser can be integrated with Cordova

Cordova and Phaser
09:14

In this lesson we'll prepare our game for the building process. This includes the main details and assets that need to be added to the project.

Preparing for Building
06:02

In this lesson we'll go through the publishing process in the Google Playstore.

Publishing to the Google Playstore
10:36

In this lesson, we'll talk about the iOS building process, including the certificate generation process.

iOS Building Process Overview and Certificate
05:57

In this lesson we'll talk about the Ad Hoc building process, which is used to distribute apps outside of the App Store.

Ad Hoc Building
10:04

In this lesson we cover the process of publishing an app to the App Store.

Pubishing to the Apple App Store
07:32
+
Publishing to the Amazon App Store
4 Lectures 18:38

In this video we introduce the Amazon Appstore.

Intro to the Amazon Appstore
04:31

In this video we cover the steps to create a new developer account with Amazon. This is a free process.

Amazon developer account creation
02:14

In this lesson we talk about the role of webapps in the Amazon Appstore.

HTML5 webapps and the Amazon Appstore
06:29

In this lesson we cover the publishing process of an app.

Publishing a HTML5 game to the Amazon Appstore
05:24
+
Conclusion
1 Lecture 00:57

Course conclusion

Conclusion
00:57
About the Instructor
Pablo Farias Navarro
4.4 Average rating
4,674 Reviews
135,748 Students
53 Courses
Game Developer and Founder of ZENVA

Software developer and founder of ZENVA. Since 2012, Pablo has been teaching online how to create games, apps and websites to over 200,000 students through the Udemy and Zenva Academy platforms, and created content for companies such as Amazon and Intel.

Pablo is a member of the Intel Innovator Program in the Asia Pacific, and has run live programming workshops in San Francisco, Brisbane and Bangalore.

Pablo holds a Master in Information Technology (Management) degree from the University of Queensland (Australia) and a Master of Science in Engineering degree from the Catholic University of Chile.