AI column

Video@donghyeok99Staff

pixelfx: 244 pixel art effects in code, plus a Claude skill

244 pixel art effects, each one a small file of code, and a Claude Code skill that draws, looks at and fixes new ones

A grey dummy casts a frost nova, ice bursts out in a ring, the straw target rocks back, and render.mjs --sheet lays the frames out as a sprite sheet.
A grey dummy casts a frost nova, ice bursts out in a ring, the straw target rocks back, and render.mjs --sheet lays the frames out as a sprite sheet.
Who
Made by Patch (patch.gg), for people building pixel games in the browser or in engines such as Godot and Unity.
When
Published on October 30, 2026; no tagged release yet (package.json says 0.3.0).
Where
A Claude Code plugin; effects render locally with nothing but Node, and ship as JS code or as sprite sheets for any engine.

What was hard

Putting one effect into a game meant drawing frames one by one, or buying assets and bending their colours and size to fit. Asking an AI for it in one go tended to come back flat, and since the result was an image, there was little to adjust.

What it does about it

In pixelfx an effect is not an image but one file of code that draws the frame at time t. So one palette turns a fire blue, a flag mirrors it, and a new seed gives a different take of the same kind. Effects with a character are acted out, with a wind-up, a freeze on contact and a target that rocks back, and the skill makes new ones by drawing, looking and fixing in rounds.

A campfire, a burning skull, a waterfall and a portal, all playing at once
A campfire, a burning skull, a waterfall and a portal, all playing at once
The grey dummy throws a sword combo and a frost nova, freezing on contact
The grey dummy throws a sword combo and a frost nova, freezing on contact

How it runs inside

  1. 1

    You → Claude Code + pixelfx skill

    Make five takes on a coin pickup sparkleYou ask in one line; the skill first looks for an existing effect that already comes close.skills/pixelfx/SKILL.md
  2. 2

    Claude Code + pixelfx skill → src/fx/<category>/<name>.js

    node tools/new.mjs arcane/my-spellIt creates a working starting file and writes a draft, borrowing from two or three nearby effects.tools/new.mjs
  3. 3

    src/fx/<category>/<name>.js → tools/render.mjs

    node tools/render.mjs arcane/my-spellThe frames are rendered and gathered into one contact.png.tools/render.mjs
  4. 4

    tools/render.mjs → Claude Code + pixelfx skill

    Look at contact.png, fix the worst thingThe agent opens the picture itself and goes round fix-and-render at least three times.skills/pixelfx/SKILL.md
  5. 5

    Claude Code + pixelfx skill → tools/check.mjs

    node tools/check.mjs arcane/my-spellCatches pixels drawn off the canvas, loop seams, unseeded randomness and slow frames.tools/check.mjs
  6. 6

    tools/render.mjs → Sprite sheet PNG + JSON

    --sheetWrites a transparent PNG grid and Aseprite-style JSON with fps and pivot, read by Phaser, Godot and Unity.tools/render.mjs

What goes in, what comes out

Add a frost nova to my mage's ultimate.The existing ice/frost-nova wired into the mage's ultimate
This hit effect feels floaty. Make it punchier.Reworked with a fast-in, slow-out motion and a short white frame
fire/torch with a navy-to-white paletteA torch that burns blue, code untouched

Is it for you

Good for

  • Dropping effects straight into a browser game as code
  • Needing sprite sheets for Godot, Unity, GameMaker and similar engines
  • Hits that feel floaty and need a freeze and a shake
  • Learning how to make and polish pixel effects yourself

Not for

  • Effects drawn on the body (frost, poison) are drawn on the stock grey dummy, so regenerate them before shipping with your own character.
  • The Patch Pixel font in the gallery is not MIT; the code and effects are.
  • GIF and MP4 previews need ffmpeg (per the skill's notes).

Reviewed by Devalley’s editor before publishing. How the column is made

Sign in to post, comment and like.Sign in

Report

Reason

Read the community rules