Hoy damos la bienvenida a Geez, Kodas, Chimpers y HV-MTL a Amazon. Hacer que estos códigos sean canjeables en la cadena fue un desafío divertido. Todo está impulsado por el simple, pero poderoso RedemptionCodeRegistry creado para Boximus. Así es como funciona 1/🧵
Othersidemeta
OthersidemetaHace 11 horas
¡Los Feels ya están disponibles en la tienda de Amazon de Otherside US! → Otherside → @hvmtl2 → @GeezOnApe → @ChimpersHQ Emocionado de llevar la IP de la comunidad a @AMZNvideogames con Feels, GIFs expresivos que aparecen sobre tu avatar en Otherside para mostrar tu estado de ánimo.
2/ Primero, cada código se genera de forma segura fuera de la cadena. A cada código se le asignan datos de redención compuestos por un selector de función (4 bytes), un ID de token (hasta 8 bytes) y una dirección de acuñación (20 bytes). Esto está diseñado para ser empaquetado en un solo bytes32 para minimizar los costos de almacenamiento en la cadena.
3/ Cada código de canje se hash fuera de la cadena, y el hash se almacena en la cadena en un mapeo que apunta a sus datos de canje correspondientes. Almacenar solo el valor hash protege el código subyacente de la exposición.
4/ Almacenar todo esto en la cadena permite eliminar la necesidad de requisitos de verificación de tiempo de redención fuera de la cadena, como las pruebas de Merkle de firmas, a cambio de un costo de solo ~0.04 centavos por código gracias al empaquetado de datos.
5/ Los usuarios ahora pueden comprar estos códigos en Amazon. Cuando se utiliza el código en Otherside, el contrato calcula el hash, utiliza eso para obtener los datos de redención, asegura que no se haya utilizado (y luego lo marca como utilizado), y finalmente decodifica los datos y los utiliza para llamar al contrato de acuñación.
6/ Para Boximus, cada código estaba mapeado a un ID de token específico que se acuñaba al canjearlo. Para Feels, tuvimos que ser un poco creativos. En lugar de acuñar un solo token ERC721, acuñas un paquete de 1155s. Para usar el mismo formato de codificación, tuvimos que adaptar el sistema.
7/ En lugar de un "ID de token", creamos la idea de un StickerPack - una estructura flexible y optimizada para almacenamiento dentro del 1155 que almacena qué stickers acuñar para cualquier "ID" dado. Para el lanzamiento de hoy, cada código canjea el Pack #1, que contiene uno de cada ID del uno al diez.
8/ Lo interesante es que estos paquetes de pegatinas tienen un concepto de aleatoriedad si se desea. Los paquetes futuros pueden ser marcados como aleatorios, donde cada ID de token tiene un X% de probabilidad de ser seleccionado, y cada paquete tiene Y número de selecciones.
9/ No se requiere VRF aquí: la aleatoriedad se determina por el código de canje en sí. Los paquetes aleatorios pasan por el siguiente mecanismo de selección, utilizando una combinación del código de canje y los pesos establecidos por el propietario para cada carta para determinar qué cartas se extraen para un paquete.
10/ Estoy deseando ver cómo evoluciona Feels en Otherside. ¿Qué otras comunidades se unirán a continuación? ¿Quién hará un grail (la probabilidad de obtenerlo puede ser tan baja como 0.01%), y quién será el primero en conseguirlo? En el Metaverso, todos necesitan un flex digital. Divirtámonos.
200