๐Ÿ”ธORC-721

Generative ORC-721 Protocol

GitHub: https://github.com/ordbase/generative-orc-721

Introduction

The ORC-721 protocol is a generative standard that allows you to create your own collection of pixel art assets. The concept has been made accessible even for non-technical people and we'll walk you through it using simple, everyday language.

Imagine you could create your own unique digital collection of punk heads, each with a distinct look and features, similar to how you collect physical stickers or trading cards. You can do this with the ORC-721 protocol.

For instance, you want to create a new collection of DIY punk heads, you can achieve this with a simple command as shown below:

{
    "p": "orc-721",
    "op": "deploy",
    "slug": "diypunks",
    "name": "D.I.Y. Punks",
    "max": 721,
    "dim": "24x24",
    "generative": "cf5df319bbe23fa3d012e5ee0810700c8e82aebff41164246f0d87d7b60a9903i0"
}

The "op": "deploy" command is akin to saying, "Hey, I want to start a new sticker album for DIY Punks". The "dim": "24x24" is setting the size of each sticker, and "max": 721 is telling us the maximum number of stickers in this collection will be 721.

Creating Punk Heads

Once you have set up your collection, you can start creating punk heads (stickers). Here are a few examples:

To create a simple human punk, we use the mint operation with the generative specification - [0], where 0 represents the code for the base human punk:

{
   "p":"orc-721",
   "op":"mint",
   "s":"diypunks",
   "g":[0]
}

Want to make a punk with laser eyes? Just add 38 to the array of generative specifications:

{
   "p":"orc-721",
   "op":"mint",
   "s":"diypunks",
   "g":[0,38]
}

You can even create a punk with a Bitcoin-patterned background, a human base, and laser eyes:

{
   "p":"orc-721",
   "op":"mint",
   "s":"diypunks",
   "g":[59,0,38]
}

Here, each number corresponds to a specific feature or attribute of the punk. 0 for the human base, 38 for laser eyes, and 59 for the Bitcoin-patterned background. It's like specifying the stickers' unique characteristics.

Creating Your Artwork

Now, you might ask: "How do I create my own punks with these numbers?" Good question!

To do this, you can use what's called "spritesheets" or art layers. You have three format options to create these: binary image (ultra-compact), tabular text/dataset (.csv - compact), or structured text/dataset (.json - classic).

The easiest to understand might be the tabular (.csv) format. Here, each line corresponds to one feature or attribute of the punk. For example, a 'Human Base' could be represented as:

name,   category, base64
Human,  Base,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYBAMAAAASWSDLAAAAElBMVEUAAAAAAADWdQf3kxr4rUv///

9kpAhbAAAAAElFTkSuQmCC

This .csv file holds all possible punk features or attributes. They're numbered from top to bottom, hence the numbers used in the generative specifications mentioned earlier.

Finally, the unique part about these punk images is their transparent background, which allows the combination of multiple features or attributes into a single image. When you specify the generative specs such as [59,0,38], it's like saying, "Take the 59th, the 0th, and the 38th stickers from the collection, and overlay them to make a new sticker."

Through this simple yet powerful way, you can create a vast collection of unique punk images without needing to manually draw every single one of them.

Last updated