Create Your Own Platformer With Windy Woods


Create Your Own Platformer With Windy Woods

Create your own platformer with the Windy Woods template.

In this tutorial, we'll modify the first level of Windy Woods, and create our own second level.

How to Open Windy Woods

Create a new project using the Windy Woods template. You can choose either GML Code or GML Visual:

undefined

Once the project opens, you'll see the Asset Browser:

undefined

This contains all of the assets you use to make your game.

GameMaker allows you to group and order your assets however you like. For this project, we've grouped assets by type.

How to edit a level in GameMaker

A level in GameMaker is known as a "room".

Simply place assets from your Asset Browser into a room to create a level.

Here are the current rooms in Windy Woods:

undefined

Open rm_level_1 by double clicking on it.

You'll see it load - it might take a while since it's a large one:

undefined

Everything inside a room is placed in a layerThe room you opened already has lots of them, which you can easily change.

Each layer is related to a type of asset, limiting what can be placed on it.

What are Instance Layers

Select the Instances layer:

undefined

This type of layer allows you to place "instances" on it. Instances are created from objects.

You can use your mouse to move the instances in this layer -- try moving the enemies and blocks:


Turn the grid on/off by clicking the grid button (found in the top right corner of the room editor) or using the keyboard shortcut G.


Add new instances of coins and blocks by dragging them from the Asset Browser.


Alternatively, select an Object from the Asset Browser (on the right), hold Alt/Option, and paint that object in the room with the Left Mouse Button.


Go ahead and place new blocks, coins, and enemies in the level. Make it your own!

undefined

How to Place Tiles in GameMaker

A Tile Set is an asset that contains a large image, split up into "tiles" or "cells". You use these tiles to build your level.

To use a Tile Set in the Room Editor, you need a Tile Layer. The Windy Woods level already has several.

Select the "CollisionTiles" layer:

undefined

This Tile Layer contains ground tiles that players and enemies can stand on.

undefined

The Tile menu opens on the right. From this panel, you can select a tile, and paint it in the room:

What is Auto-Tiling in GameMaker?

The Auto Tile feature is a powerful tool that makes level building much easier.

You create an auto tile library, and whenever you lay down a tile from that library, it will "connect" with those tiles that are around it to create a seamless wall or platform.

We've already an auto tile library for you, so you just need to use it.

How to Use Auto-Tiling Libraries

Select the "CollisionTiles" layer.

In the Tile menu on the right, go under Libraries and select "normal".

undefined

Place tiles in the room, using the Left Mouse Button to draw and the Right Mouse Button to erase.

You now have all the tools to build a new level!

How to Build Your Own Level in GameMaker

From the Asset Browser, open rm_level_2. It has some placeholder objects we don't need:

undefined

These are in a separate layer. Right-click on the “Template_Messages” layer and delete it.

undefined

Building with Tiles

Now build a level using tiles.

Select the "CollisionTiles" layer. Here, place tiles that your characters can stand on.

undefined

Under Libraries, select normal:

undefined

Use the left mouse button to draw, and the right mouse button to erase. Create a small section:

undefined

Now to play this level, run the game, and finish the first level so the second one starts.

Don’t want to go through level 1 every time you want to test level 2?

Go into the Room Order menu, and change it so level 2 opens first. Testing will be much faster now!

Cave Tiles

The underground part is looking unfinished, because the forest background stops abruptly.

We'll add cave tiles to fill that area.

Select the "CaveTiles" layer:

undefined

Under the "Tiles" menu, select any one of the filled cave tiles. I’ll select the bottom-left one:

undefined


Add it in where needed:

undefined

Also paint the top part, which is the tile directly above the one we selected.

Adding Instances

The level is currently empty and lifeless. Let's add enemies, pickups and blocks to make it come alive.

Select the "Instances" layer:

undefined

From the Asset Browser, add instances of coins, blocks, and enemies to build your level.

Remember that you can enable the grid if you need it by pressing G.

undefined

It's looking like an actual level now!

Multiple Coin Block

You can change the amount of coins inside a coin block.

Double click on a coin block and open the Variables window:

undefined

You need to edit the hits_left variable, so click the pencil icon on the right.

Change its value to 4. This block can now be hit four times!

If you've followed any of the other tutorials already, such as the custom pickup, second enemy, checkpoints, or jump-through platforms, you can add them into this level as well!

If you haven't done these tutorials yet, you can do them at any time.

Adding Visual Props

Make your level more interesting by adding a number of visual elements.

Select the "Visuals" layer:

undefined

This is an "Asset Layer" where you can place sprites directly, without having to use an object.

In your Asset Browser, go to the Sprites -> Environment -> Ground Visuals.

Here you'll find several folders with visual elements you can add to your level.

undefined

Open the "Grass" folder and place some grass assets into the room:

undefined

If you've disabled the grid, you can enable it by pressing G. This will make it easier to place the grass sprites.

Just like objects, you can drag sprites into the room, or select one, and hold Alt/Option to paint them.

You can also place rocks and other cave assets in the underground areas:

undefined

How to Use Filters in GameMaker

Your level is playable now. You can build it further, and also change how it looks!

Let's use a "Colour Tint" filter to give our own touch to the level.

undefined


Add a new FX Layer and name it "Effect_Tint" (or anything you like). Place it at the top, above all other layers, so it affects everything. 

undefined

Set its Effect Type to “Colour Tint”, and choose a colour you like.

Now it’s evening time in the Windy Woods!

Finishing the Level

Continue designing the level by placing more tiles, instances and visuals.

Once you're done, select the "EndGate" layer, which contains the gate where the level is finished.

Move it wherever you want your level to end.

undefined

You can also change the size of your room in the Inspector, which is open in the bottom-left corner of the IDE by default.

Click on your room (rm_level_2) in the Asset Browser, so the Inspector displays its properties. Then change the Width and Height under "Properties" to what you want:

undefined

Summary

Here are some key takeaways:

  • Drag objects from the Asset Browser to place instances in a room.
  • Toggle the grid by pressing G, and change its size in the Room Toolbox.
  • Use Auto-Tiling to make level editing faster
  • Use Filter/Effect layers to easily change the look of your game.
  • Change the Room Order to control which room opens first.

Build your game further with GameMaker Tutorials.

Happy GameMaking!