Skip to content

Level editor

Puzzle Match Kit provides a visual editor that allows you to change the settings of the game and create new levels easily and without the need of programming. You can access the editor by selecting the Editor option located in the Tools/Puzzle Match Kit menu. The editor is divided in three areas and we are going to cover every one of them in the following sections.

There are two other useful options in the menu, Delete PlayerPrefs and Delete EditorPrefs, that are shortcuts for deleting your PlayerPrefs and your EditorPrefs respectively. They are particularly convenient when you are testing your game and need to start from a clean state.

All the game files are stored in JSON format and serialized via Full Serializer. The game configuration file is by default stored in the PuzzleMatchKit/Resources folder and named game_configuration.json. The level files are by default stored in the PuzzleMatchKit/Resources/Levels folder and named X.json, where X is the corresponding level number.

Game settings tab

The Game settings tab allows you to change the general settings of the game. At the top of the Game settings tab, we have the menu, in which you can create a new game setting, open an existing one or save the current one:

In the Score area, you can set the default score given to the player when a tile entity (block, blocker or booster) explodes. You can also set different values for specific types of tile entities.

In the Lives area, you can change the following properties of the lives system:

  • Max lives: The maximum number of lives the player can have.
  • Time to next life: The time left (in seconds) until a free life is given to the player.
  • Refill cost: The cost in coins to fill the number of lives to its maximum.

In the Coins area, you can change the number of coins initially given to the player.

In the Boosters area, you can set the number of matches needed for a booster to appear. If two or more boosters share the same number of matches, a random one will always be selected from them.

In the Purchasable boosters area, you can set the amount and cost of the in-game purchasable boosters.

In the Continue game area, you can change the following properties of the continue system (i.e., after he loses a game):

  • Extra moves: The number of extra moves given to the player when he purchases additional moves.
  • Moves cost: The cost in coins of the extra moves.
  • Extra time: The number of extra seconds given to the player when he purchases additional time.
  • Time cost: The cost in coins of the extra time.

In the Resolutions tab, you can define the following values:

  • Default zoom level: The default zoom to apply to the game camera. This will affect how big the game board will be in relation to the screen's width.
  • Default canvas scaling match: The default value to apply to the canvas scaler component's Match property.

In addition, you can define new resolution overrides. A resolution override is a set of different values for the aforementioned properties that will be applied on the devices with the specified resolution (width and height). Why is this needed? The reality of multi-device development is that it is basically impossible to define a single resolution that will work well across every single device available on the market. The best we can do is to define sensible default values that work well across a wide range of devices and then have special cases for devices with very exotic aspect ratios. As a practical example of this, we provide reasonable default values in the kit together with two overrides, for the iPhone X and the Samsung Galaxy Note 8 respectively, because the default values do not work very well on them. Should you find a device where the default values do not look good, you can simply add a new override for that particular device (also, please feel free to send the override to us so that we can add it as a default part of the kit).

In the Player preferences tab, you can set the current progress of the game. You can also delete your PlayerPrefs and your EditorPrefs. This is particularly useful during testing.

Level editor tab

The Level editor tab allows you to create your own levels for the game. At the top of the Level editor tab, we have the menu, in which you can create a new level, open an existing one or save the current one:

In the General area, you can change the following settings of the level:

  • Level number: The number of the level.
  • Limit type: The type of limit of the level. Can be Moves (the player will have a fixed amount of moves to accomplish the goals of the level) or Time (the player will have a fixed amount of seconds to accomplish the goals of the level).
  • Moves: The number of moves/seconds the player has to accomplish the goals of the level.
  • Penalty: The penalty to apply to the player (in moves/seconds) when he misses a match.
  • Star 1 score: The score needed to unlock the first star of the level.
  • Star 2 score: The score needed to unlock the second star of the level.
  • Star 3 score: The score needed to unlock the third star of the level.

In the Goals area, you can specify the goals that the player needs to accomplish in order to complete the level.

In the Available color blocks area, you can specify which color blocks are available when generating new random color blocks on the level.

  • Collectable chance: The probability of a newly-generated block to be a collectable one; that is, a flower. It is a number between 0 and 100.

In the Level area, you can design the layout of your level.

About tab

The About tab contains useful links to the kit's documentation and licensing information.