====== Information ======
* Call of Duty: Modern Warfare 2 (2009)
* English
* Steam ((https://store.steampowered.com/app/10180/Call_of_Duty_Modern_Warfare_2_2009/))
* IW4x ((https://iw4x.io/))
===== Prerequisites =====
* [[windows:10|Windows 10 (21H2)]]
* [[programs:windows:steamcmd|SteamCMD]]
* [[programs;windows;git|Git]]
====== Dependencies ======
===== Visual Studio 2026 =====
* https://aka.ms/vs/18/insiders/vs_Community.exe ([[https://forums.mydigitallife.net/threads/repository-everything-about-windows-rt-woa-v8-x-x-and-v10-arm.57362/page-73#post-1896981|source]])
* Insiders
* Builds [[#client|iw4x.dll]]
"%SystemRoot%\System32\curl.exe" --output "%UserProfile%\Downloads\vs_Community.exe" --location "https://aka.ms/vs/18/insiders/vs_Community.exe" --progress-bar && "%UserProfile%\Downloads\vs_Community.exe"
==== Required Components ====
* Desktop development with C++ (C++ core desktop features)
* MSVC Build Tools for x64/x86 (Latest)
* Windows 11 SDK (10.0.26100.8249)
"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\setup.exe"
====== Modern Warfare 2 ======
===== Restore Files =====
MKDIR "%ProgramFiles%\Steam\steamapps\common" & "%SystemRoot%\explorer.exe" "%ProgramFiles%\Steam\steamapps"
DIR /B "%ProgramFiles%\Steam\steamapps\appmanifest_10180.acf" "%ProgramFiles%\Steam\steamapps\appmanifest_10190.acf" & DIR /AD /B "%ProgramFiles%\Steam\steamapps\common" | "%SystemRoot%\System32\find.exe" "Call of Duty Modern Warfare 2"
===== Install =====
"%ProgramFiles%\Steam\steamcmd.exe" +login "Espionage724" +app_update "10180" +quit
"%ProgramFiles%\Steam\steamcmd.exe" +login "Espionage724" +app_update "10190" +quit
===== Validate =====
"%ProgramFiles%\Steam\steamcmd.exe" +login "Espionage724" +app_update "10180" validate +quit
"%ProgramFiles%\Steam\steamcmd.exe" +login "Espionage724" +app_update "10190" validate +quit
====== IW4x ======
===== Client =====
* https://github.com/iw4x/iw4x-client
==== Download Source ====
* https://github.com/iw4x/iw4x-client/commits/main/
"%ProgramFiles%\Git\bin\git.exe" clone --branch "main" --depth "1" --recurse-submodules "https://github.com/iw4x/iw4x-client.git" "%UserProfile%\Projects\IW4x-Client\src"
==== Compile ====
* https://github.com/iw4x/iw4x-client#premake-arguments
RMDIR /S /Q "%UserProfile%\Projects\IW4x-Client\src\build" & CD "%UserProfile%\Projects\IW4x-Client\src" && "%UserProfile%\Projects\IW4x-Client\src\tools\premake5.exe" --copy-to="%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2" --disable-binary-check "vs2026"
"%ProgramFiles%\Microsoft Visual Studio\18\Insiders\MSBuild\Current\Bin\amd64\MSBuild.exe" "%UserProfile%\Projects\IW4x-Client\src\build\iw4x.vcxproj" -target:"Rebuild" -property:"Configuration=Release" -maxCpuCount -nodeReuse:"False" -terminalLogger:"off" && DIR /B "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x.dll"
===== Rawfiles =====
* https://github.com/iw4x/iw4x-rawfiles
==== Download Source ====
* https://github.com/iw4x/iw4x-rawfiles/commits/main/
"%ProgramFiles%\Git\bin\git.exe" clone --branch "main" --depth "1" --recurse-submodules "https://github.com/iw4x/iw4x-rawfiles.git" "%UserProfile%\Projects\IW4x-Rawfiles\src"
==== Files ====
MKDIR "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x" & "%SystemRoot%\System32\Robocopy.exe" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x" /E /IS /XD "iw4x_0*"
"%SystemRoot%\System32\Robocopy.exe" "%UserProfile%\Projects\IW4x-Rawfiles\src\zone" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\zone" /E /IS
COPY /Y "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x.exe" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x.exe"
==== IWDs ====
* https://github.com/iw4x/iw4x-rawfiles#iw4x-rawfiles
* Expects [[windows:10#zip|7-Zip]]
MKDIR "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x"
DEL /Q "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_00.iwd" && "%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_00.iwd" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x\iw4x_00\*"
DEL /Q "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_01.iwd" && "%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_01.iwd" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x\iw4x_01\*"
DEL /Q "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_02.iwd" && "%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_02.iwd" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x\iw4x_02\*"
DEL /Q "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_03.iwd" && "%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_03.iwd" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x\iw4x_03\*"
DEL /Q "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_04.iwd" && "%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_04.iwd" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x\iw4x_04\*"
DEL /Q "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_05.iwd" && "%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_05.iwd" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x\iw4x_05\*"
=== Check ===
DIR "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_0"*".iwd"
==== Localization ====
=== Linker ===
* https://github.com/Laupetin/OpenAssetTools
* https://openassettools.dev/guide/what-is-oat.html#tools
* https://github.com/iw4x/iw4x-rawfiles#building
MKDIR "%UserProfile%\Projects\IW4x-Rawfiles\ext" & "%SystemRoot%\System32\curl.exe" --output "%Temp%\oat-windows.zip" --location "https://github.com/Laupetin/OpenAssetTools/releases/latest/download/oat-windows.zip" --progress-bar && "%SystemRoot%\System32\tar.exe" -xvf "%Temp%\oat-windows.zip" -C "%UserProfile%\Projects\IW4x-Rawfiles\ext" "Linker.exe" && DEL /Q "%Temp%\oat-windows.zip" & "%UserProfile%\Projects\IW4x-Rawfiles\ext\Linker.exe" --version
=== English ===
"%UserProfile%\Projects\IW4x-Rawfiles\ext\Linker.exe" --base-folder "%UserProfile%\Projects\IW4x-Rawfiles\src" --output-folder "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\zone\patch" "iw4x_localized_english" && DIR /B "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\zone\patch\iw4x_localized_english.ff"
====== Bot Warfare ======
* https://github.com/ineedbots/iw4_bot_warfare
* https://docs.iw4x.io/guides/bot-warfare/
===== Download Source ====
* https://github.com/ineedbots/iw4_bot_warfare/commits/master/
"%ProgramFiles%\Git\bin\git.exe" clone --branch "master" --depth "1" --recurse-submodules "https://github.com/ineedbots/iw4_bot_warfare.git" "%UserProfile%\Projects\IW4-Bot-Warfare\src"
===== Files =====
"%SystemRoot%\System32\Robocopy.exe" "%UserProfile%\Projects\IW4-Bot-Warfare\src\scriptdata" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\userraw\scriptdata" /E /IS
===== IWD =====
* Expects [[windows:10#zip|7-Zip]]
"%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\userraw\z_svr_bots.iwd" "%UserProfile%\Projects\IW4-Bot-Warfare\src\maps" "%UserProfile%\Projects\IW4-Bot-Warfare\src\scripts" && DIR /B "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\userraw\z_svr_bots.iwd"
====== Compat Settings ======
"%SystemRoot%\System32\reg.exe" ADD "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x.exe" /t "REG_SZ" /d "~ DISABLEDXMAXIMIZEDWINDOWEDMODE HIGHDPIAWARE DISABLEDWM DISABLETHEMES NoDTToDITMouseBatch" /f
"%SystemRoot%\System32\reg.exe" ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\iw4x.exe" /v "UseLargePages" /t "REG_DWORD" /d "1" /f
====== Firewall ======
===== Block =====
"%SystemRoot%\System32\netsh.exe" advfirewall firewall add rule name="Call of Duty Modern Warfare 2 (IW4x)" dir="in" action="block" profile="any" program="%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x.exe" & "%SystemRoot%\System32\netsh.exe" advfirewall firewall add rule name="Call of Duty Modern Warfare 2 (IW4x)" dir="out" action="block" profile="any" program="%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x.exe"
===== Delete Rules =====
"%SystemRoot%\System32\netsh.exe" advfirewall firewall delete rule name="Call of Duty Modern Warfare 2 (IW4x)"
====== Libraries ======
===== DXVK =====
* https://github.com/doitsujin/dxvk
==== 2.6.2 ====
* Last tested: ''dxvk-2.6.2.tar.gz'' (([[https://github.com/doitsujin/dxvk/wiki/Driver-support/1db7de2a0f0b67b3e1b834dd211dc2faa4dcab80#dxvk-27-and-later|2.7+]] requires Vulkan 1.3))
* ''d3d9.dll''
DEL /Q "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x.dxvk-cache" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x_d3d9.log" & "%SystemRoot%\System32\curl.exe" --output "%Temp%\dxvk.tar.gz" --location "https://github.com/doitsujin/dxvk/releases/download/v2.6.2/dxvk-2.6.2.tar.gz" --progress-bar && "%SystemRoot%\System32\tar.exe" -xzf "%Temp%\dxvk.tar.gz" --strip-components="2" -C "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2" "dxvk-*/x32/d3d9.dll" && DEL /Q "%Temp%\dxvk.tar.gz" & DIR /B "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\d3d9.dll"
==== Environment ====
"%SystemRoot%\System32\setx.exe" "DXVK_LOG_LEVEL" "none"
"%SystemRoot%\System32\setx.exe" "DXVK_STATE_CACHE" "disable"
==== dxvk.conf ====
* https://github.com/doitsujin/dxvk/blob/9d6f54a1ade20d1d27dd421024717a636f3d8c68/dxvk.conf
"%SystemRoot%\System32\notepad.exe" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\dxvk.conf"
#dxvk.hud = "devinfo,fps,memory,gpuload,frametimes"
#dxvk.hud = "full"
dxvk.allowFse = "True"
d3d9.maxFrameLatency = "1"
d3d9.maxFrameRate = "-1"
dxvk.latencySleep = "False"
dxvk.disableNvLowLatency2 = "True"
d3d9.hideNvidiaGpu = "False"
d3d9.hideNvkGpu = "False"
d3d9.hideAmdGpu = "False"
d3d9.hideIntelGpu = "False"
d3d9.presentInterval = "0"
dxvk.tearFree = "False"
dxvk.tilerMode = "False"
d3d9.samplerAnisotropy = "16"
d3d9.samplerLodBias = "-2.0"
d3d9.invariantPosition = "False"
dxvk.useRawSsbo = "True"
dxvk.enableGraphicsPipelineLibrary = "False"
dxvk.trackPipelineLifetime = "False"
dxvk.enableMemoryDefrag = "False"
d3d9.dpiAware = "False"
d3d9.lenientClear = "True"
d3d9.floatEmulation = "False"
d3d9.sincosEmulation = "False"
d3d9.forceSwapchainMSAA = "0"
d3d9.deviceLocalConstantBuffers = "True"
d3d9.enumerateByDisplays = "False"
d3d9.seamlessCubes = "True"
# End
===== DSOAL =====
* https://github.com/kcat/dsoal
==== master ====
* ''latest-master/DSOAL.7z''
* ''dsound.dll''
* ''dsoal-aldrv.dll''
"%SystemRoot%\System32\curl.exe" --output "%UserProfile%\Downloads\DSOAL.zip" --location "https://github.com/kcat/dsoal/releases/download/latest-master/DSOAL.zip" --progress-bar && "%SystemRoot%\System32\tar.exe" -xf "%UserProfile%\Downloads\DSOAL.zip" -C "%UserProfile%\Downloads" && MOVE /Y "%UserProfile%\Downloads\DSOAL_r"*".zip" "%UserProfile%\Downloads\DSOAL-master.zip" && "%SystemRoot%\System32\tar.exe" -xf "%UserProfile%\Downloads\DSOAL-master.zip" --strip-components="2" -C "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2" "DSOAL/Win32/dsoal-aldrv.dll" "DSOAL/Win32/dsound.dll" && DIR /B "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\dsoal-aldrv.dll" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\dsound.dll" & DEL /Q "%UserProfile%\Downloads\DSOAL-master.zip" "%UserProfile%\Downloads\DSOAL.zip"
==== alsoft.ini ====
* https://github.com/kcat/openal-soft/blob/master/alsoftrc.sample
"%SystemRoot%\System32\notepad.exe" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\alsoft.ini"
[general]
drivers = wasapi
resampler = bsinc48
stereo-mode = speakers
period_size = 64
periods = 16
[game_compat]
enable-sub-data-ext = true
# End
====== Scripts ======
MKDIR "%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)"
"%SystemRoot%\explorer.exe" "%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)"
===== Server Start =====
"%SystemRoot%\System32\notepad.exe" "%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\iw4x-localhost-server-start.bat"
@echo off
CD "%Temp%"
START "" /MIN /D "%Temp%" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x.exe" -dedicated -console -disable-notifies -disable-mongoose -disable-rate-limit-check +exec "iw4x_localhost.cfg" +map_rotate
:: End
"%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\iw4x-localhost-server-start.bat"
===== IW4x Updaters =====
==== Client ====
"%SystemRoot%\System32\notepad.exe" "%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\IW4x Client Updater.bat"
@echo off
TITLE IW4x Client Updater
CD "%Temp%"
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\IW4x-Client\src" reset --hard "origin/main" --recurse-submodules
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\IW4x-Client\src" submodule update --init --recursive --rebase
CD "%UserProfile%\Projects\IW4x-Client\src"
RMDIR /S /Q "%UserProfile%\Projects\IW4x-Client\src\build"
"%UserProfile%\Projects\IW4x-Client\src\tools\premake5.exe" --copy-to="%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2" --disable-binary-check "vs2026"
CD "%Temp%"
"%ProgramFiles%\Microsoft Visual Studio\18\Insiders\MSBuild\Current\Bin\amd64\MSBuild.exe" "%UserProfile%\Projects\IW4x-Client\src\build\iw4x.vcxproj" -target:"Rebuild" -property:"Configuration=Release" -maxCpuCount -nodeReuse:"False" -terminalLogger:"off"
"%SystemRoot%\System32\timeout.exe" /T "1"
"%SystemRoot%\System32\msg.exe" %USERNAME% /TIME:"2" "IW4x Client update complete"
:: End
"%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\IW4x Client Updater.bat"
==== Rawfiles ====
"%SystemRoot%\System32\notepad.exe" "%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\IW4x Rawfiles Updater.bat"
@echo off
TITLE IW4x Rawfiles Updater
CD "%Temp%"
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\IW4x-Rawfiles\src" reset --hard "origin/main"
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\IW4x-Rawfiles\src" pull origin "main" --rebase
"%SystemRoot%\System32\Robocopy.exe" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x" /E /IS /XD "iw4x_0*"
"%SystemRoot%\System32\Robocopy.exe" "%UserProfile%\Projects\IW4x-Rawfiles\src\zone" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\zone" /E /IS
COPY /Y "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x.exe" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x.exe"
DEL /Q "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_"*".iwd"
"%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_00.iwd" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x\iw4x_00\*"
"%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_01.iwd" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x\iw4x_01\*"
"%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_02.iwd" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x\iw4x_02\*"
"%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_03.iwd" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x\iw4x_03\*"
"%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_04.iwd" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x\iw4x_04\*"
"%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x\iw4x_05.iwd" "%UserProfile%\Projects\IW4x-Rawfiles\src\iw4x\iw4x_05\*"
"%SystemRoot%\System32\curl.exe" --output "%Temp%\oat-windows.zip" --location "https://github.com/Laupetin/OpenAssetTools/releases/latest/download/oat-windows.zip" --progress-bar
"%SystemRoot%\System32\tar.exe" -xf "%Temp%\oat-windows.zip" -C "%UserProfile%\Projects\IW4x-Rawfiles\ext" "Linker.exe"
DEL /Q "%Temp%\oat-windows.zip"
"%UserProfile%\Projects\IW4x-Rawfiles\ext\Linker.exe" --base-folder "%UserProfile%\Projects\IW4x-Rawfiles\src" --output-folder "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\zone\patch" "iw4x_localized_english"
"%SystemRoot%\System32\msg.exe" %USERNAME% /TIME:"2" "IW4x Rawfiles update complete"
:: End
"%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\IW4x Rawfiles Updater.bat"
===== Bot Warfare Update =====
"%SystemRoot%\System32\notepad.exe" "%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\Bot Warfare Updater.bat"
@echo off
TITLE Bot Warfare Updater
CD "%Temp%"
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\IW4-Bot-Warfare\src" reset --hard "origin/master"
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\IW4-Bot-Warfare\src" pull origin "master" --rebase
"%SystemRoot%\System32\Robocopy.exe" "%UserProfile%\Projects\IW4-Bot-Warfare\src\scriptdata" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\userraw\scriptdata" /E /IS
"%ProgramFiles%\7-Zip\7z.exe" a -m"0=Copy" -t"zip" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\userraw\z_svr_bots.iwd" "%UserProfile%\Projects\IW4-Bot-Warfare\src\maps" "%UserProfile%\Projects\IW4-Bot-Warfare\src\scripts"
"%SystemRoot%\System32\msg.exe" %USERNAME% /TIME:"2" "Bot Warfare update complete"
:: End
"%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\Bot Warfare Updater.bat"
===== Profile Back-up =====
"%SystemRoot%\System32\notepad.exe" "%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\IW4x Profile Backup.bat"
@echo off
CD "%Temp%"
"%SystemRoot%\System32\tar.exe" -czf "%UserProfile%\Downloads\%RANDOM%-IW4x-Profile.tar.gz" -C "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\players" "iw4x.stat"
"%SystemRoot%\System32\msg.exe" %USERNAME% /TIME:"2" "IW4x Profile Backed-up Successfully to Downloads"
:: End
"%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\IW4x Profile Backup.bat"
====== Settings ======
* https://github.com/ineedbots/iw4_bot_warfare#dvars
* https://github.com/ineedbots/iw4_bot_warfare/issues/118
MKDIR "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\players"
===== Client =====
"%SystemRoot%\System32\notepad.exe" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\players\iw4x_custom.cfg"
// General
seta net_noipx "1"
seta sv_lanOnly "1"
seta cl_packetdup "0"
seta g_log "NUL"
seta com_maxfps "0"
seta ui_nativeCursor "1"
seta r_preloadShaders "1"
seta cl_autoRecord "0"
seta cl_voice "0"
// Graphics
seta r_useD3D9Ex "0"
seta r_fullscreen "1"
seta r_noborder "0"
seta r_vsync "0"
seta r_mode "640x480"
seta r_aspectRatio "standard"
seta r_texFilterAnisoMax "16"
seta r_texFilterAnisoMin "16"
// Player
seta name "Espionage724"
seta clanName "RoE"
seta cl_anonymous "1"
seta cl_notifyFriendState "0"
bind MOUSE3 "+melee"
bind MWHEELDOWN "weapnext"
// Bot Warfare
seta bots_main_menu "0"
seta bots_manage_fill "10"
seta bots_main_chat "0"
seta bots_skill "5"
// End
===== Server =====
* https://github.com/iw4x/iw4-server-configs
"%SystemRoot%\System32\notepad.exe" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\players\iw4x_localhost.cfg"
// Server
set sv_hostname "IW4x (localhost)"
set sv_motd "Welcome to your localhost server!"
set net_port "28960"
set g_password ""
set sv_securityLevel "22"
set sv_randomMapRotation "1"
// General
set net_noipx "1"
set sv_lanOnly "1"
set g_antilag "0"
set cl_packetdup "0"
set com_maxfps "0"
set g_log "NUL"
set cl_voice "0"
// TDM
set g_gametype "war"
set sv_maprotation "gametype war map mp_afghan gametype war map mp_boneyard gametype war map mp_brecourt gametype war map mp_checkpoint gametype war map mp_derail gametype war map mp_estate gametype war map mp_favela gametype war map mp_highrise gametype war map mp_invasion gametype war map mp_nightshift gametype war map mp_quarry gametype war map mp_rundown gametype war map mp_rust gametype war map mp_subbase gametype war map mp_terminal gametype war map mp_underpass"
// FFA
//set g_gametype "dm"
//set sv_maprotation "gametype dm map mp_afghan gametype dm map mp_boneyard gametype dm map mp_brecourt gametype dm map mp_checkpoint gametype dm map mp_derail gametype dm map mp_estate gametype dm map mp_favela gametype dm map mp_highrise gametype dm map mp_invasion gametype dm map mp_nightshift gametype dm map mp_quarry gametype dm map mp_rundown gametype dm map mp_rust gametype dm map mp_subbase gametype dm map mp_terminal gametype dm map mp_underpass"
// Bot Warfare
set bots_main_firstIsHost "1"
set bots_main_waitForHostTime "0"
set bots_manage_fill "17"
set bots_main_menu "0"
set bots_main_chat "0"
set bots_skill "5"
// End
====== Launcher Shortcuts ======
===== Desktop =====
==== IW4x ====
"%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x.exe" +exec "iw4x_custom.cfg" +set "r_fullscreen 1" +set "g_antilag 0"
IW4x
==== Server Start ====
"%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\iw4x-localhost-server-start.bat"
IW4x Server
===== Start Menu =====
MKDIR "%AppData%\Microsoft\Windows\Start Menu\Programs\IW4x" & "%SystemRoot%\explorer.exe" "%AppData%\Microsoft\Windows\Start Menu\Programs\IW4x"
==== IW4x ====
"%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x.exe" +exec "iw4x_custom.cfg" +set "r_fullscreen 1" +set "g_antilag 0"
IW4x
=== Windowed ===
"%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\iw4x.exe" +exec "iw4x_custom.cfg" +set "r_fullscreen 0" +set "g_antilag 0"
IW4x (window)
==== Server Start ====
"%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\iw4x-localhost-server-start.bat"
Server Start (localhost)
==== IW4x Client Update ====
"%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\IW4x Client Updater.bat"
IW4x Client Update
==== IW4x Rawfiles Update ====
"%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\IW4x Rawfiles Updater.bat"
IW4x Rawfiles Update
==== Bot Warfare Update ====
"%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\Bot Warfare Updater.bat"
Bot Warfare Update
==== Profile Backup ====
"%ProgramFiles%\Steam\scripts\Call of Duty Modern Warfare 2 (10180)\IW4x Profile Backup.bat"
Profile Back-up
==== Profile Folder ====
MKDIR "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\players"
"%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\players"
Profile Folder
==== Install Notes ====
"https://wiki.realmofespionage.xyz/games:windows:cod_mw2_2009_iw4x_steamcmd"
Install Notes
====== Quick Commands ======
===== Save Restore =====
* ''players\iw4x.stat''
MKDIR "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\players" & "%SystemRoot%\explorer.exe" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\players"
===== Main Config =====
"%SystemRoot%\System32\notepad.exe" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2\players\iw4x_config.cfg"
===== Root Folder =====
"%SystemRoot%\explorer.exe" "%ProgramFiles%\Steam\steamapps\common\Call of Duty Modern Warfare 2"