Artificial Intelligence for Creating Complex Game Character Behaviours for Simulations, Real-Time Strategy Games & More