1.3.7.0 on Linux/WINE

Moderators: GSH, VSMIT, Red Devil, Commando

Post Reply
User avatar
Zero Angel
Attila
Posts: 1536
Joined: Mon Feb 21, 2011 12:54 am
Contact:

1.3.7.0 on Linux/WINE

Post by Zero Angel »

A few thing i've noticed about running 1.3.7 on linux (tested on 1.3.7.0a130g, not having tried the previous 1.3.7.0a release).

- BZ2 no longer needs dbghelp or any other manually added DLL overrides.
- Visual C++ 2013 needs to be installed (as it's not bundled with the 1.3.7 installer).
- The easiest way to install it is via "winetricks vcrun2013" which will automatically do everything for you, provided you have winetricks installed on your system.
- If BZ2 is running in fullscreen mode on a dual monitor setup it will now take up only one screen without shutting the other screen off (which I like)
- When BZ2 is minimized from fullscreen (e.g. alt-tab), It loses focus but does not actually minimize. I have to right-click on the taskbar and minimize it manually.
- If BZ2 is running in fullscreen mode and is re-maximized, it will no longer be true fullscreen but instead fill all available space except that taken up by the desktop's chrome (e.g. docks and panels that are always on top). The ingame interface will automatically adjust itself to the new resolution of the window.
- The mouse very often becomes "decaptured" by the window in both windowed and fullscreen modes. Meaning that it will interact with the desktop in addition to controlling the yaw/pitch on the craft. Clicking while the mouse is decaptured will minimize bz2 if it's running in windowed mode (as the window manager prioritizes the desktop click, causing bz2 to lose focus).
- A common point when the mouse becomes decaptured is after loading a map. The game will start with the mouse in a decaptured state. The only way to have the mouse become recaptured is to minimize and remaximize the BZ2.

I've not tested in other desktop environments but that's how it behaves in KDE 4.13
Last edited by Zero Angel on Wed Dec 09, 2015 10:39 pm, edited 1 time in total.
Regulators
Regulate any stealin' of this biometal pool, we're damn good, too
But you can't be any geek off the street
Gotta be handy with the chains if you know what I mean
Earn your keep
User avatar
GSH
Patch Creator
Posts: 2485
Joined: Fri Feb 18, 2011 4:55 pm
Location: USA
Contact:

Re: BZ2 1.3.7.0a130g posted

Post by GSH »

- Visual C++ 2013 needs to be installed (as it's not bundled with the 1.3.7 installer).
The VS2013 redist executable is in the 'redist' folder the 1.3.7 installer creates -- next to VS2005, VS2008 and DirectX redists. The 1.3.7 installer fires that executable off, same as the other redists. At least on my Windows boxes it does.

-- GSH
User avatar
Zero Angel
Attila
Posts: 1536
Joined: Mon Feb 21, 2011 12:54 am
Contact:

Re: BZ2 1.3.7.0a130g posted

Post by Zero Angel »

You're probably right. I did run through the installer but for some reason after it ran the VS 2008 installer nothing happened. The install would evidently appear to be completed (or otherwise exited silently) because of nothing in my taskbar, and no error messages.

That said, when I checked the task manager, it would still show the installer as running in the background. 5 to 10 minutes later I would recieve a popup that says that 1.3 was installed properly. My guess is that the VS 2013 redist didn't actually launch properly through wine and then the installer decided to time it out eventually. The winetricks method fixes that problem though.
Last edited by Zero Angel on Wed Dec 09, 2015 11:58 pm, edited 1 time in total.
Regulators
Regulate any stealin' of this biometal pool, we're damn good, too
But you can't be any geek off the street
Gotta be handy with the chains if you know what I mean
Earn your keep
User avatar
Zero Angel
Attila
Posts: 1536
Joined: Mon Feb 21, 2011 12:54 am
Contact:

Re: BZ2 1.3.7.0a130g posted

Post by Zero Angel »

BZ2 freezes at game list under Wine.

winedbg output during launch, after tabbing out and back in, and prior to clicking multiplayer

Code: Select all

fixme:ver:GetCurrentPackageId (0x94ae9d8 (nil)): stub
fixme:system:SetProcessDPIAware stub!
Thread ID=0027 renamed using MS VC6 extension (name=="RenderHel")
fixme:win:EnumDisplayDevicesW ((null),0,0x608e194,0x00000000), stub!
fixme:system:SystemParametersInfoW Unimplemented action: 59 (SPI_SETSTICKYKEYS)
fixme:system:SystemParametersInfoW Unimplemented action: 53 (SPI_SETTOGGLEKEYS)
fixme:system:SystemParametersInfoW Unimplemented action: 51 (SPI_SETFILTERKEYS)
fixme:d3d:wined3d_device_reset Cannot change the back buffer count yet.
fixme:d3d:wined3d_swapchain_set_gamma_ramp Ignoring flags 0x1.
fixme:d3d:wined3d_swapchain_set_gamma_ramp Ignoring flags 0x1.
fixme:d3d:wined3d_swapchain_set_gamma_ramp Ignoring flags 0x1.
fixme:win:RegisterRawInputDevices Unhandled flags 0x230 for device 0.
fixme:win:RegisterRawInputDevices Unhandled flags 0x200 for device 1.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
Thread ID=0029 renamed using MS VC6 extension (name=="Watchdog")
Thread ID=002f renamed using MS VC6 extension (name=="OggDecode")
Thread ID=002e renamed using MS VC6 extension (name=="OggDecode")
Thread ID=0030 renamed using MS VC6 extension (name=="OggDecode")
Thread ID=0031 renamed using MS VC6 extension (name=="OggDecode")
Thread ID=0032 renamed using MS VC6 extension (name=="OggDecode")
Thread ID=0033 renamed using MS VC6 extension (name=="OggDecode")
Thread ID=0034 renamed using MS VC6 extension (name=="OggDecode")
Thread ID=0035 renamed using MS VC6 extension (name=="OggDecode")
Thread ID=0036 renamed using MS VC6 extension (name=="OggDecode")
Thread ID=0038 renamed using MS VC6 extension (name=="OggDecode")
Thread ID=0037 renamed using MS VC6 extension (name=="OggDecode")
Thread ID=0039 renamed using MS VC6 extension (name=="OggDecode")
fixme:win:RegisterRawInputDevices Unhandled flags 0x230 for device 0.
fixme:win:RegisterRawInputDevices Unhandled flags 0x200 for device 1.
fixme:win:RegisterRawInputDevices Unhandled flags 0x230 for device 0.
fixme:win:RegisterRawInputDevices Unhandled flags 0x200 for device 1.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:win:RegisterRawInputDevices Unhandled flags 0x230 for device 0.
fixme:win:RegisterRawInputDevices Unhandled flags 0x200 for device 1.
fixme:win:RegisterRawInputDevices Unhandled flags 0x230 for device 0.
fixme:win:RegisterRawInputDevices Unhandled flags 0x200 for device 1.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:wined3d_swapchain_set_gamma_ramp Ignoring flags 0x1.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
This occurs when clicking multiplayer, having it freeze, and then me terminating BZ2 (via killall bzone.exe)

Code: Select all

Thread ID=003d renamed using MS VC6 extension (name=="UPNPThrea")
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:convert_aiflag_w2u Unhandled windows AI_xxx flags 8
fixme:winsock:convert_aiflag_w2u Unhandled windows AI_xxx flags 8
fixme:winsock:convert_aiflag_w2u Unhandled windows AI_xxx flags 8
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
err:ntdll:RtlpWaitForCriticalSection section 0x700cddc "?" wait timed out in thread 0024, blocked by 0000, retrying (60 sec)
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
fixme:winsock:_remap_optname Unknown optname 14, can't remap!
fixme:winsock:WS_setsockopt IP_DONTFRAGMENT is silently ignored!
err:dbghelp:SymCleanup this process has not had SymInitialize() called for it!
Process of pid=0023 has terminated
Regulators
Regulate any stealin' of this biometal pool, we're damn good, too
But you can't be any geek off the street
Gotta be handy with the chains if you know what I mean
Earn your keep
User avatar
GSH
Patch Creator
Posts: 2485
Joined: Fri Feb 18, 2011 4:55 pm
Location: USA
Contact:

Re: BZ2 1.3.7.0a130g posted

Post by GSH »

SymCleanup this process has not had SymInitialize() called for it!
That message really sounds like code in (or interacting with) dbghelp.dll. I recommend registering/configuring that DLL like you did for 1.3.6.5. The 1.3.7.0 dbghelp.dll should be binary-identical to the 1.3.6.5 dbghelp.dll.

-- GSH
User avatar
MrTwosheds
Recycler
Posts: 3059
Joined: Sat Feb 19, 2011 8:37 am
Location: Outer Space
Contact:

Re: BZ2 1.3.7.0a130g posted

Post by MrTwosheds »

Got Mint on a dual boot with win 10(oem) here now, haven't tried any games with it, still doing the linux learning and haven't got a vid card/new power supply for it yet.
The Silence continues. The War Of Lies has no end.
mase
Thunderbolt
Posts: 160
Joined: Sat Mar 05, 2011 11:17 am

Re: 1.3.7.0 on Linux/WINE

Post by mase »

Zero Angel wrote: - The mouse very often becomes "decaptured" by the window in both windowed and fullscreen modes. Meaning that it will interact with the desktop in addition to controlling the yaw/pitch on the craft. Clicking while the mouse is decaptured will minimize bz2 if it's running in windowed mode (as the window manager prioritizes the desktop click, causing bz2 to lose focus).
- A common point when the mouse becomes decaptured is after loading a map. The game will start with the mouse in a decaptured state. The only way to have the mouse become recaptured is to minimize and remaximize the BZ2.
I've seen this on windows too, when in windowed mode and moving your mouse around you'd
sometimes see desktop icons get activated.
User avatar
GSH
Patch Creator
Posts: 2485
Joined: Fri Feb 18, 2011 4:55 pm
Location: USA
Contact:

Re: 1.3.7.0 on Linux/WINE

Post by GSH »

- The mouse very often becomes "decaptured" by the window in both windowed and fullscreen modes. Meaning that it will interact with the desktop in addition to controlling the yaw/pitch on the craft. Clicking while the mouse is decaptured will minimize bz2 if it's running in windowed mode (as the window manager prioritizes the desktop click, causing bz2 to lose focus).
Do you have focus-follows-mouse turned on in your window manager? Really useful for desktop apps, not so useful for games. 1.3.7.0 will tell the Windows API to capture (clip -- the function is ClipCursor() ) the mouse to its window when the game is up and not interacting with dialogs. (1.0-1.3.6.5 used DirectInput to try and do roughly the same). Perhaps WINE has a setting somewhere to ignore mouse capture/clip through the lower-level Windows API? Just speculating,

-- GSH
User avatar
Zero Angel
Attila
Posts: 1536
Joined: Mon Feb 21, 2011 12:54 am
Contact:

Re: 1.3.7.0 on Linux/WINE

Post by Zero Angel »

No, my settings are the same they were on earlier builds of 1.3 and similar to the behavior of Window OSes. The Wine settings are also to automatically capture mouse on fullscreen windows, and the focus behavior of KDE (my desktop environment) is click to focus, same as i've always had it.

In fullscreen mode, this will happen.
- BZ2 will be raised (in front of everything else)
- BZ2 will not be focused
- Mouse will be constrained on startup
- BZ2 not be responsive to keyboard inputs, but will be responsive to mouse inputs
- Alt-tab will focus BZ2 and keyboard input will work, but then the mouse will no longer be constrained.

In windowed mode, this will happen.
- BZ2 will be raised
- BZ2 will be focused
- Keyboard and mouse will be responsive
- Mouse can wander out of screen, stopping pitching and yawing or the in-game pointer from moving until it moves back into the BZ2 window
- Being unconstrained, the mouse pointer can move back out of the BZ2 window. Clicking while the mouse is out of the BZ2 window will defocus BZ2 and it will stop responding to keyboard inputs until it's alt-tabbed back into.

It's all very peculiar.

I haven't gotten around to trying in other desktop environments to see if it's a KDE peculiarity but will report back if I do.
Regulators
Regulate any stealin' of this biometal pool, we're damn good, too
But you can't be any geek off the street
Gotta be handy with the chains if you know what I mean
Earn your keep
User avatar
Zero Angel
Attila
Posts: 1536
Joined: Mon Feb 21, 2011 12:54 am
Contact:

Re: 1.3.7.0 on Linux/WINE

Post by Zero Angel »

BZ2 is locking up when attempting to fetch the multiplayer game list. a130g through a130j (haven't tried earlier 1.3.7 versions)

Battlezone.log ends here.

Code: Select all

DIAG|               iface:1479 |23:40:43|4502   |UnsetModal: throwing away [WarningCrashLogged]
DIAG|         WSInterface:213  |23:40:51|12779  |Determined private IP address: 192.168.0.106
DIAG|        VersionCheck:42   |23:40:51|12999  |Read online game version of 2517
Regulators
Regulate any stealin' of this biometal pool, we're damn good, too
But you can't be any geek off the street
Gotta be handy with the chains if you know what I mean
Earn your keep
User avatar
GSH
Patch Creator
Posts: 2485
Joined: Fri Feb 18, 2011 4:55 pm
Location: USA
Contact:

Re: 1.3.7.0 on Linux/WINE

Post by GSH »

BZ2 is locking up when attempting to fetch the multiplayer game list. a130g through a130j (haven't tried earlier 1.3.7 versions)
That code hasn't changed since 1.3.6.5 as far as I know, though the compiler & compiler options have. Ideally, a locking up would be caught by the watchdog, which would generated a full callstack -- assuming dbghelp.dll is enabled and allowed to do its work. I'm going to need a valid callstack to even begin to dig in here.

-- GSH
Post Reply