# Asset Scale Guide

## Core Rule

The map can be very large, but source art should be reusable. Do not generate the whole map as one image. Generate tiles, prop sheets, sprite sheets, and reference pages, then assemble the world in Godot.

## Current Default Scale

- Viewport: 1280x720
- Typical map/chunk target: around 4096x4096, adjusted per Step 1
- Base tile size: 64x64
- Player: 96-128 px tall
- Small enemies: 64-96 px tall
- Standard enemies: 96-128 px tall
- Boss/large enemies: 160-256 px tall
- Small props: 32-64 px
- Medium props: 64-128 px
- Large props: 128-256 px

## Image Generation Strategy

Use generated image sheets instead of giant world images.

Useful source sizes:

- 2560x1440 for iteration.
- 3840x2160 for high-detail final sheets when needed.
- 1024x1024, 1024x1536, and 1536x1024 when using OpenAI image generation endpoints that are limited to those sizes.

Sheet examples:

- terrain tile sheet
- blocking prop sheet
- decorative prop sheet
- theme-specific prop sheet
- player sprite sheet
- enemy sprite sheet
- pickup/prize sheet
- UI icon sheet

For production-ready Step 2 map packs:

- Prefer separate sheets over one huge map painting.
- Use PNG or WebP with real alpha for props, pickups, and loose sprites.
- Do not accept painted checkerboard or white/black matte backgrounds as transparency.
- If an image model cannot output transparency, generate reference art only, then run alpha cleanup before marking the sheet production-ready.
- If generated overlays are smaller than the game map, record the scale factor in metadata instead of mixing preview pixels with game-world coordinates.

## Quality Rule

Generate or paint important assets larger than their final in-game size, then downscale.

Examples:

- final 64x64 tile: create around 128x128, then downscale
- final 128px tree: create around 256px, then downscale
- final 96px enemy: create around 192px, then downscale

This keeps edges cleaner and makes AI-generated detail less noisy.

## Sprite Sheet Padding

Leave padding between sliced assets to avoid texture bleeding.

Recommended padding:

- 2 px minimum for pixel-style sheets
- 4 px safer for tiles and props
- 8 px for loose object cutouts with shadows or glow
