Skip to content
This repository has been archived by the owner on Dec 26, 2018. It is now read-only.
/ csgo-csmd Public archive
forked from Nisodemus/csgo-csmd

DEPRECATED CS:GO Community Server Materials Downloader (issue was fixed by valve, so no more need for this tool!)

License

Notifications You must be signed in to change notification settings

M-Reimer/csgo-csmd

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CS:GO Community Server Materials Downloader

CSMD downloads community server's files based on a console log of file requests. It is created for Linux, but can be used on macOS or Windows if needed.

Rationale

When one chooses a community server in a server list, the client basically executes connect <ip:port>, thus establishing communication and requesting any additional files that are missing from the client. For some unknown reason, a reason only Valve employee can know, Linux client refuses to download any content from FastDL type of servers. It has been like that for a very long time and the problem has been reported to Valve Sep 23, 2014. Since the issue remained unsolved, I decided to create at least some workaround - this script.

Installation

The script requires Python 3.

Since the script must not be run as root (as it will lock the downloaded files under root), execute this in a terminal exactly as written out as a regular user (i.e. not root)(this assumes sudo is configured correctly):

sudo curl -o /usr/local/bin/csgo-csmd https://raw.githubusercontent.com/M-Reimer/csgo-csmd/master/csgo-csmd
sudo chmod +x /usr/local/bin/csgo-csmd

Now configure your "Launch Options" for CS:GO to contain -condebug and -conclearlog

TIP: If you want to download less bloat from the community servers, you might want to use cl_downloadfilter option in your autoexec.cfg. You can set it to "all", "none" or "nosounds" in order to not filter out any files, filter out all files and filter out sound files respectively. Example: cl_downloadfilter "nosounds".

Usage

  1. Find a community server that your client refuses to connect to ("Downloading map 0 % / 0 bytes").
  2. Open CS:GO console (press ~ A.K.A. tilde, one has to have -console in the game launch options or con_enable "1" in autoexec.cfg).
  3. Type disconnect and press Enter.
  4. Open a terminal (the one with a shell session) and run csgo-csmd.
  5. Open CS:GO console again and type retry.
  6. Have fun!

Command-line arguments

usage: csgo-csmd [-h] [--config-path CONFIG_PATH] [--csgo-path CSGO_PATH]

optional arguments:
  -h, --help            show this help message and exit
  --config-path CONFIG_PATH
                        Path to CSMD config (default:
                        /home/$USER/.config/csmd/csmd.conf)
  --csgo-path CSGO_PATH
                        Path to CS:GO home folder (default:
                        /home/$USER/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo)

Configuration

CSMD provides a config in INI format (spaces between words are allowed). The default one is created upon the first invocation:

[path]
csgo_path = /home/$USER/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo
  • csgo_path can be anything --csgo-path accepts (see above)

Bugs and feature requests

Open new tickets through GitHub Issues. Please take time to describe the problem and copy the logs the script produces.

Caveats

  • CSMD doesn't know how to decompress anything except bzip2
  • CSMD doesn't talk HTTPS (only HTTP)

If any of the above makes your life worse, open a new issue.

License

You are allowed to share and modify all files in this repository under BSD 3-clause license. See LICENSE for more details.

About

DEPRECATED CS:GO Community Server Materials Downloader (issue was fixed by valve, so no more need for this tool!)

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%