implement new game logic