Playing the MMORPG using the Deep Reinforcement Learning. The Nethack and Diablo1 game will be used for environment.
- NetHack: https://github.com/facebookresearch/nle
- NetHack Visualization: https://github.com/maciej-sypetkowski/autoascend
- Diablo1 for Linux: https://github.com/diasurgical/devilutionX
- Vizdoom: https://github.com/mwydmuch/ViZDoom
- Simple SDL2 game: https://github.com/PolyMarsDev/Twini-Golf
- How to binding a C++ STL game with Python: https://dohyeongkim.medium.com/playing-the-diablo1-using-deep-learning-series-1-e03cd7127c46
Visualization tool is added to original NLE of Facebook code.
You can play a game yourself by below command.
$ python3.8 -m nle.scripts.play --env NetHackChallenge-v0
You can control the SDL2 C++ game using Python.
I set every path as relatively except path for OpenCV. You need to change the OpenCV_DIR path of main CMakeLists.txt to your OpenCV path.
set(OpenCV_DIR /home/kimbring2/opencv/build)
find_package( OpenCV REQUIRED )
include_directories( ${OpenCV_INCLUDE_DIRS} )
Then, move to Twini-Golf folder and build project using below command.
$ cmake .
$ make
You should check there is 'vizgolf.cpython-38-x86_64-linux-gnu.so' under lib_python folder folder. Next, copy the twingolf file to the lib_python folder.
Then, move to lib_python folder.
Open Jupyter Notebook for 'env_test.ipynb' and test code of video.