What would happen if consistency failures didn't happen?

Status
Not open for further replies.
The game would remain stuck infinitely because transmission has been closed, or it would crash while trying to send/recieve data from a non-existant transmission. Not much of a difference, really.

Through if you mean what would happen if the problems that cause them didn't exist... Well, good to go then :) We would also need to get rid of the causes of lag XD
 
The data wouldn't be correct and you would find people in the wrong spot, possible crashing, hacking would also be really simple, etc. That is why the netcode is like this.
 
It's common sense... for a programmer :P Let's say you have something in memory. You deallocate it, so it isn't in memory anymore. Then you try to access it through the old pointer you had. Since it isn't there anymore, crash! Same applies with handles and such. Quite simple.

So the main reason the game kicks you is to prevent itself from crashing. There's no way to recover from a consistency failure because the connection itself failed, and there's no way to recover it because it doesn't exist anymore. The best SRB2 would be able to do is try an automatic rejoin (thing it doesn't do, through it would be a good idea).
 
Sik said:
So the main reason the game kicks you is to prevent itself from crashing.

So basicly, SRB2 is selfish and if it wasn't, the game would be terrible? XD
 
Exactly Chrome, specially because if it crashes SRB2 wouldn't have any control over it, and if something goes really wrong, your computer would become unoperable and you would have no option but to press the Reset button. Yes, this can happen no matter how solid the OS is. Twice I managed to hang up the video card (through I think that in one of them was a driver issue, and I think Vista has a workaround for this anyways).
 
Actually, a consistency failure in SRB2 is frequently caused by the client and server getting out of sync somehow and having different game states on different ends. For instance, the old CTF cons failures were caused by the server and client spawning the player at a different spawn point. Hence, the person who joined would load at one spot in the level and the server would have the player load at a completely different spot in the level. The instant the player moved, the game would check the location between the server and client, see different sector numbers, and kick the player because their location is inconsistent with what the server thinks it is.
 
If that example you mentioned happens really then something is really wrong with SRB2 for missing something as important as that o_O
 
Doesn't it mean what it means?

Consistency failure means that it's not consistent on both sides anymore, which causes a crash.
 
Well, in the specific case of my example, what was happening was that the player was joining the CTF game as a specific team. The player would get the team he was supposed to have and spawn at a team spawn point. However, for some reason, the server was not assigning the player a team before spawning the player, and would spawn the player at a Deathmatch start instead.

We fixed that glitch by adding the spectator mode as a workaround, making it simply impossible for a player to join the game on a specific team, eliminating the circumstances that caused the bug in the first place.

In that case, the problem was caused by a bug in the game, but it can also happen from having packets dropped from a bad connection or a version inconsistency.
 
I think ZDoom has an option to allow consistency failures. Try it.
 
Well, I'd prefer a lag whilst the server did a resync with the client, but what are you gonna do?
 
Status
Not open for further replies.

Who is viewing this thread (Total: 1, Members: 0, Guests: 1)

Back
Top