Charlas con los desarrolladores: Constructor de mazos inteligente

Charlas con los desarrolladores: Constructor de mazos inteligente

¡Hola a todos! Soy Tian, científico de datos sénior del equipo de Hearthstone. Quiero hablarles sobre la nueva función del constructor de mazos inteligente, y también espero poder responder algunas de las preguntas que surgieron en la comunidad desde que se implementó esta opción.

Empecemos con una introducción simple sobre la funcionalidad antes de ahondar en lo que realmente vinieron a buscar todos: ¡la ciencia!

HS_Blog_Divider_Filigree_Bar.png

¿Qué es el constructor de mazos inteligente?

Sabemos que la creación de un nuevo mazo de Hearthstone puede ser una experiencia muy divertida y gratificante para muchos jugadores experimentados, pero quizás otros se tomaron un descanso del juego, son nuevos en esto, tienen poco tiempo o simplemente necesitan una ayudita para convertir su colección en algo que puedan llevar con orgullo a la escala. Para eso está el constructor de mazos inteligente. Con esta nueva opción, nosotros nos encargamos del trabajo pesado para que puedas jugar con un mazo popular y efectivo, ¡solo con un par de clics!

Para usar el constructor de mazos inteligente, comienza por crear un mazo estándar con cualquier clase y cualquier cantidad de cartas. Después de hacer clic en “Completar mi mazo” o “Listo”, completaremos el resto de tu mazo de forma inteligente por ti de acuerdo con las cartas que ya has elegido y usando cartas de tu colección. Supongamos que para armar tu mazo eliges Oondasta y Hacerse el muerto. Si después quieres que Hearthstone se encargue del resto, el sistema del constructor de mazos inteligente considerará varios factores, y luego armará lo que considera el mejor mazo posible, como un popular Cazador de Estertores con Kathrena Fatuinvierno.

03_27_HS_DeveloperInsights_SmartDeck_BlogDecklist_800x1000_JY_v01_enUS.png

Es así de simple. Solo debes comenzar a armar un mazo o elegir algunas cartas que estás seguro de querer usar, y nosotros nos encargaremos de lo demás para prepararte un mazo asombroso.

HS_Blog_Divider_Filigree_Bar.png

Cómo funciona:

En cuanto a la ingeniería involucrada, el sistema del constructor de mazos inteligente tiene dos capas, y cada capa también cuenta con subdivisiones para completar tu mazo. Exploremos cómo funciona cada una de estas capas para crear el mazo que quieres:

Primera capa de creación de mazos: la posición en el meta

03_27_HS_DeveloperInsights_SmartDeck_BlogAssets_300x400_JY_v01_H.jpg

A fin de evitar cualquier confusión, repasemos rápidamente lo que queremos decir cuando hablamos sobre “el meta”. Este término hace referencia al “metajuego” y describe las tendencias actuales que se ven en la escala, en especial en los modos clasificados. Al intentar armar un mazo exitoso, muchos jugadores tratan de tener en cuenta el meta actual e incluyen cartas que los ayuden a vencer a los mazos que probablemente encuentren. Por ejemplo, en un meta cargado de armas (donde muchos mazos populares contienen armas,) probablemente los mazos incluyan Moco del pantano ácido o Moco glutinoso para destruir las armas, y así “contrarrestar” el meta.

En la primera capa de creación de mazos (es decir, el meta) tratamos de armar el mejor mazo posible según lo que es popular en el meta, lo que ya has incluido en el mazo y las cartas disponibles en tu colección. Para determinar lo que se considera parte del meta usamos un algoritmo computacional para agrupar los mazos populares correspondientes al mismo tipo básico en subgrupos. Cada subgrupo representa un tipo de mazo jugado en el meta actual, como “Cazador de Secretos,” “Sacerdote de Dragones,” “Paladín Impar”, etc. Los contenidos de cada mazo dentro de estos subgrupos pueden variar levemente, pero siguen perteneciendo a un mismo tipo. En términos de aprendizaje automático, este proceso se llama “clustering”. Nuestro algoritmo de clustering computa datos que consisten en millones de variaciones de mazos, en las que cada mazo cuenta como un punto de datos, y cada punto de datos representa un vector en cientos de dimensiones. Con esta información, combinada con otras soluciones matemáticas, el algoritmo completa tu mazo de forma dinámica hasta que el mazo está terminado o se activa la siguiente capa: la “segunda ronda”.

Como los jugadores con distintos niveles de habilidad necesariamente tienen distintos mazos, estilos de juego y desafíos, el meta seguramente cambiará según tu posición en la escala. Considerando eso, desarrollamos distintas subcapas para este proceso de llenado de mazos conforme al meta. Si eres un jugador de rango 20 aproximadamente, es muy probable que tu mazo sea diferente al metamazo de un jugador de rango Leyenda. Además, nuestro flujo de informes del meta se actualiza frecuentemente para que tu metamazo siempre esté al día.

Después de tratar de crear un mazo efectivo en el meta usando las cartas ya seleccionadas y las de la colección, pasamos a la segunda capa de creación:

Segunda capa de creación: la segunda ronda

03_27_HS_DeveloperInsights_SmartDeck_BlogAssets_300x400_JY_v01_G.jpg

Si la capa del meta no pudo encontrar 30 cartas para tu mazo en tu colección, entra en juego la siguiente capa: la “segunda ronda”. Esta capa se encarga de que tu mazo esté terminado con las mejores cartas disponibles. En primer lugar, si el juego determina que no puede crear un metamazo efectivo con tu colección, volverá a tratar de crear el mejor mazo posible con tus cartas disponibles. La idea principal del algoritmo de segunda ronda es crear un mazo balanceado con cartas buenas y una curva de maná aceptable. Ahora veamos cómo se determina si una carta es buena para tu mazo.

Dejando de lado las sinergias específicas y el potencial de combinaciones, cada carta tiene un “poder de carta” individual cuando se usa en un mazo de cada clase. El valor no es constante y cambia dinámicamente de acuerdo con las condiciones del mazo. Sin embargo, la determinación del poder de carta generalmente depende de tres factores:

  • Impacto en el juego: cuánto aporta una carta al porcentaje de victorias de un mazo.
    • Por ejemplo, Elemental de agua tiene un mayor aporte a la probabilidad de victoria que Corsario aterrador para un Mago.

  • Conjunto de costo de maná: una colección de cartas con el mismo costo de maná.
    • Si nuestro objetivo es buscar una carta que llene un lugar en el grupo de 1 o 2 de maná, Escudera argenta puede ser una buena elección, aunque no se la considera buena entre las cartas que cuestan 5 de maná.

  • No sobrepoblar un conjunto de maná:
    • Si ya hay 10 cartas dentro de un conjunto de costo de maná específico, no agregaremos más cartas con ese costo de maná, a menos que la carta sea notablemente mejor que las alternativas.

Durante la segunda ronda, elegimos dinámicamente una carta con el mejor poder de carta que se puede incluir en el mazo. En términos matemáticos, el poder de carta es una función que consiste en términos obtenidos a partir de aportes al porcentaje de victorias y distintas penalizaciones. Nuestro objetivo en cada búsqueda es encontrar la carta que mejor satisfaga las condiciones de la función del objetivo entre las distintas soluciones posibles.

HS_Blog_Divider_Filigree_Bar.png

Otras consideraciones, reglas, y restricciones

03_27_HS_DeveloperInsights_SmartDeck_BlogAssets_3Steps_600x260_JY_v01.png

Además de los métodos de matemática avanzada y aprendizaje automático, también hemos implementado varias reglas para garantizar la calidad en estas dos capas de creación de mazos a fin de que tu mazo sea coherente. Por ejemplo, si ya tienes al Príncipe Keleseth en el mazo incompleto, haremos todo lo posible por evitar cartas que cuesten 2 de maná.

El sistema del constructor de mazos inteligente también cuenta con una función de “renovación” para quienes quieren probar distintos mazos. Si no agregas ninguna carta en el mazo y solicitas recomendaciones de mazos varias veces dentro de un período breve, trataremos de ofrecer distintos mazos con cada clic. Esta función solo se activará si el mazo inicial está vacío.

En cuanto a las restricciones, por el momento el constructor de mazos inteligente solo está habilitado para la creación de mazos estándar, pero estamos trabajando para extender esta opción al modo Salvaje. Además, la función para recomendar una sola carta, que aparece al tratar de crear un mazo con cartas que no están en tu colección, no usa el sistema del constructor de mazos inteligente.

HS_Blog_Divider_Gems.png

Esperamos conocer pronto los fabulosos mazos que han creado con el constructor de mazos inteligente. Pueden dejarnos sus preguntas en los comentarios. ¡Nos vemos en la taberna!


¡Disculpa el desorden! Durante las próximas semanas, transferiremos los comentarios del blog a los nuevos foros. En ese momento, se perderán todos los comentarios anteriores del blog. Durante la transición, podrás unirte a la conversación si visitas nuestros foros de discusión general.