Divisible NFTs
We Like the 404s
The true potential of 404s will soon become startlingly apparent. A transformative shift in the digital asset space is here that will permanently alter how both coins and NFTs are created, traded, and valued. 404s offer interoperability, efficiency, and utility previously unseen. 404s are a pivotal infrastructure for the future of blockchain ecosystems—a sum greater than its parts.
Since the early days of 2021's NFT mania, the fractionalization of unique NFTs into fungible divisible units has been attempted and experimented with in a variety of ways. Be it for shared ownership, buying into an NFT without committing to its full floor price, strengthening liquidity mechanics, or any number of other novel applications. "Tokenifying" NFTs is a nut the industry has long been trying to crack. NFTAMM protocols like NFTX and Sudo have been the primary players in this field, and they do great work providing crucial NFT infrastructure to the wider ecosystem. Recently, however, a new means of merging the uniquely collectible nature of NFTs with the divisible liquid mechanics of ERC-20 tokens has arisen: 404s.
404s came to public attention with the launch of ctrl’s Pandora, a pivot from Serec’s initial Emerald experiment. Pandora experienced massive price appreciation in a short period and naturally, heads began to turn. NFTs tied directly to tokens on chain, it seemed like the leap forward the space had been waiting for. Pandora was designed in such a way that every NFT was represented by an ERC-20, issued by the same contract. When someone has a whole ERC-20 (one token) they are issued an NFT, but if they sell a fraction of the token, the NFT is burned. So, if you hold 1 Pandora NFT, meaning you have 1 Pandora ERC-20, and you sell 0.25 of the ERC-20, the NFT would be burned and you would be left with no NFT and 0.75 ERC-20. People were very excited by this concept.
It wasn't long, however, before obvious flaws in Pandora's 404 implementation were pointed out. 0xQuit outlined in an 𝕏 thread how a user may be able to trick the smart contract into exchanging full NFTs for dust amounts of the ERC-20. These issues are solvable, but other greater design issues remained.
Enter DN404. DN404 is a redesign of the 404 mechanism.
Let's say you mint an NFT from a DN404 collection. As part of that transaction, you'd be issued your NFT on an ERC-721 contract as always, but under the hood, you'd be issued 1 token of the collection's ERC-20. Like all ERC-20s this token can be fractionalized. However, under DN404 if your balance in the ERC-20 drops below 1, your NFT is automatically burned. Similarly, if you hold two NFTs and, therefore, two ERC-20s but send 0.5 ERC-20 to another address, one of your NFTs would be burned and you would be left with a single NFT and 1.5 ERC-20 tokens. The separation of the NFT contract from the token contract solves both protocols being fulfilled, making it easier for NFT exchanges to exchange it as well as DEXs.
What happens when you transfer ERC-721 token IDs directly? You keep them! IDs are only burned on the direct transfer of ERC-20s to a contract or when enough of an ERC-20 is transferred to break apart whole ERC-20 tokens.
Scatter’s goal is and has always been to allow creators access to the best and most cutting-edge NFT technology available, and we see great promise in DN404. This is why we are pleased to announce that DN404 contracts will soon be deployable on Scatter.art
The emerging bullrun seems as if it will be unlike any other before. Future 404s will likely enable NFTs as a protocol to more regularly reach the kinds of insane heights that previously only the most manic meme coins have reached in the past. DN404s may even overtake pure meme coins as the vehicle for euphoria. Would you rather own only a generic ERC-20 token or also a funny liquid JPEG that has its own unique rarity? We’ve already seen major meme coins mint “official” NFT collections to be the face of their coin on the timeline. Why not launch both at the same time?
What are DN404s?
DN404s (DN = Dual Nature or Divisible NFTs) are an innovative way to fuse NFTs (unique non-fungible ERC-721 tokens) with divisible (fungible) ERC-20 tokens. DN404s allow “404 not found” NFTs to be natively fractionalized.
Divisible NFTs do not mean the individual NFTs themselves are fungible. Each ERC-721 NFT is still unique but also has an ERC-20 amount associated with it. There is shared ownership possible of a given “404 not found” ERC-721 token.
Divisible NFTs are a “new” way of doing what NFTAMMs like NFTX previously enabled. There are multiple types of Divisible NFTs. 404s are a single type. More will surely come.
NFTAMMs like NFTX still have their value and place. Not all NFTs need to be Divisible NFTs. Due to the benefits of DN404s, most future NFTs will likely be a version of them.
404 Deep Lore
Currently, there are a variety of styles of 404s out there and many of them are doing extremely well. There is drama in the genesis of the 404 idea (fusing ERC-20s with ERC-721s). Early 404 attempts had technical issues, some felt rugged and created their own attempts. Those attempts had critical issues too, and so the DN404 team spent many sleepless nights to create a well-thought option that is both gas efficient and compliant with existing standards. Currently, most 404 implementations are steering toward the design decisions of DN404 even if they are using different names. DN404’s overall principles are likely to be the long-term winner.
This is written like a history book, but crypto moves at the speed of light, and days feel like ages. From the point of 404’s genesis to the posting of this article is less than a month.
All code is built on the shoulders of giants. ERC-721A and Solady were critical steps toward DN404.
DN404 would not at this time have been made without the high-tier team who came together to create a better option for everyone to use.
- vectorized.eth (@optimizoor)
- Quit (@0xQuit)
- Michael Amadi (@AmadiMichaels)
- cygaar (@0xCygaar)
- Thomas (@0xjustadev)
- Harrison (@PopPunkOnChain)
404s as a concept was popularized in large part by those diverging groups who took the original conception and pivoted it into their own thing. Even though projects like ctrl’s wildly successful Pandora (“ERC-404”) had issues, they are still extremely significant in the greater 404 story and continue to drive the 404 narrative forward. There are other noteworthy projects such as Cellmates (“ERC-20721” or now labeled as "xNFT") which are also significant in this greater story. Serec too is pushing his version forward as "SJ741" (721 + 20 = 741). There's more to the story too, people who had similar ideas and did similar experiments, other groups trying to popularize their own "standard" of the general idea, because they realize the massive potential in it. The reality of “who made/did what” is not a question, it is an immutable fact permanently on-chain. The reality of good code is indisputable. Every other project out there will align with what DN404 (and by extension the work that inspired DN404) has already done and solved. That's a good thing. When ERC-721A was embraced by the community, the chain was able to breathe again. As DN404 is embraced, everything gets better.
Deleted tweet was here. https://archive.is/mCbRD
Scatter worked with the DN404 team to improve DN404 for the specific use cases that NFT primary minting over pure DEX trading has. We've taken extra time to work through important issues and make sure that everything that matters has been addressed.
Scatter believes that DN404 will be where most 404-style collections choose to converge over time. DN404s are the best thought out, most efficient, most technically backed option. From the same devs who manifested ERC-721A to save Ethereum when inefficient contracts were terrorizing the chain. As people wish to make new novel concepts based on the core 404 idea, they will predominantly use/fork/copy DN404. Scatter’s version of DN404 will meet most use case needs where there is a desire for an NFT primary mint. As more people make more specifically useful remixes, no matter what code they are using, as long as the code is good, we will support them through our Contract Marketplace.
DN404 Features Explained
Early 404 concept implementations had critical flaws (inefficient gas, no conservation of IDs, rarity not preserved, not following ERC standards for events, dangerous edge cases, improperly implying an actual ERC standard - a disrespect to everyone who has worked to create actual ERC standards) which DN404 sought to rectify.
DN404 separates ERC-721 and ERC-20 functionalities into distinct contracts. When you deploy a DN404 contract pair, both sides are deployed and permanently linked. One side is the ERC-20 token, and the other side is the ERC-721.
DN404 is completely compatible with both ERC-20 and ERC-721 behavior and thus should be compatible with any kind of system built for ERC-20s or ERC-721s.
Scatter DN404s also include all Scatter Archetype features that you may already be familiar with and are listed in our docs.
When DN404s are discussed on Scatter it is specific to Scatter DN404s. Other DN404s may behave differently so beware and have care.
DN404 Purpose
Perhaps the most immediate purpose served by 404's design is that it provides a built-in mechanism for liquidity pools and fractional exposure through the existence of the ERC-20. NFTX and Sudo have served this purpose effectively in the past, but NFTAMMS tend to be gas-intensive and often involve a learning curve for artists and teams. The volume on NFTAMMVault ERC-20s has, with some exceptions, been underwhelming. Sometimes, the lowest common denominator NFT mintoor may not even know NFTAMMVaults exist, much less how they work. With 404s the ERC-20 is deployed alongside the NFT without any extra steps or middleman protocols. The tie between the NFTs and the tokens is hard-coded. Therefore benefitting from ERC-20 tokenomics does not depend on attracting people to deposit/stake in an NFTX vault after minting. For a collection looking to max liquidity and tradeability, deploying a 404 may save much of the "leg work" often involved in ERC-20'ifying an NFT collection.
Past just the immediate economic implications, 404s generally may also prove an avenue to new on-chain game concepts. Rarity and scarcity within collections could look majorly different under a 404 scheme without the conservation of IDs for example. With different NFTs of varying rarities being burned/issued as ERC-20 balances change, the collectible dynamics of your collection can be dynamic and ever-changing. One could easily envision this “living” aspect of the 404 concept being prime fodder for collectible-centered on-chain games.
Note: The base DN404 contract does conserve IDs — meaning that IDs are not infinitely printed. If you have a project where you want to have the infinite burning/minting of IDs let us know about your project and its needs. There are obvious game concepts that would benefit from the potential of infinite IDs.
The lines between NFTs and tokens have become increasingly blurred, not just economically, but culturally. Throughout this year’s “meme coin” hype cycle, we saw many NFTs launch as an extension of ERC-20 communities, a practice of course made famous by the great and powerful Sprotogremlins of the $BITCOIN community. 404s further this synthesis by directly linking the ERC-20 and the NFT. No longer shall interlopers be able to don an NFT and insert themselves into the community, the NFT holders are the token holders, and vice versa.
New Ownership Paradigm
- NFTs (while in the “404 not found” state) can now effectively also natively be ERC-20 tokens. This is an oversimplification, but it’s the big idea.
- Owning 1 ERC-20 token gets you an NFT and owning .9999 of an ERC-20 token means you do not get an NFT, but you own a portion of a possible unique token that is not currently minted (it is 404 not found).
- Liquidity is more fluid as you don't have to trade for $5000 amounts to participate in owning an NFT, but rather you can own a part of a token for $1. This was possible before through traditional NFTAMMs, and still is for any non-DN404 ERC-721; however, the friction is now lower, and “fractional” ownership can now natively be part of a token pair.
- Through all of these things, we can now say that NFT collections can be natively fractionalized. It is still true that individual NFT is not fungible, each token ID is still a unique thing, but for tokens which are “404 not found” their ownership can be fractionalized.
DN404s are a new funny money way to trade in the crypto world. This one is interesting though because it solves a core problem with NFTs liquidity where you would have to go through some other type of token that represents an NFT, which is annoying. After all, only hardcore NFT users would probably participate in that ecosystem (as previously mentioned, most people don’t use NFTAMMs). Now that ecosystem is no longer gatekept, anyone can participate which of course results in much more gravity being able to flow through the ecosystem.
DN404 is not the final permutation of this concept. Certainly, more ideas are cooking that will remix this idea further in useful and exciting ways. Scatter is cooking. 👀
Understanding DN404s for Collectors
When you mint a DN404 NFT, you also get enough of an amount of an associated ERC-20 token for that NFT. Your DN404 NFTs are tracked in order of you acquiring them. If your wallet loses an amount of the associated ERC-20 linked to your NFTs, one or more of your NFTs will be burned. These unique token addresses then become available for others to mint as others attain large enough amounts of the ERC-20 token to claim an NFT.
The total max collection size remains the same through the burn/mint process. As ERC-20 tokens are distributed, the amount of minted NFTs may be lower than the max possible collection size.
If you wish to keep certain NFT IDs, you should transfer them to wallets where you are certain you will not transfer out the required amount of ERC-20 tokens associated with them.
If you do not have enough of an ERC-20 token for the amount of NFTs you have through a transfer transaction of ERC-20s, you will burn one or more NFTs in reverse order of your acquiring them. So if you have 5 IDs (1, 2, 4, 10, 25) that you acquired in the order (25, 2, 4, 10, 1) the 1 token will be the first NFT to burn if you do not have enough of the ERC-20. Again, to keep specific IDs safe, transfer them to wallets for safekeeping.
As DN404s are a new concept, marketplaces do not yet understand how to deal with transfers of them. So, do not expect marketplaces to be able to enable you to buy/sell DN404 NFT tokens right away.
A way to think of it is that you have multiple progress bars going from 0 to 100% stacked in order. As you add or remove ERC-20 tokens, you are adding or removing from those stacked progress bars. As a progress bar fills up to 100%, a unique NFT ID is minted or reminted. As a progress bar lowers below 100%, an ID is temporarily burned.
As a collector, you should know the risks of DN404s. With previous ways of doing AMM such as NFTX, it was always possible for collection owners to rug liquidity if they have taken steps to be able to do so (such as self-minting a large amount of supply, or not locking max supply and minting more extra tokens after “mint out” to dump into bids). DN404s lower friction in the AMM pipeline, which doesn’t necessarily add risk, but does make what previous AMMs do more native to an NFT. Trust good people, but trust trustless code more.
DN404 Collection Launch Best Practices
You should know what you are doing if you wish to launch a DN404 collection. Scatter makes it easy and convenient to deploy and removes a lot of the worry for the technical aspects. Still, launching any collection is a serious undertaking with DN404s having the potential to be even more stressful and high gravity.
404s are collection types that are not necessarily meant to have all IDs in a minted state all at once. Rather since it’s very likely for the ERC-20 amounts to be dispersed in such a way that a large percentage of holders don’t even have enough to have a single NFT. Scatter’s DN404s are still designed to enable collections to “mint out” through the normal minting process of minting ERC-721 tokens directly. However, it’s unlikely that when normal “mint out” is reached the total supply actively minted is equal to the max supply through the effects of ERC-20 dispersion.
Instead, the available IDs will cycle in and out over time from the burn pool (last added first out) as large enough ERC-20 amounts are transferred between wallets. While some people collect specific rare IDs that they never allow to recirculate.
DN404s were originally designed to mostly be distributed through decentralized exchanges (DEXs) like Uniswap where prices are automatically dynamically calculated through supply and demand. Scatter’s DN404s are adjusted to also be useful to be minted through the normal NFT minting process. However, again, not all 404s are meant to eventually become fully “mint out” like typical NFT collections are or just take much longer to mint out by design (such as when a linear curve minting list is used).
Use Dutch or Liner Bonding Curve prices
Our contract supports setting Dutch, linear, or standard pricing styles for lists.
- Dutch 🔥🆕: Price can begin at a high price and go down over time. People buy-in on the price they wish to buy in on, and FOMO is created as mints come in at a given price. The price paid must be at or higher than the current required price. The minimum price can be whatever you want it to be, but we highly recommend you set it to zero at least on one list (such as a whitelist of wallets) so that the potential for it to be a free mint is there even if it never happens, and if it does, it will encourage mint out and actual price discovery to happen. Our Dutch list type also allows you to start at a low price and go high over time too. With list limits, this can enable a different kind of sale.
- Linear Bonding Curve 🆕: As mints come in, the price goes up. Price is allowed to be within a small acceptable range above the current bonding curve price to allow some wiggle room and if the price is too high above the curve the transaction is rejected. Additionally, the minter can set a higher price they are willing to pay to avoid failed transactions. No matter what, if a user sends more than is necessary for the current spot price of the linear curve the additional amount they sent will be refunded to them. If their transaction is too slow, or too many others mint before them, they will still have their transaction fail and revert if they do not set a high enough price. During very hype mints a minter will want to put the maximum price they are willing to spend, then they can know if the price doesn't reach that point they will not overpay.
- Normal: Standard pricing. Pay the price asked.
You can have multiple pricing styles on multiple different active lists. For example, you can have a Linear list setup for the public along with a Dutch or Normal list for a private whitelist with list limits set. Take care that you do not enable situations where single individuals can get too much supply for too low of a price compared to others.
Dutch is likely the best option for doing DN404s as primary NFT launches as it is what most strongly enables the community to move toward price discovery. As soon as the right price appears, the primary mint out of a collection should be very sudden.
Use whitelists + wallet / list limits
Botting mints can have disastrous effects on a DN404 project. When one person can capture a large enough amount of a supply while others still want that supply they can have a strong advantage.
You can keep things fairer by preventing single individuals from botting your collection by not having a public mint list, or limiting the amount of total supply the public list is allowed to mint. This combined with wallet and list limits can prevent too much supply from going to one person.
Project launches are exciting. People will want to be able to mint a highly anticipated project. However, public lists will always enable botting to some degree. Therefore, you may also want to have any public list also set up as a Dutch auction where the price starts high and gradually goes lower over time toward zero, or a bonding curve where the more mints the higher the price becomes.
Use list starting times
Having start times set for individual mint lists allows for a period of anticipation where people can prepare to mint. The countdown will show up on your Scatter mint page and the times will be localized to anyone around the world’s local time. Having a “go” time that everyone uses keeps the initial mint fair.
If you want a custom minting site, also link to Scatter
Scatter provides templates to enable you to create custom minting sites that are compatible with Scatter contracts. Creating custom dApps can create edge cases that you have not yet tested for depending on what you are doing.
Scatter’s front end has been extensively tested and is as bug-free as we can make it.
Scatter’s services are battle-tested and can handle very large bursts of traffic.
Reward your holders, give incentives beyond owning a whole token
Your community will over time continue to fractionalize the 404 IDs. You will want to create stepped incentives for holding various amounts of a token and not only reward whole owners. For example, membership gating can be done for people who own 0.25 of a whole ERC-20 token in a DN404 pair, instead of only requiring a whole ERC-721 NFT for membership.
Setup your Liquidity Pools
You want to stake liquidity within pools for two reasons. The first is to enable trading so that people can sell into the pool. The second is so that you can profit from pool fees. Ideally, you would put nearly 100% of mint proceeds into your collection’s liquidity pools and keep them there while only withdrawing the earned fees as your income. This is a practice groups like Remilia figured out a long time ago and have profited from well while so many others did nothing while marketplaces took away their trade royalties. Putting the maximum amount into liquidity pools requires long-term conviction in your project, which is exactly where you should be as a project creator.
UniV3 is better liquidity earnings if you are whaling liquidity while UniV2 is fairer to all providing liquidity. With UniV3 you withdraw your liquidity earnings separately.
Lock your Total Supply before minting begins
Choose your total supply and stick to it. Scatter contracts allow dynamic changing of total supply by contract owner as there are a variety of situations where collections publicly plan to increase max total supply. However, for DN404s you likely wish to permanently demonstrate token scarcity by permanently locking the max token supply. This can be a point of marketing where before minting begins various settings are permanently announced to be locked and able to be checked on chain.
Transfer contract ownerships to a multisig controlled by multiple different trusted people
Collectors want to know their assets are secured. If a single wallet has control over a contract that has some important settings possible to change, this can be spooky if the wallet controlling it isn’t someone who is highly trusted.
Do sensible airdrops to good holders
Use our Holders.art tool to snapshot collections and give limited amounts of high-value holders a free mint. Advertise to those holders that they exclusively have a free mint. Free mints are setup by creating a list, setting the price to zero, and typically wallet limit to 1 and list limit to some amount. You can set a list end time as well so that there is some urgency to claim. This type of “airdrop” allows only interested people to claim tokens.
Use existing ERC-20s as payment
Scatter lists can be setup to accept any ERC-20 tokens for minting at any amount. You can setup onboarding to your project for any external meme coin project, or even another DN404’s ERC-20 token as long as it is a compliant ERC-20 token. Be warned that some ERC-20 tokens are not compliant and have restrictions such as an inability to transfer amounts over a certain amount at once. Scatter’s withdraw function is all or nothing, which means if you accept a non-compliant ERC-20 that has such transfer restrictions those tokens effectively be locked in your minting contract forever.
Free mints? You need to be smart about it.
If you give some kind of claim to get your tokens free then you need something real to keep people believing in your project and not just immediately yeeting the claim they got into the LP. If you give whole tokens then that means people can claim whole NFTs. If your art is appealing, you want to show them the art they get so that they can bond with the art they get. Otherwise, if they only get a fraction of an ERC-20 token, they'll never get any art, and be more likely to yeet what they have for some quick cash.
Collection Migration to DN404
If you have a collection you would like to migrate to DN404 this is possible with Scatter’s DN404. The process is relatively simple and can work with any original contract as long as you have control of it. Let your holders know you are migrating. Update the base URI of your original collection to reflect it is being migrated and where to get info / what to expect. Create a new DN404 collection through the Scatter site. Airdrop new tokens to original holders using our highly optimized batchMintTo contract feature meant for doing efficient airdrops.
Our docs are very complete and you should read over them to understand how Scatter works. If you need assistance you can reach out to us by creating a ticket in our community server or DMing us on 𝕏. Do not be shy. We have a professional support team and are happy to help and make sure that all launches are smooth.
One big gotcha for collection migrations to DN404 is that when you airdrop a token to a contract, that contract gets only ERC-20s and not the ERC-721 NFT IDs they originally had. Currently, we recommend running a script that detects which IDs are owned within a contract like a Safe, redirecting those IDs to be minted to a wallet you control, and then manually sending those IDs to the wallets that should have them. Reach out to us if you need help with this. In some cases, IDs are stored in NFTX contracts, and dealing with these situations is a little more complicated, but still possible as long as you mint those IDs to a wallet you control. You will need to look through the contract types you are dealing with to understand which ones you can transfer ERC-721s to and which ones (like NFTX) you need a different solution for. For example, for IDs within an NFTX, you may want to randomly airdrop to holders of a whole amount of NFTX tokens. You can also give your community a warning in advance to remove their tokens from contracts like NFTX or Safes to make the migration smoother.
Scatter for DN404s
Scatter provides a safe and trusted platform for minting out collections. Our services have been battle-tested, and are setup in a way to minimize human error.
Scatter does not allow arbitrary code that is not audited by our team. So you know that DN404s launched with us use standard code and do not allow anything nefarious.
Collections that are launched on Scatter can have a normal Scatter minting page as well as a custom minting page on any domain you control. We provide a variety of dApp templates that you can modify to your collection’s needs. Check this repo for the most basic implementation of a dApp along with links to more customized versions.
Collections that launch on Scatter become part of the Splinter network. This means that they can be imported on any Splinter of a specific chain as they launch and benefit from everything Splinters enable for collections.
Launching with Scatter has significant advantages. Our features make it easy and less stressful to launch and are flexible to your needs. With Scatter, you get access to our homepage and promotion from our socials, access to the Splinter network - non-Scatter collections can't be imported into Splinters, and access to everything that is coming next. Don't go alone when we are happy to help you launch.
Conserved IDs
Vanilla DN404s on Scatter have conserved IDs. Other types of 404s may increasingly generate higher token IDs as tokens are burned/minted. When Scatter DN404s are burned, the IDs become “404 not found” on chain until they are found by some wallet minting them again through attaining a whole number of paired ERC-20s.
Though IDs can be temporarily burned into a “404 not found” state they are not permanently destroyed, they are made dormant until another person claims them again through minting the dormant IDs. Burning as a term is appropriate for 404 styles that do not conserve IDs, but for DN404s that do conserve IDs, another term may be more appropriate for clarity.
Conserving IDs is important for some kinds of generative collections where you want a maximum amount of generated art, and don’t want to create rarity problems that could be possible with infinitely growing token IDs, which is a problem for some 404 implementations — rarity becomes meaningless as anyone can potentially reroll until they get a “rare” thing. This behavior could be desired in some applications, but generally it is not.
If you have a custom project where you do want non-conserved IDs talk with us about it.
Gas Bad
As DN404s include more general on-chain functionality with every transaction, the total gas usage for a DN404 is also higher. While DN404 offers significant reductions in gas usage over the original versions of 404, there is no escaping that DN404s cost more gas in general than a typical ERC-721A. This extra gas usage will translate to higher general gas prices for the chain during peak mania of transactions as well as higher than expected gas fees even while gas is lower.
DN404s are a hot new concept. Still, not all collections need to be DN404s. Your holders will have fewer gas fees for their transactions if you choose a contract type that does not include these extra on-chain features.
The early versions of 404 were incredibly gas inefficient to the point of being blockchain terrorism. As DN404s are more exclusively used, the gas issues we all faced early in the 404 mania should not be as big of an issue.
Experimental Software
The DN404 concept is still new both as a generally accepted concept and as far as code maturity goes. DN404 was coded and optimized by a capable and talented team. The DN404 contract is still provided “as is” and includes no guarantees or warranties. You use it at your own risk both as a creator and as a collector.
When you deploy your collection on Scatter that collection belongs to you. Deployed collection code can't be upgraded. Collections launched on a fixed version of DN404 will stay on that version. We will update our collection deployment factory to new DN404 versions as they are released, but this will only impact new collections launched with our factories. New DN404 versions should generally mean better gas savings and not major feature changes as everything that was a major issue has been addressed by the DN404 project already.
Archetype DN404
Scatter's Archetype base contract includes all of the basic features you expect from collections launched on Scatter. Scatter’s team has combined our base Archetype contract with DN404 to enable all features from both.
We are looking into adding more optional features / variations as well. If you need specific exotic features for your project please let us know so that we know to prioritize it.
Supporting Developers
Scatter’s version of DN404 is the first example of a contract that is released through our Contract Marketplace system. Scatter’s Contract Marketplace is a system to encourage and reward developers for innovating and sharing their exciting work with the world in a safer and more reliable way.
For most of the Web3 timeline, developers who write the basic contracts that you use do not see a cent from all of the collections that use and benefit from their work. Scatter is aiming to change this to align incentives with developers and artists so that both sustainably benefit more long term.
Scatter’s initial vanilla DN404 contract will include a 5% Contract Marketplace royalty from mint proceeds to the developers of DN404. To be specific, the payout address is a multisig that these developers control. The developers of DN404 are (in order of their credits in the DN404 source):
- vectorized.eth (@optimizoor)
- Quit (@0xQuit)
- Michael Amadi (@AmadiMichaels)
- cygaar (@0xCygaar)
- Thomas (@0xjustadev)
- Harrison (@PopPunkOnChain)
Serec (@SerecThunderson), the dev whose work sparked the 404 mania, is also included on the multisig that is assigned to be able to withdraw Contract Marketplace royalties for the vanilla DN404.
Do note that this group of developers controls the payout multisig. It is up to their team to decide when to withdraw their Contract Marketplace royalties from collections, that use the vanilla DN404 contract, which are launched on Scatter, and it’s up to them how their funds are distributed among their team.
As a creator, if you launch your vanilla DN404 with us, you’ll benefit both from Scatter’s services, as well as the hard work of these independent developers, who have a long history already of contributing to the ecosystem as developers.
To be clear, Scatter is who chose the 5% Contract Marketplace royalty as this is what we believe is fair for everyone, and we hope this will become a standard for more developers to come to create new contracts and release them also through Scatter’s Contract Marketplace program.
You as the artist of your collection get the lion’s share of your collection’s mint proceeds. In the case of DN404 on Scatter, you will get 90% of the total mint proceeds assuming you do not also enable affiliate minting for some percent.
As usual, Scatter doesn’t take any other fees beyond a % of mint proceeds. In the case of this contract, neither will the Contract Marketplace royalty be used for anything except for a mint proceeds %. Normal marketplace royalties belong entirely to the collection owner. There are no taxes added for secondary transactions.
Again, this is the first example of our Contract Marketplace being used. We look forward to working with more developers to release more innovative contract types for all to use be they launching on Scatter or any Splinter. Your use of DN404 on Scatter directly supports developers and our longer-term mission of incentivizing more useful contract types that will keep Web3 fun and exciting.
Are you working on a novel contract type that would be useful to many others? We would love to hear about it and help you ship it on Scatter.
Burn Pool ID Queue
The functionality of the burn pool operates as a queue. When an ID is added to the burn pool, it joins the end of the queue. Consequently, when a burn pool mint occurs, the ID that is selected and removed from the burn pool is the one that has been in the pool the longest, not the most recently added. A queue prevents IDs from getting “stuck” at the bottom of the burn pool.
For highly valued collections, when rare IDs ever enter the burn pool, there will likely be competitive swapping of ERC-20 tokens to see who can snipe the rare IDs first.
To DN404 or Not?
As with all fundamental mint decisions, Scatter isn’t about to tell you what to do, but at the same time, there are some crucial questions to consider before deciding to deploy your collection as a 404. Firstly, as with all new and shiny concepts in crypto, the market’s current fixation with 404s may well prove to be a flash in the pan, with this in mind, we recommend against minting your collection as a DN404 rather than a more standard ERC-721 if you are only doing so to chase the current hype. There’s nothing wrong with hype, hype makes the world go round, but if you’ve spent time and effort putting together a collection as a standard ERC-721 pivoting to a 404 may well amount to pouring months of work down the drain for little tangible benefit if DN404s do not hold the market’s interest long-term.
When contemplating launching a 404 it's also important to remember the altered audience/market dynamic that comes with it. 404s inherently lower the friction of trading NFTs, which can create expectations and fuels FOMO. If you are not committed to continued development/maintenance of your project a 404 may not be the right fit. Similarly, if you are just looking to “sell art” without any concern for conductibility or speculation, you may be better suited with a traditional ERC-721 contract over a DN404.
DN404 Q&A
As an artist, can I earn royalties from trades of my DN404 art?
Yes! However, you must believe in your art enough to stake liquidity with the LPs of your art, then you can earn fees on the trades. In this way, DN404s can enable artists to earn royalties naturally and permanently - they are part of a protocol that no marketplace can steal from you. As projects earn royalties in this way, they have more incentive to continue to develop their art projects, which is a problem we saw as the race to the bottom marketplaces attempted to rugpull royalties from creators. DN404s are a method of long term sustainability that also offers guarantees which require no permission nor mercy from others to keep. DN404s also offer a way for people who simply believe in a project to earn fees too… just stake liquidity and anyone can earn “royalties” from a project’s success!
I heard other 404s have issues with rarity, is that a problem with DN404s?
No, because DN404s do not continuously print new IDs. Instead, IDs are continuously recirculated. Other 404 types may allow printing new IDs constantly, potentially enabling people to attempt to generate rare NFTs, which makes the rare NFTs not rare at all. DN404 does not have this oversight.
Are DN404s compatible with both ERC-20 and ERC-721 systems?
Yes, unlike other 404 options, DN404s are backward compatible and respect existing standards. There could still be edge cases, but any found should be solvable as they emerge.
Can I transfer a specific ERC-721 token ID to another wallet?
Yes, DN404 has 2 contracts making a single pair. One represents the NFT and the other represents the ERC-20. The one that represents the ERC-20 does the heavy logic. If you want to transfer a NFT with a specific token ID you just use the ERC-721 NFT contract as if it was any other NFT, and it will automatically under the hood do all extra logic.
What happens if I send all of my ERC-20 tokens to my other wallet? Will I keep my same NFT IDs?
Yes! With direct wallet transfers, you will keep your same NFT IDs. The NFT IDs are only burned if you transfer the ERC-20 tokens to a contract or if you transfer enough of a fraction of an ERC-20 to another wallet that you no longer maintain whole amounts of the ERC-20 tokens. So if you transfer 20 ERC-20 tokens to another wallet, that wallet will get transferred 20 NFT IDs from your wallet in their burn order.
We strongly recommend transferring the ERC-721 tokens themselves between wallets and not the ERC-20. Even though wallet-to-wallet transfers of ERC-20s are safe, it’s still a good idea to transfer the ERC-721s themselves to a wallet where you will not be doing any trading. Then you won’t risk losing those IDs by mistake through burning.
How does contract ownership work?
When you deploy a DN404 collection, you become the contract owner of the ERC-20 side, then the ERC-721 mirror side becomes permanently linked to the ERC-20 side. So if you transfer contract ownership of the primary ERC-20 contract that’s all you need to worry about.
Do DN404 ERC-721 tokens work with NFTAMMs like NFTX?
Yes. We tested NFTX specifically for science and it does appear to work as expected. Please test more with test collections before using them with real collections. There may still be valid reasons to want to use NFTX even with a DN404, such as the ability to put IDs into a pool which people can more directly select from.
Can I trade DN404s on any DEX?
Yes. Since DN404s are standards-compliant, they will work with any DEX that supports ERC-20s.
I want to trade on a DEX and keep some special IDs safe. What should I do?
Transfer the IDs of the ERC-721s to a wallet where you will not be doing any trading. Then you won’t risk losing those IDs by mistake through burning.
Do I have to do an NFT primary minting launch?
No. You can self-mint tokens to your wallet, and then stake them onto a DEX to do your sale there. However, doing this will not get you the benefits of a NFT launch, and can be expensive for you to do. You can also do a hybrid launch where part of your supply is minted as NFTs, and part of it you self-mint and then stake onto a DEX to sell. With Uniswap V3 you can stake ERC-20s directly with a buy price set.
Does Scatter setup my collection’s WETH pair liquidity pool for me? Is there a function to automatically split a % of the supply into an LP?
No. This is something you have to do manually. It is reasonably simple to do. Self-mint an amount of supply you wish to sell on a DEX. Uniswap V3 will let you stake as many ERC-20 tokens at a specified price, then people can buy from those. You can test both Scatter’s features and Uniswap’s features on the Sepolia testnet to get familiar with it all before you do it for a real collection.
Will it cost me a ton to self-mint many IDs and then stake their ERC-20s into a Uniswap V3 LP?
Be prepared to have enough ETH in your wallet for this kind of setup. You will need to do the initial minting of the IDs, which will cost as much as a typical ERC-721 mint. Then you will need to stake the ERC-20s into the LP contract, which should not cost that much. Removing any amount of ERC-20s from a contract will cost about 2X as much as it takes to stake them since you are minting that many NFTs.
Is it possible to freeze a contract so that it can no longer transfer tokens?
No. This is a design choice to not include this feature. Stopping transfers never leads to good outcomes. It has chilling effects that kills projects. Better to know that you cannot freeze transfers, and make sure your launch is absolutely rock solid. Scatter takes care of most of the serious technical considerations for you, you just need to focus on everything else.
Can I blacklist addresses from trading?
No. This is a design choice to not include this feature. Part of the NFT thesis is that you own your NFTs. Including an ability to blacklist addresses from trading is an antithesis. Instead of blacklisting addresses that may be bots (you really cannot stop bots), use our whitelisting features to whitelist people to mint initial supply rather than the typical pure ERC-20 coin launch. Or use our batchMintTo feature to directly airdrop the initial supply to wallets. DN404s are a new fusion type and are flexible, you should lean on the benefits this fusion brings.
Can I blacklist addresses from primary minting?
Yes! Either leave “blacklisted” addresses out of your whitelists or enable a list to be a blacklist instead when creating the list. Then addresses on the blacklist won’t be able to mint. Blacklist-enabled lists are effectively public lists that some wallets can’t mint from. If you want primary mint blacklisting, you only want a single public list, and for it to be set to a blacklist with the addresses you want to not allow to mint on it. If you need to update your blacklist you need to disable the previous list by setting its wallet limit to 0 and make a new list with the updated blacklist.
How can I stake tokens into an LP?
You need to self-mint a portion of the supply first. This can be done by creating a list that has only the deployer wallet on it with a price of 0 so that the deployer can self-mint as many as it wants. Then you can self-mint the tokens, and stake the ERC-20s however you wish to do it.
Why don’t DEX contracts hold ERC-721s for the amount of ERC-20 they hold?
When ERC-20s are sent directly to a contract, the NFT minting is skipped. Instead, the “burned” token IDs stay within the burn pool for anyone to be able to eventually mint. This saves gas while also preventing DEX contracts from capturing valuable IDs.
What happens if I do a primary mint of DN404 NFTs on Scatter with a contract (if I'm clever enough to do that)?
If you mint with a contract your contract will only be transferred ERC-20s and not ERC-721s. Therefore, it can be more gas-efficient to use a contract to mint as both a user who doesn't care about the specific ERC-721s and as a collection owner who wants a treasury amount for some reason. If you are a collection owner and you want to stake a large amount of ERC-20s onto a Uniswap V3 LP to be for sale for example you will save a lot of gas fees using a multisig contract to mint the amount supply you desire.
Instead of trying to use a contract to mint, you can click the "Is this a gift?" checkbox and then enter the address of a contract like a Safe multisig. Then you will not spend the gas to also mint ERC-721s, you will only buy ERC-20s.
Another option specific to collection owners is to use the batchMintTo option from the Contract Methods tab on Scatter. You can create a list with only the deployer/collection owner address and a fee of 0, then use the batchMintTo method to mint a large amount of supply to your Safe multsig. Then you can use the Uniswap app on Safe to stake the ERC-20s into a Uniswap V3 LP all without spending gas on ERC-721s.
If I mint from primary, and I get IDs I don’t like, should I sell them into the LP?
Maybe you sell maybe you don’t. Some people might sell into the LP to then mint again for example. If the LP is a Uniswap V3 contract you can directly stake ERC-20s into it to gain fees so that might be a useful option as well.
How much liquidity should I take into an LP to avoid excessive slippage?
This is an important question, but also a bit beyond the scope of this article. You do need enough liquidity so that price impact is not so dramatic on trades. Research how slippage works, then do some math to figure out how much you probably need. The same rules for managing a good coin apply to DN404s, study them and do it right.
Scatter DN404 Definitions
Primary Supply - The total number of possible NFTs that can be minted through Primary Mint. Your collection’s max supply will be where the Primary Supply starts at and will reduce with every Primary Mint.
Primary Mint - When you mint ERC-721s directly using Scatter’s mint functions. The primary mint is how new token IDs enter the total supply. However, if there are any tokens in the burn pool those tokens will be minted first if there is any primary supply left. If there is no Primary Supply left then Primary Mint will not be possible, and only Burn Pool Mint will be possible.
Burn Pool Mint - When tokens are “burned” from not having enough of an ERC-20, their IDs go into the burn pool of IDs. When a wallet gains enough of a whole ERC-20 it will first look at the burn pool to mint, if there are no IDs available it will then get an ID from the Primary Supply.
Burning - In the context of DN404s, ERC-721s are not permanently destroyed. Instead, when they are burned, they go into the burn pool which they can be minted from back into another wallet. It’s like playing hide and seek.
DN404 ERC-721s - Not fungible. Not semi-fungible. Non-fungible. Even when an ID is in a “404 not found” state, it’s still non-fungible. But the wild card ghost of the token is divisible through the ERC-20 pair.
DN404 ERC-20s - Think of each of these as a progress bar. When you reach 100% you get a new ERC-721, when they go below 100% you lose an ERC-721.
404 Not Found
404s as a concept are a historical moment in the crypto/Web3 world. 404s act both as a coin and an NFT. Schrödinger’s token. These are exciting times!
We hope the implementation of DN404 on Scatter will allow developers and teams to create and experiment with this unique token design while leaving users assured that they are interacting with safe legitimate contracts. Through our coming contract marketplace system, we hope to continue to be on the cutting edge in the tools and versatility we offer our creators.
Ready to launch your DN404 collection?
https://www.scatter.art/create?contract=DN404
Want to test out DN404s on our testnet first?
https://sepolia.scatter.art/create?contract=DN404
Scatter is here to help. Good luck with your DN404 projects!
Nothing in this article is financial advice. When you mint NFTs on Scatter you acknowledge that you are minting unique art pieces and not financial instruments. No one can nor will they guarantee you financial returns through ownership or trade of your NFTs or any associated tokens related to them.