Lolstats

De WikiGarcia
Revisión del 02:27 12 feb 2022 de Rgarcia (discusión | contribs.) (Página creada con «'''Lolstats''' es un proyecto personal el que intento aplicar conocimientos de procesamientos de datos e Inteligencia Artificial a las estadísticas extraídas de la API de…»)
(difs.) ← Revisión anterior | Revisión actual (difs.) | Revisión siguiente → (difs.)

Lolstats es un proyecto personal el que intento aplicar conocimientos de procesamientos de datos e Inteligencia Artificial a las estadísticas extraídas de la API de Riot Games del popular juego League of Legends.

El propósito principal es crear un modelo que inicialmente pueda predecir si una partida resultará en victoria o derrota considerando el historial de partidas de cada jugador y su rendimiento histórico.

Conceptos básicos

A continuación se mencionan los conceptos básicos para tener en cuenta durante el desarrollo de éste proyecto.

League of Legends

League of Legends (LoL) Es un videojuego MOBA (Multiplayer Online Battle Arena) que se encuentra entre los más populares para PC. El juego cuenta con varios modos de juego siendo el principal un mapa 5 contra 5 donde el objetivo es destruir la base enemiga que se encuentra al otro lado de un mapa con tres carriles y una jungla.

Más información:

https://es.wikipedia.org/wiki/League_of_Legends https://www.leagueoflegends.com

Abismo de los lamentos (5v5)

Modo de juego 5 contra 5, donde cada jugador selecciona a un campeón con habilidades únicas. Los 10 jugadores entran a un mapa con 3 carriles y una jungla con las bases en extremos opuestos. Cada jugador debe recolectar oro asesinando súbditos o campeones enemigos o destruyendo estructuras enemigas para poder comprar objetos que mejoren sus habilidades y subir de nivel.

Dentro del juego es común utilizar los siguiente términos:

  • Invocador: Es el nombre que se le da a un jugador. Cada jugador tiene su Nombre de Invocador único.
  • Nivel de Invocador: Jugar partidas otorga experiencia la cual se acumula para ir subiendo de nivel. Esta cantidad no tiene límite.
  • Clasificación: El juego permite jugar en modo Clasificación donde el resultado de tu partida te da puntos para colocarte en una tabla de clasificación general de toda la región.
  • Región: Por cuestiones de logística las personas de distintas regiones geográficas juegan en distintas regiones (servidores). Entre éstas regiones se encuentran: Lationamérica Norte, Latinoamércia Sur, Norte América, Europa del Este, Corea, China, etc.
  • Rango: Dependiendo de qué tan bueno sea un jugador se le asigna un rango en la clasificación general, yendo de menor a mayor: Hierro, Bronce, Plata, Oro, Platino, Diamante, Maestro y Retador.
  • División: Dentro de cada Rango hay subdivisiones, yendo del IV al I. Ej: El siguiente nivel de Oro I es Platino IV.

Dentro de la partida es común utilizar los siguientes términos:

  • 5v5: Abreviación de 5 contra 5.
  • Campeón: Personaje del juego que tiene estadísticas y habilidades únicas.
  • Estadísticas: Características del personaje, principalmente se refiere a su jugabilidad. Ej: Puntos de ataque, puntos de defensa, velocidad de ataque, puntos de vida, etc.
  • Habilidades: Movimiento especial de un campeón que tiene efectos especiales. Ej: Hacer daño extra, curar vida, desplazamientos, control de masas, etc.
  • Mapa: Terreno de juego.
  • Carril: Camino amplio por donde se puede transitar y se mueven los súbditos.
  • Súbditos: Personajes no jugables (NPCs) que ayudan a los jugadores a combatir.
  • Jungla: Parte del mapa que no forma parte de los carriles con caminos estrechos y mostruos neutrales.
  • Monstruos neutrales: Personajes no jugables (NPCs) que no ayudan a ningún equipo.
  • Oro: Moneda de cambio dentro de la partida, se usa para comprar objetos.
  • Objeto: Elemento que se puede equipar a un campeón para mejorar sus estadísticas.
  • Build: Se le llama así al conjunto de objetos que utiliza un campeón.
  • Estructura: Se refiere a las construcciones con las que los jugadores pueden interactuar, generalmente tienen una función y pueden ser destruidas.
  • Nivel: Dentro de la partida los campeones mejoran sus estadísticas cuando suben de nivel. Es incremental hasta llegar al nivel 18.
  • Experiencia: Matar enemigos o realizar ciertas acciones en la partida otorga experiencia la cual se usa para subir de nivel.

Riot API

Riot Games (la compañía creadora de LoL) proporciona para los desarrolladores una API para obtener los datos de los jugadores y las partidas que hay jugado, esto con el fin de que puedan crear herramientas para ayudar a los jugadores a entender mejor el juego, mostrar estadísticas y comparaciones de objetos, campeones y jugadores, etc.

Una de las herramientas de este tipo más comunes es la página OP GG (https://lan.op.gg).

La documentación de la API se encuentra en: https://developer.riotgames.com/apis

Inteligencia Artificial

La inteligencia artificial es una rama del Aprendizaje Máquina que se centra en encontrar modelos que sirvan para llevar a cabo una tarea, normalmente de clasificación, utilizando métodos que normalmente incluyen un entrenamiento previo del modelo.

El proceso general de un algoritmo de inteligencia artificial es:

  1. Obtención de muestras de entrenamiento
  2. Obtención de características de las muestras
  3. Definición del modelo
  4. Entrenamiento del modelo hasta llegar a un error mínimo
  5. Obtención de muestras de prueba y sus características
  6. Prueba del modelo
  7. Liberación del modelo

Recopilación de datos

A continuación se enumera y detalla el proceso de recopilación de datos de las partidas y los jugadores a través de la API de Riot.