Skip to content

New version and wine

fot1fot1 Member Posts: 74
Hello folks,

I've been developing a module and took a break for vacations. Now that I'm back, I'm having a couple of issues when running the toolset with wine.

The first issue is related to test module action (F9). It won't load the game. After some research, I figured out is related to dropping 64bit support to the game launcher, and my wine is running on a 32bit prefix. Unfortunately I was not able to use this feature even using a 64 bit prefix, because I believe the .NET won't work properly on 64 bit prefixes. Does anybody found a way to make this work?

output when running on a 32 bit prefix:
0085:err:process:create_process 64-bit application L"nwmain.exe" not supported in 32-bit prefix

output when running on a 64 bit prefix:
001c:err:module:import_dll Library MSVCR100_CLR0400.dll (which is needed by L"C:\\windows\\Microsoft.NET\\Framework64\\v4.0.30319\\mscorsvw.exe") not found
001c:err:module:import_dll Library mscoree.dll (which is needed by L"C:\\windows\\Microsoft.NET\\Framework64\\v4.0.30319\\mscorsvw.exe") not found
001c:err:module:attach_dlls Importing dlls for L"C:\\windows\\Microsoft.NET\\Framework64\\v4.0.30319\\mscorsvw.exe" failed, status c0000135
000f:err:service:process_send_command service protocol error - failed to write pipe!
003c:err:module:import_dll Loading library OpenAL32.dll (which is needed by L"Z:\\home\\username\\.local\\share\\Steam\\steamapps\\common\\Neverwinter Nights\\bin\\win32\\nwmain.exe") failed (error c000007b).
003c:err:module:attach_dlls Importing dlls for L"Z:\\home\\username\\.local\\share\\Steam\\steamapps\\common\\Neverwinter Nights\\bin\\win32\\nwmain.exe" failed, status c0000135


The second issue is that in both prefixes, I can't hear anything while using the toolset. I can hear some sounds that represent errors sometimes, but activating the sounds on the three buttons in the top of the viewport won't work. Similarly, I can't hear the preview while painting sounds or selecting the area background music.


I wonder if those issues are related to my environment. So if you happen to have the toolset working fine through wine, please let me know.

Thanks for reading through.

Comments

  • virusmanvirusman Member, Developer Posts: 173
    You're right, issue #1 is due to a 32-bit wine prefix. I'm not sure how to make 64-bit wine work, never tried.
    Issue #2 is not related to Wine, it's a known bug in the Toolset build in 1.79. We're working to fix it for the next patch.
  • fot1fot1 Member Posts: 74
    Well, about the first issue its is all right, it can be worked around by loading the native Linux client on the module for testing.
    ./nwmain-linux +LoadNewModule mymod
    

    However I tend to use that for quickly go to the module when creating a new area to see if it feels right. I'll give another go on how to run NWN on wine64 later today.
  • fot1fot1 Member Posts: 74
    I've managed to make it work. All you need is wine 3.0 and .Net 4.0

    With wine 3.0, assuming you want to create a new prefix on `/home/user/wineprefix/toolset`, do the following commands:
    WINEPREFIX=/home/user/wineprefix/toolset WINEARCH=win64 wine wineboot
    WINEPREFIX=/home/user/wineprefix/toolset winetricks dotnet40
    WINEPREFIX=/home/user/wineprefix/toolset wine /path/to/toolset
    
  • gpeddinogpeddino Member Posts: 51
    I'm having the same problem, even though I'm not great with Wine. Can someone explain better what I should do to solve this?
  • fot1fot1 Member Posts: 74
    @gpeddino all you have to do is type the commands I've highlighted in the last post. Make sure to instead of using `/home/user/wineprefix/toolset`, use an empty directory path. Also, on the last line, instead of `/path/to/toolset`, you need to use the path for your toolset. For instance, mine is
    $HOME/.local/share/Steam/steamapps/common/Neverwinter Nights/bin/win32/nwtoolset.exe
    

    If you have a command not found error on wine or winetricks you need to install those commands on your distro, using your distro package manager.
  • VivienneLVivienneL Member Posts: 52
    Maybe some linux guru can help me figure out an error that has appeared since updating wine to development version: wine 5.12 and later. The Diamond version is working as are other games
    Just to be clear, Neverwinter Nights is working perfectly in an earlier version of wine. This is the error:

    ~/Beamdog Library/00785/bin/win32$ wine nwmain.exe
    00c0:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFFFFFFFFFA, 00000000014DFE40
    Registering crash signal handlers.
    00b8:fixme:win:RegisterTouchWindow (0x2004e 00000003): stub
    00b8:fixme:wgl:X11DRV_wglChoosePixelFormatARB unused pfAttribFList
    00b8:fixme:imm:ImmReleaseContext (000000000002004E, 00000000015C5EB0): stub
    00b8:fixme:msctf:ThreadMgr_ActivateEx Unimplemented flags 0x4
    00b8:fixme:imm:ImeSetCompositionString PROBLEM: This only sets the wine level string
    00b8:fixme:imm:ImeSetCompositionString Reading string unimplemented
    00b8:fixme:imm:NotifyIME NI_CLOSECANDIDATE
    00e4:fixme:ver:GetCurrentPackageId (00000000023DFE40 0000000000000000): stub
    00f4:err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
    00f4:fixme:sync:SetWaitableTimerEx (0000000000000160, 00000000026FF650, 0, 0000000000000000, 0000000000000000, 0000000000000000, 32) semi-stub
    00b8:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
    00b8:fixme:file:server_ioctl_file Unsupported ioctl 900a8 (device=9 access=0 func=2a method=0)
    00b8:fixme:file:server_ioctl_file Unsupported ioctl 900a8 (device=9 access=0 func=2a method=0)
    00b8:fixme:file:server_ioctl_file Unsupported ioctl 900a8 (device=9 access=0 func=2a method=0)
    00b8:fixme:file:server_ioctl_file Unsupported ioctl 900a8 (device=9 access=0 func=2a method=0)
    00b8:fixme:file:server_ioctl_file Unsupported ioctl 900a8 (device=9 access=0 func=2a method=0)

    I think this crash has to do with something having changed in wine_development and not the game itself.


    There might be a simple fix for this which I haven't figured out. I installed 'winbind' but that didn't fix the issue.

    I've written of this issue elsewhere in the forums: https://forums.beamdog.com/discussion/69316/introducing-the-nwn-ee-development-branch#latest but thought I would try my luck here too.
  • fot1fot1 Member Posts: 74
    edited April 2021
    Unfortunately I was setting up a new environment to run the wine and I cant make it work any longer. Tried with wine 2.22, wine 3.0, wine 6.2 with a mix of 64 and 32 architectures, always trying to install dotnet40.

    This is my best approach try output:
    0024:fixme:thread:GetThreadUILanguage : stub, returning default language.
    0024:fixme:nls:RtlGetThreadPreferredUILanguages 00000038, 0021D9CC, 00000000 0021D9F4
    0024:fixme:nls:get_dummy_preferred_ui_language (0x38 0021D9CC 00000000 0021D9F4) returning a dummy value (current locale)
    0024:fixme:nls:RtlGetThreadPreferredUILanguages 00000038, 0021D9CC, 016E7200 0021D9F4
    0024:fixme:nls:get_dummy_preferred_ui_language (0x38 0021D9CC 016E7200 0021D9F4) returning a dummy value (current locale)
    0024:fixme:wtsapi:WTSRegisterSessionNotification Stub 0001007E 0x00000000
    0024:fixme:uxtheme:BufferedPaintInit Stub ()
    0024:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
    X Error of failed request:  BadValue (integer parameter out of range for operation)
      Major opcode of failed request:  151 (GLX)
      Minor opcode of failed request:  3 (X_GLXCreateContext)
      Value in failed request:  0x0
      Serial number of failed request:  1840
      Current serial number in output stream:  1841
    

    Anybody currently running toolset on wine? What is your wine version/winetricks? Thanks!
  • fot1fot1 Member Posts: 74
    It was a video driver related issue. The steps I had listed previously still work.
Sign In or Register to comment.