player and gamestate modeling