Warcraft III: Difference between revisions

From Pengwings
No edit summary
No edit summary
 
Line 7: Line 7:


==== Working fix ====
==== Working fix ====
* Use GE-Proton9-27
* Use GE-Proton9-27 rather than GE-Proton10-29
* Download dxwrapper v1.5.8100.25 from https://github.com/elishacloud/dxwrapper/releases/tag/v1.5.8100.25
* Download dxwrapper v1.5.8100.25 from https://github.com/elishacloud/dxwrapper/releases/tag/v1.5.8100.25
* Put d3d8.dll, dxwrapper.dll, dxwrapper.ini in the root of the install directory
* Put d3d8.dll, dxwrapper.dll, dxwrapper.ini in the root of the install directory

Latest revision as of 02:09, 10 February 2026

Warcraft III is a DirectX 8 game. By default the game seems to be running in OpenGL mode under GE-Proton10-29 which is borked. The window opens at an invalid size, and resizing the window causes the lighting to break.

The following env var is supposed to make Proton use D8VK to run using Vulkan:

export PROTON_ENABLE_D8VK=1

Unfortunately this doesn't seem to work in any Proton version I tried. Proton 10 has no behavioural change. Proton 8 and 9 crash.

Working fix

D3d8to9                    = 1

Add this environment variable:

export WINEDLLOVERRIDES="d3d8=n"

Should be fixed now.

Known issues

It might also be necessary to rename Movies folder to something else so the game doesn't try to play the cutscenes (the game wouldn't start for me without this)

bash script

#!/bin/bash -x
#---------- CONFIGURABLE SETTINGS ----------
export STEAM_COMPAT_DATA_PATH="/opt/_pfx/wc3"
TARGET_PROTON_VERSION=GE-Proton9-27
PROGRAM_NAME="Frozen Throne.exe"
PROGRAM_ARGS=-window
export WINEDLLOVERRIDES="d3d8=n"
#---------- THE SCRIPT ----------
export STEAM_COMPAT_CLIENT_INSTALL_PATH=~/.steam/steam
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
pushd "$SCRIPT_DIR"
$STEAM_COMPAT_CLIENT_INSTALL_PATH/compatibilitytools.d/$TARGET_PROTON_VERSION/proton run "$SCRIPT_DIR/$PROGRAM_NAME" "$PROGRAM_ARGS" & disown
popd