Skip to content

Instances and Generators

Compare
Choose a tag to compare
@lllwvlvwlll lllwvlvwlll released this 25 Jan 00:29
· 54 commits to develop since this release

This release implements some major changes to the contracts and workflow to support more general usecases

Epoch (now Generator)

  • renames the old concept of epoch to generator. The epoch contract has been replaced with a generator contract.
  • maxMint is now a required field for generators. This new field will set the maximum number of a trait that can be minted in an epoch. -1 can be used to ignore this feature. This feature allows generators to mint unique traits
  • Generators are now immutable. To use them, an address can use the createInstance method, then interact with that instance using its identifier. Generator instances come with a number of features including a user whitelist to ensure that individual instances are secure without prohibiting people from using a specific generator or requiring copying everytime someone wants to do something new. the mint counts are unique to each generator instance.
  • traits max options length has been increased by an order of magnitude

Puppet

  • updates puppets to mint from Generator instances
  • Reintroduces the concept of epoch, which represents minting configurations for puppets. Current settings include the mint fee, generator instance id, and max supply. This feature also allows multiple epochs to be concurrently minted from, allowing others to securely create their own puppets.
    Note: mint fees currently arent accessible by anyone but contract admin
    Note: only a user with global set_mint_fee privs can update an epoch's mintFee right now
  • mintFees are now handled at an epoch level so there could be a 4 GAS and 1000 GAS puppet available concurrently. The minting epoch is handled using the data param in OnNep17Payment