Pixel Game Maker MV

Pixel Game Maker MV

Not enough ratings
Top View Tutorials (Steps 1-13)
By Baz
This guide will serve as the written version of Pixel Game Maker MV's built-in top view tutorials.

PLEASE READ BEFORE CONTINUING:
  • If you are interested in only following this written version of the tutorials, it is still required to start the top view tutorial 'Step 1: Create a Scene' to create the tutorial project.
  • If the project is not created while the built-in tutorial is active, you will not have the same project this tutorial follows.
  • Refer to 'Step 1 (Part 1): Create Tutorial Project' for a step by step guide on creating the tutorial project.

Enjoy!
baz
2
   
Award
Favorite
Favorited
Unfavorite
Step 1 (Part 1): Create Tutorial Project
In this section we will be creating the built-in tutorial project that contains all the base resources and animations, but will also have none of the scenes or objects that normally appear. If you have already created this tutorial project you may skip this section and go to 'Step 1 (Part 2): Create a Scene'.

By the end of this section you will understand how to:
  • Create the top view tutorial project.
Steps to create tutorial project:
  • Start up Pixel Game Maker MV.
  • While on the default screen of the editor, click 'Help (H)' from the top menu.
  • Then click the 'Tutorials...' option.



  • Select 'Top Views' on the left column.
  • Select 'Step 1: Create a Scene' on the right column.
  • Then click 'Start' at the bottom.



  • The built-in tutorial will now begin.
  • Follow the steps from the tutorial to create the built-in project.
  • When the project has been successfully created go back to the top menu click 'Help (H)'.
  • Then click 'Stop Tutorial'.

Section wrap up:
  • You now have a 'SampleProject' that we can accurately follow the step by step tutorials.



  • You will know it's the tutorial project by the image on the right side.



  • Alternatively, this video will cover all 3 steps discussed in this section.
  • In the next section, we will continue with Step 1 and create a scene!

Step 1 (Part 2): Create a Scene
This section covers 'Step 1: Create a Scene' AFTER the tutorial project has been created. If you don't already have the top view tutorial project created, refer to the 'Step 1 (Part 1): Create Tutorial Project' section.

By the end of this section you will understand how to:
  • Create a scene.
  • Place tiles on scene.
After a new tutorial project is created:
  • Create game maps on the page called ‘Scenes’ found on this screen.
  • You can create multiple scenes per game. A single game is made by creating and linking these scenes together.
  • Let’s create a new scene.
  • Click the ‘Add Scene’ button.
  • Change the name to ‘Scene 1’.
  • Click the tileset’s + button.
  • Select ‘tile basic’ from the pull down menu.
  • Click ‘OK’.



  • The ‘tile basic’ we selected previously has been added.
  • Scenes are made by arranging ‘Tiles’ and ‘Objects’ found in this window.
  • Click and select the ‘Tile’.
  • Note: If the tile window is too small to view properly, you can use 'Control + Scroll the Mouse Wheel' to zoom in and out as needed.



  • Click in the ‘View’ to arrange a selected ‘Tile’ or ‘Object’ in the scene.
  • Note: The black frame marks the part of the screen that is actually visible. If the black border extends to the upper left, hold down the mouse wheel to move it.
  • Place these tiles so as to surround the edges of the screen.
  • First, place them from 0,0 to 12,0, while paying attention to the numerical values here. Note: You can place multiple tiles by clicking and dragging.
  • Place the tile at 0,0 - 0,9 in the same way.
  • Next, place it at 0,9 - 12,9.
  • Lastly, place it at 12,0 - 12,9.



  • Here’s an explanation on scene layers.
  • Anything shown in Pixel Game Maker can be differentiated using a function known as ‘Layers’.
  • As the name suggests, this function allows you to layer screens.
  • ‘Layer 1’ is where we just placed those tiles.
  • Click on ‘Layer 2’.
  • A new screen is displayed.
  • On this screen, we can register tiles that will show beneath Layer 1 just now.
  • In Pixel Game Maker, the further left the layer, the higher it’s shown.
  • Similarly, the further right the layer, the lower it’s shown.
  • Click the ‘Tile’ here.
  • Fill in ‘Layer 2’ with the selected tile.



  • Select ‘Layer 1’.
  • Right-click ‘Scene 1’, and click ‘Set as Start Scene’. Note: The first scene you create will automatically be added to the Start Scene.
  • Now we’ve created a scene!



  • Click ‘File -> Save Project’.
  • Click ‘Play Test’ in the upper right and confirm that everything is working as intended.

Section wrap up:
  • Did the screen you just created show up?
  • In the next step, we'll be placing a character into this scene.

Step 2: Create a Character
We’ll now create a character to place in the scene we made in Step 1.

By the end of this section you will understand how to:
  • Navigate the 'Animations' tab.
  • Create a controllable character object in the 'Objects' tab.
  • Place objects in the scene.
Let's get started:
  • First, click ‘Animations’.
  • You can register animations as character and object resources on this page.
  • In this tutorial, the wait information in the PLAYER folder is displayed.
  • Items registered in the ‘Motion’ window are motions the character can execute.
  • The motion’s direction and the type of animation are registered in the ‘Direction’ and ‘Frame’.
  • What we have opened right now is the motion information for ‘PLAYER > player > walk’.



  • You can adjust ‘Direction’ and ‘Frame’ settings registered in ‘Motion’ to create character animations.
  • Also, the view below shows a preview of the currently selected motion.
  • Let’s test one out.
  • Make sure ‘walk’ is selected in the motion window.
  • It’s hard to see like this, so click the collision visible button. Note: Wall and collision detection display will disappear.
  • Click the ‘Playback’ button here.
  • Click the ‘Stop’ button after it plays.
  • Did you see the character’s walk animation? This is the motion that will play when the player enters the ‘walk’ command in-game.
  • However, this alone doesn’t make for a controllable character that moves left and right with the arrow keys, so let’s register a way to call this animation.
  • Click the collision visible button again to restore it to normal.



  • Click ‘Objects’.
  • On this page, we’ll specify when the animation from before will get called.
  • Click the ‘Add Object’ button.
  • Change the object name to ‘Player’.
  • Select ‘PLAYER >> player’ from the pull down menu.
  • Check ‘Object Controlled by Input Device’.
  • Click ‘OK’.



  • Did boxes saying ‘Waiting’ and ‘Walk’ display in the action programs?
  • Let’s register player animation to each one of these boxes.
  • Click the ‘Waiting’ box.
  • The box details are shown on the right. Note: If you can’t see the box, adjust the action program window’s width.
  • ‘Waiting’ is the motion for no input.
  • Select ‘wait’ from the motions.
  • Check ‘Not Affected by Gravity’ just in case. Note: If this isn’t checked, scenes with gravity will exert an effect on it. In general, scenes created for top view projects don’t have gravity settings.



  • Next, click the ‘Walk’ box.
  • ‘Walk’ is the animation when character movement controls are input, as you saw in the animations tab.
  • The motion will be the default ‘walk’. Note: Select ‘walk’ if it isn't already selected.
  • Check ‘Not Affected by Gravity’ just in case.
  • Now we’ve finished the basic player control settings!



  • Lastly, we’ll set up the default display direction for the character.
  • Click the ‘Basic Settings’ tab.
  • Check ‘Set Default Display Direction’.
  • Enter ‘180’.



  • Let’s place the player.
  • Click ‘Scenes’.
  • Select ‘Scene 1’.
  • Click the ‘Object’ tab.
  • Click ‘Player’.
  • Click position 6, 4 in the view and place this character. Note: If you’re having difficulties finding the position, press and hold the mouse wheel to move the view.
  • Now we can control this character in this scene!



  • Click ‘File >> Save Project’.
  • Click the ‘Play Test’ button in the upper right to check if everything is working as intended.
  • For keyboard input, move the character with arrow keys.

Section wrap up:
  • Was the character displayed on screen?
  • In the next step, we’ll use this scene to learn about connecting different scenes.

Step 3: Create and Connect Another Scene
We'll now make a completely new scene and connect them together using the 'Transitions' tab.

By the end of this section you will understand how to:
  • Duplicate scenes.
  • Link scenes together using portals.
Let's get started:
  • To keep the basic settings the same, we’ll make the new scene by copying Scene 1 which we created previously.
  • Right-click ‘Scene 1’ and select ‘Copy’.
  • Right-click in an empty space and select ‘Paste’.
  • A new scene has been created.



  • Click the ‘Scene Settings’ button.
  • Change the scene name to ‘Scene 2’.
  • Click ‘OK’.



  • We’ll be connecting the scene, so the player character only needs to be in one of the scenes.
  • While ‘Scene 2’ is selected, click ‘Object’.
  • Right-click ‘Player’ and select ‘Delete’.
  • Select ‘Yes’.



  • Click the ‘Transitions’ tab.
  • On this screen, we’ll decide how the scene we’ve created will be connected.
  • There are two methods to connect screens: screen flow and portal transfers.
  • We’ll be using ‘Portal Transfer’ this time.
  • Click ‘Portal Transfer’.
  • Click the ‘Add Portal’ button.
  • A new portal has been added.
  • The portal information currently opened is for ‘portal_001’.
  • Portals are a function that link specific positions in scenes together.



  • First, let’s start with the setting for portal A.
  • Specify ‘ Scene 1’.
  • Make sure you’re on ‘Layer 1’.
  • Specify Position X as ‘120’.
  • Specify Position Y as ‘216’.
  • Specify Size X as ‘72’.
  • Specify Size Y as ‘24’.
  • Check ‘Match X Direction’s Position at Destination’.
  • Did you notice that a red border was displayed in the view below?



  • Let’s move on to settings for portal B.
  • Specify ‘Scene 2’.
  • Make sure you’re on ‘Layer 1’.
  • Specify Position X as ‘120’.
  • Specify Position Y as ‘0’.
  • Specify Size X as ‘72’.
  • Specify Size Y as ‘24’.
  • Check ‘Match X Direction’s Position at Destination’.
  • Make sure ‘Flip and Set for Portal B’ is checked.
  • Click all arrows on the bottom-most row to make them active (green).



  • Now we’ll remove tiles in specified places and adjust it so that the character can touch this portal.
  • Click the ‘Scenes’ tab.
  • Click ‘Scene’.
  • Select ‘Scene 1’.
  • Click ‘Tile’.
  • You can delete placed tiles using the ‘Eraser’ button here.
  • Click the ‘Eraser’ button.
  • Delete from 5, 9 - 7, 9 using the numerical values at the bottom left as reference.



  • Select ‘Scene 2’.
  • Similarly, click the ‘Eraser’ button.
  • Delete from 5, 0 - 7, 0 with the numerical values here as reference.



  • Now let’s check if we can travel between them.
  • Click ‘File >> Save Project’.
  • Click the ‘Play Test’ button in the upper right and confirm that everything is working as intended.

Section wrap up:
  • Were you able to progress to the next scene as you moved to the bottom edge?
  • Additionally, by deleting either the blue or red arrow between portals A and B, you can make it impossible to progress or return between portals.
  • In the next step, we’ll place simple enemies in the scene.

Step 4: Create an Enemy
Let’s create enemies to place in the scene.

By the end of this section you will understand how to:
  • Create simple enemy object.
  • Adjust 'Basic Settings' of an object.
  • Setup 'Destroy' action on an object.
  • Add a link from one action state to another.
Let's get started:
  • Creating an enemy is the same as creating a player.
  • Click ‘Objects’.
  • Click the ‘Add Object’ button.
  • Enter the object name as ‘Enemy 1’.
  • Select ‘ENEMY -> bonedog’ from ‘Select Animation’.
  • Change the object group to ‘Enemy Group’.
  • Click ‘OK’.



  • Unlike players, we need to create enemy action programs on our own.
  • It’s a little complicated but we’ll set them up step by step.
  • First, click on the ‘Action001’ box.
  • Change the action name to ‘Waiting’.
  • Change the motion to ‘walk’.
  • Check ‘Not Affected by Gravity’.



  • We’ll open up basic settings next.
  • Click ‘Basic Settings’.
  • This page is where we can set the parameters for this object.
  • We want to make an enemy that’s destroyed upon attack, so we’ll leave the HP as 1.
  • Uncheck ‘Temporary Invincibility After Receiving Damage’.
  • Also uncheck ‘Object Blinks During Invincibility’.



  • Click ‘Action Programs’.
  • Let’s create a setting that will destroy the enemy when it’s hit by a player attack (HP becomes 0).
  • Right-click and select ‘Add Action’.



  • Change the action name to ‘Destroy’.
  • Change the motion to ‘walk’.
  • Check ‘Not Affected by Gravity’.



  • Click the ‘Other Runtime Actions’ + button near the bottom.
  • On this screen, you can decide what kind of action will be taken when this action is reached.
  • This time we need to make the enemy disappear.
  • Check ‘Destroy Object’.
  • Click ‘OK’.



  • With action programs, connecting actions together with lines called ‘links’ will determine character behavior.
  • Let’s create a link from ‘Waiting’, which we created earlier, to ‘Destroy’.
  • Right-click ‘Waiting’ and select ‘Add Link’.



  • Left-click ‘Destroy’.
  • We’ve created a link!



  • Time to create conditions for moving to the Destroy action.
  • Click the + button for Other Condition Settings.
  • Click page 2.
  • Check ‘HP is 0’.
  • Make sure ‘Object Self’ is selected here.
  • Click ‘OK’.
  • We’ve finished setting it up so that when the enemy’s HP becomes 0, it’s destroyed!



  • Lastly, let’s place the enemy we created in this step on the map.
  • Click ‘Scenes’.
  • Click ‘Scene 1’.
  • Click ‘Object’.
  • Select ‘Enemy 1’.
  • Find 10, 7 and click.
  • Now the enemy is in the scene.



  • Click ‘File >> Save Project’.
  • Click the ‘Play Test’ button in the upper right and confirm that everything is working as intended.

Section wrap up:
  • Was the enemy displayed on screen?
  • In the next step, we’ll add attack motions to the player.

Step 5: Create an Attack to Use on Enemy
Let’s add an 'Attack' action state to our player object.

By the end of this section you will understand how to:
  • Add an attack state to the player object.
  • Add input detection between actions.
Let's get started:
  • We’ll make an ‘Attack’ action for the player.
  • Click the ‘Objects’ tab.
  • Make sure Player is selected.
  • Right-click and select ‘Add Action’.



  • Change the action name to ‘Slash’.
  • Change the motion to ‘slash’.
  • Check ‘Not Affected by Gravity’.



  • We want the attack to be able to connect from any motion, so we’ll add a link from all other motions.
  • First, right-click ‘Waiting’ and select ‘Add Link’.
  • Left-click ‘Slash’.
  • Check ‘The Following Has Been Input’.
  • Click the + button.
  • Make sure the ‘Control Key for Input’ is ‘A’.
  • Change ‘Trigger Type’ to ‘On Press’.
  • Click ‘OK’.



  • We’ll use these settings to connect to the slash attack from other actions.
  • Right-click ‘Link’ and select ‘Copy’.
  • Right-click ‘Walk’ and select ‘Paste Link’.
  • Left-click ‘Slash’.
  • Now pressing the A button will perform an attack from all other motions.



  • In its current state, however, the action doesn’t go back to other motions from an attack, so we’ll paste a link from ‘Slash’ to ‘Waiting’.
  • Right-click ‘Slash’ and select ‘Add Link’.
  • Click ‘Waiting’.
  • Click the + button under for Other Condition Settings.
  • Click page 2.
  • Check off ‘Finished Showing All Motion’.
  • Click ‘OK’.
  • We’ve finished the settings to make enemies be destroyed when the player attacks them!



  • Click ‘File >> Save Project’.
  • Click the ‘Play Test’ button in the upper right and check if everything is working as intended.
  • For keyboard input, press ‘W’ to attack.

Section wrap up:
  • Did the player execute the attack motion when you pressed the A button?
  • In the next step, we’ll set up ‘Shockwave' (bullet) that can damage enemies.

Step 6: Set Up Shockwave Produced by Attacks
We’re going to set it up so that when the Player performs the ‘Slash’ action, a shockwave bullet is unleashed.

By the end of this section you will understand how to:
  • Create a bullet object.
  • Fire a bullet.
Let's get started:
  • We’ll need to prepare a bullet to use for the attack first.
  • Click the ‘Objects’ tab.
  • Click the ‘Add Object’ button.
  • Change the object name to ‘Slash’.
  • Select ‘PLAYER > animation - swordVFX’ from ‘Select Animation’.
  • Click ‘OK’.
  • ‘Slash’ was added.



  • We’ll make it so that when this object is called, it displays the slash animation.
  • When the animation is finished, it causes an object to be destroyed.
  • Change the action name to ‘Slash’.
  • Check ‘Not Affected by Gravity’ so that the slash isn’t affected by gravity.



  • Right-click ‘Slash’ and select ‘Copy’.
  • Right-click to select ‘Paste Action’.




  • Select the ‘Slash(1)’ action that you’ve pasted.
  • Change the action name to ‘Destroy’.



  • Right-click ‘Slash’ and select ‘Add Link’.
  • Click ‘Destroy’.
  • Click the + button for Other Condition Settings.
  • Check that page 1 is selected.
  • Check ‘Contact with Tile’s Wall Detection’.
  • Click ‘Set All’.



  • Check ‘Hit an Attack Detection’.
  • Click ‘Set All’.
  • Make sure ‘Set by Object Group’ is checked under 'Set Attacking Object' setting.
  • Change the item to ‘Enemy Group’.



  • Click page 2.
  • Check ‘Going Off Camera’.
  • Click ‘OK’.
  • You can register multiple conditions simultaneously in this way.



  • With conditions, use AND when both are needed, and OR when one or the other is needed.
  • This time, we need to make it so that when the slash attack hits any one of these three, it is destroyed, so we’ll set it to ‘OR’.
  • Set them all to ‘OR’.
  • Now we’ve created a link to proceed to the next action when the motion display ends.



  • Click the ‘Destroy’ action.
  • Click the ‘Other Runtime Actions’ + button near the bottom.
  • We have to make the Slash disappear, so check ‘Destroy Object’.
  • Click ‘OK’.



  • We need to specify restore conditions for an object after it is destroyed.
  • Click ‘Basic Settings’.
  • The default is ‘Scene Changed’, so right now if we return from another scene, the slash will show again.
  • Let’s select ‘None’.
  • Now the slash attack is complete.



  • Next, we’ll create an attack action that calls this slash from the player.
  • In order to call out the slash animation we just created, set it as a bullet fired from the player.
  • Select ‘Player’.
  • Click the ‘Settings’ button. Note: The cogwheel icon in the upper right tab.
  • Check ‘Bullet Shot Settings’.
  • Click ‘OK’.



  • Was a ‘Bullet Settings’ tab added?
  • Click ‘Bullet Settings’.
  • Click the + button.
  • The bullet was added.
  • Select ‘Slash’ from ‘Select Bullet Object’.
  • Now when the Player fires the bullet, the slash animation will be played.
  • Click ‘Shoot in Specified Direction’.
  • Make sure ‘Shoot in Shooter Object’s Display Direction’ is selected.
  • Scroll down and check ‘Change Move Speed (%)’ under ‘Bullet Options’.
  • Change it to ‘600.00’.
  • Now the bullet settings are complete.



  • Select ‘Action Programs’.
  • Select the ‘Slash’ action.
  • Click the ‘Other Runtime Actions’ + button near the bottom.
  • Check ‘Fire Bullet’.
  • Select ‘Bullet001’ from ‘Select Bullet’.
  • Select ‘Connection Point’ from ‘Select Connection Point’.
  • Click ‘OK’.
  • We’ve set things up so that when the player attacks, a bullet is fired.



  • Click ‘File >> Save Project’.
  • Click the ‘Play Test’ button in the upper right and confirm that everything is working as intended.

Section wrap up:
  • Did the enemy disappear when attacked?
  • For the next step, we’ll be adding things like sounds and effects to this enemy.

Step 7: Insert Sequence
In this section we’ll be adding player attack effects and enemy destruction effects.

By the end of this section you will understand how to:
  • Show particles.
  • Add sound effects.
Let's get started:
  • Click ‘Objects’.
  • Click ‘Enemy 1’.
  • Right-click ‘Waiting’ and select ‘Copy’.
  • Right-click to select ‘Paste Action’.
  • Select the ‘Waiting(1)’ action that you’ve pasted.
  • Change the action name to ‘explosion’.
  • Change the motion to ‘damage’.



  • Click the ‘Other Runtime Actions’ + button at the bottom.
  • Click page ‘2’.
  • Check ‘Show Particles’.
  • From ‘Particles to Show’, select ‘PARTICLE > explosion S’.
  • Click ‘OK’.



  • Right-click ‘Waiting’ to ‘Destroy’ link and select ‘Copy’.
  • Right-click ‘Waiting’ and select ‘Paste Link’.
  • Click ‘explosion’.
  • Right-click ‘Waiting’ to ‘Destroy’ link and select ‘Delete’.
  • Right-click ‘explosion’ and select ‘Add Link’.
  • Click ‘Destroy’.



  • Click the + button for Other Condition Settings.
  • Select page 2.
  • Check ‘After Certain Time Passes’.
  • Set the time ‘0.3’ seconds.
  • Particles sometimes take time to properly appear, so be sure to adjust the Lifetime value until you get the right feel.
  • Click ‘OK’.



  • Let’s check what happens in this state.
  • Click ‘File >> Save Project’.
  • Click the ‘Play Test’ button in the upper right and confirm that everything is working as intended.



  • We’re done adding damage effects!



  • Time for us to assign attack and explosion sounds to these sequences.
  • Sound assignment and implementation is also done essentially by calling the sound from ‘Other Runtime Actions’.
  • Click ‘Slash’.
  • Click the ‘Slash’ action.
  • Click the ‘Other Runtime Actions’ + button.
  • Select page 3.
  • Check ‘Audio Playback’.
  • Select ‘SE -> 148_Windowopen1’ from the ‘Play Sound Effect’ pull down menu. Note: It’s near the top of the list.
  • Click ‘OK’.



  • We’ll set up the sound for when an enemy is destroyed in the same way.
  • Click ‘Enemy 1’.
  • Click the ‘explosion’ action.
  • Click the ‘Other Runtime Actions’ + button.
  • Check that page 3 is selected.
  • Check ‘Audio Playback’.
  • Select ‘SE -> 008_Blow4’ from the ‘Play Sound Effect’ pull down menu. Note: It’s near the top of the list.
  • Click ‘OK’.
  • Sound settings down as well!



  • Click ‘File >> Save Project’.
  • Click the ‘Play Test’ button in the upper right and confirm that everything is working as intended.

Section wrap up:
  • Did the sound play with the attack effect?
  • In the next step, we’ll create an enemy attack.

Step 8: Set Up Enemy, Enemy Attack
In this section we’ll make an action to have the enemy move freely until it finds the player.

By the end of this section you will understand how to:
  • Use Template Move Settings to move and stop objects.
  • Detect distance between objects.
Let's get started:
  • The enemy here will be an enemy that approaches a set distance upon spotting the player, stops, then runs into the player to cause damage.
  • Click the ‘Objects’ tab.
  • Select ‘Enemy 1’.
  • Now let’s register those settings to ‘Waiting’.
  • Click the ‘Waiting’ action.
  • Click the ‘Other Runtime Actions’ + button.
  • Click ‘Page 1’.
  • We recommend you use ‘Template Move Settings’ to create a configuration that allows for free movement.
  • Check ‘Template Move Settings’.
  • Select the entry called ‘Random Move’.
  • Click ‘OK’.
  • We’ve created an action that makes the enemy move randomly!



  • Try creating the following action.
  • Right-click in an empty space and select ‘Add Action’.
  • Change the name of the action to ‘Search’.
  • Select ‘dash’ from ‘Motion’.
  • Check ‘Not Affected by Gravity’ as well.



  • You will paste a link from ‘Waiting’ to ‘Search’.
  • Right-click ‘Waiting’ and select ‘Add Link’.
  • Click ‘Search’.



  • We’re going to create settings that tell the enemy to switch to search after it approaches to a fixed distance.
  • Click the ‘Other Conditions Settings’ + button for the link that's been added.
  • Here we will create a behavior where the enemy approaches and runs into the player if the player gets closer than 96 dots.
  • Click page 1.
  • Use ‘Distance with Other Objects’ to link distance to the action as a condition.
  • Check ‘ Distance with Other Objects’.
  • Select ‘Set Distance’.
  • Enter ‘96’ as the value.
  • Set as ‘Less Than Specified Distance’.
  • Select ‘Set by Object’.
  • Select ‘Player’ from the pull down menu.
  • Click ‘OK’.
  • This created a link that says to execute the search action if the player comes closer than 96 dots!



  • Let’s make a cancel condition so that when the player is more than 96 dots away, the enemy moves freely.
  • Right-click the link we just made and select ‘Copy’.
  • Right-click ‘Search’ and select ‘Paste Link’.
  • Click ‘Waiting’.



  • Click the link that was added.
  • Double-click ‘Distance with Other Objects’ in the ‘Other Condition Settings’ of the added link.
  • We can adjust an already registered condition by clicking like this.
  • Select ‘More Than Specified Distance’ instead.
  • Click ‘OK’.
  • Now we’ve created a link where if the player is more than 96 dots away, the enemy will move freely!



  • Next, let’s set up the ‘Search’ action.
  • Click ‘Search’.
  • For search, we’ll create an action where the enemy goes closer to a player they’ve discovered.
  • Click the ‘Other Runtime Actions’ + button.
  • Check that page 1 is selected.
  • We recommend using ‘Template Move Settings’ to create a configuration where the enemy moves near the player.
  • Check ‘Template Move Settings’.
  • Select ‘Move Towards Nearby Player’.
  • This creates a setting where the enemy will automatically move towards the player.
  • Click ‘OK’.
  • That's the flow for an enemy attack done!



  • Next we’ll add a setting for the enemy to die if attacked by the player regardless of timing.
  • Right-click the link connecting ‘Waiting’ and ‘explosion’ that was created in Step 5 and select ‘Copy’.
  • Right-click the ‘Search’ action and select ‘Paste Link’.
  • Click ‘explosion’.
  • Now you’ve set up the enemy attack!



  • Click ‘File -> Save Project’.
  • Click the ‘Play Test’ button in the upper right and confirm that everything is working as intended.

Section wrap up:
  • Were you able to check that the enemy attacks after it approaches a certain distance?
  • With the current settings, the player doesn’t die, so it doesn’t really give the impression you’ve been hit by an attack.
  • That’s why in the next step, we’ll be creating settings for the player damage.

Step 9: Create Player Death Information
In this section, we’ll create player damage settings. We’ll set things up so that HP is visibly reduced when an attack is taken, and the player is destroyed when HP becomes 0. We’ll be using the simplest method to create these settings.

By the end of this section you will understand how to:
  • Set objects HP.
  • Set invincibility and blink settings.
  • Setup a HP Gauge on player and enemy.
Let's get started:
  • Click the ‘Objects’ tab.
  • Click on ‘Player’ if it’s not already selected.
  • Click the ‘Basic Settings’ tab.
  • Here the current player HP settings are displayed. The default value is 1.
  • Let’s make both the HP and Max HP here ‘20’.
  • Now the player's HP is 20!



  • Next up are damage settings.
  • Let’s look at the ‘Invincibility Duration After Receiving Damage’ Settings.
  • Check ‘Temporary Invincibility After Receiving Damage’.
  • Set invincibility duration to ‘0.50’ seconds.
  • Check ‘Object Blinks During Invincibility’.
  • Set the blink interval to ‘0.1’ seconds.
  • Now we’ve created a setting where the player blinks after taking damage and becomes invincible while blinking.
  • Next, we’ll create the player’s death setting.
  • Check ‘Forcibly Destroy On No HP’ in ‘Others’.
  • Now you’ve created a setting where the Player is destroyed when their HP reaches 0. Note: To introduce player destruction effects, creating an action the same way you did for attacks is the most eloquent game-making solution. Try it!



  • Let’s test the game!
  • Click ‘File -> Save Project’.
  • Click the ‘Play Test’ button in the upper right and confirm that everything is working as intended.



  • Did the player blink when you took damage, and was destroyed when their HP went down to 0?
  • While these are working as intended now, we can’t see the Player’s current HP with the current settings, so let’s make an HP gauge.
  • Click the ‘Display and parent-child relationship’ tab.
  • Click the + button.
  • Double-click Show Variable Value ‘(Not Set)’.
  • Select ‘Player’.
  • Select ‘HP’.
  • Click ‘OK’.



  • Click ‘Preview’.
  • See the green square in the middle of the screen?
  • That’s the HP gauge that displays player HP.



  • Let’s adjust the HP gauge appearance a little.
  • Enter ‘100’ in Scale (%) X.
  • Enter ‘28’ in Scale (%) Y.
  • Enter ‘-24’ in Offset Y.



  • Now let’s check what kind of display we end up with.
  • Click ‘Preview’.
  • Was a green HP gauge displayed above the player? That means HP gauge is done.
  • Click ‘OK’.



  • Let’s apply the same setting to ‘Enemy 1’.
  • Click ‘Enemy 1’.
  • Click the + button.
  • Double-click Show Variable Value ‘(Not Set)’.
  • Select ‘Enemy 1’.
  • Select ‘HP’.
  • Click ‘OK’.



  • Now let’s check what kind of display we end up with.
  • Click ‘Preview’.
  • See another green square appearing over the enemy? That’s the HP gauge that displays Enemy 1’s HP.



  • Currently, the color of the gauge is the same as an ally, so let’s change that.
  • Double-click the green portion in ‘Gauge Color’.
  • Set the red gauge value to ‘255’.
  • Change the green gauge value to ‘128’.
  • Change the blue gauge value to ‘0’.
  • Click ‘OK’.



  • Let’s adjust the HP gauge appearance a little.
  • Enter ‘60’ in Scale (%) X.
  • Enter ‘28’ in Scale (%) Y.
  • Enter ‘-24’ in Offset Y.



  • Now let’s check what kind of display we end up with.
  • Click ‘Preview’.
  • Did an orange HP gauge appear over Enemy 1? The HP gauge is done!
  • Click ‘OK’.



  • Now you’re done with the player HP gauge settings.
  • Click ‘File -> Save Project’.
  • Click the ‘Play Test’ button in the upper right and confirm that everything is working as intended.

Section wrap up:
  • Were the player’s and enemy’s HP gauges displayed over each of their heads?
  • In the next step, we’ll try creating a game over screen.

Step 10: Create Game Over
In this step we’ll make it so that a game over sequence displays with the end of the game as its condition. Along the way, there will be explanations of essential functions like switches and variables, which may be a little hard to understand. If you’re having trouble, feel free to repeat this step as much as you like to get a clearer picture.

By the end of this section you will understand how to:
  • Create a Game Over sequence.
Let's get started:
  • We’ll define the game over condition as the player’s HP reaching 0.
  • First, let’s create an object that will end the game when this end condition is fulfilled and cause the sequence to appear.
  • Click the ‘Objects’ tab.
  • Click the ‘Add Object’ button.
  • Change the object name to ‘Clear/Game Over’.
  • Select ‘GIMMICK/UI > telop’ from animation.
  • Check that ‘Player Group’ is selected.
  • Click ‘OK’.



  • Now let’s make an action here in that same way.
  • We’ll make the only currently existing action into an object that shows the ‘default state’ before the game is cleared.
  • Click the ‘Action Programs’ tab.
  • Change the action name to ‘Default State’.
  • Select ‘Don’t Set’ for Motion.
  • Check ‘Not Affected by Gravity’.



  • Next, create a new action.
  • Name it ‘Game Over’.
  • Specify ‘gameover’ in Motion.
  • Check ‘Not Affected by Gravity’.
  • Now the ‘Game Over’ action is ready to go!



  • Let’s create a link.
  • Right-click ‘Default State’ and select ‘Add Link’.
  • Click ‘Game Over’.



  • Click the ‘Other Condition Settings’ + button for the link.
  • The game over condition will be when the player’s HP reaches 0.
  • Variables will be especially helpful when we want to change conditions using numerical values like this.
  • Click page 2.
  • Check ‘Switch/Variable Changes’.
  • Select ‘Set Variable as Condition’.
  • Select ‘Player’ from the top most pull down menu.
  • This time we want to use HP as the condition, so select ‘HP’ from the pull down menu.
  • You’ll use something called an ‘operator’ to specify the player’s HP as being depleted.
  • Let’s use ‘<= (less than or equal to)’ this time.
  • The constant should stay as ‘0’.
  • Now the settings registered in this link will dictate that when the player HP goes to 0, move to the next action.
  • Click ‘OK’.



  • Let’s try it out.
  • You can’t check things when the object’s not on-screen, so let’s place it in the scene.
  • Click the ‘Scenes’ tab.
  • Select ‘menu scene’.
  • ‘menu scene’ is the scene placed by default, and is a scene that can be registered as the UI or a sequence to be layered over regular scenes.
  • Click ‘Object’.
  • Select ‘Clear/Game Over’.
  • Click inside ‘View’.
  • Change Default X Position to ‘156’.
  • Change Default Y Position to ‘112’.



  • Select ‘Scenes’.
  • Select ‘Scene 1’.
  • Click the ‘Scene Settings’ button.
  • Select ‘menu1’ in ‘Default Menu Screen’.
  • Click ‘OK’.



  • Register it to ‘Scene 2’ in the same way.
  • Click ‘Scene 2’.
  • Click the ‘Scene Settings’ button.
  • Select ‘menu1’ in ‘Default Menu Screen’.
  • Click ‘OK’.



  • As the current player HP is set to ‘20’, the game over condition can’t be easily met.
  • Just for testing purposes, we’ll change player HP to ‘1’.
  • Select the ‘Objects’ tab.
  • Select ‘Player’.
  • Click ‘Basic Settings’.
  • Enter ‘1’ for player HP.
  • Temporary settings are done!



  • Click ‘File >> Save Project’.
  • Click the ‘Play Test’ button in the upper right and confirm that everything is working as intended.

Section wrap up:
  • Was the ‘gameover’ sequence played when you got hit by the enemy?



  • Once you’re done checking, remember to restore player HP to 20.

Step 11: Create Game Clear
Now let’s make our game cleared condition. We’ll set the condition for clearing the game as defeating three enemies.

By the end of this section you will understand how to:
  • Learn about 'Resources' tab.
  • Combine variables and switches to make conditions.
Let's get started:
  • Click the ‘Resources’ tab.
  • On this screen, you can upload and manage images, BGM, and sound effects to be used in-game.
  • Click on ‘Variables’.
  • This is the list of variables currently registered to this game.
  • Since ‘defeating three enemies’ is the game clear condition, we need to be able to save the game state of three enemies being defeated.
  • We’ll register a variable that adds ‘1’ per enemy defeated.
  • Click the ‘Add Variable’ button.
  • Was something called ‘Variables001’ added?
  • Change the name to ‘Enemies Destroyed Count’.



  • Now we'll register a setting that adds ‘1’ to the Enemies Destroyed Count with each defeated enemy.
  • Click the ‘Objects’ tab.
  • Click ‘Enemy 1’.
  • Click the ‘Action Programs’ tab.
  • Click ‘Destroy’.
  • Click the ‘Other Runtime Actions’ + button near the bottom.
  • Select page 2.
  • Check ‘Change Switch/Variables’.



  • Select ‘Change Variable’.
  • This is where we’ll register the setting mentioned previously.
  • Select from ‘Project Name Common', the third item in the topmost pull down menu.
  • Select ‘Enemies Destroyed Count’ from the bottom pull down menu.
  • Select the same operator as before. This time, select ‘+= (add)’.
  • Enter ‘1’ as the constant.
  • This setting makes the Enemies Destroyed Count go up by ‘1’ per enemy destroyed!
  • Click ‘OK’.



  • Other runtime actions are executed in order starting from the top, so we’ll set the variable to be changed before ‘Destroy Object’ is executed.
  • Click and drag the ‘Variable’ action above ‘Destroy Object’.



  • Next, we’ll configure a function known as a switch.
  • Click the ‘Resources’ tab.
  • Select ‘Switches’.
  • Variables are for anything that can be expressed with numerical values, while switches detect whether something is on or off.
  • This time, the question for our switch is ‘were three enemies defeated?’.
  • We’ll create a switch that is ‘off’ if they haven’t been defeated, and ‘on’ if they have.
  • Click the ‘Add Switch’ button.
  • Was an item called ‘Switches001’ added?
  • Change the name to ‘Enemy Destroyed’.



  • Click the ‘Objects’ tab to return to our objects again.
  • Select ‘Clear/Game Over’.
  • Now we’ll add an action and name it ‘Game Clear’.
  • Specify ‘gameclear’ in Motion.
  • Check ‘Not Affected by Gravity’.



  • Now we can finally create a link to the game clear.
  • Right-click 'Default State' and select ‘Add Link’.
  • Click ‘Game Clear’.
  • Click the ‘Other Condition Settings’ + button for the link.
  • Since you’ve just created a switch for the game clear, the condition will be if the Enemy Destroyed switch is on.
  • Click page 2.
  • Check ‘Switch/Variable Changes’.
  • Check that ‘Set Switch as Condition’ is selected.
  • Select ‘Project Name Common’, third from the top.
  • Select ‘Enemy Destroyed’ from the bottom pull down menu.
  • Click ‘OK’.
  • Now we’ve created a transition to the game clear!



  • There’s no action that can toggle the switch yet.
  • We’ll register it in a new object.
  • Click the ‘Add Object’ button.
  • Change the object name to ‘Enemies Destroyed Count’.
  • Make sure animation is ‘Not Selected’.
  • Make sure ‘Player Group’ is selected’.
  • Click the minus button to remove ‘Enemy Group’ from the ‘Allow Attack Detection Hits for Object Groups’ setting.
  • Click the minus button to remove ‘Enemy Group’ from the ‘Allow Wall Detection Impacts for Object Groups’ setting.
  • Click the minus button to remove ‘Default Tile’ from the ‘Allow Wall Detection Impacts for Tile Groups’ setting.
  • Click ‘OK’.



  • Change the name of the current action near the top to ‘Default Action’.
  • Check ‘Not Affected by Gravity’.



  • Create a new action and name it ‘Clear’.
  • Make sure you check ‘Not Affected by Gravity’ like above.



  • Now, link ‘Default Action’ to ‘Clear’.
  • Click the ‘Other Condition Settings’ + button for the link.
  • This object will be the ‘three enemies defeated’ condition.
  • Make sure that page 2 is selected.
  • Check ‘Switch/Variable Changes’.
  • Select ‘Set Variable as Condition’.
  • Select ‘Project Name Common’, third from the top.
  • Select ‘Enemies Destroyed Count’.
  • Select ‘= (equals to)’ as the operator.
  • Enter ‘3’ as the constant.
  • Click ‘OK’.
  • We’ve finished the operation that says ‘when Enemies Destroyed Count reaches three’!



  • Select the ‘Clear’ action.
  • Click the ‘Other Runtime Actions’ + button near the bottom.
  • Check that page 2 is selected.
  • Check ‘Change Switch/Variable’.
  • Check that ‘Change Switch’ is selected.
  • Select ‘Project Name Common’, the third option from the topmost pull down menu.
  • Select ‘Enemy Destroyed’.
  • Click ‘OK’.
  • Now you’ve configured things so that the ‘Enemy Destroyed’ switch will change to ‘on’!



  • Let’s place this object in the scene.
  • Click the ‘Scenes’ tab.
  • Select ‘menu scene’.
  • Click ‘Object’.
  • Click ‘Enemies Destroyed Count’.
  • Click somewhere inside ‘View’ and place it.
  • There’s no animation registered to this object so it won’t be shown anywhere. You can place objects as ‘hidden functions’ in this way.



  • Lastly, let’s place 2 more enemies on screen.
  • Select ‘Scenes’.
  • Select ‘Scene 1’.
  • Select ‘Enemy 1’.
  • Place two enemies inside the view.
  • Now we should be done creating the game clear condition.



  • Let’s check things out.
  • Click ‘File >> Save Project’.
  • Click the ‘Play Test’ button in the upper right and confirm that everything is working as intended.

Section wrap up:
  • Did the game clear sequence play when you defeated all the enemies?
  • This was a complicated step, so if you’re unclear about anything, repeat it as many times as you like!

Step 12: Insert Text
In this step, we’ll be making closing credits that will play when the game is finished.

By the end of this section you will understand how to:
  • Use fonts.
  • Add text resources.
  • Use 'Show Scrolling Text'.
  • Use Transitions tab.
Let's get started:
  • Click the ‘Resources’ tab.
  • Click the ‘Fonts’ tab.
  • Here you can register fonts to be used in-game.
  • You can make fonts from an image, or use TrueType fonts.
  • For this time, we won’t be registering a new font. Instead we’ll use ‘font003’ for the text.



  • Click the ‘Text’ tab.
  • Add text to be displayed here.
  • Click the ‘Add Text’ button.
  • Did you notice a resource called ‘text001’ was added?
  • Click it again and change the name to ‘Clear’.
  • Enter text to be displayed here and register it as a resource.
  • Select ‘font003’ as the default font.
  • Specify ‘12’ for the character spacing.
  • Specify ‘20’ for line spacing.
  • Next we’ll enter the message we want to display in this area!
  • Enter:
    Sample Game KADOKAWA
  • Our text is now ready.



  • We’ll create an object to scroll the message you just made.
  • Click the ‘Objects’ tab.
  • Click the ‘Add Object’ button.
  • Change the object name to ‘Clear Message’.
  • Make sure animation is ‘Not Selected’.
  • Check that ‘Player Group’ is selected.
  • Click the minus button to remove ‘Enemy Group’ from the ‘Allow Attack Detection Hits for Object Groups’ setting.
  • Click the minus button to remove ‘Enemy Group’ from the ‘Allow Wall Detection Impacts for Object Groups’ setting.
  • Click the minus button to remove ‘Default Tile’ from the ‘Allow Wall Detection Impacts for Tile Groups’ setting.
  • Click ‘OK’.



  • Change the displayed action’s name to ‘Clear Message’.
  • We’ll make it a sequence that scrolls the text like in typical end credits.
  • Click the ‘Other Runtime Actions’ + button near the bottom.
  • Click page 3.
  • Check ‘Show Scrolling Text’.
  • Text display in Pixel Game Maker is called as a runtime action. Be aware that unlike other objects, no animation is registered.
  • Now, let’s tweak the details.
  • Select ‘Clear’ from text resources.
  • Did you see the information earlier being shown?
  • Next, we’ll determine its motion.
  • Make sure the scroll speed is set to ‘1.00’.
  • Make sure ‘Bottom to Top’ is selected.
  • For Text Display Area, set X to ‘312’ to match our current camera size.
  • For Text Display Area Y, we want the resource to scroll from offscreen to offscreen, so enter ‘360’.
  • Change the background transparency value to ‘100%’.
  • Specify ‘0’ for top/bottom text margin.
  • Specify ‘0’ for left/right text margin.
  • Select ‘Center’ for horizontal alignment.
  • For position, make sure “Center of This Object’ is selected.
  • Scroll down and check ‘Show on Foreground’.
  • Click ‘OK’.
  • We’ve created text that will scroll on the screen!



  • Now we’ll create a scene to display this text.
  • Click the ‘Scenes’ tab.
  • While we can display it over the game clear sequence using the method in Step 13, this time, we’re going to try another method where we change the scene itself and then play the sequence.
  • Click the ‘Add Scene’ button.
  • Enter ‘Clear’ as the scene name.
  • Click ‘OK’.



  • Select ‘Clear Message’ from your objects, and place it in the view.
  • Change default X position to ‘156’.
  • Change default Y position to ‘112’.
  • Now the scene for the scrolling message is ready.



  • Let’s set the condition to transition to this scene.
  • Click the ‘Transitions’ tab.
  • The screen flow shows a list of currently created scenes.
  • First, put both ‘Scene 2’ and ‘Clear’ into the view. You can add scenes in the view by clicking and dragging.
  • In the screen flow, you can link each screen just as you link objects.
  • Right-click ‘Scene 1’ and select ‘Add Link’.
  • Click ‘Clear’.
  • Link done!



  • Next, let’s decide on our switch conditions.
  • Select ‘Change If All Conditions Are Met’ as the screen change condition.
  • Uncheck ‘No Input’.
  • Uncheck ‘The Following Has Been Input’.
  • Check ‘Previous Scene Ends’.
  • Now there’s a link to transition to the clear screen when the previous scene ends.



  • We’ll create a link from ‘Scene 2’ with the same settings as well.
  • Right-click the link and select ‘Copy’.
  • Right-click ‘Scene 2’ and select ‘Paste Link’.
  • Click ‘Clear’.



  • Now, end the previous scene.
  • Click the ‘Objects’ tab.
  • Select ‘Clear/Game Over’.
  • Right-click and create one new action.
  • Change the action name to ‘To Clear’.
  • Click the ‘Other Runtime Actions’ + button near the bottom.
  • Select page 3.
  • Check ‘End Scene’.
  • Click ‘OK’.
  • Now we have an action that will end this scene!



  • Next, we’ll configure this scene to end after the clear sequence.
  • Link the ‘Game Clear’ action to the ‘To Clear’ action.
  • Click the Other Condition Settings + button.
  • Click page 2.
  • Check ‘Finished Showing All Motion’.
  • Click ‘OK’.
  • Now we have an action that proceeds to the ‘To Clear’ action after the clear sequence and ends the scene!



  • Now let’s test it out to see if the text really plays.
  • Click ‘File >> Save Project’.
  • Click the ‘Play Test’ button in the upper right and confirm that everything is working as intended.

    .

  • Did the text play after the game clear sequence?
  • If you don’t want the text to scroll, select ‘Show Text’ in ‘Other Runtime Actions’.
  • Finally, we’ll learn about scene change sequences.
  • Click the ‘Transitions’ tab.
  • Click the link going from ‘Scene 1’ to ‘Clear’.
  • Click the ‘Sequence Before Changeover’ tab.
  • Select ‘Black’ from the ‘Screen Sequence’ pull down menu.
  • Select the link from Scene 2 to Clear and change its ‘Sequence Before Changeover’, ‘Screen Sequence’ to ‘Black’ in the exact same way.
  • This adds a sequence for when the scene changes over!



  • Let’s check things again.
  • Click ‘File >> Save Project’.
  • Click the ‘Play Test’ button in the upper right and confirm that everything is working as intended.

Section wrap up:
  • Did it fade to black before the text scrolled?
  • This is the end of the tutorials relating to operating the software.
  • Lastly, let’s check out the window where you can change the settings for Pixel Game Maker itself.

Step 13: Changing Game Settings
In this section we will provide a brief overview of the Project Settings.

By the end of this section you will understand how to:
  • The different options inside Project Settings.
Let's get started:
  • Click ‘Settings’.
  • Click ‘Project Settings’.



  • In Project Settings, you can change this game’s tile size, screen resolution, display settings, and more.



  • Click ‘Control Key Management’.
  • On this page, you can configure control keys for Xbox controllers, PS4 controllers, and keyboard and mouse.
  • Double click the item you want to change and the individual settings will open.



  • Click ‘Sound’.
  • On this screen, you can adjust the master volume for sounds registered to this project.
  • Volume control for individual sounds has to be done by calling the object’s ‘Other Runtime Actions’.



  • Click ‘Game Data’.
  • Here you can register a game banner and game information.
  • You can also change the title and author name, so don’t forget to enter these before you publish your game to other users.



  • Lastly, click ‘Player Character Management’.
  • For multiplayer, this is where you can assign characters to players (controllers).
  • Give it a shot when you’re making multiplayer games.



  • Click ‘OK’.
Section wrap up:
  • That’s the end of the tutorial!
  • There are many more functions provided in Pixel Game Maker MV outside of the ones introduced here!
  • Don’t be afraid to play with these features and make a game that’s uniquely yours.

8 Comments
Thura Jun 10, 2024 @ 2:52am 
Your tutorial is bugged for me and no ‘Waiting’ and ‘Walk’ boxes display in the action programs. I created my own boxes for both but without a tutorial to create these from scratch nothing works
Baz  [author] Mar 7, 2023 @ 8:20am 
@bryanthomson31 you need to do the jump in the animation itself. So you increment pixels upward in the animation frames for the jump motion.
bryanthomson31 Mar 6, 2023 @ 11:39pm 
how to create a jump in top down view? I'm building a beat em up.
CANADIAN RAGE Nov 1, 2022 @ 1:34pm 
Thank you
Dare Master Aug 21, 2022 @ 7:35am 
Update: I had created a side view project by mistake. Once I created a top down project I was able to select "tile basic".
Dare Master Aug 21, 2022 @ 4:38am 
I am creating a new scene but I don't see "tile basic" as a tileset option. Can anyone suggest a good equivalent from the current tilesets?
Captain Avion Apr 16, 2022 @ 7:17am 
Never mind I just need to move the arrow to the red intersection.
Captain Avion Apr 16, 2022 @ 6:53am 
I got my character to shoot an arrow but its coming out at the wrong spot!

PS I love your guide.