Hello Mario Engine Tutorials

Getting Started

If you haven't already, visit the Hello Mario Engine Website, download the latest source code, and import the engine into GameMaker: Studio. The engine is incompatible with the free version of GameMaker: Studio, but if you still have the "Standard" version of GameMaker: Studio 1.4 from back when it was freely available, you can still use that! If you need help with GameMaker: Studio itself, visit the GameMaker: Studio Documentation to learn about how the program works, and look at all of the built in functionality it contains. If you need additional help, the GameMaker Community is a great place to ask your GameMaker questions, and your questions will be answered there faster than on most other places.

Common Questions

  • Am I allowed to make games with this engine?

    Yes, you can use this engine to release open and closed source games, and you can even release customized versions for other people to use.

  • What objects can be scaled in the room editor?

    Only the collision objects can be scaled, excluding the slopes. Scaling the slopes, or any other object may result in unexpected behavior.

  • What do I do if I want to change the size of Mario's sprites?

    Change the x origin to half the width of the sprite, and change the y origin to the height of the sprite minus 32.

  • Do you allow people to make "clones" using this engine?

    This engine was designed to be easy to expand upon in order to encourage you to add new things to it. Of course, if you want to make a clone, that is also allowed. What you do with this engine is up to you.

  • I found a bug! That means that this engine is buggy!

    Please report it on the Hello Mario Engine's issue tracker.

  • Can I use the Steam version of GM Studio?

    The Steam version is the same as the normal version, so you can.

Creation Codes

Some objects in this engine require creation code when you place them in rooms. To do this, simply right click on the object, and choose creation code. What is needed can be found commented in the create events of these objects. Below, you will see a complete list of objects in this engine that use creation code.

Object Reason
obj_levelmanager To choose the music and time limit.
obj_bganimator To select what order to animate backgrounds.
obj_autoscroll Whether you want it to follow Mario's y value.
obj_block To choose what comes out.
obj_block_hidden To choose what comes out.
obj_block_triple To choose what comes out.
obj_block_triple_hidden To choose what comes out.
obj_block_spiked To choose what comes out.
obj_block_winged To choose what comes out.
obj_block_large To choose what comes out.
obj_noteblock To choose a powerup to come out when you bounce on it.
obj_noteblock_warp To select a destination.
obj_warpnoteblock_hidden To select a destination.
obj_messageblock To choose the message to display.
obj_lakitu To set the boundaries for where he appears.
obj_lakitu_ball To set the boundaries for where he appears.
obj_angrysun To set the boundaries for where he attacks.
obj_boocircle To set its rotational direction.
obj_netkoopa To set its starting direction.
obj_netkoopa_red To set its starting direction.
obj_netspark To set its starting direction.
obj_rotodisc To set its rotational direction.
obj_firebar To set its rotational direction.
obj_firebar_large To set its rotational direction.
obj_ballnchain To set its rotational direction.
obj_magikoopa To set the boundary for where he appears.
obj_diacannon To set its direction.
obj_bombcannon To set its direction.
obj_sidecannon To set its direction.
obj_classicbowser To set where Bowser's flames start generating.
obj_pipeenemygenerator To choose its direction and enemy.
obj_bulletgenerator To set the boundaries for where it generates.
obj_stormgenerator To set the boundaries for where it generates.
obj_cheepgenerator To set the boundaries for where it generates.
obj_levelpanel To select a name, destination, and number.
obj_levelcastle To select a name and destination.
obj_mappipe To select a destination.
obj_mushhouse To select the powerups in the boxes.
obj_mapbro To select a prize powerup.
obj_platformtimed To set the time limit.
obj_movingrope To choose how long the rope is.
obj_movingrope_touch To choose how long the rope is.
obj_bubble_item To choose the item in it.
obj_veggie_sprout To choose the item in it.
obj_postchange To select Mario's new position.
obj_warproom To select Mario's new room and position.
obj_speedmarker To set a speed for the marker.

Comments