Jim...I have attached my launch batch file here. I have tried to comment enough to explain what is going on.
It will help to decipher the code to understand that I run three different environments:
Build - for installation, customization, debugging and testing of ALL DLC. No route bundling here, and this mode is ALWAYS offline from Steam.
Operations - Build content that has been verified is "published here" using SyncbackSE and where route bundling takes place as well. This is for operating the game with known working content.
OEM - Clean, pristine version of Steam DLC only. I never really run here, but keep a clean version so that I know what, if any, updates occur from Steam.
Other things going on besides bundling:
1) I set screen size outside the game, so that I don't get caught on full screen with buggy DLC causing a game freeze. Especially important when testing in Build mode.
2) I also force steam to to give me to option dialogue of going online or not. The code comments should provide greater detail on how to do this. I never want a steam update into my Build folders, and this is my way of ensuring that never happens.
Jeff
Ok, site won't let me upload a cmd, or bat. Posting the code here instead:
:: ****Terminate any instance of Steam still running****
taskkill /IM steamService.exe /F
taskkill /IM steam.exe /F
:: ****Remove existing symbolic links from Railworks installation in preparation to replace****
rmdir "S:\TS2020 OEM\steamapps\common\RailWorks\Content"
rmdir "S:\TS2020 OEM\steamapps\common\RailWorks\Assets"
rmdir "S:\TS2020 OEM\steamapps\common\RailWorks\Source"
rmdir "S:\TS2020 OEM\steamapps\common\RailWorks\Manuals"
:: ****Remove environment flag from desktop in preparation to reset****
if exist "C:\Users\####\Desktop\Scripts (--^ Operations)\" rmdir "C:\Users\mtbea\Desktop\Scripts (--^ Operations)\"
if exist "C:\Users\####\Desktop\Scripts (--^ OEM)\" rmdir "C:\Users\mtbea\Desktop\Scripts (--^ OEM)\"
if exist "C:\Users\####\Desktop\Scripts (--^ Build)\" rmdir "C:\Users\mtbea\Desktop\Scripts (--^ Build)\"
if exist "C:\Users\####\Desktop\Scripts (--^ Packaging)\" rmdir "C:\Users\mtbea\Desktop\Scripts (--^ Packaging)\"
echo off
CLS
:: ****Select run environment where Build is for offline installation, customization, testing only****
:: ****Publish from Build to Operations is for running TS#### in earnest online****
:: ****OEM is clean install of Steam DLC, only run here under special circumstances****
ECHO Select Run Environment
ECHO 1.Build
ECHO 2.Operations
ECHO 3.OEM
CHOICE /C 123 /M "Enter your choice:"
IF ERRORLEVEL 3 GOTO OEM
IF ERRORLEVEL 2 GOTO Operations
IF ERRORLEVEL 1 GOTO Build
:Build
:: ****Build env chosen, Set symbolic links in Railworks installation to Build Folders****
mklink /D "S:\TS2020 OEM\steamapps\common\RailWorks\Content" "S:\Build Materiel\Content"
mklink /D "S:\TS2020 OEM\steamapps\common\RailWorks\Assets" "S:\Build Materiel\Assets\"
mklink /D "S:\TS2020 OEM\steamapps\common\RailWorks\Source" "S:\Build Materiel\Source\"
mklink /D "S:\TS2020 OEM\steamapps\common\RailWorks\Manuals" "S:\Build Materiel\Manuals\"
:: ****Remove player profile hard link in preparation to replace to point selection below****
del "S:\Build Materiel\Content\PlayerProfiles.bin"
:: ****Set Build flag on desktop****
mklink /D "C:\Users\####\Desktop\Scripts (--^ Build)" "V:\The Roundhouse\Scripts\"
echo off
CLS
:: ****Choose screen size dialogue****
ECHO Select Screen Size
ECHO 1.Windowed 1600 x 900 (16:9)
ECHO 2.Windowed 1680 x 1050 (16:10)
ECHO 3.Windowed 1920 x 1080 (16:9)
ECHO 4.Windowed 2048 x 1152 (16:9)
ECHO 5.Full Screen
CHOICE /C 12345 /M "Enter your choice:"
:: Note - list ERRORLEVELS in decreasing order
IF ERRORLEVEL 5 GOTO FullScreen
IF ERRORLEVEL 4 GOTO W2048
IF ERRORLEVEL 3 GOTO W1920
IF ERRORLEVEL 2 GOTO W1680
IF ERRORLEVEL 1 GOTO W1600
:: ****Set hardlinks to point to proper player profile based on screen size selection above****
:W1600
mklink /H "S:\Build Materiel\Content\PlayerProfiles.bin" "S:\Build Materiel\Content\PlayerProfiles1600x900.bin"
GOTO NextBd
:W1680
mklink /H "S:\Build Materiel\Content\PlayerProfiles.bin" "S:\Build Materiel\Content\PlayerProfiles1680x1050.bin"
GOTO NextBd
:W1920
mklink /H "S:\Build Materiel\Content\PlayerProfiles.bin" "S:\Build Materiel\Content\PlayerProfiles1920x1080.bin"
GOTO NextBd
:W2048
mklink /H "S:\Build Materiel\Content\PlayerProfiles.bin" "S:\Build Materiel\Content\PlayerProfiles2048x1152.bin"
GOTO NextBd
:FullScreen
mklink /H "S:\Build Materiel\Content\PlayerProfiles.bin" "S:\Build Materiel\Content\PlayerProfilesFullScreen.bin"
GOTO NextBd
:NextBd
Timeout 1
GOTO Launch
:Operations
:: ****Build env chosen, set symbolic links in Railworks installation to Operations Folders****
mklink /D "S:\TS2020 OEM\steamapps\common\RailWorks\Content" "S:\Operations Materiel\Content\"
mklink /D "S:\TS2020 OEM\steamapps\common\RailWorks\Assets" "S:\Operations Materiel\Assets\"
mklink /D "S:\TS2020 OEM\steamapps\common\RailWorks\Source" "S:\Operations Materiel\Source\"
mklink /D "S:\TS2020 OEM\steamapps\common\RailWorks\Manuals" "S:\Operations Materiel\Manuals\"
:: ****Remove Route link in Operations foolder in prep to be replaced re selection below****
rmdir "S:\Operations Materiel\Content\Routes"
:: ****Remove player profile hard link in preparation to replace to point selection below****
del "S:\Operations Materiel\Content\PlayerProfiles.bin"
:: ****Set Operations Flag on desktop****
mklink /D "C:\Users\####\Desktop\Scripts (--^ Operations)" "V:\The Roundhouse\Scripts\"
echo off
CLS
:: ****Choose screen size dialogue****
ECHO Select Screen Size
ECHO 1.Windowed 1600 x 900 (16:9)
ECHO 2.Windowed 1680 x 1050 (16:10)
ECHO 3.Windowed 1920 x 1080 (16:9)
ECHO 4.Windowed 2048 x 1152 (16:9)
ECHO 5.Full Screen
CHOICE /C 12345 /M "Enter your choice:"
:: Note - list ERRORLEVELS in decreasing order
IF ERRORLEVEL 5 GOTO FullScreen
IF ERRORLEVEL 4 GOTO W2048
IF ERRORLEVEL 3 GOTO W1920
IF ERRORLEVEL 2 GOTO W1680
IF ERRORLEVEL 1 GOTO W1600
:: ****Set hardlinks to point to proper player profile based on screen size selection above****
:W1600
mklink /H "S:\Operations Materiel\Content\PlayerProfiles.bin" "S:\Operations Materiel\Content\PlayerProfiles1600x900.bin"
GOTO NextBd
:W1680
mklink /H "S:\Operations Materiel\Content\PlayerProfiles.bin" "S:\Operations Materiel\Content\PlayerProfiles1680x1050.bin"
GOTO NextOp1
:W1920
mklink /H "S:\Operations Materiel\Content\PlayerProfiles.bin" "S:\Operations Materiel\Content\PlayerProfiles1920x1080.bin"
GOTO NextOp1
:W2048
mklink /H "S:\Operations Materiel\Content\PlayerProfiles.bin" "S:\Operations Materiel\Content\PlayerProfiles2048x1152.bin"
GOTO NextOp1
:FullScreen
mklink /H "S:\Operations Materiel\Content\PlayerProfiles.bin" "S:\Operations Materiel\Content\PlayerProfilesFullScreen.bin"
GOTO NextOp1
:NextOp1
echo off
CLS
:: ****Select Route Bundle Dialogue****
ECHO Select Operations Route Bundle
ECHO 1.Early Steam (Prior to 1900)
ECHO 2.Late Steam (1900 - 1940)
ECHO 3.Golden Age (1940 - 1970)
ECHO 4.Mature Diesel (1970 - 1995)
ECHO 5.Contemporary Diesel (1995 to Present)
CHOICE /C 12345 /M "Enter your choice:"
:: Note - list ERRORLEVELS in decreasing order
IF ERRORLEVEL 5 GOTO ContDiesel
IF ERRORLEVEL 4 GOTO MatureDiesel
IF ERRORLEVEL 3 GOTO GoldenAge
IF ERRORLEVEL 2 GOTO LateSteam
IF ERRORLEVEL 1 GOTO EarlySteam
:: ****Set symbolic link "Routes" to point to chosen Route bundle folder****
:EarlySteam
mklink /D "S:\Operations Materiel\Content\Routes" "S:\Operations Materiel\Content\EarlySteam"
GOTO NextOp
:LateSteam
mklink /D "S:\Operations Materiel\Content\Routes" "S:\Operations Materiel\Content\LateSteam"
GOTO NextOp
:GoldenAge
mklink /D "S:\Operations Materiel\Content\Routes" "S:\Operations Materiel\Content\GoldenAge"
GOTO NextOp
:MatureDiesel
mklink /D "S:\Operations Materiel\Content\Routes" "S:\Operations Materiel\Content\MatureDiesel"
GOTO NextOp
:ContDiesel
mklink /D "S:\Operations Materiel\Content\Routes" "S:\Operations Materiel\Content\ContDiesel"
GOTO NextOp
:NextOp
Timeout 1
GOTO Launch
:OEM
:: ****OEM environment chosen, set symbolic links in Railworks install to OEM content folders****
mklink /D "S:\TS2020 OEM\steamapps\common\RailWorks\Content" "S:\OEM Materiel\Content\"
mklink /D "S:\TS2020 OEM\steamapps\common\RailWorks\Assets" "S:\OEM Materiel\Assets\"
mklink /D "S:\TS2020 OEM\steamapps\common\RailWorks\Source" "S:\OEM Materiel\Source\"
mklink /D "S:\TS2020 OEM\steamapps\common\RailWorks\Manuals" "S:\OEM Materiel\Manuals\"
:: ****Set OEM Flag on desktop****
mklink /D "C:\Users\####\Desktop\Scripts (--^ OEM)" "V:\The Roundhouse\Scripts\"
GOTO Launch
:: ****Almost ready to launch. to ensure Steam provides offline option dialogue at startup,****
:: ****set Steam\config\loginusers.vdf options to offline and remove ALL users from edit capabilities****
:: **** for this file by right click file properties-security-users****
:Launch
:: *****Ready to launch. Start steam in silent mode****
Start "Steam" "C:\Program Files (x86)\Steam\Steam.exe" -silent /B
start
steam://rungameid/24010