Home

Awesome

Crypto Collectibles Series - Cats · Punks

CryptoPunks Blockchain Contracts / Services

Code on the Blockchain - Electronic Contract Scripts

Timeline

Punk Contracts by Creation Date

2017

June 9, 2017 (Block #3842489) - /punks-v1 - CryptoPunks Classic V1 - "First Deploy"

June 22, 2017 (Block #3914495) - /punks-v2 - CryptoPunksMarket

2020

September 8, 2020 (Block #10821737) - /punks-v2-wrapped - Wrapped Punks (WPUNKS)

2021

March 25, 2021 (Block #12105923) - /punks-v1-wrapped-i - Wrapped Punks V1 (WPUNKS1), "Classic Edition"

June 14, 2021 (Block #12630376) - /phunks - CryptoPhunks (PHUNKS)

June 21, 2021 (Block #12674389) - /phunks - CryptoPhunksV2 (PHUNKS)

June 29, 2021 (Block #12731429) - /hdpunks - HD Punks (HDPUNKS)

August 7, 2021 (Block #12975638) - /zunks - Zunks (ZUNK)

August 7, 2021 (Block #12979903) - /bored - BoredPunkYachtClub (BPYC)

August 15, 2021 (Block #13026517) - /expansion-i - ExpansionPunks (XPUNKS)

August 18, 2021 (Block #13045935) - /punksdata - CryptoPunksData Update / Add-On / Service

August 27, 2021 (Block #13107807) - /international - InternationalPunks (INTPUNKS)

September 1, 2021 (Block #13138993) - /ape - ApePunks (APEK)

September 13, 2021 (Block #13214597) - /other - OtherPunks (OPUNKS)

September 21, 2021 (Block #13268745) - /currency - CurrencyPunks (CUPU)

September 23, 2021 (Block #13283328) - /mineable - MineablePunks (MPUNKS)

October 2, 2021 (Block #13339194) - /society - LostPunkSociety (LPS)

December 16, 2021 (Block #13817852) - /phunks-v2-market - CryptoPhunksMarket

December 30, 2021 (Block #13906069) - /expansion-ii - ExpansionPhunks (PHUNX)

2022

January 17, 2022 (Block #14022431) - /punks-v1-wrapped-ii - Wrapped Cryptopunks V1 (WPV1)

January 24, 2022 (Block #14066948) - /punks-v1-market - PunksMarket

February 2, 2022 (Block #14127834) - /punks-v3 - Cryptopunks V3 (V3PUNK)

February 3, 2022 (Block #14132029) - /phunks-v3 - Phunks V3 (V3PHNKS)

February 4, 2022 (Block #14138557) - /punks-v4 - Cryptopunks V4 (V4PUNK)

February 5, 2022 (Block #14142987) - /phunks-v1-wrapped - Wrapped Cryptophunks V1 (WPHV1)

Historic V1 - "First Deploy"

When CryptoPunks launched, the contract was exploitable. Sellers didn't get paid. LarvaLabs quickly launched a fixed version of the contract, which everyone uses.

But the V1 tokens are still out there.

<!-- https://twitter.com/seeker_curious/status/1375112685746941955 https://twitter.com/seeker_curious/status/1374605517444706306 -->

/punks-v1 - CryptoPunks

Etherscan

/punks-v1-wrapped-i - Wrapped Punks V1 (WPUNKS1)

Etherscan

/punks-v1-wrapped-ii - Wrapped Punks V1 (WPV1)

Etherscan

/punks-v1-market - PunksMarket

Etherscan

Classic V2

/punks-v2 - CryptoPunksMarket

Etherscan

For more see Inside the CryptoPunksMarket Blockchain Contract / Service »

/punksdata - CryptoPunksData Update / Add-On / Service

On-chain Cryptopunk images and attributes, by Larva Labs.

This contract holds the image and attribute data for the Cryptopunks on-chain. The Cryptopunk images are available as raw RGBA pixels, or in SVG format. The punk attributes are available as a comma-separated list. Included in the attribute list is the head type (various color male and female heads, plus the rare zombie, ape, and alien types).

Etherscan

Note: If you are looking for the on-chain data (attributes or the pixel matrix / bitmap and so on) - the data is NOT in the contract source but in the 266 transaction (txn) inputs. See punksdata/transactions.txt.

/punks-v2-wrapped - Wrapped Punks (WPUNKS)

Etherscan

For more see Inside the Wrapped Punk (WPUNKS) Blockchain Contract / Service »

V3, V4, V5, V6, ...

/punks-v3 - Cryptopunks V3 (V3PUNK)

Etherscan

/punks-v4 - Cryptopunks V4 (V4PUNK)

Etherscan

More

/phunks (v1 & v2) - CryptoPhunks (PHUNKS)

Etherscan

/phunks-v1-wrapped - Wrapped Cryptophunks V1 (WPHV1)

Q: Why wrapped?

A: Cryptophunks V1 are buggy. Philip (the intern) is every image.

Q: How do you wrap a Phunk V1?

A: You send your Phunk V1 to 0x235d49774139c218034c0571ba8f717773edd923 with safeTransferFrom() and the wrapping occurs in the onERC721Received() callback!

Etherscan

/phunks-v2-market - CryptoPhunksMarket

Etherscan

/phunks-v3 - Phunks V3 (V3PHNKS)

Etherscan

/hdpunks - HD Punks (HDPUNKS)

Etherscan

/zunks - Zunks (ZUNK)

web: cryptozunks.com

CryptoPunks were the first 10,000. CryptoZunks are the last 10,000.

Numbered 10,000 - 19,999, Zunks are the first Punks to be generated on-chain with randomized attributes. Spin to mint your base model Zunk and re-roll any attributes.

How does on-chain generation for Zunks work? How do we keep Zunks unique from existing Punks?

  1. CryptoZunks is the first on-chain Punks derivative project where the smart contract generates all the attributes randomly on-chain when the user mints. How does this work?

  2. After determining what attributes the Zunk has, we create a string representation of the Zunk which can be decoded into the various attributes (gender, hat, beard, etc.).

  3. This string representation of the Zunk is then saved on the blockchain. On subsequent Zunk mints, the contract validates that it hasn't generated a same Zunk that already exists. If it has, the contract will re-generate random attributes until it has created a unique Zunk.

  4. There are optimizations built into the contract to re-generate a Zunk as few times as possible. It's important that users aren't stuck endlessly generating invalid Zunks and to keep gas usage low.

  5. We've run thousands of simulations and have validated that we can reliably generate 10k unique Zunks Partying face

  6. We also wanted to guarantee that the generated Zunk doesn't match an existing Punk. We took all 10k Punks, converted them into our string representation, and seeded the contract with these Punks so that the contract may validate against them.

  7. Now when the contract generates a Zunk or a user rerolls an attribute, the contract will validate that it does not match any existing Zunks or Punks. After the Zunk is confirmed to be unique and minted, the contract emits an event of the string representation of the Zunk.

  8. Our goal is to innovate and to bring a unique and fun minting experience that gives some power to the user, while still upholding the ethos of decentralization. Every Zunk is randomly generated on chain, your Zunk's destiny is in your hands!

-- Amanda

All 10,000 Zunks have been minted! A lot of dizziness from all of the spins today.

-- CryptoZunks, Aug 8, 2021

Commentary: The devs are raking in at least $1.35 million dollars with the mint of 10,000 Zunks and will of course profit a substantial amount of all future sales.

Etherscan

/bored - BoredPunkYachtClub (BPYC)

Etherscan

/expansion-i - ExpansionPunks (XPUNKS)

Etherscan

/expansion-ii - ExpansionPhunks (PHUNX)

Etherscan

/international - InternationalPunks (INTPUNKS)

Etherscan

/ape - ApePunks (APEK)

Etherscan

/other - OtherPunks (OPUNKS)

Etherscan

/currency - CurrencyPunks (CUPU)

Etherscan

/mineable - MineablePunks (MPUNKS)

Mineable punks are generated using cryptopunk assets, all on-chain. Mineable punks cannot be claimed; they must be mined. A valid 256-bit hash can be fed through an on-chain minting function that uses the probability distribution and assets of the original 10,000 cryptopunks to generate an mineable punk.

Etherscan

/society - LostPunkSociety (LPS)

It's a boy! Lost Punk #10012 was minted as the child of crypto punk #1340 and lost punk #10005.

It's a girl! Lost Punk #10011 was minted by as the child of crypto punks #7822 and #9271.

o o o

If you own both a male and a female crypto punk, you can mint two children for free, and it's all happening 100% on-chain.

Note: You only need real crypto punks to mint the first generation. The next generation punks could become a cheaper entry point when supply gets large enough.

Every time a lost punk child is minted, it can be used to mint more children. Parents can be two crypto punks, two lost punks, or a mix of both, and you can use parents from different generations to mint.

The cost of minting does increase linearly by 0.05 ETH per generation to avoid flooding supply and every parent can have max two children and you cannot mint from parents that are closely related, so we are unlikely to see thousands of lost punks soon...

Etherscan

Questions? Comments?

Post them on the CryptoPunksDev reddit. Thanks.