@echo off fltmc >nul 2>&1 && ( echo has admin permissions ) || ( echo has NOT admin permissions goto quitscript_keepalive ) REM *************************************************************** REM *** Starbound REM *************************************************************** call :link_steam "\Starbound\storage\player" "starbound-player-FU" call :link_steam "\Starbound\storage\universe" "starbound-universe-FU" REM *************************************************************** REM *** Avorion REM *************************************************************** call :link_appdata "Avorion\galaxies" "avorion-galaxies" call :link_appdata "Avorion\ships" "avorion-ships" REM *************************************************************** REM *** Empyrion REM *************************************************************** call :link_steam "Empyrion - Galactic Survival\Saves\Games" "empyrion-worlds" call :link_steam "Empyrion - Galactic Survival\Saves\Blueprints" "empyrion-blueprints" REM *************************************************************** REM *** Minecraft REM *************************************************************** call :link_appdata ".minecraft" "minecraft" REM *************************************************************** REM *** World of Warcraft REM *************************************************************** call :link_games "World of Warcraft\_retail_\Interface\AddOns" "wow-addons" REM *************************************************************** REM *** Kerbal Space Program REM *************************************************************** call :link_steam_sublinks "Kerbal Space Program\GameData" "ksp-addons" REM call :link_steam_sublinks "Kerbal Space Program\saves" "ksp-saves" REM *************************************************************** REM *** Subnautica REM *************************************************************** call :link_steam_sublinks "Subnautica\SNAppData\SavedGames" "subnautica" REM *************************************************************** REM *** The Sims 3 REM *************************************************************** call :link_user "Documents\Electronic Arts\The Sims 3\Library" "thesims3-library" call :link_user "Documents\Electronic Arts\The Sims 3\Saves" "thesims3-saves" call :link_user "Documents\Electronic Arts\The Sims 3\Collections" "thesims3-collections" call :link_user "Documents\Electronic Arts\The Sims 3\CurrentGame.sims3" "thesims3-currentgame" REM *************************************************************** REM *** Stationeers REM *************************************************************** call :link_user "Documents\My Games\Stationeers" "stationeers" REM *************************************************************** REM *** Astroneer REM *************************************************************** call :link_user "AppData/Local/Astro/Saved/SaveGames" "astroneer" REM *************************************************************** REM *** No Mans Sky REM *************************************************************** call :link_appdata "HelloGames/NMS" "nms" REM *************************************************************** REM *** Sailwind REM *************************************************************** call :link_locallow "Raw Lion Workshop\Sailwind" "sailwind" REM *************************************************************** REM *** Baldur's Gate 3 REM *************************************************************** call :link_local "Larian Studios\Baldur's Gate 3\PlayerProfiles\Public\Savegames\Story" "bg3" GOTO quitscript_final :link_steam set GAME=%1 set GAME=%GAME:"=% set CLOUD=%2 set CLOUD=%CLOUD:"=% dir "%STEAMAPP_C%\%GAME%*" | find "" || ( ren "%STEAMAPP_C%\%GAME%" %CLOUD%-nclocal ) rmdir "%STEAMAPP_C%\%GAME%" mklink /D "%STEAMAPP_C%\%GAME%" "%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%" dir "%STEAMAPP_D%\%GAME%*" | find "" || ( ren "%STEAMAPP_D%\%GAME%" %CLOUD%-nclocal ) rmdir "%STEAMAPP_D%\%GAME%" mklink /D "%STEAMAPP_D%\%GAME%" "%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%" exit /b :link_games set GAME=%1 set GAME=%GAME:"=% set CLOUD=%2 set CLOUD=%CLOUD:"=% dir "C:\Games_SSD\%GAME%*" | find "" || ( ren "C:\Games_SSD\%GAME%" %CLOUD%-nclocal ) rmdir "C:\Games_SSD\\%GAME%" mklink /D "C:\Games_SSD\%GAME%" "%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%" dir "D:\Games\%GAME%*" | find "" || ( ren "D:\Games\%GAME%" %CLOUD%-nclocal ) rmdir "D:\Games\%GAME%" mklink /D "D:\Games\%GAME%" "%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%" exit /b :link_appdata set GAME=%1 set GAME=%GAME:"=% set CLOUD=%2 set CLOUD=%CLOUD:"=% dir "%APPDATA%\%GAME%*" | find "" || ( ren "%APPDATA%\%GAME%" %CLOUD%-nclocal ) rmdir "%APPDATA%\%GAME%" mklink /D "%APPDATA%\%GAME%" "%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%" exit /b :link_user set GAME=%1 set GAME=%GAME:"=% set CLOUD=%2 set CLOUD=%CLOUD:"=% dir "%USERPROFILE%\%GAME%*" | find "" || ( ren "%USERPROFILE%\%GAME%" %CLOUD%-nclocal ) rmdir "%USERPROFILE%\%GAME%" mklink /D "%USERPROFILE%\%GAME%" "%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%" exit /b :link_locallow set GAME=%1 set GAME=%GAME:"=% set CLOUD=%2 set CLOUD=%CLOUD:"=% dir "%USERPROFILE%\AppData\LocalLow\%GAME%*" | find "" || ( ren "%USERPROFILE%\AppData\LocalLow\%GAME%" %CLOUD%-nclocal ) rmdir "%USERPROFILE%\AppData\LocalLow\%GAME%" mklink /D "%USERPROFILE%\AppData\LocalLow\%GAME%" "%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%" exit /b :link_local set GAME=%1 set GAME=%GAME:"=% set CLOUD=%2 set CLOUD=%CLOUD:"=% dir "%USERPROFILE%\AppData\Local\%GAME%*" | find "" || ( ren "%USERPROFILE%\AppData\Local\%GAME%" %CLOUD%-nclocal ) rmdir "%USERPROFILE%\AppData\Local\%GAME%" mklink /D "%USERPROFILE%\AppData\Local\%GAME%" "%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%" exit /b :link_steam_sublinks set GAME=%1 set GAME=%GAME:"=% set CLOUD=%2 set CLOUD=%CLOUD:"=% REM For directories we use mklink to create a hard link REM Iterate through Directories on C for /D %%s in ("%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%\"*) do ( dir "%STEAMAPP_C%\%GAME%\%%~nxs*" | find "" || ( ren "%STEAMAPP_C%\%GAME%\%%~nxs" %%~nxs-nclocal ) rmdir "%STEAMAPP_C%\%GAME%\%%~nxs" mklink /D "%STEAMAPP_C%\%GAME%\%%~nxs" "%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%\%%~nxs" ) REM Iterate through Directories on D for /D %%s in ("%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%\"*) do ( dir "%STEAMAPP_D%\%GAME%\%%~nxs*" | find "" || ( ren "%STEAMAPP_D%\%GAME%\%%~nxs" %%~nxs-nclocal ) rmdir "%STEAMAPP_D%\%GAME%\%%~nxs" mklink /D "%STEAMAPP_D%\%GAME%\%%~nxs" "%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%\%%~nxs" ) REM For files we just copy them REM Iterate through Files on C for %%s in ("%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%\"*) do ( dir "%STEAMAPP_C%\%GAME%\%%~nxs" | find "" || ( ren "%STEAMAPP_C%\%GAME%\%%~nxs" %%~nxs-nclocal ) copy /y "%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%\%%~nxs" "%STEAMAPP_C%\%GAME%\%%~nxs" ) REM Iterate through Files on D for %%s in ("%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%\"*) do ( dir "%STEAMAPP_C%\%GAME%\%%~nxs" | find "" || ( ren "%STEAMAPP_D%\%GAME%\%%~nxs" %%~nxs-nclocal ) copy /y "%USERPROFILE%\Nextcloud\hardlinks\%CLOUD%\%%~nxs" "%STEAMAPP_D%\%GAME%\%%~nxs" ) exit /b REM *************************************************************** REM *** END OF SCRIPT REM *************************************************************** goto quitscript_final :quitscript_keepalive pause>nul GOTO quitscript_keepalive :quitscript_final pause