Retrodiffusion
Generate true pixel art sprites, tilesets, and animations with the Retro Diffusion API — the best dedicated pixel art model. Use when the user says "generate pixel art", "make a sprite with AI", "use Retro Diffusion", "rdpk", or wants high-quality pixel art faster than hand-coded sprite arrays. Requires a Retro Diffusion account and RETRODIFFUSION_API_KEY (paid credits). Great for quick prototyping of 2D Phaser games.
- Skill ID
- playableintelligence/game-creator/retrodiffusion
- Publisher
- playableintelligence
- Repository
- game-creator
- Installs
- 0
- Files
- 2
- License
- MIT
- Requires
- Requires a Retro Diffusion account, RETRODIFFUSION_API_KEY environment variable, and internet access for API calls. Each generation consumes paid credits from the user's account.
- Synced
- Sep 23, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
playableintelligence/game-creator/retrodiffusionInstalls these files- SKILL.md
- api-reference.md
What this skill tells the agent
Retro Diffusion — True Pixel Art Generation
Generate authentic pixel art sprites, tilesets, and animations from text prompts or reference images using the Retro Diffusion API. Output is true pixel art (clean integer-pixel grids, limited palettes), not blurry diffusion-model output downscaled into pixels — making it the best AI option for shippable 2D game art and fast prototyping.
Paid service. Retro Diffusion requires an account at https://www.retrodiffusion.ai and an API key with credits. Always tell the user this requires a paid Retro Diffusion account before generating anything, and confirm they understand each call deducts from their balance.
Reference Files
| File | Description |
|---|---|
| api-reference.md | Full API endpoints, models, prompt_style values, response shape, pricing, and error codes |
When to Use
- Quick prototypes — generate dozens of unique sprites in a minute instead of hand-coding 16×16 arrays
- Polish pass on a working game — replace placeholder shapes with cohesive pixel art that already matches a chosen style
- Tilesets — wang-style ground/wall sets without manually drawing every transition tile
- Sprite animations — walk cycles, idle bobs, attacks delivered as transparent GIFs or spritesheets
Choose this over `add-assets` (code-only pixel art) when: the user wants AI-generated art, has a Retro Diffusion key, or the game needs more visual variety than hand-coded matrices can deliver in a reasonable time. The two skills compose well — Retro Diffusion for hero sprites/tilesets, code-only matrices as a free fallback for quick filler.
Do NOT use this for: 3D models (use meshyai), 3D worlds (use worldlabs), audio (use game-audio), or when the user explicitly wants the all-code procedural pixel art approach (use add-assets).
Authentication
Before prompting the user, check if the key already exists:
test -f .env && grep -q '^RETRODIFFUSION_API_KEY=.' .env && echo "found"If found, export it with set -a; . .env; set +a and skip the prompt.
If the key is not set, ask the user immediately and explain the cost model:
I'll generate true pixel art with Retro Diffusion — the best dedicated pixel art model for shippable game sprites. Heads up: this is a paid service. You'll need a Retro Diffusion account with credits. Each image typically costs between $0.015 (RD_FAST) and $0.18 (RD_PRO). Get a key in 60 seconds: 1. Sign up at https://www.retrodiffusion.ai 2. Buy credits (smallest pack is fine for prototyping) 3. Account → API → Generate API key Paste your key like:RETRODIFFUSION_API_KEY=rdpk-...(It will be saved to.envand redacted from this conversation.) Or type "skip" to fall back to free hand-coded pixel art via/add-assets.
If the user provides a key, save it to .env and use it via set -a; . .env; set +a && node scripts/retrodiffusion-generate.mjs ....
If the user skips, stop and hand off to `/add-assets` — do not silently degrade to a different art style without telling them.
CLI Script — scripts/retrodiffusion-generate.mjs
Zero-dependency Node.js script. Handles all six modes: generate, img2img, animate, tileset, edit, and balance.
Generate (text-to-pixel-art)
# Single 64×64 sprite, RD_FAST (cheapest)
RETRODIFFUSION_API_KEY=<key> node scripts/retrodiffusion-generate.mjs \
--mode generate \
--prompt "a cute green slime with big eyes" \
--model RD_FAST --style retro \
--width 64 --height 64 \
--output public/assets/sprites/ --slug slime
# Higher quality with RD_PRO (flat $0.18, supports up to 256×256)
RETRODIFFUSION_API_KEY=<key> node scripts/retrodiffusion-generate.mjs \
--mode generate \
--prompt "a heroic knight, full body, side view" \
--model RD_PRO --style fantasy \
--width 128 --height 128 \
--output public/assets/sprites/ --slug knight
# Transparent background for game sprites
RETRODIFFUSION_API_KEY=<key> node scripts/retrodiffusion-generate.mjs \
--mode generate --prompt "a treasure chest, closed" \
--model RD_FAST --style game-asset \
--width 64 --height 64 --remove-bg \
--output public/assets/sprites/ --slug chest
# Seamless tiling texture (e.g., grass, water)
RETRODIFFUSION_API_KEY=<key> node scripts/retrodiffusion-generate.mjs \
--mode generate --prompt "lush grass texture, top down" \
--model RD_PLUS --style top-down \
--width 64 --height 64 --tile-x --tile-y \
--output public/assets/tiles/ --slug grass
# Estimate cost before paying for it
RETRODIFFUSION_API_KEY=<key> node scripts/retrodiffusion-generate.mjs \
--mode generate --prompt "..." --check-costImage-to-Image (refine a reference)
RETRODIFFUSION_API_KEY=<key> node scripts/retrodiffusion-generate.mjs \
--mode img2img \
--image ./concept-art/hero-sketch.png \
--prompt "a heroic knight in shining armor" \
--model RD_FAST --style retro \
--width 64 --height 64 --strength 0.75 \
--output public/assets/sprites/ --slug hero--strength controls how much the AI deviates from the input (0 = identical, 1 = ignore input). 0.5–0.8 is the useful range.
Animations (walk cycles, idles, attacks)
# Walk cycle — returns spritesheet PNG or transparent GIF (style-dependent)
RETRODIFFUSION_API_KEY=<key> node scripts/retrodiffusion-generate.mjs \
--mode animate \
--prompt "a knight walking" \
--model RD_PRO --style walk-cycle \
--width 64 --height 64 \
--output public/assets/sprites/ --slug knight-walk
# Idle bob from an existing character
RETRODIFFUSION_API_KEY=<key> node scripts/retrodiffusion-generate.mjs \
--mode animate --image public/assets/sprites/knight.png \
--prompt "knight idle breathing" --style idle \
--output public/assets/sprites/ --slug knight-idleAnimation styles cost $0.07–$0.25 depending on type. See api-reference.md for the full style list.
Tilesets
# Wang-style tileset (auto-tiling ground/wall sets)
RETRODIFFUSION_API_KEY=<key> node scripts/retrodiffusion-generate.mjs \
--mode tileset \
--prompt "stone dungeon floor, mossy" \
--model RD_PLUS --style wang-tile \
--width 96 --height 96 \
--output public/assets/tiles/ --slug dungeon-floor
# Single detailed tile
RETRODIFFUSION_API_KEY=<key> node scripts/retrodiffusion-generate.mjs \
--mode tileset --prompt "wooden bridge plank" --style single-tile \
--width 64 --height 64 --output public/assets/tiles/ --slug bridgeEdit (progressive refinement)
Flat $0.06 per edit. Use to tweak a generated sprite without re-rolling from scratch.
RETRODIFFUSION_API_KEY=<key> node scripts/retrodiffusion-generate.mjs \
--mode edit --image public/assets/sprites/knight.png \
--prompt "give the knight a red cape" \
--output public/assets/sprites/ --slug knight-redBalance check
RETRODIFFUSION_API_KEY=<key> node scripts/retrodiffusion-generate.mjs --mode balanceModel Selection Guide
| Model | Cost | Sizes | Best for |
|---|---|---|---|
| RD_FAST | $0.015–0.04 | 64×64 to 384×384 | Bulk prototyping, simple sprites, items |
| RD_PLUS | $0.025–0.08 | 16×16 to 192×192 | Tilesets, top-down, watercolor, Minecraft-style |
| RD_PRO | $0.18 flat | 64×64 to 256×256 | Hero sprites, isometric scenes, polish pass (17+ styles, supports up to 9 reference images) |
| RD_MINI | varies | very small | Routes to PLUS/FAST for tiny pickups |
Default to RD_FAST for prototyping. Upgrade individual hero sprites to RD_PRO when the prototype is shipping.
See api-reference.md for the complete per-model prompt_style list.
Prompt Engineering for Pixel Art
Good prompts are short, specific about silhouette and palette, and call out the perspective:
| Goal | Prompt | Why |
|---|
More from playableintelligence
Use this skill in a project
Open any RiverX project, search the Skills panel for playableintelligence/game-creator/retrodiffusion, and install it in one click.
