в разные периоды времени, например в 10, 16 и 20 часов, игрок user456 из комнаты 1 и user578 комнаты 2 есть в списках. значит делаем предположение что это один и тот же игрок под разными никами.
Логики действительно маловато. Если записывать всех игроков, которые почему-то одновременно сидят на сервере, вы со временем получите пересечение всех со всеми. И почему, собственно, читер не может сидеть в одной комнате с двух регистраций?