game: updated area generation, great and global refactoring