Descripción del Problema - itsCrux10/Checkers-c-with-QT-and-Arduino GitHub Wiki

Problema General

El propósito del proyecto es desarrollar un videojuego de damas en el lenguaje de programación C++. El juego debe de cumplir las reglas básicas de las damas clásicas y debe poder controlarse mediante hardware externo. Además se debe utilizar interfaz gráfica y crear una IA contra la que se enfrenta el jugador

Control de Arduino

Se debe utilizar una placa Arduino Uno para implementar un par de funcionalidades al proyecto. La primera es mediante un keypad que servirá como el control donde el jugador ingresa las coordenadas de las fichas que quiere mover y hacia la posición que desea que se desplacen. Además el Arduino debe encender un led cuando el jugador esta siendo atacado por la máquina

Interfaz Gráfica

En esta sección, el usuario debe de ser capaz de observar una pestaña con el tablero del juego, con la respectiva numeración de las filas y las columnas así como las fichas de juego repartidas por las cuadrículas. Además debe existir una ventana donde se pueda observar los movimientos descartados por la IA. Decidimos utilizar las librerías de QT para la implementación de la interfaz gráfica

Back tracking

La IA que controla el jugador dos, debe ser capaz de descartar movimientos desfavorables. Decidimos que su inteligencia sea básica debido a la complejidad que estos implica. Obtiene todos los movimientos posibles, descarta en los que el jugador le pueda comer la ficha, si puede comerle una ficha al jugador lo hace y si no escoge un movimiento de los restantes.