Master Client - Am I using it incorrectly?

Options
Hi, thanks in advance for anyone that can help me.

Quick rundown of my game:
- 2 player MAX head-to-head
- Players take turns - like Golf Clash (player 1 shoots, then the opponent shoots, then back to player 1)

So I'm using the Master Client as the "controller" of the game. The Master Client decides things like a a list of random numbers to use for the whole game (including the seed), the wind, the hole to use, the flag position, etc. From hole to hole, the Master Client makes these decisions, and sometimes makes decisions during a hole (is the game taking too long and send a warning? Should a squirrel come out and steal the ball? etc).

Everything works great, but now I am starting to work on disconnects/rejoins. Here's the problem: the Master controls the STATE basically because the Master has control over the random numbers and other info that was never sent to the other player because they don't need to know everything, just the info sent to them.

When there is a disconnect, the Master can switch hands, correct? Does that mean everything that the master "controls" needs to be sent to the other player? But if the Master was disconnected, they can't send the info because they are disconnected.

According to the docs:
"Photon Server detects when a Master Client disconnects and assigns another actor in the room as the new Master Client. By default, the active actor with the lowest actor number is chosen."

Do I need to check to see if the opponent became the Master, then give control back to the Master when they come back?

I've read the pertinent documentation, and I think I get it, but is there a best practices to something like this? Am I using the Master Client incorrectly?

Answers