- Alternative token issuance methods for current NFT projects
- Additional requirements for the solution
- Published by Goo
- Optimizing Goo production across multiple Gobbler NFTs
- Goo keeps optimizing
- Goo Token Production for Multiple Gobbler NFTs
When an NFT project has a fungible (ERC-20) token, the communities holding both the NFT and the token tend to part ways over time. We created a mechanism to suppress this divergence and fix it when it happens. We call this Progressive Ownership Optimization, or GOO .
In our upcoming NFT project Art Gobblers, its NFT produces an Ethereum token called Goo . The more Goo tokens a Gobbler NFT address holds, the faster it generates Goo tokens. This means that the total supply of Goo tokens is increasing at an accelerating rate every day, from thousands to millions or more.
Hoarding Goo tokens without owning any Gobbler NFTs is a very bad strategy as everyone else will generate goo tokens and your share of the total Goo token supply will quickly decrease to zero . On the other hand, if you own a lot of Gobbler NFTs, but a small amount of Goo tokens, your Goo production will lag compared to other players.
Suppose you maintain ownership of the Gobbler NFT with a total Goo token production capacity of 1% of total production, and you never remove your Goo tokens. Then no matter how many Goo tokens you start with, you will end up with at least 1% of the total supply of Goo tokens! This ensures that Goo remains under the control of NFT holders for a long time.
Mathematically speaking, the instant Goo circulation is equal to
mult is the multiplier of Gobbler NFT, which is the basic speed at which it produces Goo tokens, we use differential equations to automatically synthesize the Goo issuance over time, and if you have multiple Gobbler NFTs, the Goo issuance will also be automatically balanced.
In this system, thanks to some very lucky math, it turns out that having a Gobbler NFT with multiple multipliers and X is the same as having a single Gobbler NFT with a multiplier of X, which means that as some players gain More Gobbler NFTs and the game will remain fair.
While the mechanism is designed specifically for the Art Gobblers project, it can be used in any NFT ecosystem with fungible tokens. It aligns NFTs and token holders while ensuring the primacy of the NFTs themselves. It’s also fun, especially when combined with other mechanics like VRGDA.
In this article, we break down the details of the mechanism and provide production-ready code so you can use it in your own projects.
Alternative token issuance methods for current NFT projects
There are currently two main ways for NFT projects to issue fungible tokens:
- Airdrops , at a certain point in time, all NFT holders receive an amount of fungible tokens proportional to the amount of NFT they hold.
- Constant emission , each NFT produces a roughly constant number of tokens over time.
One method of constant emission is staking, where NFT holders lock their NFTs in a contract and receive a certain amount of tokens each day.
Another near-constant emission method is Play to Earn, where users who own or have access to a given NFT can play and then potentially earn a certain amount of tokens each day, depending on how they play.
In both cases, the population holding NFTs can become very different from those holding fungible tokens over time.
In the case of an airdrop, as some users sold their NFTs without selling their tokens, while others sold their tokens without selling their NFTs, this resulted in ownership of the tokens with the NFTs Inconsistency (referring to community splits), and there is no force to bring it back together.
Even in the case of constant emissions, because fungible tokens are issued at a constant rate, it is practically impossible for NFTs and fungible token ownership to regain consistency over time: every day, newly issued tokens are in the total supply The proportion is getting smaller and smaller. Also, no matter how many fungible tokens you own, there is no incentive to match them with a fair amount of NFTs and vice versa. Once the groups of NFTs and token holders diverge, there is nothing to realign them.
Additional requirements for the solution
We want to make sure that Goo is purely a utility token and that the Art Gobblers NFT itself will remain the backbone of the economy. We also want our solution to be very efficient, easy to understand by NFT community members, and most importantly, fun to use.
All Art Gobbler NFTs belonging to a given Ethereum account will emit Goo tokens into the corresponding “tank” pool, and the owner of that address can add or remove Goo tokens from the “tank” pool at any time.
The rate at which Art Gobblers NFTs spew Goo tokens is proportional to the square root of the Goo tokens already in the address’s “tank” pool. Each gobbler has its own mult multiplier, which describes the base rate at which goo tokens are spewed.
We automatically compound this instantaneous release using differential equations and evaluate it lazily so that compounding can happen over arbitrarily long time periods without costing any gas.
Goo tokens expand quadratically over time, which is much slower than the exponential expansion common to most token staking schemes.
Goo token issuance can be at its best when Goo tokens are held proportionally to the user’s Gobbler NFT, so the rules incentivize users to hold Goo tokens and Gobbler NFT proportionally. Since the overall rate of Goo token emission has been increasing, these incentives remain strong no matter how much Goo has been issued.
Due to some very lucky math, having a Gobbler NFT with multiple multipliers and X is equivalent to having a Gobbler NFT with a multiplier of X, ensuring that the system remains fair even if some users accumulate a lot of Gobbler NFTs.
mi – Goo token emission multiplier for Gobbler i.
gi (t) – The amount of Goo tokens in Gobbler i’s “tank” pool at time t.
initial Goo i – How many Goo tokens Gobbler i had initially.
For convenience, we will use gi(t), m, and initial Goo, referring to a single Gobbler without the subscript i.
Goo Token Issuance
Art Gobblers with
The rate at which Goo tokens are released.
We chose square root issuance to ensure that Gobbler NFTs are more fundamental than Goo tokens, and the more Goo tokens you add to a given Gobbler “tank” pool, the less utility each new Goo unit has. This means that users cannot earn an equal percentage of Goo tokens by placing a large number of Goo tokens in a single Gobbler’s “tank” pool.
For example, at time 1, if m is 2 and g(1) is 2, the instant Goo token issuance rate would be daily
Expressed mathematically, we have the following differential equation:
After expansion, we get:
Note: For convenience we assume that time always starts at 0, whereas in production one must keep track of the elapsed time since the last interaction with the contract.
Optimizing Goo production across multiple Gobbler NFTs
Imagine you have 4 Goo tokens and 2 Gobbler NFTs, one with a multiplier of 1 and the other with a multiplier of 3.
You want to decide how to distribute your Goo tokens among them to maximize your Goo token production rate.
If you have to deposit all Goo tokens into a pool of Gobbler NFTs, it is obviously better to put them into a Gobbler NFT pool with a multiplier of 3, at which point the instant productivity of Goo tokens is
However, it would perform better to evenly distribute your Goo tokens among the Gobbler NFTs, doing so with an instant productivity of
But it turns out we can do better. For any group of Gobbler NFTs with a multiplier of mi, it turns out that the best way to distribute Goo tokens among them is to divide the total Goo tokens
Assigned to each NFT.
In this case, we will assign
Goo tokens to the first Gobbler NFT, will
tokens to the second Gobbler NFT, then the total instant productivity of Goo tokens is
Goo keeps optimizing
This would be an interesting but not particularly useful outcome if users had to constantly rebalance their Goo tokens across multiple Gobbler NFTs to maintain optimal productivity.
Fortunately, once balanced, the Gobbler stays balanced! To see why, note that, by definition, when balancing,
For convenience, we introduce a new constant
and substituting this into the definition of gi(t) above, we get
Since this is true for all i, we see that regardless of the value of t, Goo tokens are distributed among the gobbler NFTs proportional to their multiplier, which is exactly what we need to maintain optimal Goo production .
Goo Token Production for Multiple Gobbler NFTs
This means that we can automatically balance Goos between Gobbler NFTs once for users, and they will remain balanced.
Even so, if the Goo spawn rate is complex or difficult to understand, the overall system won’t be particularly satisfying or interesting, and users may not know how to interact with it.
Fortunately, this is not the case. The results show that when Goo is optimally balanced among Gobbler NFTs with multiplier mi, the total Goo token output rate is
The multiplier Gobbler NFT’s Goo tokens are produced at the same rate.
In other words, multiple Gobbler NFTs with a multiplier sum of 100 have the same Goo token output rate as a single Gobbler NFT with a multiplier of 100.
Going back to the example above, we can manually verify that this is the case. When we use 2 Gobbler NFTs with a multiplier of 1 and a multiplier of 3, and balance 4 Goo tokens between them, and achieve an instant Goo token output rate of 4, this sums the 4 The same goes for Goo tokens stored in a single gobbler nft pool with a multiplier of 1+3 = 4, and the output instant Goo token output rate is
. We can see that if we have four Gobbler NFTs and they all have a multiplier of 1, the total Goo token production rate is
The end result is that having a Gobbler NFT with several multipliers and a sum of 10 is the same as having a Gobbler NFT with a multiplier of 10. This is very intuitive and fortunate in that users can simply do this without manipulating the production rate of Goo tokens by changing the distribution of Gobbler NFTs between wallets.
Since the number of Goo tokens expands quadratically, holding it and not holding Gobbler NFTs is a seriously wrong decision, as you will not generate any new Goo tokens and you are in the overall Goo The proportion in the token supply will decrease rapidly.
Additionally, we can see from the auto-balancing section above that when Goo tokens are distributed in proportion to the mult multiplier, Goo production across the ecosystem reaches an optimal rate. So if you have a lot of Gobbler NFTs but very few Goo tokens, your Goo token production will lag the market and you will be beaten by your competitors. As such, users are incentivized to keep their Goo tokens and Gobbler NFT holdings roughly the same.
More formally, let’s say you have a gobbler NFT collection with a total multiplier M, if you never remove any Goo tokens, then by the definition of g(t), we can see that eventually your Goo tokens are Coin supply will be approximately equal to
Suppose the sum of the multipliers for all Gobbler NFTs is Q. If Goo tokens are fully balanced among all other Gobbler NFTs, eventually their Goo token supply will be approximately equal to
, so the total supply of Goo tokens will be
. And your ratio will be M/Q, which is the ratio of your total Gobbler NFT multiplier.
If Goo Tokens are not perfectly balanced among other Gobbler NFTs, then your percentage of the total Goo Tokens will actually be greater than the percentage of your total NFT Multiplier.
Of course, this only happens if the total multiplier remains constant over time, which may not have anything to do with how the rest of the system works. Otherwise, you may have to take steps to ensure your share of the total multiplier remains the same.
You can find a highly optimized, production-ready implementation of GOO at transmissions11/goo-issuance, and pull requests for improvements are welcome.
GOO was designed for the Art Gobblers project, but we believe it works for various NFT projects and on-chain games. If you want to issue a fungible token via NFT while ensuring that users hold NFTs and tokens roughly proportionally, then the GOO token model may be for you.
If you’re interested in integrating GOO into your project, we’d love to hear from you.
Interviews:samczsun,Riley Holterhus,Aaru,Otto Suwen,0xMisaka,NN Blossoms,DCFPascal,kootsZhin,snoopy,Ben Leimberger,shant,0xQTpie
Translator’s Comment: The “GOO” token issuance mechanism proposed by Paradigm aims to solve the problem of community division of the same NFT project, but the premise is that the issued token is a functional token with continuous inflation. Governance tokens, this model seems to be inapplicable. For some chain game projects, the issuance of functional tokens may consider adopting this model. In addition, tokens issued in this way are unlikely to be traded on centralized exchanges, because the model discourages token speculation, and exchanges also need to protect investors from unknowingly buying such tokens.
Posted by:CoinYuppie，Reprinted with attribution to:https://coinyuppie.com/this-article-understands-the-goo-token-issuance-mechanism-proposed-by-paradigm/
Coinyuppie is an open information publishing platform, all information provided is not related to the views and positions of coinyuppie, and does not constitute any investment and financial advice. Users are expected to carefully screen and prevent risks.