A dynamic and editor-friendly metadata system for 2D tilemap tiles in Unity 6.DOCUMENTATION AVAILABLE HERE: https://justwizhhh.github.io/Unity-Tile-Properties-Docs/‘Tile Properties’ is an API plugin made for Unity 6, made to allow level designers and programmers to store and configure custom metadata for large lists of tiles in a tilemap! Inspired by similar features seen in level editing software like Tiled, the plugin expands on Unity’s default “2D Tilemap” package without overwriting any of the package’s own scripts, and can be installed in any pre-existing game projects without conflicts emerging.'Tile Properties' is ideal if you are looking to add more immersion into your 2D tile-based game, through unique VFX, SFX, or collision effect triggers based on the tile that the player is currently colliding with. The plugin could also be useful if you are looking to add procedural/automated gameplay elements to your game, such as pathfinding or procedural level generation!Features:Expandable lists of "tile property" variables that can be applied to large lists of tiles at onceNumerous base C#/Unity variable types supported out of the boxA variety of tools and functions to access these tile properties through the inspector and through code as wellIntegrated inspector tools and gizmo-based displays for debuggingAsset packs used in example screenshots: 'Pixel Crawler - Free Pack' by Anokolisa'Simple 2D Pathfinder' by Kwaaktje'Tile Properties' provides the user with a scalable system to store tile metadata variables using Scriptable Objects. The two main components of the plugin are as follows:The 'TilePropertiesList':This is the ScriptableObject that stores references to metadata variables for a specific list of 'TileBase' objectsCreate a list object with 'Right-Click -> Create -> 2D > Tile Property List'The 'TilePropertyManager':This is the script that keeps track of which tile property lists can be loaded and changed inside of a sceneThe TilePropertyManager is a singleton, meaning all other objects in the scene will be able to access it with easeCreate by clicking '+ -> Create Empty', and attach the 'TilePropertyManager' class to the objectAdditional help and code examples can be found on the documentation!




