Tutorial: Beginner Course

Welcome to the world of ACTION GAME MAKER!

This tutorial is highly recommended as your first step to learn the controls.
Let’s create a simple jumping action game using the tutorial project.

Although the text is only in Japanese, we have also prepared a video tutorial. Feel free to use it.

STEP 1: Introduction

  1. Load the tutorial project
    First, launch ACTION GAME MAKER.
    Once it starts, click the “Sample Project” button at the top.

  1. Select “Platformer Tutorial”.

  2. When asked whether to add the project to the project list, select “Download”.

  3. After pressing the Download button, a loading screen will appear for a while.
    During this time, the tutorial project data is being copied, so please wait.
    The tutorial project includes all sample assets and is nearly 1GB in size, so copying may take a few minutes.

  4. Once loading is complete, the tab will automatically switch to “Projects”, and “TutorialProject” will appear in the list. Select it and click “Edit”.

  5. If the following screen appears, you’re all set.

STEP 2: Understanding the Editor Interface
Now, although many windows are displayed, you only need to remember these four for now.

Top-Left Window [Scene]:

This shows a list of all objects placed in the current game scene (referred to as [Nodes] in Godot). Layers for tilemaps, objects, and other elements are grouped together here.

Bottom-Left Window [FileSystem]:


This displays a list of assets ready to be used in the game. In this tutorial, we will use the assets located here.

Center Window [Editor View]:


This is the preview screen of the current [Scene].
You can already see that characters and tiles have been placed to some extent.

Right-Side Window [Inspector]:


This displays detailed data and properties of the selected object. Generally, you will create the game by adjusting the data of the [Node] selected in the [Scene] here.

STEP 3: Let’s Build a Game Using Sample Objects.

Now, let’s start making a game using the included assets.
Please look at the central screen. A character and the ground are already placed there. This character is controllable, so let’s begin with a test play right away.

By pressing the :play_button: button in the upper-right corner of the screen, a new window will open, allowing you to start the test play.
The controls are simple:

  • With a controller: Move using the left stick, and jump with the A button.
  • With a keyboard: Move using the ← and → keys, and jump with the Z key.

If you fall off the stage, you can reset by pressing the F5 key.

Once you’ve tested it out, please close the test play window.

STEP 4: Let’s Place Tiles
The stage is too small as it is. Let’s start placing tiles to expand it.

  1. First, look at the [Scene] window in the top-left corner.
    The diamond-shaped icon represents a tile (formally called a TileMapLayer node).
    The default base file is named [Base], so please select it.

Once selected, a grid should appear in the central view, and a new window called [Tile Set] should appear at the bottom center. If the grid is not visible, click the grid icon in the top-right corner of the [Tile Set] window.

  1. The Tile Set window is like a palette for selecting tiles to place. While you can select tiles one by one, let’s use the Terrain (AutoTile) feature. Switch the tab in the top-left corner of the window from [Tiles] to [Terrain].

    After switching, you’ll notice there are already three AutoTiles available:
  • Terrain Set 0 (top): The default ground-style tiles already placed
  • Terrain Set 1 (middle): Rock-style tiles
  • Terrain Set 2 (bottom): Ruin-style tiles
    Choose the tile style you prefer.
  1. Once selected, drag across the central [Editor View] to draw tiles. The tiles should automatically fill in to match the already placed ones.
    If it doesn’t work properly, check the following:
  • In the [AutoTile Selection View], is the :sun: icon [Connect Mode] selected?
  • In the [AutoTile Selection View], is the :pencil: Paint tool selected at the top?
    image
  • In the toolbar at the top of the [Editor View], is the :up_left_arrow: Selection Tool active? Make sure it’s not set to Move Tool or another tool.
    image
  1. Start drawing the tile map in the central view.
    You can also remove tiles by right-clicking. You can switch between drawing tools at the top of the [Tile Set] window. From left to right:
    image
  • Paint: Fill one cell at a time
  • Line: Draw straight lines
  • Rectangle: Draw filled rectangles
  • Bucket: Fill areas
  • Picker (Eyedropper): Re-select an already placed tile
  • Eraser: Remove placed tiles. Can be used together with Line, Rectangle, or Bucket.
    Note that the Eraser and Picker are toggle tools and remain active until you deselect them, so be careful.
  1. Now that you’ve drawn the ground, the tiles originally placed should have grass on them.
    Let’s decorate the newly placed tiles with grass.
    Grass is drawn on a separate TileMapLayer.
    In the [Scene] panel, select [BaseCover]. Since grass is also AutoTiled, choose your preferred grass style and continue building your map to your heart’s content.

STEP 5: Let’s try placing sample objects.
This project includes several sample objects, so let’s proceed to place them.

  1. Expand the [sampleobject] folder in the [File System] window at the bottom left. The files in .tscn format contained within are the sample objects. Now, let’s place the objects.

  2. First, specify which layer the object will be placed on. Look at the [Scene] window at the top left. Objects for AGMaker must be placed as children of their respective layers.
    Select the Player node under SceneLayer>BaseLayer. This ensures that when placing objects, they will be added as children of the Base layer.

  3. Next, actually place the object on the scene. Let’s start by placing a coin.
    Simply drag and drop Object_Coin.tscn from the File System window at the bottom left to the desired location in the central scene.

  4. If you want to change the position, select the placed Coin and move it with the mouse. If it was accidentally placed in a layer other than a child of BaseLayer, select the Coin in the Scene window and move it to become a child of BaseLayer. Once placed, test the game again by pressing the :play_button: button in the top right or the F5 key. If the player collides with the coin, the coin should disappear, and the coin count in the top right should increase by one.

  5. Now, try placing other objects as you like. There are 13 types of sample objects in total. Give it a try!

Sample Object Overview

Filename Description
Enemy_Kanibo A minor enemy that only moves left and right. It can be defeated by stepping on it.
Object_block A block that can be broken with a headbutt.
Object_Coin Coins. They are collected when touched by the player.
Object_Floorlamp A lamp that can be broken by jumping on it.
Object_Goalflag Triggers an animation when touched by the player.
Object_Jumpboard Launches the player upward when stepped on.
Object_Platform_horizontal, Object_Platform_vertical Platforms that move left/right (up/down) periodically.
Object_Sampleplayer The player character.
Decoration_Statue A statue used for decoration.
Decoration_lamp, Decoration_torch Lamps with light sources. They automatically generate shadows.
UI_Coin_counter Displays the number of coins held.

Once placed, try testing the game by clicking the :play_button: icon. Testing can also be launched via shortcut using the [F5] key.
By placing objects on the stage like this, the game is completed.

STEP 6: Customize the Object

Next, let’s customize the sample object.

  1. Click “Open in Editor” on the Player object :clapper_board:.
    image

  2. A new tab named “Object_Sampleplayer” should appear in the [Editor] screen, and the character should be displayed. If you look at the [Scene] screen, you will see that nodes are arranged in a tree-like structure, just like in the first scene.
    Each node contains information necessary for this player object.

  3. Try selecting the [MoveAndJumpSettings] node. Do you notice that the inspector window on the right has switched to show information for this node?
    As the name suggests, this node allows you to configure the keys used for movement input, movement speed, jump force, and more for this object.
    The fields for left and right movement speed are set to 300 by default, but let’s change this to 600.

  4. Try testing the game by pressing :play_button: or the [F5 key]. The character’s speed should have doubled. Once confirmed, please set the speed back to 300.

How to View Visual Scripting in STEP7

  1. Next, let’s learn about Visual Scripting. Click the :scroll: icon located to the right of “Player” in the top-left corner of the screen.
    image
  2. The Visual Scripting should now be displayed in the [Editor] screen. This is the program that controls the player’s actions.
    The boxes labeled with terms such as [Idle] or [Move] indicate the actions to be executed. These boxes are called States.
    The lines connecting the States represent the conditions under which the actions switch. These lines are called Links.
    Now, try clicking [Jump]. The action settings for [Jump] will be displayed in the [Inspector] on the right side.
  3. By default, each setting is collapsed, so click to expand them and view their contents.
    Animation settings are used to configure the animation to be played. Here, “009_Jump” is specified.
    Action settings allow you to configure basic actions such as jumping. Here, it is configured to perform a jump.
    In “Other Execution Actions,” you can select and add actions from various available actions. This is similar to event commands in RPG Maker. Here, “Play Sound” is configured.

STEP8 Let’s Create a New Action

  1. Now, let’s add a new action. This time, we’ll create a sliding action. Right-click on the empty space near the [move] state box and select “Add State.” A new state named [State001] should have been created. Select [State001] and look at the inspector window on the right side.

  2. First, let’s rename it. In the inspector window, select the title field at the bottom and change it to [Sliding].

  3. Next, let’s set the animation to play during the action. Expand the “Assigned Animation” section and click on the . A dropdown list of registered animations will appear. Since this is a sliding action, select [028_sliding].

  4. Finally, let’s set the action. Expand the “Action Settings” section. Here, you can configure movement speed, jump, and other settings.
    We want to prevent the dash from being canceled, so check the box for “Do not accept movement input during action.” When this option is enabled, input controls will be disabled during this state.
    Since we want to move quickly, set the value of <Change Left/Right Movement Speed (%)> to 200. This will allow movement at double speed during this action.

  5. Next, let’s make the character forcibly move in the direction it’s facing. This setting is a bit deeper. Expand “Other Execution Actions,” then expand “ArrayActions” and click the “+ Add Action” button.

  6. The action addition window will appear. Select “Move in Direction Facing” from the third option and add it. There are several options available, but you can keep the default settings. Click the “Add” button at the bottom to add it.
    With this, the sliding state is now complete.

STEP 9: Link States Together

Now that the sliding action is ready, it is not connected to any other state, so you cannot transition to this state. Therefore, let’s create a link from [Move] to [Sliding].

  1. Right-click the [Move] state and select “Add Link”.

  2. A line will appear; drag it to the [Sliding] state you created earlier and left-click. The line should now connect [Move] to [Sliding].

  3. Next, set the transition condition. Click the link you created and check the Inspector window. Enable the “On Input” property. A new field will appear; click “Array[InputCondition]” to expand it, then press the [+ Add Input] button.

  4. A field labeled “” will appear. Click it and select “New InputCondition”.

  5. The “” field will change to “InputCondition”. Click it again to expand. Input key settings will appear; configure them as shown below. Now, while in the [Move] state, pressing the B button (X key on the keyboard) will immediately transition to [Sliding].

  6. Now you can slide, but there is no link to transition from [Sliding] to another state. Without one, the character will slide forever. Therefore, let’s create a link from [Sliding] to [Idle]. As before, right-click the [Sliding] state and create a link.

  7. Connect it directly to the [Idle] state on the right.

By the way, have you noticed that there are two [Idle] states with the same name on the left and right? Actually, these two are the same; the [Idle] on the right is a shortcut. Shortcut states have an :up_right_arrow: mark in the top-left corner of their name.
image

Visual Script links must always go from left to right, so shortcuts are useful when returning to earlier states. This helps prevent your links from becoming a tangled mess like spaghetti.

  1. Now, let’s use a condition other than input. Select and expand “Array[Conditions]” under “Other Conditions”, then click [+ Add Condition].

  2. The “Add Condition” window will open. Select the “Time Elapsed” condition and set the value to 0.3 seconds. This condition is located near the bottom, but you can also find it by typing in the search bar at the top. Press the Add button to complete the setup.

  3. Now, test the play by pressing :play_button: or the F5 key. If configured correctly, pressing the X key while moving should trigger a slide, and after 0.3 seconds, it should return to the idle animation. (Note: If the movement key is still held down, it will immediately transition back to moving.)

If it doesn’t work, please check the following:

  • No links are connected from [Idle] or [Jump], so transitions won’t occur. Press the key while moving.
  • If pressing the key doesn’t trigger a transition, check the link from [Move] to [Sliding].
  • If the link is correct but nothing happens, check if an animation or execution action is set in the [Sliding] settings.
  • If you cannot return from sliding, check the link from [Sliding] to [Idle].

If it works correctly, you’re done. You have now created a complete script.

You may customize the dash speed or transition time to your liking, or add sound effects or voice lines to the dash using the “Play Sound” action under “Other Execution Actions”.

You could also connect a link from Idle to enable sliding from a stationary position.
You could connect from Jump or Fall to enable mid-air sliding. (In that case, link back to Landing instead of Idle, otherwise you won’t be able to land.)

This concludes the tutorial. To exit the Script screen, switch the top tab to [2D].

Action creation is a combination of transitions and conditions. Depending on how you combine them, you can achieve various results, so looking at the scripts of other sample objects might be educational.

There is one important note:
When opening a Visual Script, always ensure you have selected the tab of the object that holds that Visual Script.

As a Godot feature, you can open the Script screen regardless of which tab is active. However, since Visual Script animation settings and variable settings read information from the currently open tab, some settings may become unavailable if the wrong tab is selected.

In this tutorial, we have explained the basic operations, but there are still many features we have not covered. I imagine everyone has different goals for what they want to do with “ACTION GAME MAKER.”
Therefore, we have divided the subsequent tutorial courses into two main categories:

1. Graphics Course
For those who want to animate characters they have drawn themselves!

2. Scripting Course
For those who want to create various movements and systems using default characters!

3. Expression Enhancement Course
For those who want to add cool, Godot-style expressions!

You can start with any course, but if you are creating a game from scratch, we recommend completing all courses in the end.