Skip to main content

Introduction

TilemapExtended is a flexible tool, which extends Unity's own 2D grids and tilemaps with data storage and grid methods. Whereas Unity's tilemaps provide a great way to design and style your tile based 2D games, handling data is up to you:

  • Want to know which objects are currently on which tile?
  • Want to apply a movement multiplier when crossing certain terrain?
  • Want to know if there are enemy units on neighbouring tiles?
  • Want to know how far a certain movement range will get you?

TilemapExtended provides this functionality for you by

  1. letting you define the data you need for your tiles,
  2. link them to your tiles,
  3. and by offering a range of utility functions to make the most use of your data.

Overview

With TilemapExtended, the workflow could look like this:

  1. Define your data by extending the CellData class. Store anything you like.
  2. Define rules by assigning your data object instances to one or multiple tiles in the editor.
  3. Add the TilemapExtended game object. It can auto-detect tilemaps and sort them by layering order.
  4. Upon entering playmode, TilemapExtended creates a data store, detects your grid type and you're all set.

workflow image

Since your data is stored as ScriptableObject instances, you can edit and reassign easily at any time.

note

In the grid, every data cell can be modified individually without affecting other cells at runtime!

Prerequisites

This tool is intended to be used with Unity's internal grid, tilemaps and tiles which are therefore necessary if you wish to manage your data in the easiest way. However, most methods are also provided in static utility classes for hex grids as well as for rectangular grids, which can be used alternatively if you don't want to store your data using TilemapExtended and only wish to access the methods most useful to you.

About

Hi there, I love coding and problem solving with a passion!
After coming home from my day-job as a C# software engineer in an international company, I enjoy dedicating most of my free time into other passions of mine:
Turn-based strategy, RPGs and creating my own little Unity games (and music). I've been working with grids and tilemaps for a few years now and started developing this system as a flexible system for my own projects in order to save time. Maybe this is of use to you as well!

If anyone wants to get in contact with questions, recommendations, bug reports or anything else:

Email me at J.pawlowitz@t-online.de and I will get back to you as soon as possible :)