Cómo un “modelo de actor” podría mejorar aplicaciones de juegos basadas en blockchain
Las aplicaciones descentralizadas (DApps), incluidas las aplicaciones para juegos, han ganado adeptos por su transparencia, seguridad y propiedad de activos por parte del usuario. Sin embargo, ofrecer experiencias de juego AAA de alta calidad a través de DApps presenta desafíos.
Las DApps de juegos 2D existentes funcionan en redes blockchain que utilizan contratos inteligentes para la gestión de activos. Aunque son favorables por su sencilla mecánica y eficiencia de recursos, sus limitaciones se hacen evidentes a medida que aumenta la complejidad de la experiencia de juego.
La escalabilidad es uno de los principales obstáculos para las cadenas de bloques tradicionales como Ethereum, ya que afecta a los juegos interactivos en tiempo real debido a las limitaciones en el rendimiento y la latencia de las transacciones.
El rendimiento también es un problema. Los juegos AAA requieren una computación de alto rendimiento y un renderizado de gráficos superior. Sin embargo, las DApps existentes tienen dificultades para satisfacer estas demandas, lo que se traduce en experiencias visuales inferiores.
Además, el desarrollo de DApps de juegos AAA es costoso debido a las tareas que consumen muchos recursos y a las tasas de ejecución de blockchain. Equilibrar experiencias inmersivas con gastos de fácil uso complica el uso de los marcos DApp tradicionales para juegos AAA.
¿Qué es el modelo de actor?
El “modelo de actor” es un modelo de comunicación que permite la computación paralela y la mensajería asíncrona dentro de un protocolo blockchain, haciendo posible que los desarrolladores construyan DApps complejas con menos dificultad.
El modelo de actor se utiliza en el Gear Protocol, y su desarrollo fue dirigido por Nikolay Volf, fundador del Gear Protocol y Vara y uno de los desarrolladores clave de Polkadot y el marco Substrate.
Dentro del modelo se encuentran los actores, programas o usuarios que envían mensajes a otros programas del protocolo. Cada actor tiene un buzón de correo y un estado privado que no puede ser modificado directamente por otro actor, sino que sólo pueden cambiar de estado recibiendo un mensaje de otro actor.
Los mensajes entre actores se toman de los buzones y se procesan en ciclos. Una vez que un actor ha recibido y procesado un mensaje, puede enviar un mensaje a otro actor, crear un actor o cambiar su estado.
¿En qué beneficia esto al desarrollo de DApp?
La gestión de mensajes asíncronos en la programación de blockchain ofrece varias ventajas significativas que contribuyen a la eficiencia, escalabilidad y fiabilidad generales de las DApps.
En primer lugar, el manejo de mensajes asíncronos permite el procesamiento no bloqueante de transacciones y contratos inteligentes.
A diferencia del procesamiento síncrono, en el que cada transacción debe ejecutarse secuencialmente, la mensajería asíncrona permite la ejecución concurrente de múltiples tareas.
Esta capacidad de procesamiento en paralelo mejora el rendimiento de la red blockchain, ya que puede gestionar un mayor número de transacciones y cálculos simultáneamente, lo que se traduce en una reducción de los tiempos de procesamiento de las transacciones y una mejora del rendimiento general.
Jack Platts, cofundador de Hypersphere -un fondo de capital riesgo de criptomonedas que ha invertido en proyectos de juego- dijo a Cointelegraph: “En los sistemas síncronos tradicionales, varias tareas a menudo tienen que esperar unas a otras, lo que lleva a una ralentización cuando se procesa un gran volumen de transacciones”.
Platts continuó: “En el contexto de las redes blockchain, esta capacidad de procesamiento paralelo se convierte en vital para mantener un alto rendimiento de las transacciones. A medida que los usuarios inician más transacciones, el sistema puede gestionarlas simultáneamente, garantizando tiempos de confirmación más rápidos y un mejor rendimiento general de la red. Esto es particularmente crucial para los juegos de blockchain, donde las interacciones en tiempo real y el procesamiento rápido son esenciales para proporcionar una experiencia de juego fluida y agradable”.
Algunos juegos blockchain, como Ember Sword, ya han integrado el procesamiento paralelo en sus procesos de desarrollo. Mark Laursen, cofundador y CEO de la empresa de desarrollo de juegos Bright Star Studios, dijo a Cointelegraph: “En el desarrollo de Ember Sword, empleamos el procesamiento paralelo utilizando nuestra solución ECS [entity component system]. Normalmente, sería necesario integrar manualmente el multithreading y tomar intrincadas decisiones sistema por sistema”.
Laursen continuó: “Sin embargo, en nuestro escenario, se especifican los requisitos de lecturas, escrituras y dependencias de orden, lo que permite a nuestro motor discernir el método más eficiente para programar y paralelizar esos sistemas”.
Supongamos que un jugador de un juego con blockchain quiere transferir un objeto del juego en forma de token no fungible, como trasladar una espada legendaria de su cofre (billetera para almacenamiento a largo plazo) a su inventario (billetera utilizada para jugar).
El proceso de transferencia puede realizarse instantáneamente con comisiones bajas o casi nulas, del mismo modo que un jugador puede simplemente hacer clic y arrastrar una espada de su inventario y moverla a un mercader o cofre en un juego tradicional.
Además, con la mensajería asíncrona, los desarrolladores de blockchain pueden diseñar DApps más resistentes a las fluctuaciones de las condiciones de la red y a los fallos temporales.
Pavel Salas, director de crecimiento de la Gear Foundation -la organización que está detrás del Gear Protocol- dijo a Cointelegraph: “El modelo de actor realmente aumenta la fiabilidad de las aplicaciones que se ejecutan en blockchain”, y añadió:
“Como los actores procesan los mensajes de forma independiente, los fallos o problemas de un actor no afectan a los demás, lo que evita fallos en cascada y mejora la solidez general del sistema. Y supongamos que hay interrupciones o problemas en la red, el modelo de actores permite que el sistema se recupere rápidamente y siga funcionando sin problemas”.
Esto puede ser beneficioso para las DApps de juegos de blockchain si se produce un corte en la red, permitiendo que el juego siga funcionando a pesar de cualquier problema en su blockchain.
Además, la gestión asíncrona de mensajes mejora la escalabilidad de las redes blockchain. Los enfoques síncronos tradicionales pueden provocar cuellos de botella y degradación del rendimiento a medida que aumenta el número de usuarios y transacciones.
En cambio, la mensajería asíncrona permite distribuir las tareas entre varios nodos, lo que permite al sistema escalar de forma más eficiente y gestionar mayores volúmenes de transacciones sin sacrificar el rendimiento.
Según Salas, “a medida que crecen la base de usuarios y la actividad dentro de la DApp, el sistema puede gestionar fácilmente el aumento del tráfico de mensajes sin provocar cuellos de botella ni ralentizaciones. Incluso si una sola aplicación crece, seguirá gestionando los mensajes secuencialmente”.
Esta escalabilidad es crucial, ya que las redes blockchain pretenden dar soporte a una base de usuarios cada vez mayor y dar cabida a diversos casos de uso.
Salas continuó explicando cómo funciona el proceso: “A través del modelo de actores, los actores-programas individuales actúan como fragmentos, garantizando que el sistema pueda compartirse por diseño a medida que crece el número de programas. […] Vara procesa todas las transacciones sin fragmentarlas en grupos de nodos; cada nodo se encarga de todo. Sin embargo, dentro de Vara, cada programa opera de forma independiente, conteniendo su propio estado, procesando y enviando mensajes según su lógica específica”.
“En los juegos de blockchain, donde las interacciones en tiempo real y el procesamiento rápido son cruciales, la capacidad de fragmentación del modelo de actor garantiza un procesamiento rápido de las acciones y eventos relacionados con el juego, lo que respalda una experiencia de juego sin interrupciones”.
“A medida que aumenta el número de programas de actores, el sistema fragmenta y distribuye la carga de trabajo, acomodando eficazmente la creciente base de usuarios y manteniendo una red receptiva y eficiente”.
Otra ventaja de la gestión asíncrona de mensajes es su compatibilidad con las arquitecturas basadas en eventos de las DApps. En lugar de buscar continuamente actualizaciones, las DApps pueden suscribirse a eventos o mensajes específicos, lo que les permite responder con prontitud y eficacia a los cambios en la blockchain.
Este modelo basado en eventos reduce la sobrecarga computacional innecesaria y conserva los recursos de red, dando lugar a aplicaciones más eficientes y con mayor capacidad de respuesta.
Además, la implementación de capacidades de mensajería de actores puede mejorar significativamente la experiencia general del usuario al mitigar los largos periodos de espera para la validación de transacciones. La adopción del procesamiento asíncrono permite al actor recibir un mensaje de acuse de recibo de su transacción junto con un identificador de transacción pendiente.
Posteriormente, cualquier tarea computacional o dependencia de datos externos puede ser gestionada por el mismo actor o por un actor alternativo en un bloque posterior, garantizando un procesamiento eficiente sin comprometer la capacidad de respuesta de la red blockchain.
Esta retroalimentación en tiempo real es especialmente crucial para las aplicaciones que requieren confirmaciones rápidas.
A medida que el ecosistema blockchain sigue creciendo y diversificándose, aprovechar el manejo de mensajes asíncronos se convierte en esencial para crear DApps de juegos potentes, de estilo AAA, que puedan satisfacer las demandas de una base de usuarios en expansión y satisfacer diversos casos de uso en todas las industrias.
Mediante la adopción de esta metodología, los desarrolladores tienen la oportunidad de ampliar los límites de los juegos descentralizados y potencialmente darse cuenta de las capacidades completas de la tecnología blockchain en el sector de los juegos.
Aclaración: La información y/u opiniones emitidas en este artículo no representan necesariamente los puntos de vista o la línea editorial de Cointelegraph. La información aquí expuesta no debe ser tomada como consejo financiero o recomendación de inversión. Toda inversión y movimiento comercial implican riesgos y es responsabilidad de cada persona hacer su debida investigación antes de tomar una decisión de inversión