• Welcome to Smashboards, the world's largest Super Smash Brothers community! Over 250,000 Smash Bros. fans from around the world have come to discuss these great games in over 19 million posts!

    You are currently viewing our boards as a visitor. Click here to sign up right now and start on your path in the Smash community!

Desynchronization: In-depth analysis on causes and how to fix them

Sangoku

Smash Master
Joined
Apr 25, 2010
Messages
3,931
Location
Geneva, Switzerland
Yeah but still. Even in Europe where I know a couple of players have it, yet they prefer playing on 1.6.

I guess you're right though, probably because it's "more complicated".
 

DMoogle

A$
Joined
Jan 28, 2008
Messages
2,366
Location
Northern VA, USA
I wouldn't download anything coming directly or indirectly from smasher.
+1, I meant to say it before.

I mean, it's probably unlikely that most of his stuff contains malicious code, but he has lost all trustworthiness by attempting to sabotage this and other communities by trying to crash servers and spread viruses.
 

MrMarbles

Smash Lord
Joined
Apr 4, 2013
Messages
1,381
Location
Orlando, FL
so im trying to decrease my ds rate and i read that using the right plugins will make you ds less. i see that jamie listed the "default" plugins in the thread but that was in 2011. can someone post a new list of the standard plugins that are used now? or are we still using the same ones?
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
Adding cpu's or picking random does not cause desync, it simply exposes it. Basically if you're not in sync to begin with, then any random event is going to "cause" desync. So if you want to go that far, then disabling stage hazards "reduce desync". Because then, it's more about inputs which can be synced even if the game isn't perfectly in sync.

This "*Azimer's Audio v0.30 (Old Driver) [Audio]" needs to go. If anything, using old audio plugins increase desync due to instability. Everyone should upgrade to Azimer's Audio 0.70, or even 0.60 WIP2 if you prefer.

Of course, simply using a superior emulator will greatly reduce the amount of desync. There's absolutely no reason to use PJ64k. It is inferior to other options in every single way. Using it simply because other people use it is a poor reason too. I also don't know why people claim PJ64k is faster than Mupen64. When I uncapped frame rate I got like 142 on PJ64k and 140 on Mupen64. So if anyone thinks a < 2% difference is worth the higher desynch rate, then idk what to say lol..
 

Skrlx

Smash Champion
Joined
Jan 18, 2008
Messages
2,673
Okay guys, it's back to Mupen. Isai was right all along. Mupen is the better emulator. :O
 

Studstill

Smash Ace
Joined
Mar 16, 2014
Messages
807
Adding cpu's or picking random does not cause desync, it simply exposes it. Basically if you're not in sync to begin with, then any random event is going to "cause" desync. So if you want to go that far, then disabling stage hazards "reduce desync". Because then, it's more about inputs which can be synced even if the game isn't perfectly in sync.
A
1. How likely is it that an unexposed ds state is occuring?
2. How is a random event, cpu, or hazard any more difficult to 'sync' than the completely random player input?
3. It appears you`re saying that ds is unrelated to game settings, like color or cpus? Is this true?

This "*Azimer's Audio v0.30 (Old Driver) [Audio]" needs to go. If anything, using old audio plugins increase desync due to instability. Everyone should upgrade to Azimer's Audio 0.70, or even 0.60 WIP2 if you prefer.
B
1. It`s my understanding that everyone needs to use the same audio plugin, and that Azimer`s .30 is preferred for some reason. If this is not correct, does a reason to use .30 exist?
2. Why should .7 or .6 be used over .3?
3. Does a best option exist, assuming everyone switches? If not, why would anyone "prefer [.6]"?

There's absolutely no reason to use PJ64k. It is inferior to other options in every single way.
C
1. I was under the impression that gameshark codes could not be used, and that this is important to a lot of players. Can gameshark codes be used?
2. If they cannot, or even then: Is it preferrable even to use Gameshark codes for competition? Do they cause ds (not merely expose) ?
3. It seems inexplicable, that if what you say is true, why anyone would use pj64k, yet they do and it is far and away the most used emulator on FU/DCT. Just to reiterate your point, can you list some common functions we want out of an emulator and detail the difference between pjk and mupen that you feel are so astonishingly clear; even though reality is 99% use pjk?

I also don't know why people claim PJ64k is faster than Mupen64. When I uncapped frame rate I got like 142 on PJ64k and 140 on Mupen64. So if anyone thinks a < 2% difference is worth the higher desynch rate, then idk what to say lol..
D
1. I had never heard the claim that pjk is faster, but you appear to go on and prove it. Does the 1.4% uncapped fps difference apply at the desired 60 fps rate? Specifically, does mupen run at 59.15 fps when pjk is at 60?
2. Why is there a higher ds rate, specifically? Is this your conclusion from testing or opinion from playing or both?
 
Last edited:

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
A
1. How likely is it that an unexposed ds state is occuring?
2. How is a random event, cpu, or hazard any more difficult to 'sync' than the completely random player input?
3. It appears you`re saying that ds is unrelated to game settings, like color or cpus? Is this true?
1) Depends on emulator. PJ64k is very likely to desynch from the start. I just tested it by running 2 exe's and it wasn't in sync from the start! When you play the intro, the characters are different. That's how you know w/e you're using is no good.
2) Because random number generation is based on the previous value, while input is not.
3) Lol never heard of color, but like I said, cpu's only expose the desync, not cause. If you want to be ghetto, sure you can avoid exposing desyncs if you insist. Usually people don't play with cpu's anyway. You could also try avoiding stage hazards if you want to be super safe.

B
1. It`s my understanding that everyone needs to use the same audio plugin, and that Azimer`s .30 is preferred for some reason. If this is not correct, does a reason to use .30 exist?
2. Why should .7 or .6 be used over .3?
3. Does a best option exist, assuming everyone switches? If not, why would anyone "prefer [.6]"?
1) I can't say for sure, but for safety, it might be a good idea to use the same plugin. Why people use 0.30? Probably because someone else told them to. That or they've been playing online for a long time and just never bothered upgrading their audio plugin.
2) Because it's better? Try listening to the sound lol. Big difference. Watch SSB64's intro and you will see the audio is out of sync in 0.30.
3) Well I'd say 0.60 WIP 2 is the most stable, but 0.70 will probably be fixed soon. 0.70 is better, but less stable, so some people may complain about random problems.

C
1. I was under the impression that gameshark codes could not be used, and that this is important to a lot of players. Can gameshark codes be used?
2. If they cannot, or even then: Is it preferrable even to use Gameshark codes for competition? Do they cause ds (not merely expose) ?
3. It seems inexplicable, that if what you say is true, why anyone would use pj64k, yet they do and it is far and away the most used emulator on FU/DCT. Just to reiterate your point, can you list some common functions we want out of an emulator and detail the difference between pjk and mupen that you feel are so astonishingly clear; even though reality is 99% use pjk?
1) that's the one flaw with Mupen64, no gameshark. Lets be real here, how many people actually use gameshark codes? If people are that serious about gameshark codes, it would be counterproductive to use an emulator from 2001 that has limited gameshark support. Imo 1964 has the best kaillera implementation. Probably even less desync than Mupen64++. The only flaw is that it was programmed for the old version of Kaillera, so someone will have to update the code a bit. Otherwise AQZ is a much better alternative than PJ64k.
2) It won't cause desync, because both players will have the code on. Then again, PJ64k's implementation may suck for all I know and allow player 2 to activate gs codes that player 1 didn't activate. 1964 is so awesome that it has player 1 send gameshark codes, save file, and all current emulator options, this is really helpful and prevents desync!
3) Basically the advantage of PJ64k is simply limited gameshark support, less RAM usage, and 1.4% faster cpu. Where as mupen64 has accurate audio, way better game sync, less buggy, etc.

D
1. I had never heard the claim that pjk is faster, but you appear to go on and prove it. Does the 1.4% uncapped fps difference apply at the desired 60 fps rate? Specifically, does mupen run at 59.15 fps when pjk is at 60?
2. Why is there a higher ds rate, specifically? Is this your conclusion from testing or opinion from playing or both?
1) it only matters when you're playing the game on a toaster or your computer is overheated. As long as you have the processing power, you should run 60fps on both emulators. I'm willing to bet that most people who struggle with fps are using the wrong plugins and settings, unless it's their internet connection that made the fps drop. Idk why people still use Jabo 1.6, but their loss.
2) The ds rate is higher simply because the emulator is less stable & less accurate. This conclusion is based on testing and playing. You know something's up if I'm connecting to myself and desync LOL.
 

MrMarbles

Smash Lord
Joined
Apr 4, 2013
Messages
1,381
Location
Orlando, FL
1) Depends on emulator. PJ64k is very likely to desynch from the start. I just tested it by running 2 exe's and it wasn't in sync from the start! When you play the intro, the characters are different. That's how you know w/e you're using is no good.
2) Because random number generation is based on the previous value, while input is not.
3) Lol never heard of color, but like I said, cpu's only expose the desync, not cause. If you want to be ghetto, sure you can avoid exposing desyncs if you insist. Usually people don't play with cpu's anyway. You could also try avoiding stage hazards if you want to be super safe.

1) I can't say for sure, but for safety, it might be a good idea to use the same plugin. Why people use 0.30? Probably because someone else told them to. That or they've been playing online for a long time and just never bothered upgrading their audio plugin.
2) Because it's better? Try listening to the sound lol. Big difference. Watch SSB64's intro and you will see the audio is out of sync in 0.30.
3) Well I'd say 0.60 WIP 2 is the most stable, but 0.70 will probably be fixed soon. 0.70 is better, but less stable, so some people may complain about random problems.

1) that's the one flaw with Mupen64, no gameshark. Lets be real here, how many people actually use gameshark codes? If people are that serious about gameshark codes, it would be counterproductive to use an emulator from 2001 that has limited gameshark support. Imo 1964 has the best kaillera implementation. Probably even less desync than Mupen64++. The only flaw is that it was programmed for the old version of Kaillera, so someone will have to update the code a bit. Otherwise AQZ is a much better alternative than PJ64k.
2) It won't cause desync, because both players will have the code on. Then again, PJ64k's implementation may suck for all I know and allow player 2 to activate gs codes that player 1 didn't activate. 1964 is so awesome that it has player 1 send gameshark codes, save file, and all current emulator options, this is really helpful and prevents desync!
3) Basically the advantage of PJ64k is simply limited gameshark support, less RAM usage, and 1.4% faster cpu. Where as mupen64 has accurate audio, way better game sync, less buggy, etc.

1) it only matters when you're playing the game on a toaster or your computer is overheated. As long as you have the processing power, you should run 60fps on both emulators. I'm willing to bet that most people who struggle with fps are using the wrong plugins and settings, unless it's their internet connection that made the fps drop. Idk why people still use Jabo 1.6, but their loss.
2) The ds rate is higher simply because the emulator is less stable & less accurate. This conclusion is based on testing and playing. You know something's up if I'm connecting to myself and desync LOL.
thanks for the detailed answer. 1 question tho. Isn't item unlcok and all characters unlocked a game shark thing? And if it is how would u play on mupen with all characters and such? idk much about the emulators sorry.
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
thanks for the detailed answer. 1 question tho. Isn't item unlock and all characters unlocked a game shark thing? And if it is how would u play on mupen with all characters and such? idk much about the emulators sorry.
Well it would depend on the emulator. If the Kaillera implementation was done right, it would automatically sync the save file from player 1 to the other players. If you have to manually do it, then that's unfortunate.

I'll go ahead and test how Mupen64 works, since I normally just play on a modded rom.

Otherwise, you'll have to use a modified rom that starts with everything unlocked. The quickmatch rom I made has everything unlocked. My issue with modified roms is that everyone has to use the same rom, and people might want slightly different variations of quickmatch, like team attack on/off, timed stock, etc.

Edit: I just tested it and Mupen64++Beta does indeed sync the save. After playing online, you'll notice a .net file in the save folder.
 
Last edited:

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
Mupen 64 syncs the save, what does this mean for cheat usage?
It means you don't need cheats for unlocking all characters, stages, and item selection... Since PJ64k to my knowledge does not sync saves, everyone clears their save files or something I believe. Otherwise, idk why people would use a cheat in the first place...

I don't get it though. Doesn't make sense why smash64 purists would insist that gameshark codes is more important than less desynching! Like I said, PJ64k sucks anyway because lets be real, activator codes are important if you are a gameshark user. So why pick the worst emulator just to support a limited amount of codes?

If gameshark codes are so important, then use a better emulator that supports all gameshark codes and doesn't desync.
 

Studstill

Smash Ace
Joined
Mar 16, 2014
Messages
807
I`m sorry I still don`t follow. So Mupen supports .cht files and gameshark codes?
Or the save file syncing prevents that?
I.e. you can ship a Mupen install with a save file that has the chars/itemswitch unlocked and boom, everyone is playing on Mupen with all chars etc, thus eliminating the need for cheats?
I consider cheats to be fun to mess around with, but for competition you just need the item switch/chars unlocked.
 
Last edited:

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
I`m sorry I still don`t follow. So Mupen supports .cht files and gameshark codes?
Or the save file syncing prevents that?
I.e. you can ship a Mupen install with a save file that has the chars/itemswitch unlocked and boom, everyone is playing on Mupen with all chars etc, thus eliminating the need for cheats?
I consider cheats to be fun to mess around with, but for competition you just need the item switch/chars unlocked.
Mupen64++Beta does not have gameshark support. If you want gameshark support, PJ64 2.1 with AQZ, or 1964 1.1 with Kaillera are superior alternatives to PJ64k.

The save file synching is just convenient so that you don't need gameshark codes for unlocking everything.

Like I said, PJ64k has limited gameshark support so important codes like stage swap and fixed dreamland spawn coordinates don't even work. And again, is limited gameshark support really worth the much higher desync rate?
 

MrMarbles

Smash Lord
Joined
Apr 4, 2013
Messages
1,381
Location
Orlando, FL
Mupen64++Beta does not have gameshark support. If you want gameshark support, PJ64 2.1 with AQZ, or 1964 1.1 with Kaillera are superior alternatives to PJ64k.

The save file synching is just convenient so that you don't need gameshark codes for unlocking everything.

Like I said, PJ64k has limited gameshark support so important codes like stage swap and fixed dreamland spawn coordinates don't even work. And again, is limited gameshark support really worth the much higher desync rate?
so if i understand you correctly, since mupen uses save file synching, i can manually unlock all of the unlocks by beating the game and then that data will carry over to online play so those cheat codes would no longer be necessary?
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
so if i understand you correctly, since mupen uses save file synching, i can manually unlock all of the unlocks by beating the game and then that data will carry over to online play so those cheat codes would no longer be necessary?
You could, but that's more work than necessary. Someone can just send you their save file. In fact, save files might even be compatible, I'll go check.

The cool thing is that Player 1 sends their save data over. So say you didn't have a complete save file, you would automatically be sent one, and later on, you can just rename that .net file to .sra to keep the save file they sent.

So just make sure Player 1 has the desired save file.

If no one has a save file for Mupen, then I will upload my cheat engine table so that people can easily unlock everything.

So yes, those cheats for unlocking everything are no longer necessary.
 
Last edited:

Skrlx

Smash Champion
Joined
Jan 18, 2008
Messages
2,673
I don't know about Mupen64++, but the regular Mupen64 already has everything unlocked iirc. I always thought that was weird. No GS cheats but everything is unlocked from the get-go. Though maybe it's because it already came with a save file for most games.
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
I confirmed that the save file is compatible with the PJ64 one. You'll just have to rename the file to match.
I don't know about Mupen64++, but the regular Mupen64 already has everything unlocked iirc. I always thought that was weird. No GS cheats but everything is unlocked from the get-go. Though maybe it's because it already came with a save file for most games.
It probably came with the save file.

People should use Mupen64++Beta, not Mupen64k 0.80 or w/e. Mupen64k 0.80 is buggy and crashes more often.
 

Sangoku

Smash Master
Joined
Apr 25, 2010
Messages
3,931
Location
Geneva, Switzerland
The thing with mupen is that most of us didn't know having one save file was enough. Just to make sure, so if I have the correct save file and I play online with someone who has nothing, we don't have to do anything and he'll have everything?

Mupen wasn't used for that reason mainly I suppose. And using a patched ROM hurts my eyes (horizontal lines) and would be difficult to spread (illegal to link to a ROM link on smashboards).

I personally don't really mind about DS as they don't happen too often, and that's why I didn't want to change. For me lag and delay are way more important issues than DS. How many console only player have you heard say they don't play online because of DS? But yeah, since we can't do anything about major issues, it doesn't mean we shouldn't do something about minor ones.

So if it really is supperior on every ground, maybe it is worth the change. Changing something like that won't be easy, but I think it is feasible with time. We'll have first to change it ourselves and get a hang of it, then we'll change the link provided in the smash index, and we'll advertise on Galaxy/FU/skype. Hopefully with time it will change, just like they changed from Exc to LAN back then.
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
The thing with mupen is that most of us didn't know having one save file was enough. Just to make sure, so if I have the correct save file and I play online with someone who has nothing, we don't have to do anything and he'll have everything?
Yes, everyone gets player 1's save.

Mupen wasn't used for that reason mainly I suppose. And using a patched ROM hurts my eyes (horizontal lines) and would be difficult to spread (illegal to link to a ROM link on smashboards).
Oh wow, I didn't know the main concern was the save file issue. I personally don't like patched roms either, since there are a few issues with it, like making sure everyone has the same exact version. Only Jabo 1.6 has that horizontal lines problem. It has to do with the plugin itself, something that only happens if the crc isn't a certain value. That's why the Japanese version also has that problem. Is there a reason you prefer Jabo 1.6 over Glide64 Final? I can't go back to Jabo 1.6 after realizing how nice it is to see invincibility and other cool visual effects.

So if it really is supperior on every ground, maybe it is worth the change. Changing something like that won't be easy, but I think it is feasible with time. We'll have first to change it ourselves and get a hang of it, then we'll change the link provided in the smash index, and we'll advertise on Galaxy/FU/skype. Hopefully with time it will change, just like they changed from Exc to LAN back then.
Ya the only flaw is no gameshark codes and requires more RAM. I agree that this will take time for people to adjust to.
 

Sangoku

Smash Master
Joined
Apr 25, 2010
Messages
3,931
Location
Geneva, Switzerland
Yes, everyone gets player 1's save.
Then that's great.
Oh wow, I didn't know the main concern was the save file issue.
Well I think that's the main reason, because whenever someone said mupen was better, the answer was always "yeah but no gameshark, therefore no unlocked chars". I know I've been saying this myself.

Only Jabo 1.6 has that horizontal lines problem. It has to do with the plugin itself, something that only happens if the crc isn't a certain value. That's why the Japanese version also has that problem. Is there a reason you prefer Jabo 1.6 over Glide64 Final? I can't go back to Jabo 1.6 after realizing how nice it is to see invincibility and other cool visual effects.
Absolutely no reason. Again, it has to do with what is used broadly. Since Jabo 1.6 is the default one distributed in the downloads, I didn't bother to change. Sometimes I change it, then when I have to re-download the emu for some reason (changing comp, changing OS, etc), then I always end up with 1.6. Also the renaming gimmick for online is troublesome.
 

mixa

Banned via Warnings
Joined
Jun 6, 2012
Messages
2,005
Location
Isle of ゆぅ
With pj64k, when I P2P'd, I had 1–2 frame delay, no lag, and no DS. (Granted, I never P2P'd with more than three different people all the time I played)

On server it was always bad. Rain or shine.

About change, some people had deep beliefs that go from thinking their 2004 emulator is the best there is, to thinking the game runs at 24fps. But mostly they are just lazy, so it is hard. :3

Sometimes I change it, then when I have to re-download the emu for some reason (changing comp, changing OS, etc), then I always end up with 1.6.
I had a backup, ready-to-go emulator uploaded exactly for those inconveniences.
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
I guess I had the wrong idea for why people used PJ64k lol.
Then that's great.

Well I think that's the main reason, because whenever someone said mupen was better, the answer was always "yeah but no gameshark, therefore no unlocked chars". I know I've been saying this myself.


Absolutely no reason. Again, it has to do with what is used broadly. Since Jabo 1.6 is the default one distributed in the downloads, I didn't bother to change. Sometimes I change it, then when I have to re-download the emu for some reason (changing comp, changing OS, etc), then I always end up with 1.6. Also the renaming gimmick for online is troublesome.
Well that makes sense now. It is a hassle when changing comps, OSes, etc. Plus I hate that renaming issue, which is another reason I didn't like that emulator.

With pj64k, when I P2P'd, I had 1–2 frame delay, no lag, and no DS. (Granted, I never P2P'd with more than three different people all the time I played)

On server it was always bad. Rain or shine.

About change, some people had deep beliefs that go from thinking their 2004 emulator is the best there is, to thinking the game runs at 24fps. But mostly they are just lazy, so it is hard. :3
Wow 1-2 frames. That's awesome! I didn't think 1 frame was safe. What ping is safe to play on 1 frame?


I'm curious though, because I've never used AQZ netplay outside of testing. Which has lower delay, kaillera server or AQZ netplay? I'm wondering which is better for 4 players.
 

mixa

Banned via Warnings
Joined
Jun 6, 2012
Messages
2,005
Location
Isle of ゆぅ
What ping is safe to play on 1 frame?
I'm not sure. Is that something the host does? I didn't do anything with ping spoof and whatnot, but I did have a lower ping on servers now that you mention (15~30).

I only played AQZ with two players, but it was way better than on server. I finished co-op mode of Diddy Kong Racing with AQZ, it was pretty smooth. I think the game only crashed/DS'd once, but the save file was safe anyway.
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
I'm not sure. Is that something the host does? I didn't do anything with ping spoof and whatnot, but I did have a lower ping on servers now that you mention (15~30).

I only played AQZ with two players, but it was way better than on server. I finished co-op mode of Diddy Kong Racing with AQZ, it was pretty smooth. I think the game only crashed/DS'd once, but the save file was safe anyway.
I guess auto is the best choice for input delay then. I usually just did manual for delay.

Wow it's been so long since I've really played Diddy Kong Racing significantly. Totally forgot that it has co-op. So cool!

I guess I'll also use AQZ for 4 players, since server desyncs more often. I just hope I can still get low delay.
 

M!nt

Smash Champion
Joined
Jan 26, 2011
Messages
2,087
Of course, simply using a superior emulator will greatly reduce the amount of desync. There's absolutely no reason to use PJ64k. It is inferior to other options in every single way. Using it simply because other people use it is a poor reason too. I also don't know why people claim PJ64k is faster than Mupen64. When I uncapped frame rate I got like 142 on PJ64k and 140 on Mupen64. So if anyone thinks a < 2% difference is worth the higher desynch rate, then idk what to say lol..
I tried for an entire day trying to get mupen64 to work on my computer, but it just automatically closes right when I start the game and I never tried it again. I tried every plugin and lots of other stuff, but nothing worked. I guess I'll have to figure it out eventually if I ever actually feel like playing this game again lol. Maybe I should try mupen64++beta or whatever.
 
Top Bottom