Those are three completely separate and unique states, and they must be set individually.
useState returns an array with two items. The first item is the states value, and the second item is a function used to set that state.
So with this state object, you would get the state value with:
state.stage[0] // get "stage" value
And set the state with:
state.stage[1](newStage) // set "stage" value
But that's not how react applications are typically structured because trying to remember if you should use [0] or [1] is pretty ugly.
Instead, this is typically laid out like this:
const [stage, setStage] = useState(1),
const [players, setPlayers] = useState([])
const [result, setResult] = useState("")
And now reading state is as easy as stage and setting it as easy as setStage(newStage).