The z4ts whitepaper.
999 pixel z4ts, written fully on-chain.
Abstract
Z4ts is a collection of 999 pixel characters, and the art is fully on-chain: every image lives on the chain itself, not on a server.
Every z4ts is a 24×24 portrait built from fixed-colour traits under strict rules, so that each one reads cleanly as a profile picture. The whole collection weighs 461,172 bytes, small enough to write every image onto the chain.
Each z4ts is a standard NFT: it shows up in the wallets and trades on the marketplaces of the chain it is minted on. That chain is not announced yet. The name is said “zats”.
The collection
Z4ts has 999 tokens: 990 dealt by a generator (#1–#990) and nine one of ones set by hand (#991–#999).
Each image is 24×24 pixels of art placed in a 28×28 frame. The margin keeps every trait clear of the circle that X and most apps crop avatars to. Images are scaled only by whole numbers with nearest-neighbour, so a pixel is always a square.
The type of every generative token is dealt from an exact deck, not rolled, so the shares below are guaranteed rather than expected.
| Type | Colour | Tokens | Share |
|---|---|---|---|
| z4ts | a bright colour of its own; three precious: one Gold, one Silver, one Diamond | 906 | 90.7% |
| Zombie | a colour of its own, with the zombie's eyes | 64 | 6.4% |
| Alien | a colour of its own | 10 | 1.0% |
| Mascot | the Lucky Calico, turned to a colour of its own | 10 | 1.0% |
| One of One | hand-set | 9 | 0.9% |
One colour, one z4ts. Every z4ts wears a colour nobody else has, and the 999 are spread as far apart as 999 colours can be: no two closer than 5.2 in CIELAB distance, more than twice what the eye can just tell apart. To give them room, the colours run from deep browns, charcoals and navies to creams and pale tints, across orange, yellow, green, teal and blue (hues 26° to 232°; no reds, pinks or purples), and bands dealt by an exact deck keep green, teal and blue under half. Dark coats look out with gold eyes. Each token's Skin is its exact colour, written as a hex code. Three generative z4ts are precious, one Gold, one Silver and one Diamond: the metal coats catch the light (a glint on the head and the shoulder), and the Diamond coat sparkles. Every colour is flat: there are no gradients.
Design principles
The brief is one line: simple, quiet, expensive. Every rule below is checked by the generator, so no token can break it.
- One body, drawn once. Every z4ts shares the same symmetric bust and 14-pixel-wide head. Character lives in the face, the colour and what it wears, never in a stretched or lopsided body.
- Fixed-colour traits. Each accessory is drawn in its own set colours from one shared palette, like a real object. Nothing is tinted to match the coat.
- Every trait its own. No trait comes twice, not even in another colour: one headband, one hoodie, one pair of dark shades. No necklaces.
- One of a kind. 13 traits are worn by a single z4ts each: Bull Horns, Crescent Moon, Rainbow Vision, Laser Eyes, Heart Glasses, Aviators, Star Glasses, Snorkel Mask, Full Beard, Copium Mask, Lollipop, Bandana Mask, Diamond Hands Tee.
- Crypto memes, not crypto brands. Laser eyes, copium, bull horns, the moon, diamond hands and a rainbow Vision; never a coin's logo, a real person, words or robot parts.
- Few colours per token. At most two colour families besides the neutrals, and never gold and silver together.
- Nothing hides. A trait is only dealt where it stands out from the coat and background around it. Two traits never cover the same pixel, and never touch in the same colour.
- Made for the avatar circle. Headwear, eyewear and earrings stay at least 3 pixels inside the crop circle; mouth items at least 1. Every trait was checked at 48 px, the size a timeline shows.
- Quiet grounds. Ten light, low-colour, flat backgrounds, each with enough contrast against every coat it is paired with.
- One colour, one z4ts. 999 colours for 999 z4ts, and every generative z4ts wears one to five of 44 accessories, in a set no other z4ts wears.
Traits and rarity
A generative z4ts is a colour, a background, an expression and one to five accessories: 32 wear one, 314 wear two, 522 wear three, 115 wear four, 7 wear five. No two z4ts wear the same set of accessories, whatever their expression, so every outfit is its own, and 13 of the traits are worn by one z4ts only. Shares below are of the 990 generative tokens.
| Layer | Items, with how many wear each | Worn by |
|---|---|---|
| Eyewear | 13: Classic Shades 149, Tortoise Glasses 94, Monocle 77, Masquerade Mask 61, VR Headset 56, Eye Patch 54, 3D Glasses 24, Rainbow Vision 1, Laser Eyes 1, Heart Glasses 1, Aviators 1, Star Glasses 1, Snorkel Mask 1 | 521 (52.6%), rarest Rainbow Vision 1 (0.1%) |
| Headwear | 10: Halo 141, White Headband 106, Black Headphones 92, Crown 91, Sprout 85, Flower 78, Bandana 63, Goggles 41, Bull Horns 1, Crescent Moon 1 | 699 (70.6%), rarest Bull Horns 1 (0.1%) |
| Clothing | 10: White Shirt 169, Tank Top 117, Black Hoodie 112, Turtleneck 75, Tuxedo 74, Knit Sweater 69, Burgundy Puffer 47, Camel Coat 46, Denim Jacket 45, Diamond Hands Tee 1 | 755 (76.3%), rarest Diamond Hands Tee 1 (0.1%) |
| Mouth | 8: Gold Grill 145, Cigar 95, Red Lipstick 93, Pipe 87, Full Beard 1, Copium Mask 1, Lollipop 1, Bandana Mask 1 | 424 (42.8%), rarest Full Beard 1 (0.1%) |
| Earring | 3: Gold Earring 172, Silver Hoop 77, Pearl Drop 73 | 322 (32.5%), rarest Pearl Drop 73 (7.4%) |
| Expression | 5: Neutral 336, Smirk 310, Bored 153, Frown 137, Angry 54 | 990 (100%), rarest Angry 54 (5.5%) |
| Background | 10: Bone 137, Stone 129, Sky 128, Sand 116, Blush 115, Sage 114, Mist 106, Lavender 100, Champagne 25, Pearl 20 | 990 (100%), rarest Pearl 20 (2.0%) |
Trait count is the number of accessories, plus one for any expression other than Neutral: 5 score 1, 133 score 2, 384 score 3, 392 score 4, 72 score 5, 4 score 6.
How rarity is ranked. Each attribute scores its information content, −log2 of its share of the supply, and a token’s score is the sum. This is how marketplaces compute rarity from metadata. Traits are also tiered by share: Common from 10%, Uncommon 5–10%, Rare 2–5%, Epic 0.5–2%, Legendary under 0.5%.
The Nine
Nine one of ones close the collection, #991–#999. The generator never deals them: each carries a coat or an item that appears nowhere else.
| No. | Name | What only it has | Its line |
|---|---|---|---|
| #991 | Solid Gold | a solid gold coat, with shades and a tuxedo | Cast, not drawn. |
| #992 | Void | a void coat, with a white shirt and a gold earring | The absence of a z4ts, with eyes. |
| #993 | Masquerade | a gilded mask, on a slate coat with a turtleneck | Came to the gala. Never took the mask off. |
| #994 | Diamond Crown | a diamond crown and a velvet blazer, on a diamond coat | The crown the generator was never allowed to deal. |
| #995 | Diamond Grill | a diamond grill, with a diamond earring | Smiles rarely. Worth it. |
| #996 | Lucky z4ts | a raised paw and a gold coin | The mascot: one paw up, one coin held. |
| #997 | Onyx | an onyx coat, with gold shades, a cigar and a camel coat | Old money in a camel coat. |
| #998 | Pharaoh | a striped nemes headdress, on a gold coat | On-chain since before there were chains. |
| #999 | Laureate | a laurel wreath, on a bronze coat | Cast in bronze, crowned in laurel. Museum-grade. |
Fully on-chain
Every z4ts image is written onto the chain as its own PNG file: no IPFS link, no server, nothing that can go dark. The whole collection is 461,172 bytes.
| Measure | Bytes |
|---|---|
| Smallest z4ts | 348 |
| Median z4ts | 459 |
| Largest z4ts | 604 |
| All 999 | 461,172 |
The files are small because the art is small: 28×28 pixels, a few flat colours, no gradients. The token contract keeps every image in its own storage and builds each token’s metadata on-chain, the PNG and its traits together, so anyone can check any token’s pixels without trusting the team.
Provenance. Before the mint opens, the SHA-256 hash of all 999 images in token order is published. Anyone can then confirm that the art sold is the art that was shown, and that no token was swapped after the fact.
The chain
The chain is not announced yet. Z4ts stays neutral until it is, and the choice comes first on X, before the date and the price. Whatever it is, it has to do three things.
- Keep the pixels on-chain. Writing 461,172 bytes of pixels must be cheap enough that every image lives on the chain itself.
- Hold a standard NFT. A z4ts must be an ordinary NFT there, held in common wallets and read by common explorers and marketplaces.
- Last. The art must be able to outlive the team: an open chain, widely run and well supported.
Nothing about the art depends on the choice: the 999 images, the traits and the supply stay exactly as they are.
Everything about the collection is public and checkable: the images, the traits, the supply, the price and every transfer.
Mint and distribution
Z4ts mints at one fixed price, open to everyone at the same time: no blind auction, no bidding, no hidden allocation.
| Parameter | Value |
|---|---|
| Supply | 999, fixed forever |
| Generative | 990 (#1–#990) |
| One of ones | 9 (#991–#999) |
| Chain | announced before the mint |
| Standard | a standard NFT, images and metadata on-chain |
| Price | one fixed price, announced before the mint |
| Wallet limit | set before the mint, enforced by the contract |
| Provenance hash | published before the mint opens |
Resale royalties can be signalled in the contract, but marketplaces choose whether to honour them, and Z4ts does not count on them.
Still to decide before the mint:
- The chain
- The mint price
- The per-wallet limit
- How the Nine are distributed
- Whether there is an allowlist, and who is on it
- Whether tokens are revealed at mint or dealt from a committed shuffled order
Open books
Whatever the team does with the mint is public, on the chain and on X.
What Z4ts commits to.
- The mint price, the supply and the number minted are public from the first block.
- The provenance hash is published before the mint, and the art never changes after it.
- The team’s mint address and any tokens the team keeps are disclosed.
- No blind auction, no hidden rounds, no second collection sold to the same holders as “the real one”.
What Z4ts does not promise. No roadmap of utilities, no token, no yield, no price. A z4ts is a piece of pixel art you own; that is the whole product. Anything built later is a bonus, announced when it is ready, never sold in advance.
Community
Z4ts is built to be worn: as an avatar first, and as a small world around it second.
- X: @z4tspfps is the one official channel for news, the mint date and the price.
- The website shows the collection in the open: the anatomy of a z4ts layer by layer, a z4ts of the block, every trait with its share, the Nine and the real on-chain bytes.
- Try it as your avatar. Any z4ts can be previewed in X’s light and dark avatar circles before anyone mints.
- Pairs, the memory game: flip two cards at a time and match every z4ts pair before the clock runs out. Easy, normal and hard (the twelve closest colours) levels, and a result card to download and share.
The site and the game collect no personal data; scores stay in the player’s own browser.
Roadmap
The art is finished; the mint waits on the contract. No phase has a date until the one before it is done.
| Phase | What it delivers | Status | Waits on |
|---|---|---|---|
| 1. Art and generator | 999 tokens, every design rule checked in code, all layers exported | Done | nothing |
| 2. Brand and website | avatar, banner, @z4tspfps, the site, Pairs | In progress | nothing |
| 3. Chain and contract | the chain chosen; a contract with the images and metadata on-chain; trial mints on a test network | Next | nothing |
| 4. Pre-mint | price, wallet limit, provenance hash, the mint page | Planned | phase 3 |
| 5. Mint | 999 z4ts at one fixed price | Planned | phase 4 |
| 6. After the mint | rarity ranks, and a page that checks any token’s pixels against the chain | Planned | phase 5 |
Risks and disclaimers
A z4ts is digital art, not an investment, and it can lose all of its market value.
- The chain. The chain is not chosen yet. Whichever it is, the z4ts depend on it to keep running, and wallets and marketplaces support some chains better than others.
- Smart contract risk. A bug in the contract could affect minting or transfers. The contract is kept small and tested, but no code is free of risk.
- Your keys, your z4ts. If you lose the keys to the wallet holding a z4ts, or sign a malicious transaction, no one can recover it, the team included.
- Market risk. NFT and crypto prices move sharply, and interest can fall as quickly as it rose.
- Rules and taxes. Laws on NFTs and crypto-assets differ by country and can change. Each holder is responsible for following their own.
Nothing in this paper is financial, legal or tax advice. Z4ts makes no promise of profit, utility or future work.
Technical appendix
The collection is produced by a deterministic generator: the same seed always yields the same 999 tokens, byte for byte.
- Seed
- Type deck
exact shares - A colour of its own
none within 5.2 - Accessory deck
one to five each - Draw an outfit
own weights - if it repeats an outfit or breaks a ruleDraw again
- Checks
- Compose 28x28 PNG
- Metadata and layers
Each token is drawn in that order, so every z4ts differs from every other in its colour and in its outfit.
Checks run on every build.
- Every trait uses only the fixed palette and stays inside the canvas and the avatar circle.
- Clothing stays inside the body outline; headwear never covers the ears.
- Every dealt trait shows on at least half of all coat and background pairs.
- No two colours are within 5.2 of each other in CIELAB; every generative z4ts wears one to five accessories, and no outfit repeats.
- No two traits overlap or touch in the same colour; colour families stay in harmony.
- The type and accessory decks add up to 100%, and each one of one has something the generator never deals.
- Stacking the exported layer files reproduces every generative token exactly, pixel for pixel.
Files.
| File set | Contents |
|---|---|
| Pixels | 999 PNGs at 28×28, the bytes written on-chain |
| Layers | 2043 28×28 PNGs: 10 backgrounds, a skin and an expression per colour, 44 accessories, the Nine |
| Metadata | one JSON per token: type, skin (its colour, as hex), background, expression, five accessory layers, trait count |
| Rarity | each token’s score and rank |
The metadata is written in the standard NFT metadata format that marketplaces read, and the contract serves the same fields on-chain.
Sources
- Collection figures: the Z4ts generator and its metadata, 999 tokens