bound-layerable
bound-layerable copied to clipboard
Smart contract template for binding and layering tokens
Currently hard-coded to check for `tokenId % NUM_LAYERS_PER_SET == 0`, which prevents setting custom starting token ID, etc
See https://github.com/Vectorized/solady/blob/68699019a4cfaaa22ef1e612bac085fc3ba508f6/src/utils/LibPRNG.sol
Ie "stats" layers - "Strength" and score out of 10 or 100 Can use to influence overall stats (cumulative) or per-trait
Add distributions for trait expressions Allows for different traits with the same layerId depends on #9
Hash along with batch randomness seed so each contract will produce totally different results for a given `tokenId, layerType, batchSeed`
Change `Attribute` mapping to `Attribute[]`. See unfinished `MultiOnChainTraits.sol`
shit don't even work
Post-merge, PREVRANDAO is an acceptable source of randomness, and would simplify the randomness process. Constructor of a PREVRANDAO-based source of randomness should revert if chain associated with `block.chainid` does not...
We should always store layerId for base tokens upon binding, since they may be re-bound or rearranged, and the extra 100-200 gas to read the extraData from warm ownership slot...