| 208 | } |
| 209 | |
| 210 | export async function generateCreatureImage( |
| 211 | imagePrompt: string, |
| 212 | powerLevel: number |
| 213 | ) { |
| 214 | const result = await generateText({ |
| 215 | model: "google/gemini-2.5-flash-image", |
| 216 | prompt: ` |
| 217 | Generate a fantasy creature image based on the following prompt: |
| 218 | |
| 219 | ${imagePrompt} |
| 220 | |
| 221 | Power Level (1-10): ${powerLevel} |
| 222 | |
| 223 | Visual Power Scaling Rules: |
| 224 | |
| 225 | Creature size, armor, weapons, wings, horns, glow, and environment must scale with power level |
| 226 | Weak creatures should: |
| 227 | - Look injured, starving, cursed, or malformed |
| 228 | - Wear broken gear or none at all |
| 229 | |
| 230 | Powerful creatures (Power Level 8 or above) should: |
| 231 | - Emit magical auras, elemental effects, or divine corruption |
| 232 | - Control their surroundings (storms, fire, void, light, shadows) |
| 233 | - Appear confident, dominant, or terrifying |
| 234 | |
| 235 | Requirements for the image: |
| 236 | - Creature can come from any fantasy realm: forests, dungeons, nether, oceans, mountains, mythic planes |
| 237 | - Image should reflect creature tier, commander potential, and magical abilities |
| 238 | - Be creative, but keep the base creature aligned to the D&D 5e Monster Manual choice for the tier |
| 239 | - Make the creature visually striking, detailed, unique, and clearly tiered |
| 240 | - Don't put any text on the image. |
| 241 | `, |
| 242 | }); |
| 243 | |
| 244 | return result; |
| 245 | } |
| 246 | |
| 247 | export async function submitGithubForm(githubProfileUrl: string) { |
| 248 | let username: string; |