| ekddl4578 | May 9 2008, 4:54 pm | Post #1 |
|
I see this word many times whenever I read posts but I don' know what it is
can anyone tell me? |
||
![]() ![]() |
| Kenoli | May 9 2008, 5:20 pm | Post #2 |
|
Normally everything in a multiplayer game is synced. Everything you see is exactly the same as what the other players see.
If something changes on your computer, but not the other players' computers, the game is desynced, and players get disconnected. This sort of thing can happen when using EUD triggers. When they activate on one person's computer that information isn't necessarily shared to other people. |
||
![]() ![]() |
| NudeRaider | May 9 2008, 6:30 pm | Post #3 |
|
Write your own destiny, or else someone will write it for you!
|
synch = synchronized
desynchronizations can also happen through bnet bugs often caused by bad connections |
||
![]() ![]() ![]() www.sonsofwar.pyrom.net_________0% 100% |
| O)FaRTy1billion[MM] | May 9 2008, 8:56 pm | Post #4 |
|
Remember the game! P.s.: Feldspar.
|
Here is a scenario related to EUDs:
Say you have a trigger that will create a unit if they look at a specific area on the map. Screen position is not shared data between all players. So say you, but nobody else, looks at that specific area. The unit will create for you, but because the screen coordinates for the other players to not make the condition true not for them. You're StarCraft says there is an extra unit, but the other player's StarCraft says otherwise. So you simply drop out of the game. |
||
![]() ![]() Wheeee! |
| ekddl4578 | May 10 2008, 12:26 am | Post #5 |
|
thanks I get it now and is there any like a method prevents from getting dropped by synchronization?
|
||
![]() ![]() |
| Kenoli | May 10 2008, 1:11 am | Post #6 |
|
Preventing desync from disconnecting players? I doubt that's even possible.
|
||
![]() ![]() |
| stickynote | May 10 2008, 2:10 am | Post #7 |
|
yes, executor?
|
Don't use EUD's.
|
||
| DT_Battlekruser | May 10 2008, 2:30 am | Post #8 |
|
I swear method on this was discussed back when EUDs were discovered, but I don't remember.. common sense seems to dictate that you cannot prevent desyncs when they occur.
|
||
![]() ![]() |
| Brontobyte | May 11 2008, 12:22 pm | Post #9 |
|
I still don't get the fact that StarCraft would just create the unit for that one player. Couldn't you just have the EUD trigger for each player in the game? If it creates it for the one player, why would they become disconnected? |
||
![]() ![]() Joe's Crematorium "You kill 'em, we grill 'em" Open: Mon-Fri 6am-11pm Sat-Sun 10am-10pm CALL FOR WEEKEND SPECIALS 1-800-666-0000 |
| DT_Battlekruser | May 11 2008, 6:18 pm | Post #10 |
|
In the case of an EUD condition that is local, then each player will see a different state of that condition. The trigger is on every player's computer, but the condition only shows true on one person's computer. Their Starcraft then executes the trigger independently, creating a unit only for them and resulting in a desync.
The way Starcraft was written, it relies on the fact that, barring any keyboard or mouse input, two games running on two separate machines will execute identically. |
||
![]() ![]() |
| Brontobyte | May 11 2008, 9:27 pm | Post #11 |
|
So then how do triggers that require a player to move in to a specific location not cause a dysnc, or do you mean just EUD triggers?
|
||
![]() ![]() Joe's Crematorium "You kill 'em, we grill 'em" Open: Mon-Fri 6am-11pm Sat-Sun 10am-10pm CALL FOR WEEKEND SPECIALS 1-800-666-0000 |
| DT_Battlekruser | May 11 2008, 9:56 pm | Post #12 |
|
During normal operation, the location of all units on the map is the same for every client machine. Therefore, a trigger with conditions "Unit is brought to location" will execute in an identical fashion on every client machine simultaneously, thus preventing a desync (note that if the frame count of any client machine falls out of sync, the "lag" window is displayed while waiting for it to catch up).
Starcraft was not designed to execute triggers based on local conditions like screen position, and so a trigger with screen position for a condition will execute asynchronously on one machine only, causing a desync. It is not all EUD conditions that desync, only ones that are conditions Starcraft was never meant to handle. |
||
![]() ![]() |
| Brontobyte | May 11 2008, 10:08 pm | Post #13 |
|
Ok I get it now. You can't have a condition that would only apply to ones specific computer's ram.
Thanks!
|
||
![]() ![]() Joe's Crematorium "You kill 'em, we grill 'em" Open: Mon-Fri 6am-11pm Sat-Sun 10am-10pm CALL FOR WEEKEND SPECIALS 1-800-666-0000 |