Free tile sets for Godot 4 and Tiled, drawn from a terrain description

To make a free autotile tile set for Godot 4 and Tiled, describe the terrain in a short JSON file (its fill, each edge's outline and highlight, a few variants) and run two Pixelbolt commands: they draw a 47-tile set, a test map of every tile, a Godot 4 TileSet with its terrain and a Tiled tileset for the Terrain Brush. On 8 November 2026, with Pixelbolt 0.13.0, Godot 4.7.2's terrain painter chose Pixelbolt's tile shape in all 1,915 cells it painted across six test maps for each of the four sets below, and Tiled 1.12.2 placed Pixelbolt's tile shape in every cell but lone ones (a cell with no terrain on any side has no terrain tile in Tiled, so you place it by hand). Each set took about 0.6 seconds to build (method and data).

We make Pixelbolt, a free, MIT-licensed pixel art toolkit for game makers and AI agents. No image model or online service draws these tiles: Pixelbolt's own code draws them from the description, offline, and the same description gives the same pixels every time with the same Pixelbolt version (our repeated builds were byte-identical).

Pixelbolt 0.13.0 · Godot 4.7.2 · Tiled 1.12.2 · Published 8 November 2026 · Last checked 8 November 2026 · On this page: Four free sets · Make your own · Godot 4 · Tiled · What the engines did · Other tools · When to use something else · How we tested

A pixel art snow tile set over its test map: a snow field with holes, strips, a lone tile, L and T shapes, on a brown preview background
The snow set, written for this guide, over the test map Pixelbolt draws with it: all 47 tile shapes in one map of 20 × 14 cells (holes, inner corners, strips and their ends, a lone tile, cells that touch only at a corner), on the description's preview background. Shown at 2×.

Four free sets to download

All four are 16 × 16 pixel tiles. Each zip holds the folder Pixelbolt's render command writes: the tile sheet (.png), the Godot 4 TileSet (.tileset.tres), the Tiled tileset (.tsx), a TexturePacker-style atlas (.atlas.json, with each tile's weight, and its collision where the set has it), one PNG per tile, the editable recipe, a preview page and a README; plus the description it was made from (.autotile.json) and the licence (MIT). The tiles are transparent outside the terrain: put a ground layer or a background colour under them. The background colours of the snow, meadow and ground test maps are only previews.

SetWhat it isTilesDownload
Snow (written for this guide)Top-down snow with a dark outline, a lit top edge and a see-through shadow under the bottom edge. 47 shapes × 4 variants; one variant, with a rock and a twig, comes up a quarter as often as each plain one.188snow.zip (78 KB) · sheet · .tres · .tsx · description
Meadow (Pixelbolt's example)Top-down grass with tufts on the top edge and a see-through shadow under the bottom edge. 47 shapes × 4 variants, one with flowers.188meadow.zip (79 KB) · sheet · .tres · .tsx · description
Ground (Pixelbolt's example)Side-view platformer ground: a grass cap, a lit wall, roots underneath. 47 shapes × 3 variants plus 10 slope tiles (45° and gentle, with the tiles under their low ends). Every tile has a collision shape, set under the drawn grass rather than the tufts above it.151ground.zip (71 KB) · sheet · .tres · .tsx · description
Shore (Pixelbolt's example)Water, sand and grass as three terrains in one set: 81 tiles for every mix of them at a tile's four corners, plus 9 variants of the plain tiles (two refills of each terrain, a lily pad, a shell and daisies). A transition shows only where two terrains meet in your map, so grass painted straight onto water gets no sand. The water is solid.90shore.zip (49 KB) · sheet · .tres · .tsx · description
The meadow set's test map: grass with flowers over dirt
Meadow over its test map, at 2×.
The ground set's test map: platformer ground with a grass cap, and hills of 45° and gentle slopes below
Ground over its test map, with the slopes' hills below it, at 2×.
The shore set's test map: a grass island ringed by sand in water, grass shapes in water and a strip of sand
Shore over its test map, at 2×: grass shapes straight onto water draw no sand between them. Tiled paints a map like this one; in Godot each terrain ends half a cell inside what you paint (see Godot 4).

Make your own in two commands

  1. Write the description. Here is the whole snow set (snow.autotile.json):
    {
      "format": "pixelforge-autotile",
      "version": 1,
      "name": "snow",
      "tile": 16,
      "palette": {
        "k": "#1b2433", "b": "#6f87a8", "S": "#a9bfd6", "s": "#d3e1ee", "w": "#f4f8fc",
        "i": "#bfe6f7", "r": "#4a4f5c", "R": "#7b8090", "u": "#4f4038", "c": "#0e162659"
      },
      "symbols": {
        "rock": [".rr.", "rRRr", ".rr."],
        "twig": ["r..", ".r.", ".rr"]
      },
      "terrain": {
        "seed": 6,
        "fill": {
          "color": "s",
          "speckle": [
            { "color": "w", "amount": 0.24, "size": 5 },
            { "color": "S", "amount": 0.12, "size": 4 },
            { "color": "i", "amount": 0.03, "size": 2 }
          ]
        },
        "edges": {
          "all": { "depth": 2, "jitter": 1, "size": 6, "bands": ["k", "S"] },
          "n": { "bands": ["k", "w"] },
          "s": { "depth": 3, "bands": ["k", "b"], "outside": ["c"] }
        },
        "round": 2,
        "inner": 1
      },
      "frame": "snow-{mask}-{variant}",
      "variants": [
        { "name": "a", "weight": 4 },
        { "name": "b", "weight": 4, "terrain": { "fill": { "seed": 11 } } },
        { "name": "c", "weight": 4, "terrain": { "fill": { "seed": 23 } } },
        { "name": "rocks", "weight": 1, "terrain": { "fill": { "seed": 37 } },
          "ops": [
            { "op": "stamp", "symbol": "rock", "x": 10, "y": 27 },
            { "op": "stamp", "symbol": "twig", "x": 19, "y": 35 }
          ] }
      ],
      "preview": { "background": "u" },
      "sheet": { "columns": 16 }
    }
    • palette names each colour with one character; c has an alpha byte (59), so the shadow is see-through.
    • fill is the inside of the terrain: a base colour and seeded speckle layers, each covering its amount of the tile in clumps about size pixels across.
    • edges describes each side (n, e, s, w, or all): depth is the margin between the tile border and the terrain, jitter lets the edge wander, bands colour it from the edge inward (an outline, then a highlight), and outside colours the margin beyond that edge (here, the shadow under the bottom edge). Grass sets add tufts.
    • round and inner round the outer and inner corners. variants redraw the fill with another seed or stamp details on it, and weight sets how often each turns up.
    Pixelbolt's art workflow notes list every field, including "mode": "cardinal" (16 tiles, sides only), "mode": "corner" (16 tiles for a dual grid), layers for transitions between two and four terrains, slopes and collision. This guide tested the 47-tile mode and a three-terrain set only.
  2. Run two commands with Node.js 20 or newer, in the folder holding the description:
    npx -y pixelbolt@0.13.0 autotile snow.autotile.json --out snow.recipe.json --preview snow-test-map.png
    npx -y pixelbolt@0.13.0 render snow.recipe.json --out snow
    autotile draws the set into an editable recipe and the test map into snow-test-map.png. render writes a new folder snow/ with snow.png, snow.tileset.tres, snow.tsx, snow.atlas.json, the editable recipe snow.pixel.json, one PNG per tile in frames/, a README and a preview page. Neither command overwrites its earlier output: after editing the description, add --force to both. Both commands together took about 0.6 seconds for each of the four sets on our PC (a Ryzen 9 7950X3D, Node.js 24.19.0), once npx had the package.
  3. Look at the test map for stray pixels and repetition. A terrain's own edges can't seam, so the compiler checks the joins that stamps and variants change and names pixels that break an outline with a Seam warning: there were none in the four sets.

Have your own drawing instead? Pixelbolt also builds a set from a small template you write as rows of characters, one per pixel (same notes; not tested for this guide). AI agents can do all of this through Pixelbolt's MCP server (pixel_compile, then pixel_render); see the README.

Use it in Godot 4

These steps use the TileMapLayer node, which needs Godot 4.3 or newer; we tested 4.7.2.

  1. Copy snow.png and snow.tileset.tres into one folder of your project. The TileSet finds the sheet by its file name, so keep the two together (move them in Godot's FileSystem dock, which updates the path).
  2. Add a TileMapLayer node and set its Tile Set to snow.tileset.tres. Set its Texture Filter to Nearest (or make Nearest the project's default texture filter) so the pixels stay sharp.
  3. In the TileMap panel, open the Terrains tab, pick the terrain snow and paint. Godot picks each cell's tile from its neighbours, and between a shape's four variants at random, by each tile's probability (the rock variant has 0.25).

Or paint from code, as our test did:

var cells: Array[Vector2i] = [Vector2i(0, 0), Vector2i(1, 0), Vector2i(2, 0)]
$Ground.tile_set = preload("res://tiles/snow.tileset.tres")
$Ground.set_cells_terrain_connect(cells, 0, 0) # terrain set 0, terrain 0 (snow)

Pixelbolt's game integration notes cover several sets in one TileSet, padding and scale.

Use it in Tiled

  1. In a map of 16 × 16 tiles, Map → Add External Tileset and pick snow.tsx (with snow.png beside it).
  2. In the Terrain Sets view, pick snow and paint with the Terrain Brush. Tiles with the same sides and corners (the same Wang id) are alternatives that Tiled picks between at random by their probability.

What the engines did with the four sets

SetTilesGodot 4.7.2: cells painted, all with Pixelbolt's tile shapeTiled 1.12.2: tiles placed, all Pixelbolt's shapeFiles on this page = files tested
Snow188393 in 6 maps365 in 6 maps; 28 lone cells left emptybyte-identical
Meadow188393 in 6 maps365 in 6 maps; 28 lone cells left emptybyte-identical
Ground151393 in 6 maps365 in 6 maps; 28 lone cells left emptybyte-identical
Shore90736 in 6 maps855 in 6 mapsbyte-identical

Other ways to get a tile set into Godot or Tiled

Every row but Pixelbolt's is from the tool's own page, read on 8 November 2026, not run by us.

ToolYou give itIt makesGodot 4 and Tiled filesPrice and terms
Pixelbolt (ours; its 47-tile and three-terrain sets tested above)A terrain description in JSON, or a small template written as text47-tile, 16-tile and corner sets, transitions between two and four terrains, slopesGodot 4 TileSet with terrain; Tiled .tsx with a Wang setFree, MIT
SpriteCookA text prompt, to a hosted AI modelA 15- or 17-piece set, and platformer and isometric sets; on paid plans the 17-piece base expands to 47 tilesOn paid plans: a Godot .tres with terrain (isometric sets: atlas only) and a Tiled .tsx (terrain with the 17-piece base) (its docs)Free plan: 40 credits every 30 days, and a tile set costs 12 with the default model; engine exports from the $8-a-month plan, before VAT; commercial use of what you generate on every plan (pricing)
BlobsmithSix base tiles you draw, or an RPG Maker A2 blockA 47-tile set, or a 16-tile sides-only setGodot 4 .tres with terrain and Tiled .tsx in the paid version$9.95 or more, with a commercial licence for your exports; a free browser Lite version that exports PNG only
TerrainForgeA finished tile sheet, in one of four layoutsNo art: it sets each tile's terrain bits and collisionGodot 4 .tres with terrain and collision; Tiled .tsx with Wang sets$5 or more; a free browser demo that exports up to 64 tiles; the page states no licence
AutotilerA 13-tile template you draw, or an RPG Maker A2 blockA 47-tile set or a 16-tile dual gridGodot 4 .tres with terrain and collision; Tiled .tsx with a Wang setFree, MIT (desktop apps and a web version)
TilePipeTile parts you draw, and a ruleset47-tile (and 16 or 256) setsA plain PNG or a Godot 3 tileset; no Godot 4 file; Tiled export plannedFree, MIT (last commit February 2023)

A selection: tools that make or wire a whole set and write Godot or Tiled files. Our searches also turned up other AI tile generators, and tools that, by the search summaries, wire or assemble tiles you draw, among them Blobsmith Autotile Wirer and TileBitTools (on the Godot Asset Library), better-terrain, Pentatile and Blobator; we didn't open their pages. SpriteCook also has a free Tileset Base Generator for blank 15- and 17-piece templates.

When to use something else

How we tested

To repeat it: data/README.txt has the commands. The searches this page answers, and what ranked for them on 8 November 2026, are in searches-2026-11-08.txt.

Licence

Pixelbolt is free and open source under the MIT licence. The snow set and its description were made for this guide and are MIT-licensed, with the same licence text as Pixelbolt (LICENSE.txt in each zip). Meadow, ground and shore are examples that ship in Pixelbolt's MIT-licensed npm package. Godot is MIT-licensed; Tiled is free software under the GPL.

More from Pixelbolt

All guides · The playground · The gallery · All comparisons · Pixelbolt home