# Switch to development branch with SteamCMD ?

## Recommended Posts

Is there any way to tell SteamCMD to download the development branch version of ArmA 3?

##### Share on other sites

I can get the stable branch fine but can't seem to figure out how to get the dev build, anyone managed to get it yet?

##### Share on other sites

No idea re: SteamCMD, but normally through the Steam client you right-click Arma 3 Alpha, click Properties, click the Betas tab, and choose Development build from the drop-down menu before clicking OK.

##### Share on other sites

app_update 107410 -beta development

should work

##### Share on other sites

@Master85, thanks but unfortunately didn't work as posted, it was similar to what I had tried since there is no separate appid for the development branch that I could find.

However I have eventually got it working with a slight tweak.

To run the development branch through SteamCMD use the following:

steamcmd +login <username> <password> +force_install_dir c:\path\to\install\folder\ +app_update "107410 -beta development" validate +quit

##### Share on other sites

I saw there was some talk about this on dedicated server chat group so i decided to post it here:

this is a script to update multiple servers on the same pc

Download SteamCMD, unzip it and then make a file called "paths.txt", in it place something to the following, which is the location of your arma 3 servers, no spaces

d:\arma3server1
e:\arma3server2
f:\arma3server3


This will download and install arma 3, 3 times because im too lazy to rewrite it to download it once and then copy it 2 times, some one can modify the for loop and change it to a xcopy command then repost it here, *hint hint*.

if you only have 1 server or only want to run one server then only put 1 line in the paths.txt

   @ECHO OFF
SET ARMABRANCH=107410 -beta development
FOR /f %%X IN (paths.txt) DO (
steamcmd.exe +login %STEAMUN% %STEAMPW% +force_install_dir "%%X" +app_update "%ARMABRANCH%" validate +quit
)
pause


I don't use fire daemon so i will be unable to help you with that in detail, however this is what i could gather

You will need to add the commands to start/stop the service while the script is running, those commands should be the following:

%FIREDAEMON% --stop <service>
%FIREDAEMON% --start <service>


Be Advised that you need to run fire daemon with elevated privileges in order to use it to its full capability, you should read its manual and help pages for further information located here:

http://www.firedaemon.com/manual/

http://www.firedaemon.com/manual/index.html?WindowsVista

Alternative version 1: Single server instance

@ECHO OFF
SET STEAMPW=steampwhere
SET ARMASVRPATH=d:\Arma3svr
SET ARMABRANCH=107410 -beta development
steamcmd.exe +login %STEAMUN% %STEAMPW% +force_install_dir "%ARMASVRPATH%" +app_update "%ARMABRANCH%" validate +quit


Alternative version 2(untested): with fire daemon CLI commands:

@ECHO OFF
SET STEAMPW=steampwhere
SET ARMASVRPATH=d:\Arma3svr
SET ARMABRANCH=107410 -beta development
SET FDSERVICE=mya3server
%FIREDAEMON% --stop %FDSERVICE%
steamcmd.exe +login %STEAMUN% %STEAMPW% +force_install_dir "%ARMASVRPATH%" +app_update "%ARMABRANCH%" validate +quit
%FIREDAEMON% --start %FDSERVICE%


If this does not work then you might need to run it like so(untested):

@ECHO OFF
SET STEAMPW=steampwhere
SET ARMASVRPATH=d:\Arma3svr
SET ARMABRANCH=107410 -beta development
SET FDSERVICE=mya3server
cmd.exe /c %FIREDAEMON% --stop %FDSERVICE%
steamcmd.exe +login %STEAMUN% %STEAMPW% +force_install_dir "%ARMASVRPATH%" +app_update "%ARMABRANCH%" validate +quit
cmd.exe /c %FIREDAEMON% --start %FDSERVICE%


If for some reason there isn't enough time between the shutting the service down and the install then try the following(untested):

@ECHO OFF
SET STEAMPW=steampwhere
SET ARMASVRPATH=d:\Arma3svr
SET ARMABRANCH=107410 -beta development
SET FDSERVICE=mya3server
cmd.exe /c %FIREDAEMON% --stop %FDSERVICE%
ping -n 30 127.0.0.1
steamcmd.exe +login %STEAMUN% %STEAMPW% +force_install_dir "%ARMASVRPATH%" +app_update "%ARMABRANCH%" validate +quit
cmd.exe /c %FIREDAEMON% --start %FDSERVICE%


"FDSERVICE=mya3server" is specific to what ever you named your arma 3 service when creating it with fire daemon.

I have not tested with Fire Daemon because i do not use it, please let me know if any thing needs to be edited or removed.

Tip: multiple physical servers can be updated so long as you have admin access to the server and its admin share is enabled. However i would recommend writing your own script that pushes out the files to your other servers from a central distribution point. ie the ("\\servername\c\$\path")

Tip2: use psexec alternatively to include username/passwords when running admin commands, even if its on the same machine to bypass uac prompts.

Edited by xyberviri
fixed typo in code

##### Share on other sites

oh duh my bad, dang those late nights, my coffee still needs to kick in. thanks much Kju

##### Share on other sites

anyone have a problem with the command "107410 -beta development" for dev build? SteamCMD only download the regular build :(

##### Share on other sites
anyone have a problem with the command "107410 -beta development" for dev build? SteamCMD only download the regular build :(

if you are applying this line directly and manually into the steamcmd console, omit the quotation marks, eg

107410 -beta development validate

##### Share on other sites

Just finished running it on my machine without issues, also note that after getting annoyed at having to download a shed load of data every time when swapping between the stable and development builds thought it about time to find a solution. Using a variation on the solution that I figured out for the servers.

Stable build:

Leave STEAM as normal to download and run the stable build.

Development build

Using a separate install for the Dev build which is best not located in your STEAM folders.

1. Download SteamCMD and extract somewhere e.g.
C:\SteamCMD

2. Create a new folder for the dev build e.g.
C:\ArmA3Dev

3. Create and then run a bat file to install/update the Dev build e.g. Update.bat with the contents
C:\SteamCMD\steamcmd +login <username> <password> +force_install_dir c:\ArmA3Dev\ +app_update "107410 -beta development" validate +quit

You may need to enter a Steam guard code that will be emailed to you when you run this file for the first time.

4. Create a shortcut to this new arma3.exe and play

Edited by BearBison

##### Share on other sites

today with the new update "0.59", steamCMD download the devbuild. settings are the same as last time!

@ECHO OFF

SET STEAMUN=name

SET ARMABRANCH=107410 -beta development

FOR /f %%X IN (paths.txt) DO (

steamcmd.exe +login %STEAMUN% %STEAMPW% +force_install_dir "%%X" +app_update "%ARMABRANCH%" validate +quit

)

pause

or

steamcmd +login name password +force_install_dir C:\servers\arma3server1\ +app_update "107410 -beta development" validate +quit

when i change my batch file now to "+app_update "107410" validate", steamcmd dont download the regular build!

whats wrong with steamcmd or me :(

##### Share on other sites

Is there a way to add this to my startup.bat file, so that it checks for updates each time the server starts?

##### Share on other sites

seems the steam update is broken, all you can currently get is the Stable 0.58 version regardless of the branch version you are trying to download

##### Share on other sites

Still works with a bit of modifications to the old method I posted. Of course would be so much easier if there was a seperate SteamAppID for the Dev version.

Stable build:

Leave STEAM as normal to download and run the stable build.

Development build

Using a separate install for the Dev build.

1. Download SteamCMD and extract somewhere e.g.
C:\SteamCMD

2. Create a new folder for the dev build e.g.
C:\Steam\steamapps\common\ArmA3Dev

3. Create and then run a bat file to install/update the Dev build e.g. Update.bat with the contents
C:\SteamCMD\steamcmd +login <username> <password> +force_install_dir C:\Steam\steamapps\common\ArmA3Dev\ +app_update "107410 -beta development" validate +quit

You may need to enter a Steam guard code that will be emailed to you when you run this file for the first time.

Swapping between builds:

To swap between the builds

1. Disable the auto update option for the game, in Steam library right-click the game > properties > updates tab and change the option to Do not automatically update this game
2. Rename the stable folder to Arma 3 old and rename the DEV folder to Arma 3
3. Launch and play as normal but in the DEV version

To swap back just reverse the last few steps :)

Also had an issue on a previous update for one of my clients, on further investigation managed to fix it by going into the folder with a HEX name and editing the file appmanifest_107410.acf section "UserConfig" to read

    "UserConfig"
{
"betakey"        "development"
}


It was missing the critical line for some reason

Edited by BearBison

##### Share on other sites

It's:

"+app_update 107410 -beta development"

Not:

+app_update "107410 -beta development"

and:

"+app_update 107410 -beta"

for stable branch.

At least for me that works a lot better, and never fails to change between stable and development

##### Share on other sites
It's:

"+app_update 107410 -beta development"

Not:

+app_update "107410 -beta development"

wrapping the quotation marks around the entire +app_update.......

eg

"+app_update 107410 -beta"

"+app_update 107410 -beta development"

seems to be far more resilient. Thx for that find mate

##### Share on other sites

I am still a little confused here...

I am running the .61 on my client. I have the dev build selected on my server. I have created the 3 virtual servers and their own paths.

I see my server version is .59.

I have added "+app_update 107410 -beta development" to the steam_appid.txt file in each server instance to try to get them to run the dev build. It does not seem to bump them.

What am I missing here?

After troubleshooting, I found that my "core" install is running .61. What files exactly do I need to copy to update the virtuals to the right version?

Edited by fasterthanlight

##### Share on other sites

And "+app_update 107410 -beta development" its something you add to the commandline not steam_appid.txt O_o.

##### Share on other sites

After troubleshooting, I found that my "core" install is running .61. What files exactly do I need to copy to update the virtuals to the right version?

Copy all of them and overwrite any existing

The core files and folders you need to copy over are

DirectX\

Dll\

Dta\

ijl15.dll

msvcr100.dll

PhysX3_x86.dll

PhysX3Common_x86.dll

PhysX3Cooking_x86.dll

PhysX3Gpu_x86.dll

Steam.dll

steam_api.dll

steamclient.dll

tier0_s.dll

unicows.dll

vstdlib_s.dll

arma3server.exe

steam_appid.txt

If your various servers are running different

-profiles

MpMissions

Configs

Bandwidth settings

Then do not copy the following folders or files

Users

Keys\

MPMissions\

******.cfg

anything else,

log files,

****.rpt,

any additional ***.txt other than steam_appid.txt'=

3rd party mod folders etc

do not need copying

Edited by Terox

##### Share on other sites

Each Arma 3 branch is fully independent, therefore, each requires the entire content, otherwise, there would be a high risk that it simply doesn't work, so, yes, it's normal that it redownloads the entire game.

Regarding the command line, it's:

steamcmd +login <username> <password> +force_install_dir c:\path\to\install\folder\ +app_update 107410 -beta legacy -betapassword Arma3Legacy146 validate +logout +quit