game and input engine