In-depth
- Stores version
- Stores owner
- These can't be changed. If you need different banks, create a new Transmuter
- Each bank can be used to configure a whitelist of allowed tokens
- Both of these come into play when "requesting" stuff from user
- Can create as many of these per Transmuter as you want
- Each mutation
- Requires up to 3 gem banks to be filled by the user
- Returns up to 3 tokens from escrow
- Knobs you can turn to configure mutations to your needs:
- Total charges (how many total users can execute the mutation) - can be 1 or more
- Number and mints of NFTs that have to go in (can be fungible tokens too!)
- Number and mints of NFTs that come out (can be fungible tokens too!)
- What happens to old NFTs (locked / moved to project / returned to user)
- Whether a mutation is reversible (kinda like token entangler)
- How long the mutation takes (can be instant)
- How much the mutation costs to execute / to reverse (can be 0)
- Like mentioned before, you have 3 banks to play with
- Why use 3 banks and not eg ask the user to put 3 NFTs into one? Because whitelisting. You can configure whitelisting per bank
- So eg you might configure:
- bank A allows only NFTs A, B or C
- bank B allows only NFTC D, E or F
- bank C allows only token G - which are actually fungible tokens
- The user then has to fill up these banks with requested amount, in order to trigger a mutation
- If all of these were in the same bank, the user could have uploaded 7 of token A and be done
- What does “filling” a gem bank mean?
- There’s 2 units you might request from a user:
- NFT count
- Rarity point count
- eg you might say “I want you to upload 20 NFTs from this list of 10k”
- or you might say “I want total rarity points to be 352” and the user will have to upload enough NFTs to hit that number
- What happens to uploaded NFTs? 3 options:
- stay locked in contract forever
- vault with NFTs assigned to mutation owner (they can withdraw or do whatever they want)
- nothing, the user can withdraw (useful for breeding)
- You can return up to 3 mints per mutation. This means:
- This works: return 10 of mint A, 5 of mint B, 25 of mint C
- This doesn't: return 10 different NFTs, where each is a separate mint
- One more time to emphasize the assymetry here:
- You can request ANY number of mints via the 3 banks
- You can return ONLY 3 mints
- This is due to all kinds of limitations Solana puts on you
- If you want to return random NFTs, simply configure a Candy Machine and then give out whitelisting tokens for that to users
- So eg if you want the user to put 1 NFT in and get 1 random out - ask them to put 1 in, give them a WL token, they use that token with the CM to actually get an NFT, which will be random
Last modified 1yr ago