Make Your First Video Game
4.7 (14 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.
2,411 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Make Your First Video Game to your Wishlist.

Add to Wishlist

Make Your First Video Game

Go from Game Enthusiast to Game Developer within a Few Short Hours.
4.7 (14 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.
2,411 students enrolled
Created by Nick Baldwin
Last updated 9/2015
English
Current price: $10 Original price: $25 Discount: 60% off
1 day left at this price!
30-Day Money-Back Guarantee
Includes:
  • 4.5 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Create a Whack-a-Mole Video Game
  • Bonus: Create a Brick-Breaker Video Game
  • Know the Fundamentals of 2D Game Development
  • Write Some Basic Code in GML (Game Maker Language)
View Curriculum
Requirements
  • This course uses GameMaker: Studio, so you'll need to go to the YoYo Games website and download and install the latest version of GMS. All other software will be covered in the course.
  • GameMaker: Studio is for Windows Only.
Description

Want to make games for Xbox One, PS4, or Ipad?

Awesome! That's what gamedevU is all about. We'll take you from being a gamer with zero programming experience all the way to being a Pro Indie Developer, able to publish on whatever platform you want.

  • Playstation 4
  • Xbox One
  • WiiU
  • iPhone
  • Android
  • Windows Phone
  • PC
  • Mac
  • Linux
  • ...and more

This course teaches you to start game development using GameMaker: Studio. It's a really great cross-platform game development IDE which lets you make your game once, and then publish to multiple platforms.

This course is the first part in a modular series of courses from gamedevU that will let you go from total beginner to Pro Indie Developer after taking all the courses. This course is a solid first step, and it's the most important, because it will build your fundamental understanding of game development and get you started in the right direction.

This Level 1 course will have you feeling fluent with GameMaker: Studio.

You're going to make 2 games:

  • A Whack-A-Mole game featuring Owen Wilson (more fun to whack than a mole)
  • A Brick-Breaker game

You'll learn programming in a style that makes it easy to understand, even if you've never done any programming. Better yet, you'll never feel like you're "studying". The concepts are made easy and are built in to the course to where you'll pick up all the programming skills naturally.

The course includes 59 videos which will walk you through the entire process.

Who is the target audience?
  • This course is meant for Video Game Enthusiasts who have never done any programming or digital art before. If you've always wanted to learn to make games, this is your first start.
Students Who Viewed This Course Also Viewed
Curriculum For This Course
Expand All 59 Lectures Collapse All 59 Lectures 04:19:56
+
Course Overview
3 Lectures 11:00

Learn how to get the most out of this course. Memorization is not the goal. The goal is understanding the concepts behind everything so that you can apply each principle yourself.

Preview 05:54

There are four criteria that constitute Fair Use. Learn what they are and your permissions with the material we will be creating.

Preview 02:43

Download the reference files, and download and install GameMaker: Studio.

Preview 02:23
+
Let's Make Our First Game
22 Lectures 01:33:58

Learn how to import sprites into your project.

Importing Sprites
02:53

Learn how to import backgrounds into your project.

Importing Backgrounds
01:39

Create a room for your game.

Creating a Room
01:36

Create your first object and place it in the room.

Creating Objects and Placing them in our Room
02:21

Learn about origins and how they affect the alignment of sprites.

Origins and Sprites: What is an Origin?
05:40

Events and Actions control the functionality of your game. Make your first Events and Actions in this step.

Creating Events and Actions for Our Main Object
03:23

Learn the difference between an object and an instance.

Objects and Instances
04:41

In this segment you'll see how sprite masks affect collision detection.

Collisions and Masks
06:17

Create a click event and assign actions to it.

The Click Event
01:56

Learn how to add your first sound effect to an event.

Adding a Sound Effect to a Collision Event
04:03

Bulk importing of assets is a huge time saver. Try it out.

Bulk Importing Multiple Sound Effects
02:41

Your first dose of coding in GML (Game Maker Language). We'll write a script to assign a random sound to a variable, and call that sound from the click event we previously created.

Scripting: Play a Random Sound on Collision
10:48

Add a control object and get it to play music.

Creating a Controller Object to Manage the Gamestate
04:40

Let's add a title screen.

Let's Add a Title Screen
06:35

Who's keeping score? We are. Well, after this chapter, we are.

Earning Points: The Score Variable
03:32

A score is no good if you can't see it. So let's put it up on the screen.

Drawing the Score to a GUI
02:32

The title screen doesn't need a GUI, so we need to use our control object to detect when the game is on the homescreen, and have it not draw the score for that screen.

How to Hide the GUI on the Title Screen
01:40

Creating invisible colliders for boundarys is a really efficient way to manage "surfaces" in our game.

Making a Boundary Object
05:50

We'll make some more levels.

Adding More Levels
03:08

When you beat a level, the game needs to go to the next level. So let's do that.

Making the Player Progress from One Level to the Next
04:38

When you beat the last level, there's no "next level". So we get a huge error message. How do you fix that?

Beating the Last Level
07:59

One of the most important concepts in the entire course. Don't skip this video. Your game will not be successful if it's not really a game. But what does it mean to be a "game"? Is there an objective criteria?

Probably not. But for the purposes of gamedevU, we have an actual, objective standard. And this one simple thing is the difference between a unique, successful game vs. "just another one".

Core Concept: What is a Game? What Makes a Game?
05:26
+
Let's Make Brick Breaker
34 Lectures 02:34:58

Learn where you're headed next.

Intro to Our Second Game
04:05

Let's get our sprites and backgrounds added via bulk import.

Importing Sprites and Backgrounds
02:56

An awesome tool for getting free, usable retro game sound effects.

Generating Sound Effects On the Fly
05:25

Where to find royalty-free music.

Getting Free Licenced Music
03:06

We'll do a bulk import of all the sound effects we made earlier, and then we'll use the built-in image editor to create a couple sprites.

Importing Sounds and Making Sprites
06:30

Learn about image_speed and image_index.

Image_speed and Image_index
06:14

Let's randomize our image_index.

Randomizing the Image_Index
07:39

Making the paddle.

Making a Paddle Object
06:26

We need to make a boundary object just like we did in our previous game.

Our Boundary Object
04:47

Making the paddle move when you press the left and right keys.

Paddle Movement
02:44

Let's make sure the paddle doesn't leave the screen.

Paddle Boundaries
05:07

It's not brick breaker unless the ball can bounce off of things.

Bouncing Our Ball Off of Objects
02:00

And if the bricks don't break, there's not much of a game. So let's get those bricks to break when hit.

Breaking Bricks
01:37

Learn about the point_direction function and how we can use it to calculate the new angle for the ball to bounce at.

Calculating Angles Using the Point_direction Function
07:52

We need to create a simple gamestate for whether we are "playing" or "between lives".

Gamestates
04:06

The ball should launch off the paddle when we press the spacebar.

Launching the Ball
05:14

How directions are noted in GameMaker.

A Quick Note About Angles and Direction
02:06

Do you like cheats/glitches? Then you've probably already seen the one in our game. So let's fix it.

Challenge
05:01

Let's make a control object like we've made before.

Adding a Control Object
06:15

We need to detect when the game starts and when the game ends, and change the "lives" and "score" variables according to those.

Game Start and Game End
04:27

Adding a titlescreen.

Adding a Title Screen
04:15

Removing the score and lives GUI from the titlescreen.

Optimizing Our Title Screen
02:52

We need to detect when all the bricks are gone, and then change levels when there are none left. So let's write some code in our control object to do it.

Take the Player from One Level to the Next
07:49

When you lose all your lives or beat the game, it needs to restart and go back to the titlescreen.

Making the Game Restart
07:49

Make your game cool, and actually a game.

Getting Thematic: Integrating an Implied Storyline
02:56

Let's use seashells instead of bricks.

Browsing for Seashell Images
06:36

A little image editing.

Resizing and Editing our Images
01:59

Making objects from our shell images.

Creating Child Objects from Our Seashell Images
01:32

Parents and inheritance - no longer just a family feud.

About Parents, Children, and Inheritance
02:36

If the ball bounces perfectly horizontally, it can get stuck. Let's make sure that doesn't happen by measuring the absolute value of the vspeed (vertical speed).

Getting Unstuck: Tracking the Balls Absolute Vspeed
05:21

Item drops from broken bricks makes a brickbreaker game much more fun. Let's try a quick example you can expand on later.

Making a Treasure Object
01:32

Now that we've made our treasure, let's make it fall.

Certain Bricks Drop Treasure When they Break
05:31

Earn an extra life at 2,000, 4,000, 8,000, 16,000 points.

Earning Extra Lives Based on the Score
06:57

Add some more treasure drops, remake the game with your own art, add your own sounds and music... And then send me a copy of your game for a special prize (a link to a picture of David Bowie).

Homework and Closing Thoughts
03:36
About the Instructor
Nick Baldwin
4.7 Average rating
14 Reviews
2,411 Students
1 Course
Game Development Instructor

My name is Nick Baldwin and I am a coder, speaker, teacher and trainer living in St Augustine, FL. I teach both the technical and business aspects of game development to aspiring indie game developers. I am the founder of gamedevU, a hub for teaching game development and promoting Gamer Culture. I am also the organizer and facilitator of both GameDev Jax and the International Game Developers Association (IGDA) of Jacksonville.

I regularly teach live workshops on developing games for Xbox One in coordination with Microsoft at the Microsoft Store in Jacksonville, and I travel around the region speaking at various tech events evangelizing for the indie game development industry.

I am a serious geek in my heart of hearts, and I ABSOLUTELY LOVE Retro Games. It is my passion and my business to teach other people the skill of making their own games.