game logic improvement