feat(sprite-generation): ✨ Add dynamic prompt templates and AI integration for sprite generation
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
This commit is contained in:
parent
bdcd0ed086
commit
be808cf659
1 changed files with 48 additions and 58 deletions
|
|
@ -34,12 +34,11 @@ STYLE_PREFIXES: dict[str, str] = {
|
|||
|
||||
# --- LAYERS: UNITS (default fallback — combat-type templates preferred) ---
|
||||
"units": (
|
||||
"game sprite icon, bright green flat color background (#00ff00), "
|
||||
"walking to the lower-left, body angled toward bottom-left corner, "
|
||||
"three-quarter rear view from above, "
|
||||
"hand-painted digital art like Warcraft III or Baldurs Gate, "
|
||||
"isometric RPG character sprite, full body head to toe, "
|
||||
"rich saturated fantasy colors, clean sharp edges, single character"
|
||||
"single character game sprite on solid lime green (#00ff00) background, "
|
||||
"isometric three-quarter rear view, character walking toward lower-left corner, "
|
||||
"hand-painted digital fantasy art, Warcraft III style unit, "
|
||||
"non-green armor and clothing, metal and leather colors, "
|
||||
"rich saturated colors, sharp clean edges, full body visible, masterpiece"
|
||||
),
|
||||
"buildings": (
|
||||
"isometric game building sprite, "
|
||||
|
|
@ -222,71 +221,62 @@ SCHOOL_ENERGY_COLORS: dict[str, str] = {
|
|||
# Overrides the generic "units" STYLE_PREFIX when a combat_type matches
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
# Prompt formula proven to work with juggernaut-xi-v11:
|
||||
# 1. "game sprite icon" triggers game asset mode
|
||||
# 2. "#00ff00" hex code forces solid green
|
||||
# 3. "three-quarter rear view from above" + "body angled toward bottom-left" for direction
|
||||
# 4. "hand-painted digital art like Warcraft III" for style
|
||||
# 5. guidance_scale 9.0 for adherence
|
||||
# Production formula — proven with juggernaut-xi-v11 at guidance 9.0
|
||||
# Winner: "E_composition" from prompt lab testing
|
||||
# Key: "solid lime green (#00ff00)" + "isometric three-quarter rear view" +
|
||||
# "walking toward lower-left" + "Warcraft III style" + "non-green armor"
|
||||
|
||||
_UNIT_CORE = (
|
||||
"game sprite icon, bright green flat color background (#00ff00), "
|
||||
"walking to the lower-left, body angled toward bottom-left corner, "
|
||||
"three-quarter rear view from above, "
|
||||
"hand-painted digital art like Warcraft III or Baldurs Gate, "
|
||||
"isometric RPG character sprite, full body head to toe, "
|
||||
"rich saturated fantasy colors, clean sharp edges, single character"
|
||||
"single character game sprite on solid lime green (#00ff00) background, "
|
||||
"isometric three-quarter rear view, character walking toward lower-left corner, "
|
||||
"{entity}, "
|
||||
"hand-painted digital fantasy art, Warcraft III style unit, "
|
||||
"non-green armor and clothing, metal and leather colors, "
|
||||
"rich saturated colors, sharp clean edges, full body visible, masterpiece"
|
||||
)
|
||||
|
||||
def _unit_style(combat_extra: str = "") -> str:
|
||||
"""Build unit style prefix. Entity placeholder {entity} filled by compose_prompt."""
|
||||
extra = f", {combat_extra}" if combat_extra else ""
|
||||
return (
|
||||
"single character game sprite on solid lime green (#00ff00) background, "
|
||||
"isometric three-quarter rear view, character walking toward lower-left corner{extra}, "
|
||||
"hand-painted digital fantasy art, Warcraft III style unit, "
|
||||
"non-green armor and clothing, metal and leather colors, "
|
||||
"rich saturated colors, sharp clean edges, full body visible, masterpiece"
|
||||
).replace("{extra}", extra)
|
||||
|
||||
UNIT_STYLE_BY_COMBAT_TYPE: dict[str, str] = {
|
||||
"melee": (
|
||||
f"{_UNIT_CORE}, "
|
||||
"armored warrior holding melee weapon, heavy armor"
|
||||
),
|
||||
"ranged": (
|
||||
f"{_UNIT_CORE}, "
|
||||
"ranged fighter holding ranged weapon ready to fire, quiver or ammo"
|
||||
),
|
||||
"melee": _unit_style("armored warrior holding melee weapon"),
|
||||
"ranged": _unit_style("ranged fighter holding weapon ready to fire"),
|
||||
"cavalry": (
|
||||
"game sprite icon, bright green flat color background (#00ff00), "
|
||||
"mounted rider on armored warhorse walking to the lower-left, "
|
||||
"body angled toward bottom-left corner, three-quarter rear view from above, "
|
||||
"hand-painted digital art like Warcraft III, "
|
||||
"isometric RPG mounted unit sprite, full mount visible head to hooves, "
|
||||
"rich saturated fantasy colors, clean sharp edges, single rider"
|
||||
"single mounted unit game sprite on solid lime green (#00ff00) background, "
|
||||
"isometric three-quarter rear view, rider on warhorse walking toward lower-left corner, "
|
||||
"hand-painted digital fantasy art, Warcraft III style, "
|
||||
"non-green armor, metal and leather colors, "
|
||||
"rich saturated colors, sharp clean edges, full mount visible, masterpiece"
|
||||
),
|
||||
"siege": (
|
||||
"game sprite icon, bright green flat color background (#00ff00), "
|
||||
"war machine angled toward bottom-left corner, "
|
||||
"three-quarter view from above, "
|
||||
"hand-painted digital art like Warcraft III, "
|
||||
"isometric RPG siege engine sprite, no people, heavy wood and iron, "
|
||||
"rich saturated fantasy colors, clean sharp edges"
|
||||
"single siege engine game sprite on solid lime green (#00ff00) background, "
|
||||
"isometric three-quarter view from above, angled toward lower-left, "
|
||||
"hand-painted digital fantasy art, Warcraft III style, "
|
||||
"heavy wood and iron war machine, no people, "
|
||||
"rich saturated colors, sharp clean edges, masterpiece"
|
||||
),
|
||||
"flying": (
|
||||
"game sprite icon, bright green flat color background (#00ff00), "
|
||||
"flying creature soaring toward lower-left, wings spread, "
|
||||
"three-quarter view from above, "
|
||||
"hand-painted digital art like Warcraft III, "
|
||||
"isometric RPG flying unit sprite, "
|
||||
"rich saturated fantasy colors, clean sharp edges"
|
||||
"single flying creature game sprite on solid lime green (#00ff00) background, "
|
||||
"isometric view from above, soaring toward lower-left, wings spread, "
|
||||
"hand-painted digital fantasy art, Warcraft III style, "
|
||||
"rich saturated colors, sharp clean edges, masterpiece"
|
||||
),
|
||||
"marine": (
|
||||
"game sprite icon, bright green flat color background (#00ff00), "
|
||||
"small ship sailing toward lower-left corner, "
|
||||
"three-quarter view from above, "
|
||||
"hand-painted digital art like Civilization V, "
|
||||
"isometric naval unit sprite, "
|
||||
"rich saturated fantasy colors, clean sharp edges"
|
||||
),
|
||||
"civilian": (
|
||||
f"{_UNIT_CORE}, "
|
||||
"civilian carrying tools or supplies, traveler clothes, no armor"
|
||||
),
|
||||
"specialist": (
|
||||
f"{_UNIT_CORE}, "
|
||||
"support character with specialized equipment, tactical gear"
|
||||
"single ship game sprite on solid lime green (#00ff00) background, "
|
||||
"isometric three-quarter view from above, sailing toward lower-left, "
|
||||
"hand-painted digital fantasy art, Civilization V style naval unit, "
|
||||
"rich saturated colors, sharp clean edges, masterpiece"
|
||||
),
|
||||
"civilian": _unit_style("civilian carrying tools or supplies, traveler clothes"),
|
||||
"specialist": _unit_style("support character with specialized equipment"),
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue