State:
colors: [1-d array of 0, 1, 2] (0: transparent, 1: white, 2: black)
turn: 0 / 1 (0 is the first player in players, 1 is the second player in players)
winner: 0 / 1 / null (Same as turn)
players: [usernames] (usernames get from Agent)
speculators: [usernames]
State: colors: [1-d array of 0, 1, 2] (0: transparent, 1: white, 2: black) turn: 0 / 1 (0 is the first player in players, 1 is the second player in players) winner: 0 / 1 / null (Same as turn) players: [usernames] (usernames get from Agent) speculators: [usernames]