Idag välkomnar vi Geez, Kodas, Chimpers och HV-MTL till Amazon. Att göra dessa koder inlösbara onchain var en rolig utmaning. Allt drivs av den enkla men kraftfulla RedemptionCodeRegistry som skapats för Boximus. Så här fungerar det 1/ 🧵
Othersidemeta
Othersidemeta14 timmar sedan
Känslor finns nu live i Amazon-butiken på andra sidan av USA: → Otherside → @hvmtl2 → @GeezOnApe → @ChimpersHQ Taggad på att få community-IP till @AMZNvideogames med Feels, uttrycksfulla GIF:ar som dyker upp ovanför din avatar i Otherside för att visa ditt humör.
2/ För det första genereras all kod säkert offchain. Varje kod tilldelas inlösendata bestående av en funktionsväljare (4 byte), token-ID (upp till 8 byte) och en mint-adress (20 byte). Detta är designat för att packas i en enda bytes32 för att minimera onchain-lagringskostnader.
3/ Varje inlösningskod hashas sedan offchain, och hashen lagras onchain i en mappning som pekar mot motsvarande inlösningsdata. Att endast lagra det hashade värdet skyddar den underliggande koden från exponering.
4/ Att lagra allt detta onchain gör att vi kan eliminera behovet av verifieringskrav vid inlösen utanför kedjan, som Merkle proofs of signature, i utbyte mot en kostnad på endast ~0,04 cent per kod tack vare datapaketeringen.
5/ Användare kan nu köpa dessa koder på Amazon. När koden används i Otherside beräknar kontraktet hashen, använder den för att hämta inlösningsdatan, säkerställer att den inte har använts (och markerar den sedan som använd), och avkodar slutligen datan och använder den för att anropa myntkontraktet.
6/ För Boximus mappades varje kod till ett specifikt token-ID som myntades vid inlösen. För Feels var vi tvungna att vara lite kreativa. Istället för att prägla en enda ERC721-token, präglar du ett paket med 1155:or. För att använda samma kodningsformat var vi tvungna att anpassa systemet.
7/ Istället för ett "token-ID" skapade vi idén om en StickerPack – en flexibel och lagringsoptimerad struktur inom 1155 som lagrar vilka klistermärken som ska präglas för varje givet "ID". Vid dagens lansering löser varje kod in Pack #1, som innehåller ett av varje ID från ett till tio.
8/ Det häftiga är att dessa klistermärkespaket har ett koncept av slumpmässighet om man vill. Framtida paket kan markeras som slumpmässiga, där varje token-ID har X % chans att dras, och varje paket har Y antal drag.
9/ Ingen VRF krävs här – slumpmässigheten bestäms av själva inlösningskoden. Slumpmässiga paket genomgår följande urvalsmekanism, där en kombination av inlösningskoden och ägarens vikter för varje kort används för att avgöra vilka kort som dras till en kortlek.
10/ Ser fram emot att se hur känslor utvecklas på Otherside. Vilka andra gemenskaper hoppar på härnäst? Vem kommer att göra en graal (chansen att dra kan vara så låg som 0,01 %), och vem blir först att dra den? I Metaversum behöver alla en digital flex. Låt oss ha lite kul.
229