Interested in everything innovation and thus, appeared some when in Web3. Former founder of Gaming Companies. Technical.
Interested in everything innovation and thus, appeared some when in Web3. Former founder of Gaming Companies. Technical.
Share Dialog
Share Dialog
Subscribe to datproto
Subscribe to datproto
The last days, after opening the whitelist and public, were harsh. We recovered, did the counting and started an analysis of what happened. We wanted to get the communication out as fast as possible - however, the communication needed to be right. Looking at our vision and our goal to go DAO (or DAO-like), we value transparency and honesty a lot and are thus providing transparency to the minting process and the behind-the-scenes.
This Mint documentation furthermore has the intention to show other projects, what can happen and should lead them to be prepared. We are early, but we are paving the way.
Adding, as mentioned in e.g. a former post published, we embrace the discussion and critique. I’d love answering every question and remark.
While Guilty Panda Prison Gang gained traction, mainly by holding the chain-voting, we decided to take on the mint. We see the mint as an important event, as it creates hype and a rush in the project - which is needed to distribute a substantial amount of NFTs, which evolves in more hype. Hype is leading to an influx of new people, which is then leading to surging prices. We had a discussion at the End of December regarding the mint date - discussing the 11th or the 22th of January for the first tier drop. To ride on the momentum gained, we decided to mint on the 11th - knowing that it will be stressful, but expecting to be manageable.
Shortly after, we have seen the amount of work which needs to be done to prepare the mint in a professional manner. While we have been working for 3 months on GPPG, we focused in that time on building the community - not on the infrastructure of the mint. Adding, planning e.g. the technical infrastructure was not possible with certainty, as the chain voting ended on the 6th of January - 5 days prior to the mint. The technical checks however proved to be manageable. We were finishing the collection, building out the rarity structure, and hyping our community as well. Times were good: We had good activity within our socials, had Big Herc as an influencer (ex-prisoner and running the YouTube show ‘Fresh Out’) and strong support from the Hedera community. Adding, we jumped full-time in the project (as we are running a startup, we are flexible on that).
We thought it was feasible to sell out.
We got traction, people were joining, we were doing huge marketing efforts. We were full of joy as our hard work paid off. Our designer on the team, Yan, looked through 8000 different artworks - randomly generated - and ensured that the quality is high. Marcel went all-in on outreach on various channels (mainly Twitter and Discord), planned activities and ensured new people are coming in. I've built the technical infrastructure to hold a professional mint on Hedera. Preparations were going well - we were working tough times, but it was manageable. This changed a few days prior, however: We discovered different construction sites we needed to fix and due to our ambitious planning, this led to us running into no sleep and lots of stress - sacrificing most of our mental capabilities to think things through.
**Why didn’t we postpone?**We had different campaigns running for the 11th (whitelist) and 12th (public). Big Hercs videos were coming up, where we expected a lot of traction from, plus the 11th was communicated on every other medium/site/ wherever GPPG was somehow mentioned. Weighting potential losses in building the hype (by postponing and thus getting time to improve that) versus launching on the planned date and reaching the traction we’ve expected (and not postponing). Thinking both through led us to not postponing.
We run different analyses regarding the rarity distribution. A lot of our thoughts went into designing this - as frarity will lead to potential gains. Typical collections are doing this by throwing every layer into a (programmatic) “mixer” while stating the approximate occurrence probability of that layer. We also did that, however, this was not the end of our art creation process:
1. We’ve created a several hundred layers
To have a collection of 974 NFTs, which is truly unique, you approximately need 3 different variations of 6 layers. We did it differently - and created on average 25 variations per layer. Without doing the math, this leads us to more than a million possibilities - making GPPG pandaz truly unique but increasing efforts. We decided doing that to ensure high quality.
2. Stripping down non-fitting NFTs manually
We then generated about 8000 artworks, which were then manually checked and sorted out. There are a few things coming up when doing that: Every task, no matter which, takes any amount of time X. Taking the amount of time X, multiplied by 8000, is suddenly a lot of time needed to spend. Adding, time is not only needed in the sorting process - but in sorting the Metadata to it as well. The Metadata contains every information there is - and this needs to be right. I’ve written different scripts to make sure that no Metadata is to be confused, changed or deleted. Comparing different, randomly chosen, Metadata prior to merging and after merging led to the thought that everything turned out well. It actually went well, but we still had Metadata troubles from another source, which is covered in the latter.
3. Finalizing the Rarity Structure
The Rarity of a NFT is calculated by taking the total supply (974) and dividing it by the total occurrences of the one specific variation. Summing this up for every layer leads to the total “Rarity Score”. Due to the long time spent on the first two steps, this finalization was getting close to the mint. Things began getting hectic, but we were still running smooth - lost however our buffer if things go wrong. I’ve written a script calculating the rarity score for every NFT and plotted it - the rarity structure was not good enough. We had some very high ranking NFTs (approx. 5), which were outliers - and the rest were rather slightly different. This is a result of step 1 and 2 - due to having many layers and manually filtering/ curating the collection - which makes it harder to create a good rarity structure. We decided to add the rarity borders to the rarest NFTs - which is showing a) the rarity and b) increases the rarity score. Adding borders manually and scripting the automatic adding of the border data to the metadata allowed us to finalize the rarity structure.
We lost time in the process, however we were still on time.
Expecting potential problems occurring and situations getting hectic, things were prepared early on. We've created team-internally guides to ensure that we are running good - even on little sleep and little food. We were ready to launch.
Marcel and I were checking at 10pm Berlin Time (3:14 hours before whitelist launch) the border-image-to-code correctness one last time, and I’ve decided to do some trial checks - for the metadata - during that process. This was done during the process of step 2 (see above) probably a hundred times - however, I was never checking the metadata-for-image correctness. An error here leads to the art engine script being buggy, which is however used by almost every NFT collection - on every chain. I never doubted that but was checking it at that time, rather playfully than seriously. I’ve checked a random panda - this was fine. Checked another random panda - this was fine as well. I checked the third (and last) panda - the Metadata was wrong. By that time, we were 2 hours before the whitelist launch. We checked more pandaz to reproduce this error - unfortunately we could.
Within the 2 hours it would have been possible to sort the collection once again (matching Metadata of the 8000 previous pandas with the 974 curated pandas) - the scripts were existing. Still, I wanted to check one more thing: Is the Metadata of the first 8000 pandaz correct? Done by the engine every project is using? It was not, and I was devastated. There was suddenly no other option than postponing, which we wanted to not do from early on.
I did a rough time estimation, and we decided to postpone by 24 hours - main reason: keeping the momentum. At 3am Berlin time, we’ve seen that we cannot cover it timewise with normal sleep (6 hours). We worked the night and realized at 7am, that we cannot cover it timewise with the resources of our team. Checking each file was a time intensive process, and it needed to be thoughtfully and with full concentration. Lack of sleep did not help and rather slowed down the process. We started to onboard four friends, which were relentlessly checking the files and enabled a peer-reviewal process to ensure everything is correct.
Adding, we’ve found some bugs in image files, which were removed as well. We delayed the mint opening by 34 minutes, resulting in not minting on January 14th, 7:14pm but on January 14th, 7:48pm. The collection started to mint on January 14th, 7:47pm.
It was stressful, but we managed it.
Public Sale Postponement
At approximately January 14th, 10pm (4-5am local time), suddenly Guilty Pandas didn’t show up in our wallet anymore - leading to us not being able to distribute them. While some gang members already got their NFTs, others were waiting for it. We clarified with the Hashpack team, which initially thought the error was on the side of IPFS - the InterPlanetary File System, where the NFTs Metadata is saved on. However, we needed to wait for their development team to wake up (which eventually smashed a bug on their side leading to that problem). While waiting for them to wake up, we postponed the public mint by 12 hours to have enough buffer for them to fix the bug and to send out NFTs shortly after. We got access to their staging and could distribute the remaining NFTs.
At this point of time, the team slept a total of 6 hours and worked 51 hours straight - from Tuesday, 8am local time until Thursday, 11pm local time. We were a mess.
We will do an extensive analysis and put this on hold for another week. Sure there were mistakes on our side and there were encounters we’ve had, which we were not responsible for - most of them of least. However, we will never know if an initial postponement early would have helped the project, but we did in good faith - keeping the planning to ensure success. This section will be extended - publicly or privately. However, feel free to ask in the next couple days. At the end of the next week, this should be completed by us latest.
We are sharing our lessons learned publicly, to help other projects succeed. Adding, we are helping any project approaching us happily. Other formats helping the ecosystem are coming up as well.
Thanks for reading and being part of our mission! We love you and we love the Pandaz! 🐼 🚀
The last days, after opening the whitelist and public, were harsh. We recovered, did the counting and started an analysis of what happened. We wanted to get the communication out as fast as possible - however, the communication needed to be right. Looking at our vision and our goal to go DAO (or DAO-like), we value transparency and honesty a lot and are thus providing transparency to the minting process and the behind-the-scenes.
This Mint documentation furthermore has the intention to show other projects, what can happen and should lead them to be prepared. We are early, but we are paving the way.
Adding, as mentioned in e.g. a former post published, we embrace the discussion and critique. I’d love answering every question and remark.
While Guilty Panda Prison Gang gained traction, mainly by holding the chain-voting, we decided to take on the mint. We see the mint as an important event, as it creates hype and a rush in the project - which is needed to distribute a substantial amount of NFTs, which evolves in more hype. Hype is leading to an influx of new people, which is then leading to surging prices. We had a discussion at the End of December regarding the mint date - discussing the 11th or the 22th of January for the first tier drop. To ride on the momentum gained, we decided to mint on the 11th - knowing that it will be stressful, but expecting to be manageable.
Shortly after, we have seen the amount of work which needs to be done to prepare the mint in a professional manner. While we have been working for 3 months on GPPG, we focused in that time on building the community - not on the infrastructure of the mint. Adding, planning e.g. the technical infrastructure was not possible with certainty, as the chain voting ended on the 6th of January - 5 days prior to the mint. The technical checks however proved to be manageable. We were finishing the collection, building out the rarity structure, and hyping our community as well. Times were good: We had good activity within our socials, had Big Herc as an influencer (ex-prisoner and running the YouTube show ‘Fresh Out’) and strong support from the Hedera community. Adding, we jumped full-time in the project (as we are running a startup, we are flexible on that).
We thought it was feasible to sell out.
We got traction, people were joining, we were doing huge marketing efforts. We were full of joy as our hard work paid off. Our designer on the team, Yan, looked through 8000 different artworks - randomly generated - and ensured that the quality is high. Marcel went all-in on outreach on various channels (mainly Twitter and Discord), planned activities and ensured new people are coming in. I've built the technical infrastructure to hold a professional mint on Hedera. Preparations were going well - we were working tough times, but it was manageable. This changed a few days prior, however: We discovered different construction sites we needed to fix and due to our ambitious planning, this led to us running into no sleep and lots of stress - sacrificing most of our mental capabilities to think things through.
**Why didn’t we postpone?**We had different campaigns running for the 11th (whitelist) and 12th (public). Big Hercs videos were coming up, where we expected a lot of traction from, plus the 11th was communicated on every other medium/site/ wherever GPPG was somehow mentioned. Weighting potential losses in building the hype (by postponing and thus getting time to improve that) versus launching on the planned date and reaching the traction we’ve expected (and not postponing). Thinking both through led us to not postponing.
We run different analyses regarding the rarity distribution. A lot of our thoughts went into designing this - as frarity will lead to potential gains. Typical collections are doing this by throwing every layer into a (programmatic) “mixer” while stating the approximate occurrence probability of that layer. We also did that, however, this was not the end of our art creation process:
1. We’ve created a several hundred layers
To have a collection of 974 NFTs, which is truly unique, you approximately need 3 different variations of 6 layers. We did it differently - and created on average 25 variations per layer. Without doing the math, this leads us to more than a million possibilities - making GPPG pandaz truly unique but increasing efforts. We decided doing that to ensure high quality.
2. Stripping down non-fitting NFTs manually
We then generated about 8000 artworks, which were then manually checked and sorted out. There are a few things coming up when doing that: Every task, no matter which, takes any amount of time X. Taking the amount of time X, multiplied by 8000, is suddenly a lot of time needed to spend. Adding, time is not only needed in the sorting process - but in sorting the Metadata to it as well. The Metadata contains every information there is - and this needs to be right. I’ve written different scripts to make sure that no Metadata is to be confused, changed or deleted. Comparing different, randomly chosen, Metadata prior to merging and after merging led to the thought that everything turned out well. It actually went well, but we still had Metadata troubles from another source, which is covered in the latter.
3. Finalizing the Rarity Structure
The Rarity of a NFT is calculated by taking the total supply (974) and dividing it by the total occurrences of the one specific variation. Summing this up for every layer leads to the total “Rarity Score”. Due to the long time spent on the first two steps, this finalization was getting close to the mint. Things began getting hectic, but we were still running smooth - lost however our buffer if things go wrong. I’ve written a script calculating the rarity score for every NFT and plotted it - the rarity structure was not good enough. We had some very high ranking NFTs (approx. 5), which were outliers - and the rest were rather slightly different. This is a result of step 1 and 2 - due to having many layers and manually filtering/ curating the collection - which makes it harder to create a good rarity structure. We decided to add the rarity borders to the rarest NFTs - which is showing a) the rarity and b) increases the rarity score. Adding borders manually and scripting the automatic adding of the border data to the metadata allowed us to finalize the rarity structure.
We lost time in the process, however we were still on time.
Expecting potential problems occurring and situations getting hectic, things were prepared early on. We've created team-internally guides to ensure that we are running good - even on little sleep and little food. We were ready to launch.
Marcel and I were checking at 10pm Berlin Time (3:14 hours before whitelist launch) the border-image-to-code correctness one last time, and I’ve decided to do some trial checks - for the metadata - during that process. This was done during the process of step 2 (see above) probably a hundred times - however, I was never checking the metadata-for-image correctness. An error here leads to the art engine script being buggy, which is however used by almost every NFT collection - on every chain. I never doubted that but was checking it at that time, rather playfully than seriously. I’ve checked a random panda - this was fine. Checked another random panda - this was fine as well. I checked the third (and last) panda - the Metadata was wrong. By that time, we were 2 hours before the whitelist launch. We checked more pandaz to reproduce this error - unfortunately we could.
Within the 2 hours it would have been possible to sort the collection once again (matching Metadata of the 8000 previous pandas with the 974 curated pandas) - the scripts were existing. Still, I wanted to check one more thing: Is the Metadata of the first 8000 pandaz correct? Done by the engine every project is using? It was not, and I was devastated. There was suddenly no other option than postponing, which we wanted to not do from early on.
I did a rough time estimation, and we decided to postpone by 24 hours - main reason: keeping the momentum. At 3am Berlin time, we’ve seen that we cannot cover it timewise with normal sleep (6 hours). We worked the night and realized at 7am, that we cannot cover it timewise with the resources of our team. Checking each file was a time intensive process, and it needed to be thoughtfully and with full concentration. Lack of sleep did not help and rather slowed down the process. We started to onboard four friends, which were relentlessly checking the files and enabled a peer-reviewal process to ensure everything is correct.
Adding, we’ve found some bugs in image files, which were removed as well. We delayed the mint opening by 34 minutes, resulting in not minting on January 14th, 7:14pm but on January 14th, 7:48pm. The collection started to mint on January 14th, 7:47pm.
It was stressful, but we managed it.
Public Sale Postponement
At approximately January 14th, 10pm (4-5am local time), suddenly Guilty Pandas didn’t show up in our wallet anymore - leading to us not being able to distribute them. While some gang members already got their NFTs, others were waiting for it. We clarified with the Hashpack team, which initially thought the error was on the side of IPFS - the InterPlanetary File System, where the NFTs Metadata is saved on. However, we needed to wait for their development team to wake up (which eventually smashed a bug on their side leading to that problem). While waiting for them to wake up, we postponed the public mint by 12 hours to have enough buffer for them to fix the bug and to send out NFTs shortly after. We got access to their staging and could distribute the remaining NFTs.
At this point of time, the team slept a total of 6 hours and worked 51 hours straight - from Tuesday, 8am local time until Thursday, 11pm local time. We were a mess.
We will do an extensive analysis and put this on hold for another week. Sure there were mistakes on our side and there were encounters we’ve had, which we were not responsible for - most of them of least. However, we will never know if an initial postponement early would have helped the project, but we did in good faith - keeping the planning to ensure success. This section will be extended - publicly or privately. However, feel free to ask in the next couple days. At the end of the next week, this should be completed by us latest.
We are sharing our lessons learned publicly, to help other projects succeed. Adding, we are helping any project approaching us happily. Other formats helping the ecosystem are coming up as well.
Thanks for reading and being part of our mission! We love you and we love the Pandaz! 🐼 🚀
<100 subscribers
<100 subscribers
No activity yet