2D Video Game Programming

 Level 1 – Intro to 2D Game Programming With GameMaker Studio 2

Project I: Animated Halloween Background Scene

Set up a multi-layered Halloween themed background using the room editor. Get familiar with placing background pieces in the correct x and y positions and arranging backgrounds in the proper order according to their “depth.” Program an object with a “loop” which continuously creates a fog effect. Use the random function and a built-in system variable to make the effect appear randomly between the left and right margins of the room. BONUS Halloween Background Pack with additional tombs, trees and more included for free in this package. 

Purchase the source files for this project for only $4.99: Background Package

Project II: 2D Space Shooter Part 1 

Create and control a spaceship object by using the arrow keys and the space bar. Learn about programming collisions between objects. Create timed alarms to loop actions or set up actions to occur at a specific time after an event. Incorporate sounds and use them during events. Learn more about the built-in effects included with the game engine and their properties. Program a special event that makes the ship wrap back around the x axis when it moves off-screen to the left or right. Program an enemy-creator object that continuously creates new enemies and asteroids. BONUS Space Asset Pack with 5 ships and 5 rotating planet sprites. 

Purchase the source files for this project for only $4.99: Space Shooter 1 Package

Project III:  Learn to build the two-player PaddleBall game!

Create a game where two players can compete against each other to keep the other from scoring points. Use a game control object to reset the objects on screen and keep track of points. Initialize and track score variables and create a special object to draw the scores on screen. Program the game to restart once one player has scored three points. Finish a full game loop that allows players to keep playing indefinitely. 

Purchase the source files for this project for only $4.99: PaddleBall / Pizong! Project

 Level 2 – Graphic User Interfaces and Platforming Essentials

Project I: 2D Space Shooter Part 2

Create a new enemy type with a “homing” projectile that tracks the player’s positions and moves toward it. Set a health variable so the ship can withstand multiple hits and track it’s value with a life bar that is drawn on screen. Create a score variable to draw on screen and add points whenever enemies or asteroids are destroyed. Upgrade your ship’s offensive abilities by adding a rapid-fire mode when holding down the space bar. Keep track of the number of lives the player has left and restart the game once the number of lives is zero. 

space shooter 2 package

Purchase the source files for this project for only $4.99: Space Shooter 2 Project

Project II: Ninja Platform Game Part 1

Animate a player character’s movements, jump sequence and attack sequences. Change an object’s sprite based on which buttons are being pressed. Program terrain that stops the player when they are falling. Simulate gravity so that whenever players have nothing beneath them their character will fall.  Map a projectile and sword attack to buttons on the keyboard. Test multiple conditions using the AND / OR operators. Track the character’s state using a “state machine.” Create a walking enemy that can be defeated by all attacks.  Program the player character to be destroyed when the health variable is below zero. Use the particle engine to create a constant stream of snow. 

Project III: Ninja Platform Game Part 2

Our 2D Video Game Programming Curriculum can be purchased as stand-alone game files for you to learn at your own pace at home! We also provide online lessons via Skype, Google Hangouts or TeamViewer. 

We teach students from ages 9-18+ how to build a space shooter video game using the game engine GameMaker Studio. I look forward to helping the students in your life by teaching STEM concepts related to computer science in new and engaging ways. Students learn about important computer science concepts like inheritance, polymorphism and encapsulation. With our projects you get hands on experience changing object properties, creating logic loops and tracking variables to react to input events.  

This lesson involves students following along with the instructor or working alone on their own computer. Students begin navigating the game engine interface and changing variables in a blank game to create effects that they can test and see immediately. Students learn how to assign traits and characteristics to game objects and eventually to program game objects to respond to input. Through a combination of hands-on training and critical thinking questions students are engaged and encouraged to express themselves by creating custom settings. 

Students get a blank base file with game art assets but the code is left blank. After we begin filling in the code students can save their work and continue building their game and experimenting until the next lesson. Students are allowed to keep all art and game resources and use them in their games. Each lesson has new art and resources that students get to keep and use to enhance their games!

The game engine we use is FREE for students to download at home and doesn’t require a fancy, high-end computer to run. The engine we use for 2D programming does require a computer with a Windows-based operating system.