How to set Fast downloads in a server
Custom content is a vital part of the mod. The community appreciate it, but sometimes, the size of the files to download is too high that makes the downloads slow, forcing the players to wait long times.
Although a possible solution could be download first the files before play the mod and join a server, the best without any doubts is making the downloads fasts (known as FastDL).
Contents
Prerequisites
- Your server.
- The files that you want make download in the server.
- A web server where place the files.
- bzip2: bzip2 is a free compressor compatible with Source. It generates a compressed file with the .bz2 format. The client only has to download the .bz2 file to use the downloaded stuff because the Source engine automatically extracts it. The files that supports being compressed are the following:
.html .htm .jpg/jpeg .gif .swf .png .bsp .bz2 .wav .mp3 .vmt .vtf .vtx .mdl .vvd .phy .lua .txt
Download: http://digistar.com/bzip2/v100/bzip2-100-x86-win32.exe
- FileZilla (or similar programs): http://filezilla-project.org/
- Notepad++ (Optional): You can use this or any other hex editor. http://notepad-plus.sourceforge.net/uk/site.htm
Preparing The files
After know what are the files that the players will download, copy them from your server and paste it in a new folder created in your desktop (or in another place). Doesnt matter the name that you use it.
Once you have the files in the folder, drag and drop the files (maximum 5 files, their size depends too) at a time onto the .exe file and the program will convert them. A MS-DOS window will open, a signal that the program is working, and the window will close when it ends. If it does not work try dragging less files. It usually depends on the file size as it can only compress so much each time.
When you finished doing the operation, your files must be have in .bz2 format.
Uploading the files to the webserver
Use a file transfer program like FileZilla to upload the files to your webhost. Remember that you must create and colocate the folders in order (the first folder will be always obsidian, and inside of it, the rest of the folders). Upload and put the .bz2 files in their folders (materials, models, maps....).
Setting the FastDL in your server
Go to the server.cfg file of your server and add the following:
sv_downloadurl "http://www.yourwebhost.com/obsidian/" (i guess, maybe you have to put before "obsidian" the name of your folder if isnt a private host) netmaxfilesize "60" <-This is the maximum file size in Mb that the server will make download. If you have bigger files, raise the amount. sv_allowdownload "1" sv_allowupload "1"
Fixing problems
Both files are downloaded
Maybe you have been noticed that when you download the files, you are actually downloading both files (the normal and the .bz2). To fix it, go to your webhost and change the permissions of the files to the following:
Owner Permissions: Read, write Group Permissions: Read, write Public Permissions: Read, write The text value must be -rw-rw-rw-
Missing map/ERROR models, missing textures...
- Check if the uploaded files are the same that you have in your server (wrong name, different version...).
- Check if you put the files in the correct folders in your webspace.
- (Only if your server is in the webserver) Check if you have both files (normal and .bz2 files).
- Try applying the fix for "Both files are downloaded".
- If the rest fails:
Go to your server and enter in the folder called "DownloadLists". Open the file with Notepad++. You will see the following (for example):
“maps\MapName.bsp" “maps\MapName.nav"
As you see, the url redirects the downloads to your server, but the files are in the webhost, so you must change it for the following:
"http://www.yourhost.com/obsidian/maps/MapName.bsp" “http://www.yourhost.com/obsidian/maps/MapName.nav”
It should be work now.