game logic at last