El MetaMask Delegation Toolkit es el resultado de años de investigación para crear herramientas seguras y fáciles de usar para el ecosistema web3. El toolkit está diseñado para resolver importantes problemas de UX que frenan la adopción masiva de web3 y ofrece herramientas para habilitar nuevos casos de uso de coordinación social. The Red Balloon fue un juego de estrategia social que se jugó en la conferencia EthCC en Bruselas del 7 al 9 de julio de 2024. Los participantes experimentaron por primera vez en un juego web3 el onboarding instantáneo, el patrocinio de gas rentable y las delegaciones multi-salto.
El objetivo del desafío era encontrar 10 globos distribuidos por el recinto de la conferencia y ganar 5 ETH como premio. Sin embargo, debido a la distribución geográfica y temporal de los globos, era imposible que un solo jugador encontrara los 10 globos de forma independiente. Este juego se inspiró en el DARPA Network Challenge y simula un problema complejo de gran alcance que requiere colaboración descentralizada para resolverse.
La primera persona en recolectar los 10 globos y reclamar la victoria se llevó el dinero del premio menos las comisiones correspondientes a las personas cuyos globos fueron utilizados para ganar.
Este caso de estudio analiza cómo el MetaMask Delegation Toolkit hizo posible cada función del juego Red Balloon.
Escanea para jugar: onboarding instantáneo en web3
Una de las principales características del MetaMask Delegation Toolkit es la capacidad de los usuarios para omitir el flujo habitual de conexión de wallets en web3, eliminando la necesidad de instalar una wallet tradicional o preocuparse por las frases semilla.
En Red Balloon, los jugadores acceden al juego escaneando un código QR de un globo físico o de otro jugador que ya se haya incorporado al juego. Esto genera una smart account embebida contrafáctica (gratuita e instantánea) para ellos en la aplicación web del juego, tras lo cual pueden empezar a jugar de inmediato sin tener que pensar en crear o conectar una wallet, hacer on-ramp, etc.
Recolecta y comparte globos: delegaciones off-chain
Cada globo del juego estaba representado por un contrato inteligente NFT único asignado a una cuenta delegadora. Esta cuenta delegadora podía emitir delegaciones a los jugadores que descubrían el globo físico correspondiente, permitiéndoles asignarse a sí mismos como titulares para reclamar la victoria. Estos son los dos tipos de delegaciones que implementamos:
Delegaciones desde la cuenta delegadora: Esto permitía a un jugador recibir una delegación especial de la cuenta delegadora cuando encontraba un globo físico. Esta delegación otorgaba al jugador permiso para asignarse a sí mismo como titular del globo, requisito indispensable para llamar a la función de victoria.
Delegaciones entre jugadores: Los jugadores también podían crear ofertas para otros jugadores, especificando los globos a los que tenían acceso y la comisión que requerían para que otro jugador usara ese globo para reclamar la victoria. Estas eran ofertas off-chain, lo que permitía que fueran gratuitas e instantáneas.
Dado que la cuenta delegadora está completamente integrada en la experiencia del juego, jugar no requería que los jugadores revisaran ninguna confirmación, lo que lo convirtió en una experiencia sin interrupciones.
Reclama la victoria: transacciones en lote patrocinadas por gas
Para ganar el juego, un jugador necesitaba tener asignados los 10 globos, ya sea por otros jugadores o directamente desde la cuenta delegadora, antes de poder llamar a la función de victoria. El primer jugador en cumplir esta condición fue declarado ganador y recibió el dinero del premio, menos las comisiones adeudadas a los demás jugadores que compartieron su acceso a los globos con el ganador.
El MetaMask Delegation Toolkit garantizó que los acuerdos off-chain entre jugadores se aplicaran de forma programática. Cuando un jugador aceptaba una oferta y usaba los globos compartidos para ganar el juego, las comisiones se distribuían automáticamente a los respectivos propietarios de los globos en una transacción en lote atómica.
Además, esto no tuvo ningún costo para el ganador ni para los propietarios de los globos, ya que el juego contaba con patrocinio de gas. El único momento en que se incurrió en costos de gas fue para la transacción en lote (hash de transacción) del reclamo de victoria, que incluía el despliegue de la smart account del ganador y las transferencias a quienes ganaron comisiones. Para un juego que involucró a 621 jugadores, solo tuvimos que pagar 57 centavos en patrocinio de gas, lo que proporcionó una experiencia de extremo a extremo sin gas para todos los usuarios. Esta función ofrece una estrategia de crecimiento para los desarrolladores que desean una forma rentable de patrocinar las tarifas de gas de sus usuarios, garantizando una experiencia fluida sin preocuparse por los costos de las transacciones.
Construyendo una mejor UX en web3
A través del diseño innovador y el uso práctico del Delegation Toolkit, el juego Red Balloon da vida a un concepto complejo, permitiendo a los jugadores experimentar el potencial de la coordinación descentralizada y los acuerdos aplicados de forma programática, al tiempo que ofrece una experiencia de onboarding y jugabilidad fluida.
Esta demostración no solo destaca las capacidades únicas del Delegation Toolkit, sino que también ofrece a los participantes de EthCC un vistazo al futuro de la UX en web3. ¿Quieres aprovechar el Delegation Toolkit para llevar una UX refinada a tu dapp? Obtén acceso anticipado hoy.