[Bug 29168] Multiple games and applications need realtime updates to KSYSTEM_TIME members in KUSER_SHARED_DATA (Star Wars: The Old Republic game client, Blizzard games: 32-bit Diablo III, 32-bit WoW, Overwatch, GO 1.4+ runtime)

wine-bugs at winehq.org wine-bugs at winehq.org
Mon Mar 26 14:49:57 CDT 2018


https://bugs.winehq.org/show_bug.cgi?id=29168

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Multiple games and          |Multiple games and
                   |applications need realtime  |applications need realtime
                   |updates to KSYSTEM_TIME     |updates to KSYSTEM_TIME
                   |members in                  |members in
                   |KUSER_SHARED_DATA (Star     |KUSER_SHARED_DATA (Star
                   |Wars: The Old Republic game |Wars: The Old Republic game
                   |client, Blizzard games:     |client, Blizzard games:
                   |Diablo III, StarCraft II,   |32-bit Diablo III, 32-bit
                   |WoW, Overwatch, GO 1.4+     |WoW, Overwatch, GO 1.4+
                   |runtime)                    |runtime)

--- Comment #297 from Anastasius Focht <focht at gmx.net> ---
Hello Bjoern,

--- quote ---
Since when is this needed for wow?
This about the  KUSER_SHARED_DATA feature needed by games like swtor.
Wow needs the exception fixes  that this patch depends on it's current ( older
patches didn't depend on this).
--- quote ---

I downloaded multiple Blizzard games: the 64-bit and 32-bit variants if
available. For testing I used a 64-bit WINEPREFIX with full install and a
helper 32-bit WINEPREFIX with has symlinks to allow testing both versions
(32-bit and 64-bit) if present.

I should have been more explicit though, the are some differences when 32-bit
or 64-bit version is used. Some of Blizzard's major titles/games seem to share
parts of the anti-cheat/debugging code.

===
Overwatch (64-bit): 
===

--- snip ---
./drive_c/Program Files (x86)/Overwatch/Overwatch Launcher.exe: PE32 executable
(GUI) Intel 80386, for MS Windows
./drive_c/Program Files (x86)/Overwatch/Overwatch.exe: PE32+ executable (GUI)
x86-64, for MS Windows
--- snip ---

NOTE: requires additional patches

===
StarCraft II (32-bit and 64-bit):
===

--- snip ---
./drive_c/Program Files (x86)/StarCraft II/Support64/SC2Switcher_x64.exe: PE32+
executable (GUI) x86-64, for MS Windows
./drive_c/Program Files (x86)/StarCraft II/StarCraft II.exe: PE32 executable
(GUI) Intel 80386, for MS Windows
./drive_c/Program Files (x86)/StarCraft II/Versions/Base62848/SC2_x64.exe:
PE32+ executable (GUI) x86-64, for MS Windows
./drive_c/Program Files (x86)/StarCraft II/Versions/Base62848/SC2.exe: PE32
executable (GUI) Intel 80386, for MS Windows
./drive_c/Program Files (x86)/StarCraft II/Support/SC2Switcher.exe: PE32
executable (GUI) Intel 80386, for MS Windows
--- snip ---

--- snip ---
$ wine ./StarCraft\ II.exe OnlineService.SSO=true -launch -uid
--- snip ---

--- snip ---
$ wine64 ./Support64/SC2Switcher_x64.exe
--- snip ---

Correction: SC II seems to work without KUSER_SHARED_DATA patch (runs at least
until login screen) -> sorry about that.

===
Diablo III (32-bit and 64-bit):
===

--- snip ---
./drive_c/Program Files (x86)/Diablo III/x64/Diablo III64.exe: PE32+ executable
(GUI) x86-64, for MS Windows
./drive_c/Program Files (x86)/Diablo III/Diablo III Launcher.exe: PE32
executable (GUI) Intel 80386, for MS Windows
./drive_c/Program Files (x86)/Diablo III/Diablo III.exe: PE32 executable (GUI)
Intel 80386, for MS Windows
--- snip ---

NOTE: requires additional patches

--- snip ---
$ wine ./Diablo\ III.exe OnlineService.SSO=true -launch -uid diablo3_enus
...
00ff:err:seh:setup_exception_record stack overflow 1188 bytes in thread 00ff
eip 7bc9219a esp 00240e8c stack 0x240000-0x241000-0x340000
--- snip ---

32-bit version started working when KUSER_SHARED_DATA patch was applied on top.

--- snip ---
$ wine64 ./Diablo\ III64.exe OnlineService.SSO=true -launch -uid diablo3_enus
...
0009:err:seh:setup_exception stack overflow 2032 bytes in thread 0009 eip
00007f2e9158fa76 esp 0000000000140e20 stack 0x140000-0x141000-0x240000
--- snip ---

===
World of Warcraft (32-bit and 64-bit):
===

--- snip ---
./drive_c/Program Files (x86)/World of Warcraft/Wow-64.exe: PE32+ executable
(GUI) x86-64, for MS Windows
./drive_c/Program Files (x86)/World of Warcraft/World of Warcraft Launcher.exe:
PE32 executable (GUI) Intel 80386, for MS Windows
./drive_c/Program Files (x86)/World of Warcraft/Wow.exe: PE32 executable (GUI)
Intel 80386, for MS Windows
--- snip ---

NOTE: requires additional patches

--- snip ---
$ wine ./Wow.exe

# hangs in live-loop (most recent update 2018-03-26T18:35:44Z|7.3.5.26124 ) or
stack-overflow (before weekend) 
--- snip ---

32-bit version started working when KUSER_SHARED_DATA patch was applied on top.

--- snip ---
$ wine64 ./Wow-64.exe
...
0009:err:seh:setup_exception stack overflow 1920 bytes in thread 0009 eip
00007f6e1b5e5a76 esp 0000000000140e90 stack 0x140000-0x141000-0x240000
--- snip ---

I cherry-picked single patches from Wine-Staging without dependencies to figure
out the minimum set and drop unneeded dependencies. The 64-bit exception code
patch alone which is listed as dependency didn't resolve the issue for the
64-bit versions.

I'm correcting the summary to explicitly refer to 32-bit Diablo III, 32-bit WoW
and Overwatch until further results.

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list