This guide details how you can create serialised duplicates of an NFT.
NFT's have a key property of being non-interchangeable. This idea of a duplicate then most be carefully defined so as to ensure clarity about what this is, and its purpose.
The best analogy I can think of, would be the concept of 'limited edition' runs of a certain product. Limited editions are always the same, identical item OTHER THAN they all have a serial number associated with them. Artists often also do small runs of say, 100 prints, whereby each print will be an identical copy but will have a number from 1-100 listed.
Because of this, there is a concept of a 'Specific Duplicate' whereby a person can identify and trade a particular duplicate. As we look to the Crypto-Gaming world, the use cases for in-game items and collectables based on Duplicate NFT infrastructure becomes clear.
Unlike Non-Fungible tokens, Fungible tokens are about as "un-unique" as you can possibly get. They are completely interchangeable, have identical value and are indistinguishable from one another.
A good way to think about "Fungible" is thinking about FIAT money from the point of view of trading, the £10 Note in your hand is EXACTLY the same as the £10 Note in someone else's wallet or the two £5 Notes on your table.
Similarly $1 = $1, 1 BTC = 1 BTC, 1 ADA = 1 ADA and crucially there is simply no concept of 'I want THAT specific ADA' because there is no specific ADA, only an amount of ADA held in a wallet.
That, is what is means to be Fungible.
Serialised Duplicates should be used instead when there is a need for users to be able to hold a specific, identifiable item that has identical properties to other duplicate items. A great example of this would be for a multiplayer racing game where people 'actually' own the cars. You could create the game such that there are only ever 1000 Fast Cars, all of which have identical visuals, speed and handling but such that players know they own one or more specific Fast Cars. Another example would be with digital awards, whereby an unlimited number of people can earn the identical certificate, but they become the Xth person to be awarded as such.
Fungible tokens should be used in all cases whereby there is a desire to track the AMOUNT of something a given user has. This could be anything from in-game currency, voting rights, points earned - anything designed to be the medium of exchange or in some way fungible.
For this guide, we are going to demonstrate how we would do this if we were planning to release a 'Limited Edition' run of 100 identical art.
As usual, create your project and upload the single piece of art as one NFT, this will then be used as the base NFT that we will Duplicate and Serialise.
Single NFT Uploaded
If you plan to have a different Token/Display Name, then make sure you edit your meta data template so that the 'Name' Attribute no longer simply copies the 'Asset_Name' parameter:
Different Token/Display Name
Same Token/Display Name
To get started, select the 'Duplicate NFT' option on the NFT you want to duplicate:
After selecting the 'Duplicate NFT' button, you will be presented with several parameters that you are able to set in the pop up window:
- Count Duplicates
- This is the number of duplicates you intend to create
- Starting Number
- This is the starting serial number you want the duplicates to run from, the default is 1.
- Leading Zeros
- Leading zeros allow you to keep the size of the name strings uniform across different size numbers, for example, you may think that having 3 leading zeros for up to 999 duplicates looks better as follows:
- 3 Leading Zeros: LimitedEdition008 LimitedEdition063 LimitedEdition457
- Without: LimitedEdition4 LimitedEdition55 LimitedEdition875
- Generally, you want the number of leading zeros equal to the number of digits in the biggest possible serial number.
- 1 would be 1 Leading Zero
- 10 would be 2 Leading Zeros
- 1,000,000 would be 7 Leading Zeros
To put simply, the Token or 'Asset' name is a base Cardano Parameter with a limit of 24 (non-special) Characters. All NFTs must have a Token Name. The Display Name is technically an optional parameter that often gets set to be the same as the Token name, but crucially can be different, up to 64 Characters and can be more complex with spaces. Most NFT related websites will use the Display Name as it gives more freedom to the creator to make a cool Display Name.
- Token Name Prefix
- This is the first part of the Token Name, that comes BEFORE the serial numbers
- Token Name Suffix
- This is the third part of the Token Name, that comes AFTER the serial numbers
- Display Name Prefix
- This is the first part of the Display Name, that comes BEFORE the serial numbers
- Display Name Suffix
- This is the third part of the Display Name, that comes AFTER the serial numbers
We expect the most common structure to be something like below:
Count Duplicates = 100 Starting Number = 1 Leading Zeros = 3 Token Name Prefix = LimitedEdition Token Name Suffix = Display Name Prefix = LimitedEdition Display Name Suffix =
Note how I have left the suffixes blank and have decided to keep the Token/Display Name the same.
Pre Duplication Hint
Well done! You have now created some duplicate NFTs!
If you are feeling adventurous, you could try using every parameter! Let's have a look:
Count Duplicates = 100 Starting Number = 50 Leading Zeros = 5 Token Name Prefix = Limited Token Name Suffix = Edition Display Name Prefix = Limited Edition Display Name Suffix = A
You can see in this case how the serial numbers start at 50, but now have 5 leading zeros. Even more drastically, the Token/Display Name's are quite different and we have used the suffixes in the Token Name differently to the Display Name, where we have split the 'Limited' and 'Edition' across the prefix/suffix in the Token Name and added a space in the prefix but just a letter A in the suffix for the Display Name.
The possibilities are endless! (Well, within the character count)