Ok, tested it with about 20 players.
Got massive desync. Had to disable it. Still I encourage you to continue youre work
Try reducing the number on this line (near the top) to 600:
Code:
_objHouse = nearestObjects [player, ["House"], 2000];
This creates the list of houses within, currently 2000m, 600m is more than adequate. Feel free to reduce further. I am testing with 200m, with the new version I have added in some 'failures' in the power supply so house lights randomly flicker out and not all houses get lit at the start..
New code line:
Code:
_objHouse = nearestObjects [player, ["House"], 600];