# Agent Sprite Forge
语言:[English](./README.md) | [繁體中文](./README.zh-TW.md) | [简体中文](./README.zh-CN.md) | [日本語](./README.ja.md) | [한국어](./README.ko.md)
面向 Codex 的 2D 游戏资产技能:生成可用的角色精灵、分层地图,以及能交给游戏引擎继续编辑的原型素材。
用自然语言描述需求,Codex 负责规划资产流程,用内置图像生成产出原始视觉,再用本地处理器去背、切格、对齐、验证,并导出给 Godot、Unity 或普通 2D 游戏项目使用。
Showcase |
Skills |
Install |
Prompts |
Star History
## 有什么不同
Agent Sprite Forge 不是一组 prompt 模板。它是一套 Codex-first 的 2D 游戏资产工作流:agent 先判断需要什么资产、图像生成负责创作原始视觉,本地脚本只做可重复的清理、切割、对齐、验证和导出。
精灵表 角色、怪物、NPC、道具、攻击、法术、投射物、命中特效、idle、walk,以及参考图驱动的变体。 |
分层地图 ground-only base、dressed reference、prop pack、透明 props、y-sort 摆放、碰撞、区域和预览图。 |
引擎交付 Godot 场景、可编辑 TileMapLayer、分离式 props、遇怪草丛、碰撞体、出口和 debug player。 |
本地清理 洋红去背、frame extraction、alignment、透明 PNG/GIF 导出、prop pack 切割和 QA metadata。 |
## Showcase
### Engine-Ready Prototypes
这些案例使用 Codex 和 `agent-sprite-forge` 工作流组装,重点是完整闭环:生成资产、结构化场景数据,以及可玩的 prototype wiring。
Summon Survivors - Unity WebGL
生成地图、主角 sheet、召唤物、进化、敌人、Boss、拾取物、HUD、FX、升级选项和 WebGL 部署。
Play build | Build conversation
|
Forest Pass Defense - Godot Tower Defense
Godot 4 塔防原型,包含地图、分离式 props、塔位、塔、敌人 sheet、Boss、飞行敌、波次、HUD、建造 / 升级 / 出售流程和投射物规则。
|
Editable RPG Map - Godot TileMap
图像生成 tileset 和 prop sheet,再接进可编辑 TileMapLayer、Sprite2D props、遇怪草丛 Area2D、StaticBody2D 碰撞、出口、metadata 和 debug player/camera。
|
Neon Breach - Cyberpunk Side-Scroller
使用生成的角色、攻击、地图和 gameplay assets 组装出的可玩横向卷轴 prototype。
|
Sengoku Era - JavaScript monster-taming RPG
浏览器 RPG prototype,包含生成角色、初始怪物选择、地图流程和战斗 UI。
Play build
|
Starter selection and battle loop
用 skill workflow 生成 sprite、monster、battle 和 map assets 后完成的小型 JavaScript 游戏展示。
|
### Sprite Sheets And FX
当你需要动画单位、玩家角色、怪物、props、spell bundles、projectile/impact FX,或参考图驱动的变体时,使用 `$generate2dsprite`。
 Text to sprite 从自然语言生成攻击动画。 |
 Character action 紧凑的 2D 动作 sheet 和透明导出。 |
 Spell cast 适合 bundle 的施法动画。 |
 Projectile 匹配的 projectile / impact workflow。 |
### Layered RPG Map Pipeline
当你需要地图而不是单独 sprite 时,使用 `$generate2dmap`。可读性较高的 layered raster map 目前推荐 clean hand-painted HD game-map style:先生成 ground-only base,再生成 dressed reference,接着生成 prop pack,最后做透明 prop extraction 和 layered preview composition。
 Ground-only base |
 Dressed reference |
 3x3 prop pack |
Flattened layered RPG map preview
```text
layered_raster + y_sorted_props + precise_shapes + trigger_zones + raw_canvas
```
### Godot Editable TileMap Export
`$generate2dmap` 也可以输出可编辑 Godot map project,而不是只有一张 flattened image。这个 showcase 使用图像生成的 tileset 和 3x3 prop sheet,再接入 Godot 4.5 scene。
Godot editor scene: editable layers, props, zones, collision, exits, and debug player
Godot 输出可以包含可编辑 `TileMapLayer` nodes、独立 `Sprite2D` props、遇怪草丛 `Area2D` zones、`StaticBody2D` collision blockers、exit `Area2D` zones,以及 debug player/camera。
```text
image_gen tileset + prop_pack_3x3 + layered_tilemap + separate_props + trigger_zones + Godot_TileMap
```
## Included Skills
| Skill | 用途 | 输出 |
| --- | --- | --- |
| [`generate2dsprite`](./skills/generate2dsprite) | Sprites、animation sheets、props、spell bundles、FX、参考图变体、固定 frame sheet 的 layout guide | raw sheet、cleaned transparent sheet、frames、GIFs、metadata |
| [`generate2dmap`](./skills/generate2dmap) | baked maps、layered raster maps、clean HD RPG maps、prop packs、collision/zones、Godot-editable scenes、side-scroll/parallax scenes | base map、dressed/stage reference、prop pack、extracted props、preview、scene metadata |
`$generate2dmap` 只有在地图流程需要可复用透明 props 时,才会搭配 `$generate2dsprite`。小型环境 props 可以批成 `2x2`、`3x3` 或 `4x4` prop packs,再切成独立透明 props。平台、地板、桥、墙、门和长条 hazard 这类碰撞关键物件,通常应该单独生成或用 tile/object layer 表达。
## How It Works
1. 用户请 Codex 生成 sprite、prop pack、map 或 engine-ready prototype。
2. Agent 判断 asset type、action、bundle shape、sheet layout、frame count、style 和 alignment strategy。
3. 内置图像生成产出 raw visual asset。
4. 本地脚本做 deterministic post-processing:chroma-key cleanup、despill、frame extraction、alignment、prop-pack slicing、GIF/PNG export 和 validation metadata。
5. 对地图和 prototype,Codex 也可以组装 placement metadata、collision、trigger zones、Godot scenes 或 Unity project wiring。
脚本不是创意大脑。Agent 负责视觉和 pipeline 决策;Python 工具只做可重复的像素处理和导出。
## Install
### Windows PowerShell
```powershell
git clone https://github.com/0x0funky/agent-sprite-forge.git
cd .\agent-sprite-forge
python -m pip install -r .\requirements.txt
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.codex\skills" | Out-Null
Copy-Item -Recurse -Force `
".\skills\*" `
"$env:USERPROFILE\.codex\skills\"
```
### macOS / Linux
```bash
git clone https://github.com/0x0funky/agent-sprite-forge.git
cd ./agent-sprite-forge
python3 -m pip install -r ./requirements.txt
mkdir -p ~/.codex/skills
cp -R ./skills/* ~/.codex/skills/
```
安装后请重开 Codex session,让 skills 被干净载入。
## Suggested Prompts
### Sprite
```text
Use $generate2dsprite to create a 3x3 idle for an ultimate earth titan.
```
```text
Use $generate2dsprite to create a side-view lightning knight attack animation.
```
```text
Use $generate2dsprite to create a wizard spell bundle with cast, projectile, and impact sprites.
```
### Map
```text
Use $generate2dmap to create a Godot-editable RPG map with separated props, encounter grass Area2D zones, collision StaticBody2D blockers, exit zones, and a debug player scene.
```
```text
Use $generate2dmap to create a playable side_scroll_mode platformer stage with parallax layers, stage-reference, separate platform_objects, collision metadata, camera bounds, and a stage-preview.
```
## What You Get
典型 sprite sheet 输出:
- `raw-sheet.png`
- `raw-sheet-clean.png`
- `sheet-transparent.png`
- frame PNGs
- `animation.gif`
- `prompt-used.txt`
- `pipeline-meta.json`
地图输出取决于 pipeline:
- Single baked map:完整地图图像、可选 prompt file、可选 collision metadata。
- Layered raster map:base map、dressed reference、prop folders 或 prop-pack extraction manifest、prop placement metadata、collision/zones metadata、flattened layered preview。
- Side-scroll map:parallax layers、stage reference、separate platform/object assets、objects/collision metadata、camera bounds、stage preview。
- Godot editable map:tileset/prop assets、scene files、layer metadata、collision/zones、exits、debug player setup。
## Notes
- 最好的结果来自明确指定视角、动作和动作节奏的 prompt。
- 大型 creature 通常更适合 `3x3 idle`。
- 小型 spell、projectile 和 impact 通常适合 `2x2` 或 `2x3`。
- 主角攻击、射击、施法动作建议 body-only;大范围 slash、muzzle flash、projectile、impact 独立生成成 FX。
- 商业项目请优先使用原创角色或你拥有权利的 IP。
## Star History
## License
MIT. See [LICENSE](./LICENSE).