# Theriapolis — Tactical Tile Art Request This document lists every tactical-scale sprite the engine needs. Tiles are streamed in-game from a chunked tactical map; placeholder squares stand in for each tile until you provide the real art. > **Roadmap note (post-Phase-4 Wang autotiling).** The current renderer uses > per-tile sprites with a soft *colour-blend* edge softening between dissimilar > surfaces ("Option B" — see [TacticalRenderer.cs](Theriapolis.Game/Rendering/TacticalRenderer.cs)). > When the final art set is ready, we plan to upgrade to *full Wang > corner-based autotiling* ("Option C") using Pixellab's `create_topdown_tileset` > tool, which produces a 16-tile transition set per terrain pair. At that > point each terrain *pair* (grass↔dirt, grass↔water, sand↔shallowwater, etc.) > will need its own 16-tile transition strip, and the per-tile sprites listed > below become the *base* references the transition tiles blend out to. > No action needed from artists for that yet — flagged here so the plan isn't > lost between phases. ## Specifications - **Resolution:** 32×32 pixels per tile, exactly. The renderer scales each sprite to one in-engine "world pixel"; at the camera's tactical zoom threshold the sprite displays 1:1, and it upscales (with crisp pixel-art filtering) up to ~3.1× at maximum zoom. - **Format:** PNG, 32-bit RGBA. - **Surface tiles:** opaque. They tile horizontally and vertically against copies of themselves; please design seamlessly so adjacent tiles don't show visible joins. - **Decoration tiles:** transparent background. They composite on top of the underlying surface tile, so anything outside the actual prop should be transparent (alpha 0). - **Variants (optional):** if you provide multiple variants for a tile, name them `_0.png`, `_1.png`, … `_N.png` (zero-indexed). The engine picks one per cell from a deterministic per-tile RNG, so the same cell always shows the same variant. If you supply a single `.png` with no suffix, every cell uses it. - **Style:** chunky, painterly pixel-art is the target. Saturated but earthy colors. No outlines on surface tiles; soft outlines OK on decorations. - **Lighting:** assume a top-down view with diffuse overhead light (no strong directional shadow). Decorations may cast a small drop shadow that fades into transparency. ## Directory layout Drop the finished files into the project at: ``` Content/Gfx/tactical/ surface/ grass.png grass_0.png grass_1.png ... (optional variants) dirt.png ... deco/ tree.png tree_0.png tree_1.png ... (optional variants) bush.png ... ``` Filenames are lowercase and exactly match the names below. --- ## Surface tiles Each surface fills an entire 32×32 tile. Decorations and props are NOT part of the surface tile — those are separate, listed under **Decorations** further down. ### Grasslands & light vegetation | Filename | Description | |---|---| | `grass.png` | Short, healthy meadow grass — the default ground for temperate plains. Mixed greens with subtle blade detail; should feel like trampled, well-grown turf. | | `tallgrass.png` | Knee-high grasses and wild herbs, denser and slightly taller than `grass`. Still walkable but visibly thicker; muted yellow-green tones suit late-summer scrub. | | `dirt.png` | Bare earth, packed and a little dry. Used for trails, worn ground around settlements, and exposed soil at biome edges. | ### Forest floor | Filename | Description | |---|---| | (forest floors reuse `grass.png` and `dirt.png`) | Forest interiors are a mix of these two surfaces with `tree`/`bush` decorations on top — no separate forest-floor surface needed. | ### Mountains, hills, rocky terrain | Filename | Description | |---|---| | `rock.png` | Exposed bedrock, weathered grey with cracks and faint moss in the seams. The default surface for alpine and cliff biomes. | | `gravel.png` | Loose, small stones mixed with grit. Used for footpaths, dry creek beds, and rocky scree slopes. | ### Wetlands & water-edge | Filename | Description | |---|---| | `marsh.png` | Sodden, half-submerged ground threaded with reedy growth. Dark, mossy greens and standing-water highlights; the default for wetland biomes. | | `mud.png` | Wet, slick mud — the surface of mangrove flats, riverbanks after rain, and tidal pools when the tide is out. | | `shallowwater.png` | Wadeable water perhaps an inch or two deep. The bed should be visible through the water, with small ripple highlights on the surface. | | `deepwater.png` | Open water that the player cannot wade through. Solid blue with subtle wave patterns and no visible bed. Used for river centers, lakes, and the ocean. | ### Desert & dry biomes | Filename | Description | |---|---| | `sand.png` | Fine, wind-rippled sand in pale tan — used for beaches, desert flats, and tidal flats below the high-tide line. The ripple pattern should tile cleanly. | ### Cold biomes | Filename | Description | |---|---| | `snow.png` | Fresh, undisturbed snowpack with a faint blue cast in the shadows. The default for tundra and high-altitude alpine surfaces. | ### Built environment (settlements, roads, interiors) | Filename | Description | |---|---| | `cobble.png` | Rounded paving stones set in mortar — the standard street and plaza surface for towns and cities. Worn smooth in the centers of stones. | | `floor.png` | Interior wood-plank floor for buildings. Simple straight planks with subtle grain; reads as "indoor" at a glance. | | `wall.png` | Building exterior wall, top-down view — looks like the top of a thick stone-and-mortar wall, not the side. Used as the perimeter outline of placeholder building footprints. | --- ## Decorations Decorations sit on top of a surface tile and have a transparent background. The engine renders them as a single 32×32 sprite centered in their cell. ### Vegetation | Filename | Description | |---|---| | `tree.png` | Single mature tree seen from above — a roughly circular canopy of leaves with a hint of trunk visible through gaps. Color depends on biome but a generic temperate-deciduous green is fine for the base sprite. | | `bush.png` | A low, broad shrub — smaller and lower-canopy than a tree, walkable-but-slow. Reads as a clump of foliage when seen from above. | | `flower.png` | A small cluster of wildflowers — a few bright dots of color (pink/yellow/white) on green stems. Decorative only, no gameplay effect. | | `crop.png` | A patch of cultivated grain or vegetables, neat and orderly compared to wild grass. Used in farmland near settlements. | | `reed.png` | A tuft of tall water-edge reeds, vertical strokes of green and tan. Sits on `marsh` or `shallowwater` to suggest a riverbank or pond fringe. | | `snag.png` | A dead, broken tree stump or fallen log — weathered grey wood with no foliage. Adds character to forest edges and old burn scars. | ### Rocks | Filename | Description | |---|---| | `rock.png` (deco) | A small loose stone or two scattered together — clearly walkable around or over. Distinct from the `rock` surface tile (which is bedrock filling the whole cell). Save this in `deco/rock.png` to disambiguate. | | `boulder.png` | A single large rounded boulder taking up most of the cell. Impassable; the player must walk around it. Add a soft drop shadow on the bottom-right. | --- ## Variant guidance You don't need to provide variants for everything, but they make the world look hand-crafted instead of stamped. Highest-impact places to add variants: - **`grass_0` … `grass_3`** — even slight color shifts dramatically reduce the "wallpaper" effect in open meadows. - **`tallgrass_0` … `tallgrass_2`** — different blade angles and clumping. - **`dirt_0` … `dirt_2`** — patches of pebbles, faint cart-rut grooves, etc. - **`tree_0` … `tree_3`** — different canopy shapes/sizes; mix of broadleaf and conifer if you want. - **`flower_0` … `flower_2`** — different flower colors. Anything else can be a single sprite for now. --- ## Biome reference (which tiles show up where) This is for context only — you don't need to author per-biome variants. The engine composites surfaces and decorations dynamically based on the biome of each underlying world tile. | Biome | Primary surface | Common decorations | |---|---|---| | Temperate Grassland | `grass`, `tallgrass` | `bush`, `flower` | | Temperate Deciduous Forest | `grass`, `dirt` | `tree`, `bush`, occasional `snag` | | Boreal Forest | `dirt`, `grass` | `tree` (read as conifer in art) | | Subtropical Forest | `grass`, `tallgrass` | `tree`, `bush` | | Forest Edge | `grass` | `bush`, sparse `tree` | | Mountain Forested | `rock`, `dirt` | `tree`, `rock` (deco) | | Mountain Alpine | `rock`, `snow` | `boulder`, `rock` | | Foothills | `grass`, `rock` | `bush`, `rock` | | Cliff | `rock` | `boulder` | | Tundra | `snow`, `dirt` | `rock` (deco) | | Cold Desert | `sand`, `dirt` | `rock` | | Scrubland | `dirt`, `grass` | `bush`, `rock` | | Wetland | `marsh` | `reed` | | Marsh Edge | `mud`, `grass` | `reed` | | Mangrove | `mud`, `shallowwater` | `tree`, `reed` | | Tidal Flat | `mud` | (none) | | Beach | `sand` | (none) | | Coastal | `grass`, `sand` | `bush` | | River Valley | `grass` | `bush`, `reed` | | Settlements (any biome) | `cobble`, `dirt` | (none — buildings come later) | | Inside buildings | `floor` | (none) | | Settlement perimeter | `wall` | (none) | --- ## Summary checklist **Surfaces (14):** `grass`, `tallgrass`, `dirt`, `rock`, `gravel`, `marsh`, `mud`, `shallowwater`, `deepwater`, `sand`, `snow`, `cobble`, `floor`, `wall` **Decorations (8):** `tree`, `bush`, `flower`, `crop`, `reed`, `snag`, `rock` (deco — note the duplicate name; this one goes in `deco/`), `boulder` **Total minimum tiles:** 22 (one PNG per row above). Variants are bonuses on top of that.