All platforms · 12 min · Upstream checked July 17, 2026

How to create a custom Codex pet in v2 format

Plan, preview, validate, and package an original Codex pet with nine standard animation rows and sixteen v2 look directions.

Platform behavior can change. Compare this guide with the original repository at commit a1c48b3a84cc.

Quick answer

Create nine standard 8-frame rows, add sixteen fixed clockwise look directions in rows 9–10, export an exact 1536×2288 transparent atlas, and package it with pet.json declaring spriteVersionNumber 2.

01Start from original or licensed art
02Build and review nine standard rows
03Add sixteen clockwise look directions
04Package pet.json with spriteVersionNumber 2

Design for a 192×208 cell

A current Codex pet atlas is an 8×11 grid of 192×208 cells. Keep the whole silhouette readable at that size, preserve one baseline and consistent scale, and avoid effects that touch cell edges. Use original, public-domain, or explicitly licensed reference material; generation does not create rights in a protected character.

Complete the nine standard behaviors

Rows 0–8 cover idle, run-right, run-left, wave, jump, failed, waiting, working, and review. Preview all eight cells in every row. Check that motion reads at normal size, transparent edges remain clean, props stay attached, the mirrored run remains physically plausible, and no frame drifts in scale or baseline.

Add v2 look directions in fixed clockwise order

Rows 9–10 contain 000, 022.5, 045, 067.5, 090, 112.5, 135, 157.5, then 180, 202.5, 225, 247.5, 270, 292.5, 315, and 337.5 degrees. 000 means up. The directions must progress evenly around the subject without changing identity, proportions, scale, or lower-body registration.

Package data, then test in Codex

The final v2 atlas is exactly 1536×2288 PNG or WebP. pet.json includes id, displayName, description, spritesheetPath, and spriteVersionNumber 2. Keep those two files together under the custom pets folder. Inspect the package, refresh the Codex pet picker, test each application state, and retain the source and license next to any public listing.

Do not package a new 1536×1872 intermediate atlas as v2. It lacks the required look rows and must not declare spriteVersionNumber 2.

Completion checklist

Frequently asked questions

What size is a v2 Codex pet spritesheet?

Exactly 1536×2288 pixels: eight 192px columns and eleven 208px rows.

Can I use a famous game or anime character?

Only if you have the necessary rights. A generated or reformatted version of protected artwork is not automatically licensed for redistribution.

Can I convert a v1 pet by changing pet.json?

No. A v1 atlas is missing two physical look-direction rows. Changing the version field does not create those frames.

Related guides