Skip to content

ccokee/Neat-MManiacs

Repository files navigation

#Acerca de: Este programa usa la libreria neat-python y el emulador de gameboy PyBoy para, mediante una red neuronal evolutiva, tratar de jugar automaticamente el primer nivel del juego clásico Motocross Maniacs de Game Boy.

#Instalacion: Primero tendremos que instalar pypy y sus dependencias para poder arrancar pyboy y usar neat-python.

##macOS La forma mas sencilla de comenzar es instalando Brew

Una vez instalado Brew, actualizamos e instalamos sus dependencias

brew update
brew install git pypy sdl2 sdl2_gfx sdl2_image
brew link sdl2

pip_pypy install -r requerimientos.txt

###Ubuntu/Linux En Ubuntu (no en todos los linux) tendremos que usar un entorno virtual para arrancar pypy por problemas de compatibilidad con la version de cpython instalada.

sudo apt update
sudo apt install git pypy pypy-dev virtualenv libsdl2-dev

Ahora nos vamos a la carpeta del proyecto y creamos el entorno virtual:

virtualenv . -p $(which pypy)
source ./bin/activate

pip install -r requerimientos.txt

###Windows Primero, instalar Git, vcredist y VCForPython27:

https://git-scm.com/download/win
https://www.microsoft.com/en-us/download/details.aspx?id=5582
https://www.microsoft.com/en-us/download/details.aspx?id=44266

Luego, bajar la ultima version construida de  Pypy de 32 bit:

https://bitbucket.org/pypy/pypy/downloads/

Descomprimir en algun lugar como: C:\pypy2\

Busca "Editar variables del sistema" desde el menú de inicio. Añade C:\pypy2; al principio de la variable PATH

Arranca cmd.exe y ejecuta:

pypy -m ensurepip
pypy -m pip install -U pip wheel
pypy -m pip install -r requerimientos.txt

Bajar el SDL2 Runtime Binario para windows de 32 bit

https://www.libsdl.org/download-2.0.php

Guardalo en C:\pypy2\SDL2.dll. y luego pon la variable de sistema en la consola:

set PYSDL2_DLL_PATH=C:\pypy2\SDL2.dll

#Uso

Por último solo tendremos que hacer:

pypy Neat-MManiacs-evol.py

o

pypy Neat-MManiacs-play.py

Para jugar con el genoma con mejor fitness, desde la carpeta del proyecto.

About

Neat IA for Motocross Maniacs in PyBoy with Neat-Python

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published