Creative Challenge
"Python wearing a top hat juggling planets"
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<!-- Background Gradient -->
<defs>
<radialGradient id="spaceGradient" cx="150" cy="150" r="150" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#00172D" />
<stop offset="100%" stop-color="#000814" />
</radialGradient>
<radialGradient id="planetGradient1" cx="0.5" cy="0.5" r="0.5">
<stop offset="0%" stop-color="#FF5733" />
<stop offset="100%" stop-color="#C70039" />
</radialGradient>
<radialGradient id="planetGradient2" cx="0.5" cy="0.5" r="0.5">
<stop offset="0%" stop-color="#F1C40F" />
<stop offset="100%" stop-color="#F39C12" />
</radialGradient>
<radialGradient id="planetGradient3" cx="0.5" cy="0.5" r="0.5">
<stop offset="0%" stop-color="#2ECC71" />
<stop offset="100%" stop-color="#27AE60" />
</radialGradient>
</defs>
<rect width="300" height="300" fill="url(#spaceGradient)" />
<!-- Python Body -->
<path d="M150,200 Q140,220 120,210 T90,200 Q110,170 130,180 Q150,150 170,180 Q190,170 210,200 T180,210 Q160,220 150,200 Z"
fill="green" stroke="darkgreen" stroke-width="3" />
<!-- Top Hat -->
<rect x="115" y="70" width="70" height="30" fill="black" />
<rect x="130" y="40" width="40" height="50" fill="black" />
<rect x="130" y="40" width="40" height="10" fill="#8B0000" />
<!-- Face -->
<circle cx="150" cy="180" r="10" fill="green" />
<circle cx="145" cy="178" r="2" fill="black" />
<circle cx="155" cy="178" r="2" fill="black" />
<!-- Tongue -->
<path d="M150,190 Q150,195 160,200 Q150,200 140,205 Q150,200 150,190" fill="red" />
<!-- Juggling Planets -->
<circle cx="60" cy="60" r="20" fill="url(#planetGradient1)" />
<circle cx="240" cy="60" r="20" fill="url(#planetGradient2)" />
<circle cx="150" cy="20" r="15" fill="url(#planetGradient3)" />
<!-- Orbit lines -->
<path d="M150,180 C150,20 60,20 60,60" stroke="white" stroke-width="0.5" fill="none" />
<path d="M150,180 C150,20 240,20 240,60" stroke="white" stroke-width="0.5" fill="none" />
<path d="M150,180 C150,0 150,0 150,20" stroke="white" stroke-width="0.5" fill="none" />
<!-- Stars -->
<circle cx="50" cy="250" r="1.5" fill="white" />
<circle cx="270" cy="120" r="1" fill="white" />
<circle cx="230" cy="200" r="1.5" fill="white" />
<circle cx="180" cy="250" r="1" fill="white" />
</svg>
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<!-- Background with cosmic dust effect -->
<defs>
<radialGradient id="spaceGrad" cx="150" cy="150" r="150" fx="150" fy="150">
<stop offset="0" style="stop-color:#1a0f3c;stop-opacity:1" />
<stop offset="1" style="stop-color:#0a1927;stop-opacity:0.8" />
</radialGradient>
<filter id="glow">
<feGaussianBlur stdDeviation="4" result="glow"/>
<feMerge>
<feMergeNode in="glow"/>
<feMergeNode in="SourceGraphic"/>
</feMerge>
</filter>
<path id="snakePath" d="M150,150C200,100 200,100 250,150 300,200 300,260 250,300 200,260 200,260 150,300 100,260 100,260 50,300 0,260 0,200 50,150 100,200 100,200 150,150Z" />
<linearGradient id="snakeGrad" x1="150" y1="0" x2="150" y2="300">
<stop offset="0" style="stop-color:#4CAF50;stop-opacity:1" />
<stop offset="1" style="stop-color:#45a049;stop-opacity:1" />
</linearGradient>
<pattern id="hatPattern" patternUnits="userSpaceOnUse" width="100" height="100">
<circle cx="50" cy="50" r="40" fill="#000" />
</pattern>
</defs>
<!-- Background -->
<rect width="300" height="300" fill="url(#spaceGrad)" />
<!-- Stars -->
<g id="stars" fill="none" stroke="white" stroke-width="0.5">
<circle cx="50" cy="50" r="1" />
<circle cx="200" cy="100" r="1" />
<circle cx="100" cy="200" r="1" />
<circle cx="250" cy="250" r="1" />
</g>
<!-- Python body -->
<use xlink:href="#snakePath" fill="none" stroke="url(#snakeGrad)" stroke-width="20" />
<!-- Top hat -->
<g transform="translate(120,80) scale(0.8)">
<path d="M0,0 L100,0 L50,80 Z" fill="#660033" />
<path d="M0,0 L100,0 L50,60 Z" fill="url(#hatPattern)" />
</g>
<!-- Planets being juggled -->
<g transform="rotate(45 150 150)">
<!-- Planet 1 - Fiery planet -->
<g transform="translate(100,100)">
<circle cx="0" cy="0" r="20" fill="#ff6b6b" filter="url(#glow)" />
<circle cx="0" cy="0" r="15" fill="#ff5252" />
</g>
<!-- Planet 2 - Ice planet -->
<g transform="translate(200,200) rotate(60)">
<circle cx="0" cy="0" r="25" fill="#a1c4fd" filter="url(#glow)" />
<circle cx="0" cy="0" r="18" fill="#89f7fe" />
</g>
<!-- Planet 3 - Gas giant -->
<g transform="translate(50,250) rotate(30)">
<circle cx="0" cy="0" r="30" fill="#ffd93d" filter="url(#glow)" />
<circle cx="0" cy="0" r="20" fill="#fdba7d" />
<path d="M-20,0 Q0,15 20,0 Q15,0 0,-15 -20,0" fill="#ff6b6b" opacity="0.5" />
</g>
</g>
<!-- Motion trails -->
<path d="M100,100 Q150,120 200,100" stroke="#4CAF50" stroke-width="4" opacity="0.3" />
<path d="M200,200 Q250,220 300,200" stroke="#4CAF50" stroke-width="4" opacity="0.3" />
<path d="M50,250 Q100,240 150,250" stroke="#4CAF50" stroke-width="4" opacity="0.3" />
</svg>
Judge's Analysis
Player 1's submission creatively depicts a python wearing a top hat and juggling planets, adhering well to the prompt.
The design is visually appealing, with clear planetary orbits and a well-defined top hat.
Player 2's submission could not be evaluated due to an error loading the SVG.
These metrics analyze technical aspects of both SVG drawings. Look for differences that might explain the judge's decision. Use the "View Code" button above to see the SVG code for each drawing.
Shapes Metrics
The total number of shape elements (rect, circle, ellipse, line, polygon, polyline, path) in the SVG.
The number of rectangle elements (rect) in the SVG.
The number of circle elements (circle) in the SVG.
The number of ellipse elements (ellipse) in the SVG.
The number of line elements (line) in the SVG.
The number of polygon elements (polygon) in the SVG.
The number of path elements (path) in the SVG.
The number of group elements (g) in the SVG.
Visual Effects Metrics
The number of gradient definitions (linearGradient, radialGradient) in the SVG.
The number of pattern definitions (pattern) in the SVG.
The number of filter definitions (filter) in the SVG.
The number of mask definitions (mask) in the SVG.
The number of clipping path definitions (clipPath) in the SVG.
The number of elements with opacity attributes in the SVG.
The number of elements with stroke attributes in the SVG.
Colors Metrics
The number of unique colors used in the SVG.
Interactivity Metrics
The number of animation elements (animate, animateMotion, animateTransform, set) in the SVG.
The number of elements with transform attributes in the SVG.
Complexity Metrics
The total number of path commands in all path elements (M, L, C, Q, etc.) in the SVG.
The maximum nesting level of group elements (g) in the SVG.
The number of elements defined within the defs element in the SVG.
The number of use elements (use) in the SVG.
Text Metrics
The number of text elements (text) in the SVG.
AI Judging Process
Creativity
Originality, innovative use of shapes and unique approach to the prompt.
Prompt Adherence
How accurately the SVG captures the essence of the prompt.
Visual Appeal
Aesthetic quality including composition, color usage and overall visual impact.
How does judging work?
SVG drawings are converted to static PNG images for evaluation. The AI judge receives the original prompt and both images, then determines which drawing better fulfills the evaluation criteria without seeing animations, interactivity, or SVG code.
Similar Challenges
"Two-headed owl with neon wings under a cosmic night sky"
"Upside-down city skyline mirrored in a tranquil lake"
"A jellyfish cityscape floating above a mirrored ocean"
"Moonlit jellyfish dance in a night sky"
"Surreal clock melting over a tree branch at sunset"
"Jellyfish in a Teacup Floating Through Space"