A downloadable asset pack

Buy Now$9.99 USD or more

603 tiles at 16x16. 11 complete 47-mask autotile sets, 18 objects, 2 animated sets — and a battlement that runs unbroken along a wall of any length, in every direction.

The battlement is the pack

A castle is not a grey biome. It is a SILHOUETTE, and at 16 pixels the whole silhouette lives in the two rows where the wall turns over.

3 of the 11 autotile sets here are crenellated: a sunlit merlon cap, its own shaded front, and the notch cut down between them. Two rows, because one cannot say "a block standing up" — a single lit row between a pale walkway and a dark face is read as the boundary between those two rather than as a thing in its own right.

And the rhythm is keyed on the map, not on the tile. A merlon falls every 4 pixels of your MAP, so a wall ten cells long carries ONE battlement rather than a stutter every 16 pixels. It runs on the east and west edges as well as the south, because a curtain wall is a closed circuit and a pack that only drew one face would give you a castle fortified in two directions and a pavement in the other two.

Elevation, measured before anything was drawn

Whether a raised surface reads as raised is governed by how far its tone sits from the ground below, measured against how much the ground's own texture already varies. This series drew a nineteen-tile cliff set and cut it after six iterations, every one reading as a trench — and the cause was not in the cliff. Measured from the pixels those tiles actually emitted, its wall body sat at the same brightness as the ground it stood in: a separation of 0.004 against a floor of 1.0.

So this pack chose its value structure before it drew anything. The bailey is two adjacent earth tones with every brighter mark kept sparse, which holds its whole tonal swing to 25 levels of brightness. Against that:

  • the sunlit wall walk, brightness 157 — separation 2.43
  • the beaten-earth bailey, brightness 95
  • the shadowed curtain masonry, brightness 57 — separation 1.52

A curtain wall has two sides and you will paint both, so the same pair is measured against the turf OUTSIDE it as well: 1.86 for the walk and 2.23 for the masonry. All four clear the floor. The pair this series cut is kept as a negative control in the same function, so the check cannot quietly stop measuring.

What is in it

  • 11 complete 47-mask autotile sets — 517 tiles. Curtain wall on the ward, on turf and rising out of the water; tower and keep masonry on all three; a roofed building; the ward meeting the turf and the ditch; the ditch cut in the turf; and a cross-pack boundary onto Verdant 01's original grass.
  • 24 fills — 4 variants each of grazed sward, moat water, beaten-earth bailey, dressed wall walk, shadowed curtain masonry, lead roof.
  • 18 objects, 46 prop tiles. Portcullis, oak gate doors, rampart stair, arrow slit, trebuchet, scaling ladder, archery butt, weapon rack, pavise, draw well, water trough, hay cart, barrels, firewood, anvil, stocks, moat weed and lily raft.
  • 2 animated sets, 16 frames — a burning brazier and a rippling wall banner.
  • A sample map that ships as DATA — a PNG, editable JSON that rebuilds that PNG byte-for-byte, and a Tiled .tmx you can open and change.

517 of 603 tiles — 86% — are transitions. A castle is almost entirely boundaries, and a terrain pack without them is a swatch book.

Every prop ships twice

Each object comes as a transparent copy for your own ground and as a copy already standing on ours, with that surface's own derived contact shadow between the two. That is why 18 objects are 46 files, and it is a design decision rather than padding: a contact shadow has to darken something, so one drawn on transparency reads as a hole in your courtyard — but a pack that shipped only the grounded half would strand every buyer who has their own ground.

Three engine importers, and what checked each one

A shipped importer is a claim about a program we do not run. The only honest way to hold it is to run it, so each of these was verified by making the engine itself count and measure.

  • RPG Maker MZ — a full A2 autotile sheet at 48px, the sheet MZ's own autotile brush paints with rather than a page of loose stamps. 48 ÷ 16 = 3, an integer, so the upscale is pure pixel replication with no resampling. Every shape MZ can request is composed back out of the sheet using the engine's own FLOOR_AUTOTILE_TABLE, parsed from the runtime rather than copied, and compared byte-for-byte: 528 of 528 shapes identical.
  • Godot — the .tres was loaded headless in Godot 4.7.2 and Godot itself was made to COUNT: all 603 tiles built, every atlas source resolved, every multi-cell footprint exact.
  • Tiled — every .tsx was opened and rendered by Tiled 1.10.2's own tmxrasterizer and compared to the sheet you are downloading, tile by tile. The .tmx sample map renders pixel-for-pixel identical to the shipped PNG: 835,584 pixels compared, 0 differ.

Stated precisely: the MZ sheet composes correctly against MZ's own autotile table — not "verified in RPG Maker MZ", which is not installed on the machine that builds these packs. Godot is a headless load and resource inspection, not the editor GUI and not a running game. Tiled is the CLI renderer, not the editor.

What is proven, and what is not

  • Exact grid. Every one of the 603 tiles is a whole number of 16x16 cells and every sheet a whole multiple of it, checked in both directions.
  • Palette lock. Every opaque pixel is one of the 64 declared colours. Not "mostly" — every pixel. This is what makes tile 603 match tile 1.
  • No anti-aliasing. Alpha is strictly binary. No halo, no soft upscale, no resampling.
  • Autotile completeness. All 11 sets carry all 47 masks — 517 slots, enumerated against the mask table rather than counted by hand. A set missing three is broken in the one map cell that needs them.
  • The two copies agree. The art ships twice on purpose, as loose PNGs and as packed sheets, and all 603 were compared to each other and are identical.

⛔ Seamlessness is NOT claimed as proven. A statistical wrap test catches hard edge artefacts about 97% of the time and the commonest real defect only about 7%, because that defect damages the very interior the test calibrates against. So every tile's wrap boundary is measured against its own interior, every 4×4 repetition is rendered and reviewed by eye, and the fields ship in proof/repetition/ so you can look for the grid line yourself. A weaker true claim beats a strong false one.

Paint it in layers, bottom up

Every autotile set here is named X_on_Y, and that name is a statement about what lies under X. In an autotiled map only ONE side of any boundary is ever drawn: the material laid on top. So paint turf everywhere, then the ditch cut into it, then the ward laid inside the ditch, then the walls and towers on top. Paint it the other way round — cutting a hole in the ward where the keep will stand — and the ward becomes an edge around that hole, correctly draws its own outside material, and you get a line of grass between your castle and its moat. The shipped sample map is built in exactly these four layers, and the Readme says so.

The series

Verdant 13 shares its palette and its 16px cell with every Verdant pack before it — zero new colours — so a castle map sits beside an Overworld one without a recolour. One autotile set is a boundary onto Verdant 01 Overworld's original grass, composed here and shipped complete: you do not need to own Verdant 01.

Licence

Commercial use permitted, including in paid games, with no attribution required. Modify it freely. You may not resell the pack itself as an asset pack.

AI disclosure

The graphics are generated programmatically by a procedural pixel-art engine written for this series — there is no diffusion model and no training dataset involved in producing a single pixel. The generator's source code was written with AI assistance. This listing carries itch.io's Generative AI tag on that basis, because over-disclosure is safe and the alternative is not.

More from CSAF

More tilesets from the same studio:

Everything else we make is at csaf.itch.io.

Purchase

Buy Now$9.99 USD or more

In order to download this asset pack you must purchase it at or above the minimum price of $9.99 USD. You will get access to the following files:

verdant-13-castle-tileset-16x16.zip 470 kB
Version 2

Development log

Leave a comment

Log in with itch.io to leave a comment.