User Tools

Site Tools


games:linux:dota_2_pre-crownfall_steamcmd

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

games:linux:dota_2_pre-crownfall_steamcmd [2026/01/06 02:41] – created Sean Rhonegames:linux:dota_2_pre-crownfall_steamcmd [2026/01/07 02:26] (current) – removed Sean Rhone
Line 1: Line 1:
-====== Information ====== 
- 
-  * Dota 2 ((https://www.dota2.com/home)) ((https://store.steampowered.com/app/570/Dota_2/)) 
-  * SteamCMD ((https://developer.valvesoftware.com/wiki/SteamCMD)) 
-  * Goldberg Steam Emulator ((https://mr_goldberg.gitlab.io/goldberg_emulator/)) 
-  * https://blog.realmofespionage.xyz/?p=139 
- 
-  * These notes allow downloading Dota 2 using SteamCMD and running it in offline mode 
- 
-  * :!: 2026/01/06: WIP ([[games:windows:dota_2_pre-crownfall_steamcmd|Windows notes]]) 
- 
-===== Media ===== 
- 
-  * [[https://www.youtube.com/watch?v=6rElYyThb4U|Quick-swap Bot Scripts]] 
- 
-===== Prerequisites ===== 
- 
-  * [[linux:distros:ubuntu|Ubuntu]] 
- 
-====== Quick Update ====== 
- 
-  * Dota 2 (570) + Sniper Runtime (1628350) + OHA bot scripts (Git) 
- 
-  cd ~/'Steam/steamcmd' && ~/'Steam/steamcmd/steamcmd.sh' +login 'Espionage724' +app_update '570' +quit && ~/'Steam/steamcmd/steamcmd.sh' +login 'Espionage724' +app_update '1628350' +quit && rm -Rf ~/'Steam/steamapps/common/dota 2 beta/game/dota/scripts/vscripts/bots' ~/'Steam/steamapps/common/dota 2 beta/game/dota/scripts/vscripts/OpenHyperAI' && git clone --branch 'main' --depth '1' --recurse-submodules 'https://github.com/forest0xia/dota2bot-OpenHyperAI.git' ~/'Steam/steamapps/common/dota 2 beta/game/dota/scripts/vscripts/OpenHyperAI' && mv ~/'Steam/steamapps/common/dota 2 beta/game/dota/scripts/vscripts/OpenHyperAI/bots' ~/'Steam/steamapps/common/dota 2 beta/game/dota/scripts/vscripts' && sync && cd ~ 
- 
-====== Dependencies ====== 
- 
-**** 
- 
-  sudo apt install git lib32gcc-s1 
- 
-====== SteamCMD ====== 
- 
-===== Install ===== 
- 
-  * https://developer.valvesoftware.com/wiki/SteamCMD#Manually 
- 
-  wget -O '/tmp/steamcmd_linux.tar.gz' 'https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz' && mkdir -p ~/'Steam/steamcmd' && cd ~/'Steam/steamcmd' && tar -xvzf '/tmp/steamcmd_linux.tar.gz' && cd ~ && sync 
- 
-===== Login ===== 
- 
-**** 
- 
-  cd ~/'Steam/steamcmd' && ~/'Steam/steamcmd/steamcmd.sh' +login 'Espionage724' +quit && sync && cd ~ 
- 
-====== steamclient.so ====== 
- 
-  * ''steamclient.so'' is required and can be copied from SteamCMD, a Steam install ((Linux 64-bit)), or provided by a Steam emulator 
-  * Goldberg Emu notes are provided below 
- 
-===== Goldberg Emulator ===== 
- 
-  * https://mr_goldberg.gitlab.io/goldberg_emulator/ 
- 
-==== Install ==== 
- 
-  * :!: This relies on [[https://gitlab.com/Mr_Goldberg/goldberg_emulator/-/jobs/4247811310/artifacts/download|this URL]] which looks fragile, but comes from the above download page 
- 
-  rm -Rf '/tmp/Goldberg_Lan_Steam_Emu_master.zip' '/tmp/Goldberg_Lan_Steam_Emu' && wget -O '/tmp/Goldberg_Lan_Steam_Emu_master.zip' 'https://gitlab.com/Mr_Goldberg/goldberg_emulator/-/jobs/4247811310/artifacts/download' && unzip '/tmp/Goldberg_Lan_Steam_Emu_master.zip' -d '/tmp/Goldberg_Lan_Steam_Emu' && mkdir -p ~/'.steam/sdk64/steam_settings' && mv '/tmp/Goldberg_Lan_Steam_Emu/linux/x86_64/steamclient.so' ~/'.steam/sdk64' && ls ~/'.steam/sdk64/steamclient.so' && rm -Rf '/tmp/Goldberg_Lan_Steam_Emu_master.zip' '/tmp/Goldberg_Lan_Steam_Emu' && sync 
- 
-==== Settings ==== 
- 
-  * [[https://gitlab.com/Mr_Goldberg/goldberg_emulator/-/blob/master/Readme_release.txt|Readme_release.txt]] 
-  * ''offline'', ''disable_overlay'', ''disable_networking'', ''force_account_name'' 
- 
-  touch ~/'.steam/sdk64/steam_settings/offline.txt' ~/'.steam/sdk64/steam_settings/disable_overlay.txt' ~/'.steam/sdk64/steam_settings/disable_networking.txt' && echo 'Espionage724' | tee ~/'.steam/sdk64/steam_settings/force_account_name.txt' 
- 
-====== Dota 2 ====== 
- 
-===== Restore Backup ===== 
- 
-**** 
- 
-  mkdir -p ~/'Steam/steamapps' && mv ~/'Downloads/Dota 2/'* ~/'Steam/steamapps' && sync 
- 
-===== Install/Update ===== 
- 
-  * :!: This and ''validate'' may need re-ran multiple times if game data is restored from backup ((''Error! App '570' state is 0xE after update job.'')) 
-  * This fresh-installs Dota 2 also 
- 
-  cd ~/'Steam/steamcmd' && ~/'Steam/steamcmd/steamcmd.sh' +login 'Espionage724' +app_update '570' +quit && sync && cd ~ 
- 
-==== Check/Repair Data ==== 
- 
-**** 
- 
-  cd ~/'Steam/steamcmd' && ~/'Steam/steamcmd/steamcmd.sh' +login 'Espionage724' +app_update '570' validate +quit && sync && cd ~ 
- 
-==== Runtime ==== 
- 
-  * 2025/12/23: ''Steam Linux Runtime 3.0 (sniper)'' (''1628350'') 
-  * :?: TODO: Better way to check, update, and future-update (([[https://gitlab.steamos.cloud/steamrt/steam-runtime-tools/-/blob/main/docs/container-runtime.md|container-runtime.md]] implies ''medic'' is next; [[https://steamdb.info/search/?a=all&q=Steam+Linux+Runtime|SteamDB]])) 
- 
-  cd ~/'Steam/steamcmd' && ~/'Steam/steamcmd/steamcmd.sh' +login 'Espionage724' +app_update '1628350' +quit && sync && cd ~ 
- 
-  ls --directory ~/'Steam/steamapps/common/SteamLinuxRuntime'* 
- 
-  cat ~/'Steam/steamapps/'*'.acf' | grep 'Runtime' 
- 
-  cat ~/'Steam/steamapps/'*'.acf' | grep -e 'sniper' -e '1628350' 
- 
-  gio open ~/'Steam/steamapps/common/' 
- 
-==== Permissions ==== 
- 
-**** 
- 
-  chmod -v +x ~/'Steam/steamapps/common/dota 2 beta/game/dota.sh' ~/'Steam/steamapps/common/dota 2 beta/game/bin/linuxsteamrt64/dota2' 
- 
-===== In-game Settings ===== 
- 
-  * This resets in-game Settings and starts Dota 2 
- 
-  ~/'Steam/steamapps/common/SteamLinuxRuntime_sniper/run' -- ~/'Steam/steamapps/common/dota 2 beta/game/dota.sh' -autoconfig -vulkan_disable_steam_shader_cache -novid -nodev -nojoy -console 
- 
-==== Settings Save ==== 
- 
-  - Configure in-game Settings 
-  - Open Dota 2's in-game Console with the ''\'' key 
-  - Type ''host_writeconfig'' 
- 
-  host_writeconfig 
- 
-  * :!: Errors with saving or finding a file path may require a Steam emulator if using an official ''steamclient.so'' 
- 
-===== Launch ===== 
- 
-  * Main Menu 
- 
-  ~/'Steam/steamapps/common/SteamLinuxRuntime_sniper/run' -- ~/'Steam/steamapps/common/dota 2 beta/game/dota.sh' -vulkan_disable_steam_shader_cache -novid -nodev -nojoy -console 
- 
-==== Bot Match ==== 
- 
-  * Immediately launches into an Unfair All-pick Bot Match 
- 
-  * :!: ''+sv_cheats 1'' allows controlling bots and [[https://dota2.fandom.com/wiki/Cheats|cheats]], but may cause click targeting to not work as-expected ((instead of clicking-off a selected enemy hero and automatically moving your hero, it'll keep the enemy hero selected and **not** move your hero)) 
- 
-  ~/'Steam/steamapps/common/SteamLinuxRuntime_sniper/run' -- ~/'Steam/steamapps/common/dota 2 beta/game/dota.sh' -vulkan_disable_steam_shader_cache -novid -nodev -nojoy -console  +sv_lan '1' +dota_bot_practice_difficulty '4' +dota_start_ai_game '1' +map 'dota' 
- 
-=== Test === 
- 
-  * ''dota.sh'' mods below //likely// revert with ''validate''; TODO: Update script 
- 
-  ~/'Steam/steamapps/common/SteamLinuxRuntime_sniper/run' --devel --systemd-scope --import-vulkan-layers --remove-game-overlay -- ~/'Steam/steamapps/common/dota 2 beta/game/dota.sh' -vulkan_disable_steam_shader_cache -novid -nodev -nojoy -console +sv_lan '1' +dota_bot_practice_difficulty '4' +dota_start_ai_game '1' +map 'dota' 
- 
-  * Wayland 
- 
-  sed -i 's/SDL_VIDEO_DRIVER=x11/SDL_VIDEO_DRIVER=wayland/g' ~/'Steam/steamapps/common/dota 2 beta/game/dota.sh' 
- 
-  * X11 
- 
-  sed -i 's/SDL_VIDEO_DRIVER=wayland/SDL_VIDEO_DRIVER=x11/g' ~/'Steam/steamapps/common/dota 2 beta/game/dota.sh' 
- 
-  * Check 
- 
-  cat ~/'Steam/steamapps/common/dota 2 beta/game/dota.sh' | grep 'SDL_VIDEO_DRIVER=' 
- 
-====== Bots Scripts ====== 
- 
-  * Bot scripts are automatically loaded and used if present ((apparently relies on a ''Local Dev Script'' feature and the scripts being in a ''bots'' folder at ''dota\scripts\vscripts'')) 
- 
-  gio open ~/'Steam/steamapps/common/dota 2 beta/game/dota/scripts/vscripts' 
- 
-===== Default Bots ===== 
- 
-  * Removing the ''vscripts/bots'' folder results in using default/built-in bot scripts 
- 
-  rm -Rf ~/'Steam/steamapps/common/dota 2 beta/game/dota/scripts/vscripts/bots' 
- 
-===== Open Hyper AI ===== 
- 
-  * https://github.com/forest0xia/dota2bot-OpenHyperAI/commits/main/ 
- 
-  rm -Rf ~/'Steam/steamapps/common/dota 2 beta/game/dota/scripts/vscripts/bots' ~/'Steam/steamapps/common/dota 2 beta/game/dota/scripts/vscripts/OpenHyperAI' && git clone --branch 'main' --depth '1' --recurse-submodules 'https://github.com/forest0xia/dota2bot-OpenHyperAI.git' ~/'Steam/steamapps/common/dota 2 beta/game/dota/scripts/vscripts/OpenHyperAI' && mv ~/'Steam/steamapps/common/dota 2 beta/game/dota/scripts/vscripts/OpenHyperAI/bots' ~/'Steam/steamapps/common/dota 2 beta/game/dota/scripts/vscripts' && sync 
- 
-====== Desktop Launcher ====== 
- 
-  * TODO: Update scripts 
- 
-  mkdir -p ~/'.local/share/applications/Valve' && nano ~/'.local/share/applications/Valve/Dota 2 - Bots.desktop' && sed -i 's/'CHANGEME'/'$USER'/g' ~/'.local/share/applications/Valve/Dota 2 - Bots.desktop' && update-desktop-database --quiet ~/'.local/share/applications' 
- 
-<code> 
-[Desktop Entry] 
-Name=Dota 2 
-Categories=Game 
-Exec='/bin/bash' -c "~/'Steam/steamapps/common/SteamLinuxRuntime_sniper/run' -- ~/'Steam/steamapps/common/dota 2 beta/game/dota.sh' -vulkan_disable_steam_shader_cache -novid -nodev -nojoy -console +sv_lan '1' +dota_bot_practice_difficulty '4' +dota_start_ai_game '1' +map 'dota'" 
-Type=Application 
-StartupNotify=true 
-Icon=/home/CHANGEME/Steam/steamapps/common/dota 2 beta/game/dota/resource/game-icon.bmp 
- 
-# End</code> 
- 
-====== Troubleshooting ====== 
- 
-  * https://developer.valvesoftware.com/wiki/SteamCMD#Known_Issues 
-  * https://wiki.archlinux.org/title/Steam/Troubleshooting 
- 
-  ldd ~/'Steam/steamcmd/linux32/steamcmd' 
  
/usr/local/www/wiki/data/attic/games/linux/dota_2_pre-crownfall_steamcmd.1767685276.txt.gz · Last modified: by Sean Rhone

Except where otherwise noted, content on this wiki is licensed under the following license: CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki