NIFTEX Docs
Search…
Changing Fractionalization Settings
Say you want to change some of the defaults that are provided by the protocol for your fractionalization, like the duration of buyouts, the royalties earned by artists, or the minimum threshold required to make a governance proposal. In order to do this, you need to make a (local) governance proposal. This page walks you through the process.
Say we own $GMC24, and we want to change the artist royalty fee from 0.1% per trade to 0.2%.

0. Prerequisites

  • In order to be able to make a governance proposal, you need to own a minimum % of the supply. By default this is 3%. You can verify this number for your fractionalization by going to its details page and checking the Governance settings table. The threshold variable name is ACTION_AUTH_RATIO .
  • As we can see in the table above, the threshold is indeed set to 3%.
  • You also need to know:
    • which governance variable you want to change
    • what value you want to set
    • what the contract address is to send the proposed transaction to.
  • Options are listed in the table in the image above and detailed in Global Governance and Local Governance.

1. The Governance Page

  • On the right side, under Local Governance, enter the ticker for your fractions e.g. GMC24.
  • Click the little blue tag that appears.

2. The ABI

Note that the NIFTEX governance contract uses a proxy pattern, which means that there is one contract that stores state and one contract that forwards calls. The former contract provides the ABI, while the latter should be the destination for calls.
  • The ABI is a bunch of text that shows us what a smart contract looks like and how we can interact with it. It is required in order to construct the governance proposal, which in essence is a simple blockchain transaction.
  • In our case, we want to change a NIFTEX governance setting, so we want the ABI of the NIFTEX governance contract. The verified contract and its ABI can be found here. On the linked page, scroll down to "Contract ABI" and copy the entire text starting with
    1
    [{"inputs":[{"internalType":"address", ...
    Copied!
  • Note that what you copied should start with a square bracket [and end with a square bracket ].
  • Paste the text into the field that appeared after Step 1.

3. Selecting the Function to Call

  • Once you have pasted the ABI, the interface will go through it and organize all the functions you can call in a dropdown.
  • Select the function you need. In our case, this will be setConfig.
  • Once you have selected the function, you need to enter its parameters.
  • The key identifies which setting you want to change. We want to change artist royalties, which in human-readable form is called PCT_FEE_ARTIST , but for the blockchain we need to use the hash of this variable, which can be found in the "Governance settings" table.
Copy the underlined hash.
  • Copy the underlined has and paste it in the key field.
  • The other field, value , is where you propose your new value. Artist royalties are currently set to human-readable 0.1% (1000000000000000 on the blockchain). We want to change this to 0.2%, so that will be 2000000000000000. Enter this in the value field.

4. Select Call Destination

  • In Step 3, you set up the change you want to propose to all other fraction holders, in our case a change to $GMC24's artist royalties. The change in fact a transaction that will be submitted if everyone agrees.
  • In Step 4, you need to select where this transaction should be sent. We want to change a value in the governance contract, so our call destination is 0x04D29b2C66Fd69c5227F0436FD5fd93ac9902B9A, which is the proxy contract for governance.
  • In case we want to send ETH along with the call, we can enter the amount in wei in the "Call value" field, but that is not needed here.
  • IMPORTANT: once you have input all required data, the interface will give you an "Action id". Copy the value of this id and include it in a new thread on forum.niftex.org so others can partake in organized discussion regarding your proposal. Example.

5. Submitting

  • When ready, click the button. Make sure to have created a thread including the "Action id" on the forums before you do.
Last modified 7mo ago