Upgradability
In section URI we discussed how the collection will turn from a static one to a more dynamic one. This means that the metadata, visuals or even valuation could change per request of the holder. Think of it as having an in-game character you're able to equip with gear, change the appearance of or make stronger by boosting stats or specialize in certain fields with talent trees. It goes back to what we've said in Metadata and Dynamic, where everything grows and evolves.
The dilemma
We understand that those who trade based on how rare or unique something is prefer frozen metadata, but we firmly believe this definition of (e)valuation for NFTs is short-lived and already proves to become a thing of the past.
That does not mean this couldn't be done nor does it say that the metadata will be ever-changing, but the possibility for doing so remains open to accommodate to the collection's needs.
We've already hinted towards the two methods of upgrading, namely the manual or automatic approach.
Manual
When automatic changes haven't been unlocked yet, we'll only be able to do upgrades manually. These will require our - the owners of the contract - effort using the input of the holder. Let's use a mixture of reality and analogy to describe how this process would look like:
The owner of an NFT visits the store (a dashboard on our site).
The store owner gives the holder a menu depending on what NFT this customer holds.
The menu has a summation of all the possible changes one could request, each showing an ETA on how long this will take to complete.
The changes the customer is eligible for ranges from simple ones to more labor-intensive ones, dictating the diversity in price tags.
When the customer makes a choice and pays the asked fee, the request gets registered and picked up by the people working in the back (the backend or blockchain).
Once done, the request gets labeled as being ready with the changes stored in a temporary token slot.
Now, the customer is left with three options, he either accepts the outcome, asks for additional changes or declines and gets refunded most of the fee.
After accepting, the holder is now able to switch between the slot we've populated with the requested metadata and the existing one. For more on the concept behind non-destructive changes, see Token Slots.
Automatic
Automatic upgrades will become more interesting, for these won't make it necessary for us to come in between the holder and the requested change. Most will be possible to do completely on-chain, but for some we may need to implement off-chain solutions due to it being impossible to take care of without using off-chain resources.
Automatic upgrades work by using Base64 URIs. This can become a bit challenging to understand if you label yourself not to be that technical, but we invite you to try and read more about this concept in META64.
Examples
Here follows a list of examples for potential upgrades, both manual and automatic, that we could implement (we emphasize could, since this is just to give an idea to what is possible to implement):
Changing the storyline for your character (description change)
Request a colored version of your NFT and upgrade its rarity class (art commissions)
Request more token slots
Upgrade stats, change metadata or introduce dynamic metadata
Change the framing of your card
Change the interaction with your card
Link NFTs together and let them bond or synergize
Upgrade the royalty amount your NFT collects based on its (e)valuation
...
Last updated