We are excited about the all-new Amazon Fire edition for GameMaker Studio 2 (GMS2), letting developers create and publish Amazon Appstore games directly from the GameMaker IDE. To celebrate our partnership, we have released a series of tutorials on developing with GameMaker.
GameMaker Basics Tutorial Series
In this first tutorial, Nathan covers the basics of developing with GameMaker. This post covers setting up and animating sprites, which is basically an image that is being shown on your screen that can either be a single image or a series of images that form an animation. Nathan includes snippets of code for you to copy and use in your game.
Nathan returns to show you how to set up a simple state machine, which is a data structure that keeps track of different states. For example, your game may have three states: “Game Running,” “Game Paused,” and “Game Over.” You might use a state machine to remember which one is active, and define how to transition from one to another. This blog contains lines of code that you can copy and paste, making it easy for you to build simple state machines for your games.
Nathan shows you how to add some juice to your character movements and animations. This will help you squeeze more life and feeling out of your games, and improve overall game quality. You want to download this project file, which contains some collision code that is not included in the blog. This post heavily relies on the teachings in the Drawing Sprites and State Machines blog posts, so we highly recommend that you read those before diving into this tutorial.
In Nathan's fourth GameMaker Basics tutorial, he shows you how to set up hitboxes and hurtboxes. A hitbox is usually associated with some form of attack, and describes where that attack is effective. A hurtbox is usually associated with a character (or any other “hittable” object in your game). This tutorial is a little more complicated than the previous ones, and we highly recommend that you read up on Drawing Sprites, State Machines, and Juicing Your Movements before diving in. As with the other posts in this series, there are code samples that are easy for you to copy and paste for your own use.
Shaders are often used to create beautiful graphical effects in games. They are also among the most advanced features offered by GameMaker Studio 2, but Amazon guest blogger Alejandro Hitti will try to explain everything as simply as possible in this post. To follow along, you do not need any previous knowledge of these features, but it is necessary that you have a basic understanding of programming and know your way around GameMaker Studio 2.
Guest blogger Nathan Ranney is back with a tutorial on pausing and unpausing your game. Pausing is simply the act of stopping, or freezing, the objects in your game. The code stops running in the object when paused, and picks back up when unpaused. Nathan walks through the functions in GameMaker 2 so you can implement pausable game play in your apps.
In this post, guest blogger Nathan Ranney shows you the ropes around views, which is the camera system in GameMaker. Views, like most things in GameMaker, have some tricky to understand variables and functions. Do you want to know how is view_xview different than view_wview and how are both of those different than view_xport and view_wport? If so, then this blog is for you.
Source Control Tech Blog Series
We partnered with Alejandro Hitti, a videogame Programmer and Designer from Venezuela, to bring you these tutorials on source control. In this two-part blog series, Alejandro will show you everything you need to work with source control, specifically in GameMaker Studio 2.
Source control is an essential part of game development and one that every developer should use. In part 1, Alejandro goes over the following:
- Benefits of using source control and how to take advantage of it.
- Types of source control.
- Useful definitions when working with source control.
- Setting up a repository.
- Adding team members to repository.
- Integration and first commit.
- Pull, commit, merge, and push changes.
The second tutorial in this series goes over setting up source control in GameMaker Studio 2. If you haven't read part one yet, we suggest you do so by clicking here. In this post, we will cover how to deal with merge conflicts. The article is divided into the following sections:
- Quick reminder.
- Setting your diff/merge tool.
- Solving common merge conflicts.
- Reverting to a previous version.
- Useful external tools to consider.
Amazon Fire Tech Blog Series
I wrote this Amazon Fire Tech Blog Series to help you publish your GameMaker Studio 2 games to Amazon Fire devices.
In this tutorial, we will take you through setting up GameMaker Studio 2 and testing your game on an Amazon Fire device. In order to follow along with the tutorial, you should take a moment do set up the following items, or the steps outlined will not permit you to test, compile, or upload your game project correctly.
- A physical Amazon Fire device for testing your projects and connecting with GameMaker Studio 2. The device needs to have Developer Mode activated and be discoverable using ADB.
- An Amazon Developer account. You can find out how to get one and set it up here.
- An Amazon Fire license for GameMaker Studio 2. You can get a licence for Amazon Fire through several different mechanisms which are outlined here (note that there is a 60-day FREE trial available for GameMaker right now).
In the second part of this series, we to explain how to compile a final executable as an APK file and upload it to the Amazon Appstore so you can make it available to the public. If you have not done so before, you should take a moment do set up the items outlined in part 1 of the series (see above), including the Amazon Fire license for GameMaker Studio 2 (there is a 60-day FREE trial available for GameMaker right now).
I will continue to add to this list as we publish more GameMaker tutorials over the coming months.
- Jesse Freeman (@jessefreeman)