Gregory Smith - 2011-06-08

Some details: StarGameProtocol::Sync checks if inLocalPlayerIndex == inServerPlayerIndex to know whether to start the hub or the spoke. NetSetServerIndex is never called, going back to marathon2, so if the server index isn't 0, the wrong machine fires up the hub, and the real hub asserts out. It's possible to call NetSetServerIndex on the gatherer easily enough in load_and_start_game, but as a joiner in join_networked_resume_game I don't know a way to figure out what to set it to. It's not part of the topology message.