Files

3.4 KiB

Interface icons (high-res)

Generated on 2026-11-07 with fal-ai/nano-banana-pro (resolution: 2K, one image per sheet, aspect_ratio: 21:9 for the 5-column sheets, 16:9 for the spells). batch.py holds the prompts: the shared text below followed by the numbered icon descriptions.

A sheet of game icons for a dark-fantasy dungeon strategy game, arranged in a grid of {cols} columns and {rows} rows, every icon centred in its own equal square cell and filling about 80 percent of it, all icons the same size and in the same style: hand-painted pixel art, chunky clear shapes, crisp edges, a dark near-black outline, rich but slightly muted colours, readable at small size, light from the upper left. The background is a completely flat pure magenta (#FF00FF) everywhere, also between the icons - no frames, no grid lines, no cell borders, no text, no labels, no numbers. The icons, in reading order (left to right, top to bottom): 

tools (5x2)

  • I_PICK: a pickaxe for digging
  • I_HAND: a clawed green monster hand reaching to grab
  • I_SELL: a small pile of gold coins with a curved arrow (selling)
  • I_FLAG: a red rally flag on a pole
  • I_BOLT: a yellow lightning bolt
  • I_HEAL: a glowing green healing cross with sparkles
  • I_SUMMON: a glowing violet summoning circle with a small imp silhouette
  • I_BRIDGE: a small wooden plank bridge arch
  • I_WALL: a block of grey stone wall with an upward arrow
  • I_STEEL: a riveted dark steel wall plate

towers (5x2)

  • I_ARROW: a small wooden watchtower with an arrow
  • I_CANNON: a squat stone tower with a black cannon
  • I_MAGIC: a slender dark tower with a glowing purple orb on top
  • I_RUNE: a dark stone obelisk with a glowing red rune and bronze bands
  • I_DRAWBRIDGE: a raised wooden drawbridge with chains over water
  • I_RAM: a battering ram: a tree trunk with an iron cap under a small wooden roof on wheels
  • I_CATAPULT: a wooden catapult with a stone in its arm
  • I_ORDERS: two crossed swords (attack order)
  • I_ORDERS+1: a round shield (guard order)
  • I_FREEZE: a glowing pale-blue snowflake (frost spell)

traps (5x2)

  • I_TRAPS: a floor trap with sharp metal spikes
  • I_TRAPS+1: a floor vent puffing a green poison cloud
  • I_TRAPS+2: a floor nozzle shooting a jet of fire
  • I_TRAPS+3: a big round rolling boulder
  • I_TRAPS+4: a brass alarm bell
  • I_TRAPS+5: a glowing red rune mine on the floor
  • I_TRAPS+6: a floor trap with a glowing blue frost crystal
  • I_TRAPS+7: a wooden door with iron hinges
  • I_TRAPS+8: a heavy iron door with rivets
  • I_TRAPS+9: a magic door glowing with purple runes

spells (4x2)

  • I_SPELLS: a glowing all-seeing eye (seer's eye spell)
  • I_SPELLS+1: falling rocks from a cracked ceiling (cave-in spell)
  • I_SPELLS+2: a winged boot (haste spell)
  • I_SPELLS+3: a fist of grey stone (stoneskin spell)
  • I_SPELLS+4: gold coins raining down (gold rain spell)
  • I_SPELLS+5: a fading translucent ghostly figure (invisibility spell)
  • I_SPELLS+6: a green skull in a sickly cloud (plague spell)
  • I_SPELLS+7: cracked shaking ground with rocks jumping (quake spell)

Processing

tools/cut_icons.py <sheet>-raw.png <sheet> --grid 2x5 (spells --grid 2x4) keys out only nearly pure magenta (violet glows stay), crops every icon, centres it in a square and scales it to 64x64 and 128x128 with hard alpha. The strips go to assets/textures/icons/; the game puts them into the high-res atlases' icon cells (HD_ICONS in src/gfx.rs).