The guide here : How to install World of Warcraft? has not worked for a decade. this question needs to be answered anew and with the particular context of ubuntu 18.04.1 and Wine development halting:
Wine is undergoing a bit of an odd transition. The maintainers of Wine's staging branch recently abandoned it, but the Lutris project quickly picked it back up.
At the time you're reading this, it might not be a concern, but right now, it definitely is. As a result, the main guide will focus on the latest vanilla Wine release from Ubuntu, but you can absolutely install the latest staging or Gallium Nine versions when they become available.
I think this particular build of Ubuntu is incompatible with past solutions for running Warcraft 3.
I get this screen:
I've tried many different methods:
- All three of the Lutris installers
- Play on Linux
This guide which is specifically for 18.04, with wine-staging, but using this source:
sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ bionic main'
and this WineHQ post
But at the end of the first guide I run:
wine64 ~/Downloads/Warcraft-III-Setup.exe
this sticks out:
0103:fixme:wininet:InternetSetOptionW Option 77 STUB
and I get the screen again:
t@tsu:~/Downloads$ wine64 ~/Downloads/Warcraft-III-Setup.exe
000b:fixme:winediag:start_process Wine Staging 3.18 is a testing version containing experimental patches.
000b:fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org.
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libnss3.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
002b:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
002b:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
002d:fixme:ver:GetCurrentPackageId (0xbcfe9c (nil)): stub
002b:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
002b:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
002b:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
002b:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0033:fixme:winhttp:get_system_proxy_autoconfig_url no support on this platform
0033:fixme:winhttp:WinHttpDetectAutoProxyConfigUrl discovery via DHCP not supported
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libnss3.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
0037:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0037:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0039:fixme:ver:GetCurrentPackageId (0xbcfe9c (nil)): stub
0037:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0037:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0037:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0037:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
003f:fixme:winhttp:get_system_proxy_autoconfig_url no support on this platform
003f:fixme:winhttp:WinHttpDetectAutoProxyConfigUrl discovery via DHCP not supported
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libnss3.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
<html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="http://www.blizzard.com/404">here</a>.</h2>
</body></html>
003f:fixme:wininet:InternetSetOptionW Option 77 STUB
0046:err:wininet:open_http_connection create_netconn failed: 12029
0044:err:ole:CoCreateInstanceEx apartment not initialised
0044:err:ntdll:NtQueryInformationToken Unhandled Token Information class 24!
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libnss3.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
0044:fixme:ver:GetCurrentPackageId (0x33fe14 (nil)): stub
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libnss3.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
003f:fixme:wininet:InternetSetOptionW Option 77 STUB
0047:err:wininet:open_http_connection create_netconn failed: 12029
003f:fixme:wininet:InternetSetOptionW Option 77 STUB
0046:err:wininet:open_http_connection create_netconn failed: 12029
<html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="http://www.blizzard.com/404">here</a>.</h2>
</body></html>
003f:fixme:wininet:InternetSetOptionW Option 77 STUB
0047:err:wininet:open_http_connection create_netconn failed: 12029
004a:fixme:wbemprox:wbem_locator_ConnectServer unsupported flags
004a:fixme:wbemprox:client_security_SetBlanket 0x7c81f938, 0x181ad8, 10, 0, (null), 3, 3, (nil), 0x00000000
004a:fixme:wbemprox:client_security_Release 0x7c81f938
004a:fixme:wbemprox:enum_class_object_Next timeout not supported
004a:err:ntdll:NtQueryInformationToken Unhandled Token Information class 24!
004a:fixme:thread:RtlCreateUserThread stack_reserve != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0050:fixme:ver:GetCurrentPackageId (0x1c5fe9c (nil)): stub
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
003f:fixme:wininet:InternetSetOptionW Option 77 STUB
0046:err:wininet:open_http_connection create_netconn failed: 12029
003f:fixme:wininet:InternetSetOptionW Option 77 STUB
0047:err:wininet:open_http_connection create_netconn failed: 12029
<html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="http://www.blizzard.com/404">here</a>.</h2>
</body></html>
t@tsu:~/Downloads$ 003f:fixme:wininet:InternetSetOptionW Option 77 STUB
0046:err:wininet:open_http_connection create_netconn failed: 12029
003f:fixme:wininet:InternetSetOptionW Option 77 STUB
0047:err:wininet:open_http_connection create_netconn failed: 12029
004a:fixme:heap:GetPhysicallyInstalledSystemMemory stub: 0x33f9c0
003f:fixme:wininet:InternetSetOptionW Option 77 STUB
004a:fixme:heap:GetPhysicallyInstalledSystemMemory stub: 0x33f7b8
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
004a:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0052:fixme:winhttp:get_system_proxy_autoconfig_url no support on this platform
0052:fixme:winhttp:WinHttpDetectAutoProxyConfigUrl discovery via DHCP not supported
004a:fixme:ole:CoInitializeSecurity ((nil),-1,(nil),(nil),0,3,(nil),0,(nil)) - stub!
004a:fixme:wbemprox:client_security_SetBlanket 0x7c81f938, 0x21fbc0, 10, 0, (null), 3, 3, (nil), 0x00000000
004a:fixme:wbemprox:client_security_Release 0x7c81f938
004e:fixme:dbghelp:elf_search_auxv can't find symbol in module
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libnss3.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
0068:fixme:heap:GetPhysicallyInstalledSystemMemory stub: 0x33f278
0068:fixme:heap:GetPhysicallyInstalledSystemMemory stub: 0x33f278
0068:fixme:ntdll:NtQuerySystemInformationEx Relationship filtering not implemented: 0x3
0068:fixme:ntdll:NtQuerySystemInformationEx Relationship filtering not implemented: 0x3
0068:fixme:ver:GetCurrentPackageId (0x33f01c (nil)): stub
0068:fixme:winhttp:get_system_proxy_autoconfig_url no support on this platform
0068:fixme:winhttp:WinHttpDetectAutoProxyConfigUrl discovery via DHCP not supported
0042:err:ntdll:RtlpWaitForCriticalSection section 0x196c5c "?" wait timed out in thread 0042, blocked by 003f, retrying (60 sec)
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libnss3.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
0042:fixme:wininet:InternetSetOptionW Option 77 STUB
0070:err:wininet:open_http_connection create_netconn failed: 12029
006e:err:ole:CoCreateInstanceEx apartment not initialised
006e:err:ntdll:NtQueryInformationToken Unhandled Token Information class 24!
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libnss3.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
006e:fixme:ver:GetCurrentPackageId (0x33fe14 (nil)): stub
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libnss3.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
0042:fixme:wininet:InternetSetOptionW Option 77 STUB
0071:err:wininet:open_http_connection create_netconn failed: 12029
0042:fixme:wininet:InternetSetOptionW Option 77 STUB
0070:err:wininet:open_http_connection create_netconn failed: 12029
0042:fixme:wininet:InternetSetOptionW Option 77 STUB
0071:err:wininet:open_http_connection create_netconn failed: 12029
0042:fixme:wininet:InternetSetOptionW Option 77 STUB
0070:err:wininet:open_http_connection create_netconn failed: 12029
0073:fixme:wbemprox:wbem_locator_ConnectServer unsupported flags
0073:fixme:wbemprox:client_security_SetBlanket 0x7c7f4938, 0x181ad8, 10, 0, (null), 3, 3, (nil), 0x00000000
0073:fixme:wbemprox:client_security_Release 0x7c7f4938
0073:fixme:wbemprox:enum_class_object_Next timeout not supported
0073:err:ntdll:NtQueryInformationToken Unhandled Token Information class 24!
0073:fixme:thread:RtlCreateUserThread stack_reserve != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0079:fixme:ver:GetCurrentPackageId (0x1c5fe9c (nil)): stub
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0042:fixme:wininet:InternetSetOptionW Option 77 STUB
0071:err:wininet:open_http_connection create_netconn failed: 12029
0042:fixme:wininet:InternetSetOptionW Option 77 STUB
0070:err:wininet:open_http_connection create_netconn failed: 12029
0042:fixme:wininet:InternetSetOptionW Option 77 STUB
0071:err:wininet:open_http_connection create_netconn failed: 12029
0042:fixme:wininet:InternetSetOptionW Option 77 STUB
0070:err:wininet:open_http_connection create_netconn failed: 12029
0042:fixme:wininet:InternetSetOptionW Option 77 STUB
0071:err:wininet:open_http_connection create_netconn failed: 12029
0073:fixme:heap:GetPhysicallyInstalledSystemMemory stub: 0x33f9c0
0042:fixme:wininet:InternetSetOptionW Option 77 STUB
0070:err:wininet:open_http_connection create_netconn failed: 12029
0073:fixme:heap:GetPhysicallyInstalledSystemMemory stub: 0x33f7b8
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0042:fixme:wininet:InternetSetOptionW Option 77 STUB
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
0073:fixme:thread:RtlCreateUserThread stack_commit != 0 is unimplemented
007b:fixme:winhttp:get_system_proxy_autoconfig_url no support on this platform
007b:fixme:winhttp:WinHttpDetectAutoProxyConfigUrl discovery via DHCP not supported
0073:fixme:ole:CoInitializeSecurity ((nil),-1,(nil),(nil),0,3,(nil),0,(nil)) - stub!
0073:fixme:wbemprox:client_security_SetBlanket 0x7c7f4938, 0x21e370, 10, 0, (null), 3, 3, (nil), 0x00000000
0073:fixme:wbemprox:client_security_Release 0x7c7f4938
0077:fixme:dbghelp:elf_search_auxv can't find symbol in module
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libnss3.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
0091:fixme:heap:GetPhysicallyInstalledSystemMemory stub: 0x33f278
0091:fixme:heap:GetPhysicallyInstalledSystemMemory stub: 0x33f278
0091:fixme:ntdll:NtQuerySystemInformationEx Relationship filtering not implemented: 0x3
0091:fixme:ntdll:NtQuerySystemInformationEx Relationship filtering not implemented: 0x3
0091:fixme:ver:GetCurrentPackageId (0x33f01c (nil)): stub
0091:fixme:winhttp:get_system_proxy_autoconfig_url no support on this platform
0091:fixme:winhttp:WinHttpDetectAutoProxyConfigUrl discovery via DHCP not supported
I have faced the same problem: Same Ubuntu version, same tries, same everything; and I was about to go crazy. I have resorted to install the game on a Windows machine, zip the game folder and move it to my Linux.
And I discovered that somehow, the war3 LAUNCHER works better than the setup to install the game.
You still need a key to use the game, so I don't care about giving out the exe.
It worked perfectly with staging-pba-3.18 for me, you'll have to tell me if that works for you.
EDIT:
Online should be fine, you'll need a warcraft3 "battle.net" account, that you can create in-game, the main concern would be Blizzard anti cheat not liking wine, but a lot of people, including myself, have been playing SC2 and Overwatch on wine for a while, and Blizzard does not seem to care, so I don't see why they would care about War3.
I don't know about LAN tho, and can't really test it ...
For the resolution, it's really funny, cause it's not a Linux bug, some people are also having the issue on Windows since patch 1.30 :D
Two possible fixes are:
Use the
-nativefullscr
argument when launching the game (it does not work for me, my graphics card would not output anything after the game launched, my screen behaved as if it was disconnected).Edit the wine registry to force the startup resolution, which while feeling a bit hack-ish works really well. Keys are in
HKEY_CURRENT_USER/Software/Blizzard Entertainment/Warcraft III/Video
and you want to changeresheight
andreswidth
to your screen size, values are in hexadecimal, but the input window should allow you to type in decimal values.Note that while the game will be rendered in the resolution and aspect ratio you want, the menu will stay in 4/3.
I have run into similar issues. I had such errors in the console and the installer timed out. (from 1.26 trying to update to 1.30)
I finally solved my problem by settings wine windows mode from windows xp to windows 7: