Ponos is a tool for building a Markov Decision Process (MDP) that assembles video game levels for dynamic difficulty adjustment. It is the work behind my dissertation, and it combines the work of three papers into one:
git clone https://github.com/bi3mer/ponos
cd ponos
git submodule init
git submodule updatePonos works by interacting with a socket server or a REST server. For the command below to work, the server must be running. Examples of kinds of servers can be seen in the examples repo. Fair warning, sockets are, unsurprisingly, a lot faster, so I recommend using them.
pypy3 ponos/ponos.py --model-name mariopypy3 ponos/ponos.py --model-name mario --use-rest-server --port 5000> python ponos/ponos.py --help
usage: ponos.py [-h] [--host HOST] [--port PORT] [--use-rest-server] --model-name MODEL_NAME
Ponos
options:
-h, --help show this help message and exit
--host HOST URL for host, defaults to 127.0.0.1
--port PORT URL for host, defaults to 8000
--use-rest-server Set to true if the server uses REST instead of a socket. Default is to use a socket.
--model-name MODEL_NAME
Name of file for resulting pickle file (don't include extension).TBD