Preview 1 of 4
Pixel art UI and reward VFX: loot, healing, shields, teleport (32 animated effects, PNG and JSON)
32 pixel art UI and reward effects (pickups, loot, healing, shields, teleport) as PNG strips and a JSON atlas, with no text inside, ready for your 2D game.
Overview
Description
This pack is for developers of 2D RPGs, roguelikes and mobile games who want to mark every reward and every change of state without drawing the effects themselves. It brings together the effects that follow the player outside of combat: coin and item pickups, chest opening, loot beam, level up, healing, shields, spawning, teleporting and target markers. Each effect has a documented anchor, per-frame durations and a mode, looping or played once. No effect contains any text: level up and quest complete are told by light alone, and you display your own labels in your game’s language. The pack contains no character. Its palette reuses the pixel art dungeon kit’s, and the effects are made for dark or mid-tone scenes.
Specifications
| Effects | 32, in 6 families |
|---|---|
| Animations | 35, with loot-beam in 4 rarities |
| Frames | 336 |
| Modes | 23 played once, 9 looping |
| Cells | 16 to 64 px per side, on a 16 px grid |
| Scales | 1x, 2x and 4x |
| Palette | 24 colours, matching the dungeon kit |
| Previews | animated GIF and WebP |
| Text | none |
| Licence | commercial (terms in French) |
| Version | 1.0.0, 11 November 2026 |
Contents
- 32 animated effects, in 35 animations and 336 frames, split into 6 families:
- Pickups:
coin-pickup,coin-spin,item-pickup,heart-pickup,star-collect,key-unlock,xp-orb,xp-absorb, and two colour variants of the coin for gems,gem-pickupandgem-sparkle; - Loot:
chest-open-burst(a burst of light as a chest opens),coin-burst,loot-beam(a loot beam on the ground); - Progression:
level-up,quest-complete,ability-ready; - Healing and status:
heal,heal-aura,regen-sparkle,shield-up,shield-loop,shield-shatter,buff-up,debuff-down; - Spawning and teleport:
spawn-portal,spawn-pillar,despawn-dissolve,teleport-out,teleport-in; - Targeting:
target-marker,select-ring,click-ripple.
- Pickups:
loot-beamin 4 rarities (common,rare,epic,legendary): the same drawing in four colour ramps, one animation per rarity.- 23 effects played once, whose last frame is almost empty, and 9 looping effects (
coin-spin,gem-sparkle,xp-orb,loot-beam,heal-aura,regen-sparkle,shield-loop,target-marker,select-ring). - A 24-colour palette (
dungeon-fx-24), as HEX, GPL and an image: the dungeon kit’s colours, with the same values, plus bright colours for the effects. - Animated previews of every animation, as GIF and WebP, on a transparent background.
- A demo page that shows every effect on a dark, a mid-tone and a light background, to open in a browser, offline.
Archive layout:
LISEZMOI-format.txt
demo/index.html
frames/1x/<effect>/<effect>-<number>.png
palette/dungeon-fx-24.gpl
palette/dungeon-fx-24.hex
palette/dungeon-fx-24.png
preview/gif/<effect>.gif
preview/webp/<effect>.webp
sheet/ui-reward-fx-<1x|2x|4x>.png
sheet/ui-reward-fx-<1x|2x|4x>.json
strips/<1x|2x|4x>/<effect>-<width>x<height>.png
The zip also holds the licence text, a README file and the credits. LISEZMOI-format.txt ends with an English summary.
How to use it
- Strips: one horizontal strip per animation, with no spacing between frames. The cell size is in the file name: most 2D engines slice the strip with a uniform grid.
- Sheet and JSON atlas: the sheet holds every animation, one row per animation. The atlas gives each frame its position, duration and anchor, and one tag per animation. An importer for this format builds the animations by itself; otherwise, build each animation from the tags and durations.
- Anchor: each effect has its origin point, written in the atlas and in
LISEZMOI-format.txt. At the centre for pickups and markers, placed on the item or the target; on the ground for what rises from the feet (chest, loot beam, level up, healing, spawning), placed on the character’s feet. - Played once or looping: an effect played once ends on an almost empty frame, so remove it afterwards; a looping effect repeats with no visible seam.
- Labels: no effect contains text. To announce a level or a quest, display your own label over the effect, in your game’s font.
- Scaling up: the files come at 1x, 2x and 4x. For any other size, scale by a whole number with nearest neighbour, never with smoothing.
Checks performed
- Pixels: every frame uses palette colours only, with no smoothing.
- Grid: every cell is aligned on the 16 px grid.
- Scales: the 2x and 4x versions are identical to an exact upscale of the 1x, and the atlases match the sheets.
- Atlas: the 35 animations were loaded in a 2D engine both ways described above, with the 336 frames and exact durations.
- Loops: the last frame of each loop joins the first one with no jump.
- Previews: every GIF and every WebP was reviewed, durations included.
- Review: each family was reviewed by eye, and the effects found weak were reworked, then checked again.
Good to know
- The effects are made for dark or mid-tone scenes. On a very light background most of them lose contrast; only
loot-beamin theepicrarity,debuff-downandspawn-pillarkeep it. The demo page shows each effect on all three backgrounds. gem-pickupandgem-sparklereuse the coin’s drawing in another colour: they are colour variants, not separate drawings. Likewise,buff-upreuses the chevrons oflevel-up, smaller and in green.spawn-pillarandloot-beamin theepicrarity have a similar peak, a pink column with purple edges: in a game that uses both, pick another rarity for loot.despawn-dissolvecovers the character with a solid oval that then dissolves: hide the character sprite when the effect starts.- No effect has a direction: the pack contains no projectile.
- Durations follow a 50 ms grid: they stay exact in GIF, in WebP, in the atlas and in a game.
- The pack contains neither characters nor text.
Production and AI
Each effect was written in code with an AI assistant: several candidates rendered to video, one kept, then refined and checked (palette, grid, anchor, loops, timing). No image was produced by an image generator.
Formats and compatibility
- PNG strips at 1x, 2x and 4x: one strip per animation, on a transparent background, sliced by grid in most 2D engines.
- Single PNG frames: every frame of every animation, numbered, for a frame-by-frame import.
- Sprite sheet and JSON atlas: one sheet per scale and its atlas in array JSON format, common among pixel art editors and 2D atlas loaders, with durations, anchors, families and animation tags.
- Animated GIF and WebP previews: looping, on a transparent background, viewable in a browser.
- HEX and GPL palette: as a hexadecimal list and in the palette format read by most drawing and pixel art software.
Licence
The pack is sold under the commercial licence (terms in French): you can use it in your personal and professional projects, including for your clients and in the games you sell or release, but you may not resell or redistribute the files, on their own or in another pack, even for free.
Going further
- The pixel art combat effects complete this pack with hits, slashes and explosions, using the same palette, anchors and formats.
- The pixel art elemental effects add fire, ice, lightning, water, earth and wind spells (impacts, projectiles, auras, areas and statuses), with the same palette and anchors.
Frequently asked questions
Do the effects work with my game engine?
The strips are sliced with a uniform grid, which most 2D engines do. The JSON atlas follows a common array format; if it is not read as is, LISEZMOI-format.txt explains how to build the animations from the tags and durations.
Can I add a text such as “Level up”?
Yes, in your game. The effects contain none: you display your label over the effect, in your language and font, and the effect stays the same for every translation.
Can I use the effects in a game I sell?
Yes. The commercial licence covers the finished products you sell or release, games included. It forbids reselling or redistributing the effects as a pack, even for free. The details are on the licence page.
Version history
1.0.0 (11 November 2026): first release.
