FsModSync is a powershell script that keeps your installed mods in sync with those on a multiplayer server.
My brother and I play FS17 together on a multiplayer server and I tend to install more mods on it than he wants to mess with. To make his life a bit easier I wrote a little powershell script that logs into the server and downloads all the active mods. It then extracts them and copies them to the game’s mods folder.
It does not mess with any other mods that you might have in your mods directory. It will overwrite mods on the client that have the same name as on the server, however.
In the script, if you leave the variables $strUserName and $strPassword as empty strings, the script will attempt an unauthenticated download. This should work so long as the server has “Public Mod Download” enabled on the settings page. Otherwise you will need to supply credentials for an account with mod download permission.
The script has the ability to leverage the server’s web API to get information about the installed mods as well as their hashes. Using this info the script will download just the mods that you are missing or mods that you already have, but have a different hash on the server.
If the variable $strWebApiCode has a value (like “80d680aac1ab86fd43b4273909b41ba0”) the script will attempt to get info from the web API and will then only download what you need. If $strWebApiCode is an empty string it will get the archive of all active mods.
The web API code is located on the Settings -> MISCELLANEOUS tab of the admin web page. You will have to get this value from the server admin, or by logging in with an admin level account.