191 lines
4.7 KiB
Markdown
191 lines
4.7 KiB
Markdown
---
|
|
description: Create a new pixel art sprite with optional size and palette presets
|
|
argument-hint: [size] [palette]
|
|
allowed-tools: Read, Bash, mcp__aseprite__create_canvas, mcp__aseprite__set_palette
|
|
---
|
|
|
|
## /pixel-new - Quick Sprite Creation
|
|
|
|
Creates a new pixel art sprite with optional presets for size and palette.
|
|
|
|
### Usage
|
|
|
|
```
|
|
/pixel-new [size] [palette]
|
|
```
|
|
|
|
### Arguments
|
|
|
|
**size** (optional): Canvas dimensions or preset name
|
|
- Presets: icon, small, medium, large, tile, gameboy, nes
|
|
- Custom: WIDTHxHEIGHT (e.g., 64x64, 128x96)
|
|
- Default: 64x64
|
|
|
|
**palette** (optional): Color palette preset
|
|
- retro, nes, gameboy, c64, cga, snes, custom
|
|
- Default: RGB (no palette limit)
|
|
|
|
### Examples
|
|
|
|
```
|
|
/pixel-new
|
|
→ Creates 64x64 RGB canvas
|
|
|
|
/pixel-new icon
|
|
→ Creates 32x32 RGB canvas
|
|
|
|
/pixel-new gameboy gameboy
|
|
→ Creates 160x144 canvas with Game Boy 4-color palette
|
|
|
|
/pixel-new 128x128 nes
|
|
→ Creates 128x128 canvas with NES palette
|
|
|
|
/pixel-new tile retro
|
|
→ Creates 16x16 canvas with retro 16-color palette
|
|
```
|
|
|
|
### Size Presets
|
|
|
|
- **icon**: 32x32 (for icons, small sprites)
|
|
- **small**: 48x48 (characters, items)
|
|
- **medium**: 64x64 (default, versatile)
|
|
- **large**: 128x128 (detailed sprites, portraits)
|
|
- **tile**: 16x16 (tilemap tiles)
|
|
- **gameboy**: 160x144 (Game Boy screen resolution)
|
|
- **nes**: 256x240 (NES screen resolution)
|
|
|
|
### Palette Presets
|
|
|
|
- **retro**: 16-color palette (generic retro aesthetic)
|
|
- **nes**: 54-color NES palette
|
|
- **gameboy**: 4-color Game Boy palette (#0f380f, #306230, #8bac0f, #9bbc0f)
|
|
- **c64**: 16-color Commodore 64 palette
|
|
- **cga**: 4-color CGA palette
|
|
- **snes**: 256-color SNES-style palette
|
|
- **custom**: Prompts for custom palette colors
|
|
|
|
### Implementation
|
|
|
|
Parse arguments from $ARGUMENTS:
|
|
1. Extract size argument (first arg)
|
|
2. Extract palette argument (second arg)
|
|
3. Map size preset to dimensions or parse WxH
|
|
4. Create canvas with mcp__aseprite__create_canvas
|
|
5. If palette specified, set palette with mcp__aseprite__set_palette
|
|
6. Confirm creation with sprite info
|
|
|
|
### Size Preset Mapping
|
|
|
|
```
|
|
icon → 32x32
|
|
small → 48x48
|
|
medium → 64x64
|
|
large → 128x128
|
|
tile → 16x16
|
|
gameboy → 160x144
|
|
nes → 256x240
|
|
```
|
|
|
|
### Palette Details
|
|
|
|
**retro** (16 colors):
|
|
- Generic retro palette with balanced colors
|
|
- Good for general pixel art without console constraints
|
|
|
|
**nes** (54 colors):
|
|
- Official NES/Famicom palette
|
|
- Use indexed color mode
|
|
- Typically limit to 4 colors per sprite for authenticity
|
|
|
|
**gameboy** (4 colors):
|
|
- #0f380f (darkest green)
|
|
- #306230 (dark green)
|
|
- #8bac0f (light green)
|
|
- #9bbc0f (lightest green)
|
|
|
|
**c64** (16 colors):
|
|
- Commodore 64 fixed palette
|
|
- Distinctive colors with high saturation
|
|
|
|
**cga** (4 colors):
|
|
- Classic IBM CGA palette
|
|
- High contrast, limited colors
|
|
|
|
**snes** (256 colors):
|
|
- SNES-style palette with rich colors
|
|
- Supports smooth gradients and detailed sprites
|
|
|
|
**custom**:
|
|
- Prompts user for custom colors
|
|
- Ask for number of colors and hex values
|
|
|
|
### Validation
|
|
|
|
**Size validation:**
|
|
- If preset name, map to dimensions
|
|
- If WxH format, parse width and height
|
|
- Ensure dimensions are 1-65535
|
|
- Reject invalid formats
|
|
|
|
**Palette validation:**
|
|
- Check if preset exists
|
|
- For custom, validate hex color format
|
|
- Ensure palette is appropriate for sprite size
|
|
|
|
### Error Handling
|
|
|
|
**Invalid size:**
|
|
- "Invalid size format. Use a preset (icon, small, medium, large, tile, gameboy, nes) or WIDTHxHEIGHT (e.g., 64x64)"
|
|
|
|
**Invalid palette:**
|
|
- "Invalid palette. Choose from: retro, nes, gameboy, c64, cga, snes, custom"
|
|
|
|
**Dimensions out of range:**
|
|
- "Dimensions must be between 1 and 65535 pixels"
|
|
|
|
**Canvas creation fails:**
|
|
- Report MCP error and suggest checking Aseprite configuration
|
|
|
|
### Notes
|
|
|
|
- If no arguments, create default 64x64 RGB canvas
|
|
- For retro palettes, use Indexed color mode
|
|
- For RGB mode, no palette needed
|
|
- Validate dimensions (1-65535)
|
|
- Provide helpful error messages for invalid input
|
|
- After creation, confirm canvas size and palette
|
|
- Use mcp__aseprite__get_sprite_info to verify creation
|
|
|
|
### Command Flow
|
|
|
|
1. Parse $ARGUMENTS into size and palette
|
|
2. If no size, use default (64x64)
|
|
3. Map size preset to dimensions or parse WxH
|
|
4. Validate dimensions
|
|
5. Call mcp__aseprite__create_canvas with dimensions
|
|
6. If palette specified:
|
|
- Map palette preset to color list
|
|
- Call mcp__aseprite__set_palette with colors
|
|
7. Get sprite info to confirm
|
|
8. Report success with canvas details
|
|
|
|
### Example Outputs
|
|
|
|
**Success with default:**
|
|
```
|
|
Created 64x64 RGB canvas.
|
|
Ready for pixel art creation!
|
|
```
|
|
|
|
**Success with presets:**
|
|
```
|
|
Created 160x144 canvas with Game Boy palette (4 colors).
|
|
Perfect for Game Boy-style sprites!
|
|
```
|
|
|
|
**Success with custom size and palette:**
|
|
```
|
|
Created 128x128 canvas with NES palette (54 colors).
|
|
Canvas ready with retro NES colors!
|
|
```
|