http://bugs.winehq.org/show_bug.cgi?id=12302
--- Comment #65 from Daniel Santos daniel.santos@pobox.com 2008-07-16 12:24:11 --- I found a way to get this to work *without* modifying your wine install. I posted instructions here: http://community.codemasters.com/forum/showpost.php?p=4262757&postcount=...
(In reply to comment #64)
Would be interesting to see, if this has any impact on other applications. Is it possible to determine, if the running process is the Lotro-client? If so, a combination of hackEnabeldInRegistry && isLotroClient would make sure, that no other application might suffer from misbehaviour caused by this hack.
When the registry entry HKEY_CURRENT_USER\Software\Wine\Hacks\LOTRO\Enabled is either missing or zero, the impact is about 3 or 4 CPU instructions per call to WSASendTo, which is exceedingly minimal. If it's present and non-zero, it generally *shouldn't* have any impact on any reasonably well-written udp-based programs because there's generally no excuse for sending that many duplicate udp packets so close together. Doubles or tipples can sometimes be justified when you want to increase the likelihood that at least one of your datagrams reaches it's intended target without having to wait for the lack of an ACK from your target to decide you need to resend -- generally for data that is both time critical and important. I have employed this technique in the past when writing a UDP-based protocol, but it's most certainly the exception. At worst, this hack would prevent more than 2 of identical packets from being sent within a 20 millisecond time frame, but you can tweak those values in the registry (see above post on settings).
I can only see a few other very rare circumstances where so many dupes could be necessary (maybe when attempting countermeasures for a known bad link, that tends to drop packets -- very extreme)
But just set lotroclient.exe to be the only one to use it and then there's no problem. You can either do this with winecfg or merge this into your registry.
REGEDIT4
[HKEY_CURRENT_USER\Software\Wine\AppDefaults]
[HKEY_CURRENT_USER\Software\Wine\AppDefaults\lotroclient.exe] "Version"="win2k"
[HKEY_CURRENT_USER\Software\Wine\AppDefaults\lotroclient.exe\DllOverrides] "ws2_32"="native"