Modules

Module 1: Collection Configuration - Traits and Rules

1.1. Traits.json

Traits.json is the json file that lists all traits your collection will feature, organized by type and name. Each trait includes details on its rarity and a reference to its specific inscription ID. The sum of the rarity frequencies for each trait type should equal 100 to ensure a balanced distribution.

Example:

[
  {
    "traitType": "Background",
    "traits": {
      "Amethyst": [10, "/content/..."],
      "Amber": [10, "/content/..."],
      ...
    }
  },
  ...
]

1.2. Rules.json

Rules.json defines the rules for trait combinations, preventing undesirable overlaps and ensuring that generated Ordinals adhere to your collection's aesthetic and logical standards.

Example:

{
  "3d Specs": ["Bugged Out", "Coins eyes"],
  "CYCLPS": ["Bugged Out", "Coins eyes"],
  ...
}

1.3. Preview Image

Inscribe a preview image to serve as the initial visual for your collection. This image will later be the parent of the Hashtable.json, facilitating the on-chain reveal.

Module 2: Ordinal Art Renderer

The Ordinal Art Renderer compiles and combines all components, rendering the final image. It utilizes various dependencies, including OrdGenerator for trait combination and RawPhFMap for mapping inscription IDs using a Perfect Hash Function.

Module 3: Hashtable.json

After minting, collect all inscription IDs for your collection to create Hashtable.json. This file maps each inscription ID to a unique index, ensuring each Ordinal has a unique trait combination.

Example for a 51-supply collection:

{
  "values_len": 51,
  "free": [11, 24],
  "pilots_table": [0, 0, 160, ...]
}

Last updated