OysterMug Posted November 12, 2021 Posted November 12, 2021 I've managed to get Hook 4 to work with VX under Linux (but not Hook 5... yet.) Way back when ModsGarden was still online, I was able to get VX with Hook 5 working under Linux (with the help of Linux user "Avarteas") Windows is my primary OS, but I use Ubuntu from time to time and like having access to all of my Windows apps (plus I hated Windows 10.) Also, there are a few users out there running VX under OS's other than Windows who would like to be able to use Hook. Several computer crashes later, my Linux configuration was lost (as were my instructions on how to get Hook working in Linux) and I'm trying to figure out on my own how to get it working again. I'm getting close. I'm finally able to get VX (and old v7.5 BTW) to work with Hook 4 (something I was never able to do before) working under Linux. Hook 4 uses DirectX-9 whereas Hook 5 uses DirectX-11. Once I finally figure out how to get H5 working under Linux again, I'll post a complete tutorial on how to install & configure it.
OysterMug Posted November 18, 2021 Author Posted November 18, 2021 A little update: I now have both Hook 4 (DirectX-9) and Hook 5 (DirectX-11) working under Linux. I still need to do a clean install from scratch to make sure I have all the steps right before I write the tutorial.
zeppeliner Posted November 18, 2021 Posted November 18, 2021 It's pretty simple - you must have working vulkan drivers, wine-hq, and a d3d implementation installed to work with vulkan. It is called d3dvk - you can download it using winetricks. Then set all DirectX dll libraries to native. For me this solution works, I use h4 in Wine.
OysterMug Posted November 19, 2021 Author Posted November 19, 2021 6 hours ago, zeppeliner said: It's pretty simple - you must have working vulkan drivers, wine-hq, and a d3d implementation installed to work with vulkan. It is called d3dvk - you can download it using winetricks. Then set all DirectX dll libraries to native. For me this solution works, I use h4 in Wine. Easier said than done. Just having Vulkan installed & working is not enough. "All the DirectX dll libraries". Which are what, exactly? Getting Hook-4/DX9 to work was less trouble. Getting Dotnet 4.71 installed to support DX11/H5 was more difficult. Winetricks repeatedly failed trying to do so.
zeppeliner Posted November 19, 2021 Posted November 19, 2021 Just open winecfg, select the libraries tab, there you can add d3d libraries. For hook4 for example d3d9 and you set it to native. As for winetricks it may depend on what version you have in your distribution. I am using arch based distro, so I have the latest software. Maybe I did something else I forgot about before, but I have wine configuration in my home catalage and my rolling distro is running for a year on my computer. I remember for sure installing directx downloaded from the micro$oft site using wine. But I don't know if that had an effect because it was a long time ago. Anyway to me hook4 works without any problem.
OysterMug Posted November 20, 2021 Author Posted November 20, 2021 5 hours ago, zeppeliner said: Just open winecfg, select the libraries tab, there you can add d3d libraries. For hook4 for example d3d9 and you set it to native. As for winetricks it may depend on what version you have in your distribution. I did that. If that was all there was to it, I would have been done two weeks ago. Latest versions of Wine & Winetricks.
zeppeliner Posted November 20, 2021 Posted November 20, 2021 It's hard to tell on Linux exactly what version the hook is using, so I added all versions from the d3d9 series. On another note, it is worth to create a script to run the binary, because you can define environment variables that wine should use. I have hybrid graphics so my script looks like this: #!/bin/bash WINE_LARGE_ADDRESS_AWARE=1 STAGING_SHARED_MEMORY=1 __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxinfo | grep "OpenGL renderer" __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia wine TK17-158.001.exe Of interest, you can also define the size of the graphics memory used by your card, in my case it made a huge difference. My old card uses 2GB of memory, so I used this: winetricks videomemorysize=2048
OysterMug Posted November 21, 2021 Author Posted November 21, 2021 On 11/20/2021 at 5:01 AM, zeppeliner said: It's hard to tell on Linux exactly what version the hook is using, so I added all versions from the d3d9 series. On another note, it is worth to create a script to run the binary, because you can define environment variables that wine should use. I have hybrid graphics so my script looks like this: #!/bin/bash WINE_LARGE_ADDRESS_AWARE=1 STAGING_SHARED_MEMORY=1 __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxinfo | grep "OpenGL renderer" __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia wine TK17-158.001.exe Of interest, you can also define the size of the graphics memory used by your card, in my case it made a huge difference. My old card uses 2GB of memory, so I used this: winetricks videomemorysize=2048 Interesting, though your grep call to "OpenGL renderer" is confusing. Wouldn't that disable Hook? Also, for some reason, I simply can't get a script to run. I pasted your script to a text file saved to the "Desktop" folder, set the properties to "Allow executing as a program" & Open With the Terminal ("KTelnetService" in Ubuntu), and nothing happens. Followup: After a reboot, your shortcut seems to now work with VX running properly with H5. ?
zeppeliner Posted November 22, 2021 Posted November 22, 2021 I forgot to mention, the script was originally in the bin directory in the game folder. "OpenGL renderer" is just for testing - if you run the script in a terminal it will show which graphics card it uses. I have hybrid graphics (intel+nvidia) and that's why I always put this line in my scripts to run games from Windows. I'm glad I had a chance to talk to you, because I was afraid I'm alone freak who runs a hook under Linux
husokkupant Posted November 28, 2021 Posted November 28, 2021 Hey! Fortunately, I have saved complete topic from the ModsGarden regarding the Linux installation. I am using this since it was posted and did not have any issues except with the timeline where markers will disappear if I collapse all/some of the menus in the animation panel. This is for latest version of VX17. Regarding the document, some steps needs to be updated as Lutris is updated but I am sure you will figure it out. If you update the process, please share and if you are experiencing the same issue with the timeline and know how to fix it, please let us know. 2018-09-29 -- TK17 on Linux + hook5 Installation Guide NEW.odt
husokkupant Posted November 28, 2021 Posted November 28, 2021 On 11/20/2021 at 5:01 AM, zeppeliner said: Of interest, you can also define the size of the graphics memory used by your card, in my case it made a huge difference. My old card uses 2GB of memory, so I used this: winetricks videomemorysize=2048 Hey zeppeliner, can you explain how do you use videomemorysize? Are you adding this via Lutris as a winetrick entry? Thanks!
OysterMug Posted November 29, 2021 Author Posted November 29, 2021 On 11/28/2021 at 1:24 AM, husokkupant said: Hey! Fortunately, I have saved complete topic from the ModsGarden regarding the Linux installation. Hey, great. You even have the screenshots (which Avarteas allowed to expire and never updated before MG went down.) I recall that it needed some updating. I'll review it and see if the instructions I've been working on need to be modified before I upload them. Thanks.
OysterMug Posted November 29, 2021 Author Posted November 29, 2021 On 11/28/2021 at 1:30 AM, husokkupant said: Hey zeppeliner, can you explain how do you use videomemorysize? Are you adding this via Lutris as a winetrick entry? Thanks! You can either run the command from the Terminal/CLI or just open the Winetricks GUI (default prefix), "Change Settings", locate the "videomemorysize=2048" entry and select it to make the change permanently to that particular Wine Prefix.
zeppeliner Posted November 30, 2021 Posted November 30, 2021 On 11/28/2021 at 8:30 AM, husokkupant said: Hey zeppeliner, can you explain how do you use videomemorysize? Are you adding this via Lutris as a winetrick entry? Thanks! Hey, In Linux, you check the graphics card memory with the command: glxinfo | egrep -i 'device|memory' By default wine only uses 256MB of graphics memory, which can cause problems. You can run it in terminal, winetricks command should work once, but to be sure, you can check if this is set correctly by running 'wine regedit'. Go to HKEY_CURRENT_USER->Software->Wine->Direct3D and there you can check the value set.
husokkupant Posted December 5, 2021 Posted December 5, 2021 Thank you both, I was able to change graphic memory in wine to 2048. Wondering if this will minimize crashing due to the low memory issue. TK17VX is patched with 4Gb patch, but it will crash from time to time after running out of memory.
Recommended Posts
Archived
This topic is now archived and is closed to further replies.