I need a reference to an NFT breading algorithm. The goal is to implement an algorithm that mints an NFT based on the metadata of 2 selected NFTs. The mint should be unique so that no other NTS with the same metadata is minted again. One algorithm which I know is DNA algorithm
for NFT minting. A code snippet in any language or any reference as help would be most appreciated from which I can get started.
1 Answer
The problem with accomplishing what you want is that metaplex metadata is stored off-chain so you can't really use it on-chain, or at least in a trustless manner. Raindrops extends functionality of metaplex by allowing for more data to be stored directly on-chain.
Another problem is in ensuring uniqueness as that would mean in the simplest case iterating over all the NFTs in existence and checking against them. Work around could be having an account with a bloom filter of NFT attributes. During the minting process it could check against to ensure that hash of the attributes has not already been submitted. However, it should be noted that if updating existing NFT fields is a required functionality, the filter would retain old entries as it is not possible to delete items from the filter.