Obviously to realtime a multiplayer split screen would be near impossible, if any of you have ever played a first person shooter you would know the frustrations of input lag (firing a weapon... 300 ms later it goes). For this reason any kind of server/client setup involving a host would be no good... but I thought of a way to deal with latency.
The same way Internet radio buffers music, you could buffer input. You would have your main window, and the person you are playing against would be a sort of picture-in-picture in one of the corners of the screen... it wouldn't be "live" but it would be "a few seconds ago" just to give you an idea of what kind of combo they have going and such. I know some games store replay files by storing the timing of the input... "recreating" the game as it was originally played, this kind of system could be used to let you see the person you are playing against with only a small delay. Because it is only 4 arrows, the netcode could be extremely efficient in comparison with most online games.
At the end of the game it would resynch scores, and affirm that the score you got, your opponent now sees, and vice versa... this resynching could be post-game, and would only have to happen once. Some of the old games (EX: Grand Theft Auto 1) had sychronization errors where you'd be like "dood I just won" and on the other persons game they're pounding on you. So to prevent any mismatch, rather than try to score your opponent from the streamed FFR buffer and hope that both people have the same scores, you could simply retransmit your "own" score at the end.
That seems like a good way to deal with any latency to me, even if it was a bad connection the window could go blank and say "opponent stream lost" and still resynch at the end with the scores.
I realize that multiplayer isn't a priority right now... I'm just trying to help out with the multiplayer idea.
-...
The same way Internet radio buffers music, you could buffer input. You would have your main window, and the person you are playing against would be a sort of picture-in-picture in one of the corners of the screen... it wouldn't be "live" but it would be "a few seconds ago" just to give you an idea of what kind of combo they have going and such. I know some games store replay files by storing the timing of the input... "recreating" the game as it was originally played, this kind of system could be used to let you see the person you are playing against with only a small delay. Because it is only 4 arrows, the netcode could be extremely efficient in comparison with most online games.
At the end of the game it would resynch scores, and affirm that the score you got, your opponent now sees, and vice versa... this resynching could be post-game, and would only have to happen once. Some of the old games (EX: Grand Theft Auto 1) had sychronization errors where you'd be like "dood I just won" and on the other persons game they're pounding on you. So to prevent any mismatch, rather than try to score your opponent from the streamed FFR buffer and hope that both people have the same scores, you could simply retransmit your "own" score at the end.
That seems like a good way to deal with any latency to me, even if it was a bad connection the window could go blank and say "opponent stream lost" and still resynch at the end with the scores.
I realize that multiplayer isn't a priority right now... I'm just trying to help out with the multiplayer idea.
-...





Comment