This is the website logo Malware Masters

MALWARE MASTERS

JUEGO DE CARTAS

En la actualidad, el inminente aumento en el uso de plataformas digitales para manejar nuestra información personal ha conllevado a su vez un aumento en el número de amenazas cibernéticas para las personas, es por esto que la educación sobre ciberataques y técnicas de seguridad ante estos es una necesidad.

En este contexto nace Malware Masters, un videojuego móvil de cartas jugador contra jugador, que busca educar y familiarizar a los jóvenes en técnicas y conceptos tanto de ciberseguridad como ciberataques. Esta temática se abarca mediante la implementación de cada una de las cartas, incluyendo tópicos clave de ciberseguridad / ciberataques, y creando efectos que representen que hacen estas técnicas en la vida real, junto con una sección en la que se explique resumidamente cómo funcionan estas técnicas y ejemplos cotidianos de las mismas. De esta forma los jugadores pueden aprender de manera entretenida, para luego poner en práctica sus conocimientos y así evitar caer en posibles estafas.

  • This is the royal game sos
  • This represents the sos
  • This represents the sos

Diseño y Arquitectura

MVC

El proyecto se ha estructurado bajo la arquitectura MVC, en la capa de modelo se definieron los diferentes contenedores de datos que tiene el juego junto con como se relacionarán, creando el jugador, sus computadores y finalmente las cartas como modelos principales. Los controladores mantienen la lógica de negocios del proyecto, es aquí donde se encuentran los controladores respectivos para los jugadores y sus equipos, incluyendo también el GameManager, que es la entidad que se encarga de manejar y sincronizar la partida entre los jugadores. Finalmente, la vista se encarga de mostrar los datos de la partida a los jugadores respectivos, pudiendo diferenciar el jugador actual del enemigo en ambas vistas bajo los mismos controladores.

Orientación a eventos

La comunicación entre componentes y capas se realizó con una arquitectura basada en eventos. De esta manera se redujo considerablemente el acople y dependencia entre componentes. La capa visual y los controladores se comunican exclusivamente a través de eventos, por lo que es sumamente sencillo realizar modificaciones de vistas sin modificar la lógica de la aplicación, también este enfoque facilita la distinción que se debe dar en la vista de cada jugador. Finalmente, este enfoque facilita enormemente la implementación de nuevas cartas con efectos variados, ya que el flujo de las distintas acciones de la partida también se informa a través de eventos.

Conexión P2P

La conexión entre jugadores se realizó mediante la librería Netcode for Gameobjects de Unity, esta librería permite unir a 2 jugadores en una conexión P2P en la cual 1 jugador actúa de servidor y cliente y otro jugador solo actúa como cliente. La lógica del juego se encarga de asignarle una ID a cada jugador cuando se entra en una partida, y se transmite a los controladores para sincronizar esta ID con el controlador correspondiente. La lógica de negocios solo ocurre en el dispositivo del host, y gracias a la orientación a eventos, el cliente solo actúa como emisor y receptor de los mismos, sincronizando los datos emitidos por la lógica en la vista, que es lo único que se implementa en el cliente.

Descargar

Escnea el QR o haz click en él