Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Tilekit

A tilemap editor centered around pattern-based auto tiling · By rxi

Sweet!

A topic by Ponywolf created Jun 26, 2020 Views: 676 Replies: 8
Viewing posts 1 to 7
(+1)

I saw this via Twitter and had hoped you were going to release it. 

(+1)

The editor is awesome, but the ability to export the rule set to decorate random maps is (for me at least) the big feature. We use a Lua based engine, Solar2D. and I can see this being a very nice improvement to the work flow from some of our past projects. 

I bought it, exported a sample rule set to Lua and it generated an easy to follow set of if/then conditions. I've built those by hand before and it's not fun.

Next experiment is to run it through the maze generators in  rotLua and decorate some rogue-like maps :)   

Developer

Thanks for the kind words! Using the exported ruleset with procedurally generated levels is precisely the use case I had in mind when adding the feature. Feel free to share how your experimentation turns out!

(1 edit) (+1)

No problem. Thanks for making it! I built a quick loader for final maps for the engine we use, posted about that here...

https://itch.io/t/855802/tilekit-loader-for-solar2d

A couple of things that would be nice now that I've been playing with it:

  • I'd love to have the input map also (maybe optionally) save to the JSON. It would be nice to get to the original brush info, at least the way I'm using it
  • Same could be said for the pre-final map, but I don't know if it's as useful
  • If you were to do that, brush labels would be nice
  • [updated] Having the animations and tags w/ the rules would be helpful. 
  • In fact, a little table of tile width/height, spacing, anis and tags would be good for randomly generated maps

My use case would be to query the input maps x,y to figure out what the original tile type might be. (e.g . room, hallway, etc.)

Anyway, awesome work.

So, a little progress on random maps from exported rules. As I noted above, the animations are tied to the map file, so you'd have to recreate them or load a sample map and store the animation data. Also, this map is pretty light on the meta data, but I do have the original rogue-like data to comb through for walkable, doors, rooms, etc.

All in all, pretty happy with the results


Developer (1 edit)
I'd love to have the input map also (maybe optionally) save to the JSON. It would be nice to get to the original brush info, at least the way I'm using it

For using the input map with your project you can just use the .tkp file, which itself is JSON with the input map stored in the input_map field, and tileset information stored in the output_map field. I know this may mean having to load two files into your game, but the alternative of having the input map stored in all exported files would be an issue as in the majority of cases it would be unused; the file-size and game-loading time for the exported file would be doubled which could cause a problem with large maps. 

Regarding the animations and tags, these could also be loaded directly from the .tkp file. The intended work flow was to export the map just for the tags, animations and tileset data, and ignore the map data if it was unneeded. Let me know if I'm missing the issue here!

Looking good on the screenshot -- correct me if I'm wrong: do the indoors/outdoors happen to be swapped in it? What appear to be room shapes seem to be filled with grass.

That makes sense --I didn't even think about checking the .tkp file. I'll look into that. I don't think you are missing the issue--I was just imaging things like destructible terrain or anything that would make changes to the original map. The .tkp sounds like it would have anything needed for that.

Regarding the screenshot, I cut off the edges of the image, but there's a wall surrounding the whole map, and that's what's flipping the inside/outside.


I don't know if the rules are putting the wall there or how I'm rendering it. Either way, it's probably fixable on my end. Here's the ASCII version for what it's worth.


I have a project in the works where I'm hoping to use some of this, so I'm sure I'll bump into other ideas/issues.

Thanks for your time!

Developer
I don't know if the rules are putting the wall there or how I'm rendering it. Either way, it's probably fixable on my end. Here's the ASCII version for what it's worth.

Changing the default return value in the exported get_tile function from to 1 should fix this

Good to know.