| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| games:linux:wine:cod_mw2_2009_iw4x_steamcmd [2026/06/04 07:54] – Sean Rhone | games:linux:wine:cod_mw2_2009_iw4x_steamcmd [2026/06/06 20:22] (current) – Sean Rhone |
|---|
| * Steam ((https://store.steampowered.com/app/10180/Call_of_Duty_Modern_Warfare_2_2009/)) | * Steam ((https://store.steampowered.com/app/10180/Call_of_Duty_Modern_Warfare_2_2009/)) |
| * IW4x ((https://iw4x.io/)) | * IW4x ((https://iw4x.io/)) |
| |
| * :!: 2026/06/04: WIP | |
| |
| ===== Prerequisites ===== | ===== Prerequisites ===== |
| WINEPREFIX=~/'.wine/Call of Duty Modern Warfare 2 (2009)' wine REG ADD 'HKEY_CURRENT_USER\Software\Wine\Drivers' /v 'Graphics' /t 'REG_SZ' /d 'wayland' /f | WINEPREFIX=~/'.wine/Call of Duty Modern Warfare 2 (2009)' wine REG ADD 'HKEY_CURRENT_USER\Software\Wine\Drivers' /v 'Graphics' /t 'REG_SZ' /d 'wayland' /f |
| |
| WINEPREFIX=~/'.wine/Call of Duty Modern Warfare 2 (2009)' wine REG ADD 'HKEY_CURRENT_USER\Software\Wine\Direct3D' /v 'renderer' /t 'REG_SZ' /d 'vulkan' /f | WINEPREFIX=~/'.wine/Call of Duty Modern Warfare 2 (2009)' wine REG ADD 'HKEY_CURRENT_USER\Software\Wine\Direct3D' /v 'renderer' /t 'REG_SZ' /d 'gdi' /f |
| |
| ====== IW4x ====== | ====== IW4x ====== |
| set sv_securityLevel "22" | set sv_securityLevel "22" |
| set sv_randomMapRotation "1" | set sv_randomMapRotation "1" |
| | set sv_allowClientConsole "1" |
| |
| // General | // General |
| * https://github.com/doitsujin/dxvk | * https://github.com/doitsujin/dxvk |
| |
| ==== master ==== | ==== 1.10.3 ==== |
| |
| * https://github.com/doitsujin/dxvk/actions ((need to be signed into GitHub, and select the latest ''master'' artifacts package)) | * https://github.com/doitsujin/dxvk/releases/tag/v1.10.3 |
| * Last tested: ''dxvk-master-6eddf20c9c4e10093a341971324a819bf5568a24.zip'' | * TODO: ''master'' ([[games:linux:wine:cod_mw2_2009_iw4x_steamcmd?rev=1780575602#master|older rev]]) |
| |
| unzip -j -o ~/'Downloads/dxvk-master-'*'.zip' 'x32/d3d9.dll' -d ~/'.wine/Call of Duty Modern Warfare 2 (2009)/drive_c/windows/system32' | wget -O '/tmp/dxvk-1.10.3.tar.gz' 'https://github.com/doitsujin/dxvk/releases/download/v1.10.3/dxvk-1.10.3.tar.gz' && tar -xzvf '/tmp/dxvk-1.10.3.tar.gz' --strip-components='2' -C ~/'.wine/Call of Duty Modern Warfare 2 (2009)/drive_c/windows/system32' 'dxvk-1.10.3/x32/d3d9.dll' && rm -f '/tmp/dxvk-1.10.3.tar.gz' |
| |
| ==== Dll Override ==== | ==== Dll Override ==== |
| ==== dxvk.conf ==== | ==== dxvk.conf ==== |
| |
| * https://github.com/doitsujin/dxvk/blob/master/dxvk.conf | * https://github.com/doitsujin/dxvk/blob/e4fd5e9e8d335e8a2c0814829207cbd421f7e40e/dxvk.conf |
| |
| nano ~/'Steam/steamapps/common/Call of Duty Modern Warfare 2/dxvk.conf' | nano ~/'Steam/steamapps/common/Call of Duty Modern Warfare 2/dxvk.conf' |
| <code> | <code> |
| # General | # General |
| dxvk.allowFse = "True" | dxvk.shrinkNvidiaHvvHeap = "False" |
| d3d9.dpiAware = "False" | d3d9.dpiAware = "False" |
| | d3d9.enableDialogMode = "False" |
| | d3d9.maxFrameRate = "0" |
| | |
| | # Tweaks |
| d3d9.enumerateByDisplays = "False" | d3d9.enumerateByDisplays = "False" |
| dxvk.tearFree = "False" | d3d9.deferSurfaceCreation = "True" |
| dxvk.disableNvLowLatency2 = "True" | |
| dxvk.latencySleep = "False" | |
| d3d9.maxFrameLatency = "1" | d3d9.maxFrameLatency = "1" |
| d3d9.maxFrameRate = "-1" | |
| d3d9.presentInterval = "0" | d3d9.presentInterval = "0" |
| d3d9.samplerLodBias = "-2.0" | d3d9.tearFree = "False" |
| | d3d9.samplerAnisotropy = "16" |
| # Intel | |
| d3d9.hideIntelGpu = "False" | |
| dxvk.enableGraphicsPipelineLibrary = "False" | |
| dxvk.enableDescriptorBuffer = "False" | |
| | |
| # Tweaks | |
| dxvk.enableMemoryDefrag = "False" | |
| dxvk.lowerSinCos = "False" | |
| d3d9.deviceLocalConstantBuffers = "True" | |
| d3d9.floatEmulation = "False" | |
| d3d9.invariantPosition = "False" | d3d9.invariantPosition = "False" |
| | dxvk.useRawSsbo = "True" |
| | d3d9.evictManagedOnUnlock = "True" |
| | d3d9.strictPow = "False" |
| d3d9.lenientClear = "True" | d3d9.lenientClear = "True" |
| dxvk.useRawSsbo = "True" | d3d9.floatEmulation = "False" |
| dxvk.tilerMode = "False" | d3d9.forceSwapchainMSAA = "0" |
| | d3d9.deviceLocalConstantBuffers = "True" |
| | d3d9.noExplicitFrontBuffer = "True" |
| |
| # HUD | # HUD |
| |
| wget -O ~/'Downloads/IW4x-iw4x-latest.dll' -q --show-progress 'https://github.com/iw4x/iw4x-client/releases/latest/download/iw4x.dll' | wget -O ~/'Downloads/IW4x-iw4x-latest.dll' -q --show-progress 'https://github.com/iw4x/iw4x-client/releases/latest/download/iw4x.dll' |
| mv -fv ~/'Downloads/IW4x-iw4x-latest.dll' ~/'Steam/steamapps/common/Call of Duty Modern Warfare 2/iw4x.dll' | mv -f ~/'Downloads/IW4x-iw4x-latest.dll' ~/'Steam/steamapps/common/Call of Duty Modern Warfare 2/iw4x.dll' |
| |
| wget -O ~/'Downloads/IW4x-release-latest.zip' -q --show-progress 'https://github.com/iw4x/iw4x-rawfiles/releases/latest/download/release.zip' | wget -O ~/'Downloads/IW4x-release-latest.zip' -q --show-progress 'https://github.com/iw4x/iw4x-rawfiles/releases/latest/download/release.zip' |
| unzip -o ~/'Downloads/IW4x-release-latest.zip' -d ~/'Steam/steamapps/common/Call of Duty Modern Warfare 2' | unzip -q -o ~/'Downloads/IW4x-release-latest.zip' -d ~/'Steam/steamapps/common/Call of Duty Modern Warfare 2' |
| rm -fv ~/'Downloads/IW4x-release-latest.zip' | rm -f ~/'Downloads/IW4x-release-latest.zip' |
| |
| zenity --title 'IW4x Updater' --text 'Client and Rawfiles update complete' --icon ~/'.wine/Icons/IW4x-256.png' --timeout '2' --info | zenity --title 'IW4x Updater' --text 'Client and Rawfiles update complete' --icon ~/'.wine/Icons/IW4x-256.png' --timeout '2' --info |
| | : |
| |
| # End</code> | # End</code> |
| |
| zenity --title 'IW4x Updater' --text 'Bot Warfare update complete' --icon ~/'.wine/Icons/IW4x-256.png' --timeout '2' --info | zenity --title 'IW4x Updater' --text 'Bot Warfare update complete' --icon ~/'.wine/Icons/IW4x-256.png' --timeout '2' --info |
| | : |
| |
| # End</code> | # End</code> |
| Name=IW4x | Name=IW4x |
| Categories=Game; | Categories=Game; |
| Path='/tmp' | Path=/tmp |
| Exec='/bin/bash' -c "WINEPREFIX=~/'.wine/Call of Duty Modern Warfare 2 (2009)' wine ~/'Steam/steamapps/common/Call of Duty Modern Warfare 2/iw4x.exe' +exec 'iw4x_custom.cfg' +set 'r_fullscreen 1' +set 'g_antilag 0'" | Exec='/bin/bash' -c "WINEPREFIX=~/'.wine/Call of Duty Modern Warfare 2 (2009)' wine ~/'Steam/steamapps/common/Call of Duty Modern Warfare 2/iw4x.exe' +exec 'iw4x_custom.cfg' +set 'r_fullscreen 1' +set 'g_antilag 0'" |
| Type=Application | Type=Application |
| |
| [Desktop Action Update-Bots] | [Desktop Action Update-Bots] |
| Exec='/bin/bash' -c "kgx --working-directory='/tmp' -T 'IW4x [Bot Warfare Updater]' -e ~/'Steam/scripts/Call of Duty Modern Warfare 2 (10180)/iw4x-bot-warfare-update.sh'" | Exec='/bin/bash' -c "kgx --working-directory='/tmp' -T 'Bot Warfare [Updater]' -e ~/'Steam/scripts/Call of Duty Modern Warfare 2 (10180)/iw4x-bot-warfare-update.sh'" |
| Name=Update Bot Warfare | Name=Update Bot Warfare |
| |
| [Desktop Action Kill] | [Desktop Action Kill] |
| Exec='/bin/bash' -c "WINEPREFIX=~/'.wine/Call of Duty Modern Warfare 2 (2009)' wineserver -k" | Exec='/bin/bash' -c "WINEPREFIX=~/'.wine/Call of Duty Modern Warfare 2 (2009)' wineserver -k" |
| Name=Force-close | Name=Force-close IW4x |
| |
| [Desktop Action Notes] | [Desktop Action Notes] |