added some detail game logic