Captures the pre-Godot-port state of the codebase. This is the rollback anchor for the Godot port (M0 of theriapolis-rpg-implementation-plan-godot-port.md). All Phase 0 through Phase 6.5 work is included; Phase 7 is in flight. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
9.7 KiB
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). When the final art set is ready, we plan to upgrade to full Wang corner-based autotiling ("Option C") using Pixellab's
create_topdown_tilesettool, 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
<tile>_0.png,<tile>_1.png, …<tile>_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<tile>.pngwith 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.