Sending sit(self)
with no seat ID has a special behavior:
it tries to place you in an empty seat whose partner is occupied.
If there is no such seat, you are placed in the first unoccupied seat.
If no seat is unoccupied, the call fails.
seatnorth0
seatsouth0
seatnorth1
seatsouth1
seatnorth2
seatsouth2
seatnorth3
seatsouth3
game.seat_pairs
-- "Players must be seated in pairs."
game.win()
-- The first client to send this wins the game.