Le problème est tout con, ils utilisent un random genre rand() modulo x qui retourne une valeur comprise entre 0 et x (le nombre de joueurs)
exemple si il y a 10 joueurs qui essayent d'obtenir une maison cette méthode retourne une valeur comprise en 0 et 9...

ils ont oubliés de faire + 1 : (rand() % x) + 1 retournant ainsi une valeur comprise entre 1 et x (10 dans l'exemple)