Replace battle maps 49 and 50 with hand-painted assets

This commit is contained in:
2026-07-09 21:13:59 +09:00
parent 726a4e6e3c
commit 03ec1ca86f
11 changed files with 35 additions and 159 deletions

View File

@@ -2,7 +2,7 @@
## Scope
The first forty-eight campaign battles now use the same hand-painted tactical map pipeline. The renderer still reads the original scenario tile coordinates and battle logic; only the map texture asset changes from flat/vector map art to low-contrast raster terrain.
The first fifty campaign battles now use the same hand-painted tactical map pipeline. The renderer still reads the original scenario tile coordinates and battle logic; only the map texture asset changes from flat/vector map art to low-contrast raster terrain.
## Art Direction
@@ -17,6 +17,7 @@ The first forty-eight campaign battles now use the same hand-painted tactical ma
- Large maps starting at battle 26 use a 192px tile target through `LARGE_MAP_TILE_SIZE` in the generator.
- Very large maps can use a 176px tile target through `VERY_LARGE_MAP_TILE_SIZE` when WebP encoding or browser memory pressure becomes the limiting factor.
- Ultra large maps can use a 160px tile target through `ULTRA_LARGE_MAP_TILE_SIZE` when 176px output exceeds WebP encoder limits.
- Extreme large maps can use a 152px tile target through `EXTREME_LARGE_MAP_TILE_SIZE` when 160px output exceeds WebP encoder limits.
- Re-evaluate the tile target before a generated map's longest edge approaches roughly 16,384px at 192px per tile.
- Use `--tile-size` only for controlled comparisons; commit the selected production size in the map config.
@@ -74,6 +75,8 @@ python scripts/generate-handpaint-map-sample.py --map forty-fifth --webp-quality
python scripts/generate-handpaint-map-sample.py --map forty-sixth --webp-quality 90
python scripts/generate-handpaint-map-sample.py --map forty-seventh --webp-quality 90
python scripts/generate-handpaint-map-sample.py --map forty-eighth --webp-quality 90
python scripts/generate-handpaint-map-sample.py --map forty-ninth --webp-quality 90
python scripts/generate-handpaint-map-sample.py --map fiftieth --webp-quality 90
```
Comparison example:
@@ -132,6 +135,8 @@ python scripts/generate-handpaint-map-sample.py --map thirtieth --tile-size 192
- `src/assets/images/battle/forty-sixth-battle-map.webp`
- `src/assets/images/battle/forty-seventh-battle-map.webp`
- `src/assets/images/battle/forty-eighth-battle-map.webp`
- `src/assets/images/battle/forty-ninth-battle-map.webp`
- `src/assets/images/battle/fiftieth-battle-map.webp`
## QA Outputs
@@ -229,5 +234,9 @@ python scripts/generate-handpaint-map-sample.py --map thirtieth --tile-size 192
- `docs/forty-seventh-battle-map-handpaint-preview.png`
- `docs/forty-eighth-battle-map-handpaint-before-after.png`
- `docs/forty-eighth-battle-map-handpaint-preview.png`
- `docs/forty-ninth-battle-map-handpaint-before-after.png`
- `docs/forty-ninth-battle-map-handpaint-preview.png`
- `docs/fiftieth-battle-map-handpaint-before-after.png`
- `docs/fiftieth-battle-map-handpaint-preview.png`
Browser screenshots are saved per verification run after build/deploy.

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB