Tiles and linear levels

This weekend I managed to make some progress.

Tiles

The graphics for the levels in the game consist of so called tiles that are arranged on a grid.

Last week I updated Unity (the software that I use for development) from version 5.6 to 2018.2, somewhere in between they added a helpful tiling functionality allowing you to script individual tiles.

Based on the system outlined in this blogpost I implemented a rule based tile that displays the correct image based on its neighbouring tiles. The rules make sure that all edges and corners line up correctly.

So instead of the walls looking like this:

They now look like this:

Linear level generation

The level generation system creates unique levels for each playthrough. You could generate completely random levels, But they could be very frustrating to play. In order to have some more control over the experience I’m using predefined modules.

Initially the system combined modules in any way it could fit them together, that resulted in levels without a clear path. For now I changed it to only create completely linear levels. I might make them less linear in the future, but this seems like a better base for developing gameplay.

Minor changes

Characters are now moving via the Physics system. It will allow me to influence their movement using physics forces. For example: an explosion might throw characters through the air.

For camera movement I’m now using Cinemachine, it seems a little more fluent then my earlier solution.

Coming week

With the tilesystem and level generation on track I want to focus on designing more graphics and gameplay:

  • One set of full resolution tiles
  • Improved enemy behaviour
© 2018 Willem Schots