r/HoMM • • 2d ago

HoMM5 H5 on Linux/wine

I had this working years ago, and remember that it was easy. Literally put in CD, install and go. Now, though? Ouf. Something broke.

I've tried a whole array of things suggested online (64 bit, 32 bit, various Windows versions, virtual desktop, lutris, dxvk, pulling some random stuff from winetricks, a bunch of launch options, trying to somehow get it to run via proton even though it's non-steam, and more), and did not once manage to get to main menu, it always crashes after the splash screen while trying to mess with the screen resolution. Last guy who updated winehq seems to have the same issue.

Does anyone have working H5 on Linux? And what did you do?

3 Upvotes

10 comments sorted by

2

u/Odenssi96 2d ago

I got the steam version to work. But the gog version sadly only seems to play nice on windows.

1

u/gh7g 2d ago

Yeah, I'm using the Gog installer. Maybe somehow going CD route again is the solution, since Gog does modify the installers sometimes?

2

u/Odenssi96 2d ago

Gog i think is a none drm dumb of the game. I am tempted to buy a external cd/DVD player and see if that works.

But on Linux it would anyway go through compadibility layers.

Also while writing this i do remember using the GoG version to run HOMM5 through game native.

2

u/gh7g 14h ago

I figured out how to get the gog version to play nice after all!(explained in "I figured it out!" post)

kind of crazy that it takes a steam-based tool to run a non-steam game in this case. Fiddling with stock wine, I could bash my head against the wall instead and get a headache in a less complicated manner.

2

u/AtomicTaco13 2d ago

On Lutris, which Wine version do you use? I personally use my own customized prefix. But if you want something that works out of the box, try Steam's Proton - or a further tweaked version, GE-Proton. Whenever I need to get something working that my regular prefix doesn't like, it's usually the way to get it working.

1

u/gh7g 1d ago

I wasn't selecting anything in particular on there, so I guess its default? I think Lutris pulls some kind of wine-ge? I did try manually running it on wine-ge8 which works for H3 for me after mainline wine9 broke it.

Oddly enough, I got H5 to almost work (I can't use the keyboard, presumably the splash screen does still mess that up) with very little effort (Win7 (Vista and XP also work) + window manager banned from controlling windows) on a different computer.

The one I meant to play on is a Mint, the other a plain Debian.

Regarding Proton/GE-Proton, how do you run a non-steam exe on it? I think it has customised stock variables? Might be worth a try though.

2

u/AtomicTaco13 1d ago

You gotta use a launcher. Steam also lets you add non-Steam games and in compatibility tools, you choose Proton. And in Lutris, you gotta pick the option to add a game and then manual installation.

1

u/gh7g 16h ago edited 15h ago

Hmm, I got it to work that way now. Just directly adding the exe into steam and selecting compatibility tool.

The dumb thing, yesterday I tried it via commandline like "

STEAM_COMPAT_CLIENT_INSTALL_PATH=/path/to/proton STEAM_COMPAT_DATA_PATH=/path/to/prefix /path/to/proton/proton run /path/to/prefix/pfx/drive_c/heroes5/bin/H5_Game.exe

", and it. just. wouldn't. work. - plainly and with whatever further wine tool shenanigans and reasonably-close-sounding environment variable options I found on the github pages or in online recommendations to try tossing in front like DXVK, DirectX this and D3D that… What the…

The difference seems to be about the Steam Linux Runtime invocation.

1

u/gh7g 15h ago

I figured it out. No launcher required, I can call it straight from Desktop. No crazy extra launch options either. My final problem was actually insanely stupid, you have to be in the correct working directory.

Working Proton version: proton-sarek-10-4 (not sure if just this works, but I had it laying around from something I tried a while back)

Direct call works exactly I wrote like in my other post, but you have to have your $PWD as /path/to/prefix/pfx/drive_c/heroes5/bin - otherwise it crashes on startup. That's all somehow.

So for stuffing it into a desktop file, just dissect it into pieces like:

Environment variables: STEAM_COMPAT_CLIENT_INSTALL_PATH=/path/to/proton STEAM_COMPAT_DATA_PATH=/path/to/prefix

Program: /path/to/proton/proton

Arguments: run H5_Game.exe

Working Directory: /path/to/prefix/pfx/drive_c/heroes5/bin

My winecfg in the proton prefix does have "emulate a virtual desktop" set for H5_Game.exe, Window manager doing stuff actually allowed, and Compatibility mode set to Win7 from yesterday. No idea if that's necessary, but I will leave it as it is. The virtual desktop is not being applied to the actual game, which works in full screen at various resolutions.

1

u/cosmmmic 1d ago

It barely works on macOS with crossover. But you should try. I guess there’s Crossover for Linux