Graffiti

Heroglyph Graffiti is constructed with the following format:

  • # precedes the tickers' names, separated by commas.

  • @ precedes the Graffiti Id's name.

  • - precedes the global chain to execute all tickers on.

If - is missing, the default chain will automatically be used as global. If # or @ are missing, the graffiti is invalid and won't be executed by Heroglyphs.

Note: You will have to pay the LayerZero fee on the target chain if you are not minting on Arbitrum.

Example of a valid graffiti: #lueygi,69@atum-a #lueygi,69@atum #@atum

Examples of invalid graffiti: @atum-a #lueygi-a #lueygi@-a lueygi@atum

Advanced

You can override a specific ticker's execution chain by adding it after the ticker name: #TickerNameA:OverriddenChain,TickerNameB@0xAtum

For example: #lueygi:h,69@atum In this example, lueygi will be minted on Base, and 69 on Arbitrum.

Cross-chain fee & claiming

When minting from another chain, you'll need to pay the layer-zero fee on the target chain, requiring extra steps.

For simplification, let's consider minting lueygi on base:

  1. Switch to Base.

  2. Approve WETH for lueygi.

  3. Execute lueygi.claimAction(srcChainLzEndpoint, [0]).

    1. [0] is the id of the minting, for simplification, we will say this is our first time doing so

You'll pay the layer-zero fee with WETH and receive your token on the base chain

Cross-chain graffiti's code

enum EGraffitiChains {
  ARBITRUM = "a",
  ETHEREUM = "b",
  BNB_CHAIN = "c",
  AVALANCHE = "d",
  POLYGON = "e",
  OPTIMISM = "f",
  FANTOM = "g",
  DFK = "h",
  HARMONY = "i",
  DEXALOT_SUBNET = "j",
  CELO_MAINNET = "k",
  MOONBEAM = "l",
  FUSE_MAINNET = "m",
  GNOSIS = "n",
  DOS_CHAIN = "o",
  KLAYTN_MAINNET_CYPRESS = "p",
  METIS = "q",
  CORE_BLOCKCHAIN_MAINNET = "r",
  OKXCHAIN_MAINNET = "s",
  POLYGON_ZEVM = "t",
  CANTO = "u",
  ZKSYNC_ERA_MAINNET = "v",
  MOONRIVER = "w",
  TENET = "x",
  ARBITRUM_NOVA = "y",
  METER_MAINNET = "z",
  KAVA = "aa",
  MANTLE = "bb",
  HUBBLE = "cc",
  LINEA = "dd",
  BASE = "ee",
  ZORA = "ff",
  VICTION = "gg",
  LOOT = "hh",
  MERIT_CIRCLE = "ii",
  TELOS_EVM = "jj",
  OPBNB_MAINNET = "kk",
  ASTAR = "ll",
  AURORA_MAINNET = "mm",
  CONFLUX_ESPACE = "nn",
  ORDERLY_MAINNET = "oo",
  SCROLL = "pp",
  HORIZEN_EON_MAINNET = "qq",
  XPLA_MAINNET = "rr",
  MANTA = "ss",
  SHIMMER = "tt",
  INJECTIVE = "uu",
  RARIBLE = "vv",
  XAI = "ww",
  REAL = "xx",
  TILTYARD = "yy",
  BLAST = "zz",
  FRAXTAL = "aaa",
  ASTAR_ZEVM = "bbb",
  MODE = "ccc",
  MASA = "ddd",
  HOMEVERSE = "eee",
  MERLIN = "fff",
  DEGEN = "ggg",
  SKALE = "hhh",
  XLAYER = "iii",
  SANKO = "jjj",
  BOB = "kkk",
}

Last updated