MABE2
Basic Steps
These steps are here to serve as guidelines/reminders for the process, not as official documentation. The MABE2 docs site has some in-depth, but somewhat complex, instructions about how to actually set up and work with a new config file. The steps are significantly stripped down here for you.
Anywhere you see Modname here, you should just drop in the name of the module. e.g. Modname.mabe => RoyalRoad.mabe, EvalModname.hpp => EvalRoyalRoad.hpp.
Running MABE with Existing Evaluators
cd buildto enter the build directorymaketo compile MABE2- Edit the parameters in 
settings/Modname.mabeto your liking. You can probably leave most things as default but may want to play around with the parameters ofEvalModnamein particular to see how things change, or mess with the DataFile parameters if you want to store different kinds of data or give a new name. ./MABE -f ../settings/Modname.mabeto run.
Inportantly, you do not need to recompile if you are changing parameters in the .mabe file. You only need to recompile if you are changing code.
Creating a New Evaluator
- Write your evaluator in 
source/evaluate/static/EvalModname.hppby copying one of the existing modules and changing relevant details.EvalNK.hppis a good place to start. - Add a line to 
source/modules.hppto#include "evaluate/static/EvalModname.hpp" cd buildto enter the build directorymaketo compile MABE2- Copy and paste in this 
gen.mabefile tosettings/gen.mabe. EditEvalModname eval_modto match your new module. Optionally, editBitsOrg bits_orgtoValsOrg vals_orgif you’d like to use real-valued numbers instead of bits. ./MABE -f ../settings/gen.mabe -g ../settings/EvalModname.mabeto generate your eval module- Edit the parameters to your liking, as in 3 above.
 ./MABE -f ../settngs/Modname.mabeto run.