I'm getting there on the ai behaviour stuff for the game. I think using a state machine for the high level stuff and GOAP for the lower level stuff is the way to go. I've made roles for the ai entities where each role is just a state machine and how to transition between states