en:toolworks:docs:apparatus:extended-tutorial

This is an old revision of the document!


Apparatus: Extended Guide

In this second tutorial, we will talk about using the Apparatus plugin inside Unreal Engine 5 in a deep. We will create a full fireman game. The goal of the player is to put out at least half of all the wood blocks until his house wouldn’t burn out. We will add music and other features like a menu, and finally, we will publish our mobile game on Google Play!

Just before going any further, make sure you have read (or saw) our previous tutorial.

Before creating a new game, a developer should clearly understand the features he’s going to add to the product and the workload he’s going to implement. We will create a list of all our objectives, so everyone will know the purposes of the tutorial, but we will not do anything else that is not included in the list (to save our time):

  • Create a menu with 3 buttons: levels, settings and quit. A button click should navigate the player to the according widget (except for quit, which must shut the game down).
  • Settings widget must contain 3 sliders:
    • the volume of music,
    • the field of view,
    • the controller sensitivity.
    • Plus the back button that will navigate the player back to the main menu.
  • In the levels widget, there must be 3 different levels. We will not save information about completed levels, so at the game first start, the player could select any level he (or she) wants. Click on the level button should immediately start a level.
    • Plus the back button that will navigate the player back to the main menu.
  • The level consists of different things, logics and mechanics:
    • The player can move around by using a joystick. Also, there are buttons like jump and snuff out.
    • The level is just a grass plain with a huge fence around and a wood building constructed with blocks at the center of the area.
    • The player is spawned in the building on the most top floor. While the player is spawned, a random wood block is lighted it up.
    • A Burning block causes nearby blocks to light up after several seconds of permanent neighborhood. Here some fire particles should be used.
    • After several seconds of burning, the block will be destroyed, which could cause the building to collapse.
    • The player should go through the building, find the epicenter of the fire and snuff it out.
    • If a certain percent of all wood blocks are destroyed (say, 50%), then the level is failed, - we should show the fail widget to the player and navigate him (her) back to the main menu.
    • The player should use the fire extinguisher to stop the fire, after several seconds of the using fire extinguisher on the block, the block will stop burning.
    • If all blocks have stopped burning, then the player completed the level. Show the win-widget to the player and navigate him (her) back to the main menu.
  • Music and sound design:
    • There should be 1 main menu music, and one game (level) music.
    • When the sound of fire kicks in (the player is close to the fire), then the level music is disabled (until the level end).
    • There must be sound space, so the player can find the fire by listening to sounds.
  • Finally, publish the game as a beta version on Google play.
  • Ignition factor - initially is set to 0.0. Every tick the block is contacted with the burning one, this counter will be increased. After the parameter has reached the 1.0 value, the block become burning.
  • Fire health - initially is set to 100.0. While the block is burning, this value is decreased, so, when the counter reaches the 0.0 value, the block is destroyed. When there become many destroyed blocks, the level will fail (as described earlier).
  • Extinguishing counter - the player can affect this parameter by using the fire extinguisher only when the Ignition factor is greater than 0 (so the player can snuff out only blocks that are going to burn). This value is initially set to 0.0. Every tick the user use the fire extinguisher on the block, this value is increased, so, when it reaches the 100 value, the block is no more burning (i.e. if it was burning, then it stops, if it was not, then it will never start).

Before doing anything else, make sure you have Apparatus installed on your UE 5 (see previous tutorial for details). In this tutorial, we will use UE version 5.0.2, but you can actually use any 5.0+ version you already have, because they do not have significant differences.

  1. Let’s create a New Project. Click the “Games” section on the left menu in Unreal Project browser. Select “FirstPerson” template, target platform should be “mobile”, let’s set the new project quality to “scalable”, disable “Started content” and name the new project anything you want, but we will use “FiremanHouse”, like this:
  2. After project creation, enable Apparatus plugin (via “Edit” → “Plugins” → “Installed” → “Workflow” → “Apparatus”, then restart Engine as it claims to). If you want to use your android phone for project test, plug it to the computer, enable USB debug, make sure that you have installed Android studio. Go to platforms and under the section “Quick launch” select the device you want the game to run on:
  • en/toolworks/docs/apparatus/extended-tutorial.1654794992.txt.gz
  • Last modified: 2022/06/09 20:16
  • by jispar