Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @ECHO OFF
- TITLE NEO Scavenger Savegame Backup Tool - NEOsave Steam in C:\Program Files (x86)\
- SETLOCAL enabledelayedexpansion
- REM Find and set .bat file launch folder.
- SET launchdir=%~dp0
- REM Find NEOScavenger.exe file in C:\Program Files (x86)\Steam folder.
- FOR /r "%ProgramFiles(x86)%\steam" %%a IN (*) DO IF /I "%%~nxa"=="NEOScavenger.exe" SET neoexepath=%%~dpa
- REM Set variables for savegame folder creation.
- SET /a saveslots=0
- SET /a saveslotcntr=1
- cls
- REM Look for NEOScavenger.exe and create NEOsave folder in .bat file folder.
- IF EXIST "%neoexepath%\NEOScavenger.exe" (
- IF NOT EXIST "NEOsave" (
- mkdir NEOsave
- mkdir NEOsave\quicksave
- (
- ECHO [AVAILABLE SAVEGAME SLOTS]
- ECHO savegameslots=0
- ) > NEOsave\settings.ini
- ECHO.
- ECHO NEOsave folder created in: %launchdir%NEOsave
- ECHO NEOsave quick save folder created in: %launchdir%NEOsave\quicksave
- ECHO NEOsave settings.ini created in: %launchdir%NEOsave\settings.ini
- ECHO.
- PAUSE
- )
- ) ELSE (
- ECHO.
- ECHO ERROR: NEOScavenger.exe not found.
- ECHO.
- PAUSE
- GOTO exitNEOsave
- )
- REM Menu and save backup management.
- :menu
- cls
- SET selection=
- REM Check number of savegame folders and update settings.ini if necessary.
- SET foldercount=
- FOR /d %%a IN ("%launchdir%NEOsave\"*) DO SET /a foldercount+=1
- SET /a foldercount-=1
- FOR /f "delims== tokens=1,2" %%i IN ('findstr "savegameslots" NEOsave\settings.ini') DO @SET savegameslots=%%j
- IF NOT !savegameslots!==!foldercount! (
- (
- ECHO [AVAILABLE SAVEGAME SLOTS]
- ECHO savegameslots=!foldercount!
- ) > NEOsave\settings.ini
- )
- REM Build main menu.
- ECHO ==================================
- ECHO NEO Scavenger SAVEGAME BACKUP:
- ECHO ==================================
- ECHO.
- ECHO 1: START NEO Scavenger
- ECHO.
- ECHO 2: QUICK SAVE
- ECHO 3: QUICK RESTORE
- IF EXIST "NEOsave\quicksave\savesettings.ini" (
- FOR /f "delims== tokens=1,2" %%i IN ('findstr "saverestoredon" NEOsave\quicksave\savesettings.ini') DO @SET savedate=%%j
- ECHO [Last save: !savedate!]
- ) ELSE (
- ECHO [No quick save data]
- )
- ECHO.
- ECHO 4: SAVE savegame
- ECHO 5: RESTORE savegame
- ECHO.
- ECHO 6: DELETE savegame
- ECHO.
- ECHO 0: EXIT
- ECHO.
- ECHO.
- SET /p selection=SELECT:
- ECHO.
- IF "%selection%"=="1" GOTO startNEO
- IF "%selection%"=="2" GOTO quickSaveNEO
- IF "%selection%"=="3" GOTO quickLoadNEO
- IF "%selection%"=="4" GOTO saveNEOmenu
- IF "%selection%"=="5" GOTO loadNEOmenu
- IF "%selection%"=="6" GOTO deleteNEOmenu
- IF "%selection%"=="0" (
- GOTO exitNEOsave
- ) ELSE (
- cls
- ECHO.
- ECHO ERROR: Invalid selection.
- ECHO.
- PAUSE
- GOTO menu
- )
- :startNEO
- REM Start game.
- IF NOT EXIST "%neoexepath%\NEOScavenger.exe" (
- cls
- ECHO.
- ECHO ERROR: NEOScavenger.exe not found.
- ECHO.
- PAUSE
- GOTO menu
- ) ELSE (
- "%neoexepath%\NEOScavenger.exe"
- GOTO menu
- )
- :quickSaveNEO
- REM Find NEOScavenger Flash Player folder and savegames.
- SET p=
- FOR /r "%userprofile%\AppData\Roaming\Macromedia\Flash Player\#SharedObjects" %%a IN (*) DO IF "%%~nxa"=="nsTest.sol" SET p=%%~dpa
- IF DEFINED p (
- ECHO Savegame found in: %p%
- ) ELSE (
- ECHO ERROR: No NEO Scavenger savegame found.
- ECHO.
- PAUSE
- GOTO menu
- )
- REM Copy savegame from NEOScavenger Flash Player folder to backup folder.
- XCOPY "%p%*.sol" "%launchdir%NEOsave\quicksave\" /y
- SET dateandtime=%DATE%, %TIME:~0,2%:%TIME:~3,2%:%TIME:~6,2%
- (
- ECHO [DATE OF SAVEGAME]
- ECHO saverestoredon=%dateandtime%
- ) > "%launchdir%NEOsave\quicksave\savesettings.ini"
- ECHO.
- ECHO Savegame copied to: %launchdir%NEOsave\quicksave\
- ECHO.
- PAUSE
- GOTO menu
- :quickLoadNEO
- REM Look for backed up files in NEOsave.
- IF NOT EXIST "%launchdir%NEOsave\quicksave\nsTest.sol" (
- ECHO ERROR: No NEO Scavenger savegame found in: %launchdir%NEOsave\quicksave\
- ECHO.
- PAUSE
- GOTO menu
- )
- REM Find NEOScavenger Flash Player folder.
- SET p=
- FOR /r "%userprofile%\AppData\Roaming\Macromedia\Flash Player\#SharedObjects" %%a IN (*) DO IF "%%~nxa"=="nsTest.sol" SET p=%%~dpa
- IF DEFINED p (
- ECHO NEO Scavenger savegame folder found in: %p%
- ) ELSE (
- ECHO ERROR: No NEO Scavenger savegame folder found.
- ECHO SOLUTION: Please restart NEO Scavenger, exit the game and run this batch file again.
- ECHO.
- PAUSE
- GOTO menu
- )
- REM Copy savegame from backup folder to NEOScavenger Flash Player savegame folder.
- XCOPY "%launchdir%NEOsave\quicksave\*.sol" "%p%" /y
- ECHO.
- ECHO NEO Scavenger savegame restored.
- ECHO.
- PAUSE
- GOTO menu
- :saveNEOmenu
- cls
- SET selectionsave=
- SET newsaveslotcreated=
- SET confirmoverwrite=
- REM Read settings.ini file.
- FOR /f "delims== tokens=1,2" %%i IN ('findstr "savegameslots" NEOsave\settings.ini') DO @SET savegameslots=%%j
- ECHO ==================================
- ECHO NEO Scavenger SAVEGAME BACKUP:
- ECHO ==================================
- ECHO.
- ECHO SAVE savegame
- ECHO.
- ECHO 0: BACK
- ECHO.
- ECHO n: NEW SAVE
- ECHO.
- REM Build menu entries.
- SET /a savegameslots=savegameslots+1
- SET /a savemenucounter=1
- :buildsavemenu
- IF NOT "%savemenucounter%"=="%savegameslots%" (
- IF EXIST "%launchdir%NEOsave\save%savemenucounter%\savesettings.ini" (
- FOR /f "delims== tokens=1,2" %%i IN ('findstr "saverestoredon" NEOsave\save%savemenucounter%\savesettings.ini') DO @SET savedate=%%j
- FOR /f "delims== tokens=1,2" %%i IN ('findstr "savename" NEOsave\save%savemenucounter%\savesettings.ini') DO @SET menusavename=%%j
- ECHO %savemenucounter%: !menusavename!_[!savedate!]
- ) ELSE (
- ECHO %savemenucounter%: Save Data for save%savemenucounter% not found.
- )
- SET /a savemenucounter=savemenucounter+1
- GOTO buildsavemenu
- )
- ECHO.
- SET /a savegameslots=savegameslots-1
- SET /p selectionsave=SELECT:
- ECHO.
- IF "%selectionsave%" LSS "1" GOTO menu
- IF "%selectionsave%"=="n" GOTO createnewsave
- IF "%selectionsave%" LEQ "%savegameslots%" (
- GOTO overwritecheck
- ) ELSE (
- ECHO ERROR: No save location available for this selection.
- ECHO.
- PAUSE
- GOTO saveNEOmenu
- )
- :loadNEOmenu
- cls
- SET selectionload=
- REM Read settings.ini file.
- FOR /f "delims== tokens=1,2" %%i IN ('findstr "savegameslots" NEOsave\settings.ini') DO @SET savegameslots=%%j
- ECHO ==================================
- ECHO NEO Scavenger SAVEGAME BACKUP:
- ECHO ==================================
- ECHO.
- ECHO RESTORE savegame
- ECHO.
- ECHO 0: BACK
- ECHO.
- REM Build menu entries.
- SET /a savegameslots=savegameslots+1
- SET /a loadmenucounter=1
- :buildloadmenu
- IF NOT "%loadmenucounter%"=="%savegameslots%" (
- IF EXIST "%launchdir%NEOsave\save%loadmenucounter%\savesettings.ini" (
- FOR /f "delims== tokens=1,2" %%i IN ('findstr "saverestoredon" NEOsave\save%loadmenucounter%\savesettings.ini') DO @SET savedate=%%j
- FOR /f "delims== tokens=1,2" %%i IN ('findstr "savename" NEOsave\save%loadmenucounter%\savesettings.ini') DO @SET menusavename=%%j
- ECHO %loadmenucounter%: !menusavename!_[!savedate!]
- ) ELSE (
- ECHO %loadmenucounter%: Save Data for save%loadmenucounter% not found.
- )
- SET /a loadmenucounter=loadmenucounter+1
- GOTO buildloadmenu
- )
- ECHO.
- SET /a savegameslots=savegameslots-1
- SET /p selectionload=SELECT:
- ECHO.
- IF "%selectionload%" LSS "1" GOTO menu
- IF "%selectionload%" LEQ "%savegameslots%" (
- GOTO loadNEO
- ) ELSE (
- ECHO ERROR: No save location available for this selection.
- ECHO.
- PAUSE
- GOTO loadNEOmenu
- )
- :deleteNEOmenu
- cls
- SET selectiondelete=
- SET foldercount=
- REM Read settings.ini file.
- FOR /f "delims== tokens=1,2" %%i IN ('findstr "savegameslots" NEOsave\settings.ini') DO @SET savegameslots=%%j
- ECHO ==================================
- ECHO NEO Scavenger SAVEGAME BACKUP:
- ECHO ==================================
- ECHO.
- ECHO DELETE savegame
- ECHO.
- ECHO 0: BACK
- ECHO.
- REM Build menu entries.
- SET /a savegameslots=savegameslots+1
- SET /a deletemenucounter=1
- :builddeletemenu
- IF NOT "%deletemenucounter%"=="%savegameslots%" (
- IF EXIST "%launchdir%NEOsave\save%deletemenucounter%\savesettings.ini" (
- FOR /f "delims== tokens=1,2" %%i IN ('findstr "saverestoredon" NEOsave\save%deletemenucounter%\savesettings.ini') DO @SET savedate=%%j
- FOR /f "delims== tokens=1,2" %%i IN ('findstr "savename" NEOsave\save%deletemenucounter%\savesettings.ini') DO @SET menusavename=%%j
- ECHO %deletemenucounter%: !menusavename!_[!savedate!]
- ) ELSE (
- ECHO %deletemenucounter%: Save Data for save%deletemenucounter% not found.
- )
- SET /a deletemenucounter=deletemenucounter+1
- GOTO builddeletemenu
- )
- ECHO.
- SET /a savegameslots=savegameslots-1
- SET /p selectiondelete=SELECT:
- ECHO.
- IF "%selectiondelete%" LSS "1" GOTO menu
- IF "%selectiondelete%" LEQ "%savegameslots%" (
- GOTO deleteNEO
- ) ELSE (
- ECHO ERROR: No save location available for this selection.
- ECHO.
- PAUSE
- GOTO deleteNEOmenu
- )
- :createnewsave
- SET newsaveslotcreated=
- REM Find NEOScavenger Flash Player folder and savegames.
- SET p=
- FOR /r "%userprofile%\AppData\Roaming\Macromedia\Flash Player\#SharedObjects" %%a IN (*) DO IF "%%~nxa"=="nsTest.sol" SET p=%%~dpa
- IF NOT DEFINED p (
- ECHO ERROR: No NEO Scavenger savegame found.
- ECHO.
- PAUSE
- GOTO menu
- )
- REM Create savegame folder and settings.ini file.
- SET /a lookforsavecounter=1
- :lookforsaves
- IF EXIST "%launchdir%NEOsave\save%lookforsavecounter%" (
- SET /a lookforsavecounter=lookforsavecounter+1
- GOTO lookforsaves
- ) ELSE (
- mkdir "%launchdir%NEOsave\save%lookforsavecounter%"
- SET /a selectionsave=%lookforsavecounter%
- SET /a foldercount=0
- FOR /d %%a IN ("%launchdir%NEOsave\"*) DO SET /a foldercount+=1
- SET /a foldercount=foldercount-1
- (
- ECHO [AVAILABLE SAVEGAME SLOTS]
- ECHO savegameslots=!foldercount!
- ) > NEOsave\settings.ini
- )
- SET /a newsaveslotcreated=1
- GOTO overwritecheck
- :overwritecheck
- SET confirmoverwrite=
- REM Check for existing save and ask for overwrite confirmation.
- IF NOT "!newsaveslotcreated!"=="1" (
- SET /p confirmoverwrite=Are you sure you want to OVERWRITE save!selectionsave!? y/n:
- IF "!confirmoverwrite!"=="n" (
- GOTO saveNEOmenu
- )
- IF "!confirmoverwrite!"=="y" (
- GOTO saveNEO
- ) ELSE (
- ECHO.
- ECHO ERROR: No valid selection.
- ECHO.
- GOTO overwritecheck
- )
- ) ELSE (
- GOTO saveNEO
- )
- :saveNEO
- REM Find NEOScavenger Flash Player folder and savegame.
- SET p=
- FOR /r "%userprofile%\AppData\Roaming\Macromedia\Flash Player\#SharedObjects" %%a IN (*) DO IF "%%~nxa"=="nsTest.sol" SET p=%%~dpa
- IF DEFINED p (
- ECHO.
- ECHO Savegame found in: %p%
- ECHO.
- ) ELSE (
- ECHO ERROR: No NEO Scavenger savegame found.
- ECHO.
- PAUSE
- GOTO menu
- )
- SET /p nameofsave=Enter savegame name:
- REM Copy savegame from NEOScavenger Flash Player folder to backup folder.
- XCOPY "%p%*.sol" "%launchdir%NEOsave\save!selectionsave!\" /y
- SET dateandtime=%DATE%, %TIME:~0,2%:%TIME:~3,2%:%TIME:~6,2%
- (
- ECHO [SAVEGAME NAME]
- ECHO savename=%nameofsave%
- ECHO.
- ECHO [DATE OF SAVEGAME]
- ECHO saverestoredon=%dateandtime%
- ) > "%launchdir%NEOsave\save%selectionsave%\savesettings.ini"
- ECHO.
- ECHO Savegame copied to: %launchdir%NEOsave\save%selectionsave%\
- ECHO.
- PAUSE
- GOTO saveNEOmenu
- :loadNEO
- REM Look for backed up files in NEOsave.
- IF NOT EXIST "%launchdir%NEOsave\save%selectionload%\nsTest.sol" (
- ECHO ERROR: No NEO Scavenger savegame found in: %launchdir%NEOsave\save%selectionload%\
- ECHO.
- PAUSE
- GOTO loadNEOmenu
- )
- REM Find NEOScavenger Flash Player folder.
- SET p=
- FOR /r "%userprofile%\AppData\Roaming\Macromedia\Flash Player\#SharedObjects" %%a IN (*) DO IF "%%~nxa"=="nsTest.sol" SET p=%%~dpa
- IF DEFINED p (
- ECHO NEO Scavenger savegame folder found in: %p%
- ) ELSE (
- ECHO ERROR: No NEO Scavenger savegame folder found.
- ECHO SOLUTION: Please restart NEO Scavenger, exit the game and run this batch file again.
- ECHO.
- PAUSE
- GOTO menu
- )
- REM Copy savegame from backup folder to NEOScavenger Flash Player savegame folder.
- XCOPY "%launchdir%NEOsave\save%selectionload%\*.sol" "%p%" /y
- ECHO.
- ECHO NEO Scavenger savegame restored.
- ECHO.
- PAUSE
- GOTO loadNEOmenu
- :deleteNEO
- SET foldercount=
- SET confirmdelete=
- IF EXIST "NEOsave\save%selectiondelete%\" (
- ECHO Savegame found in: %launchdir%NEOsave\save%selectiondelete%\
- ECHO.
- SET /p confirmdelete=Are you sure you want to DELETE save%selectiondelete%? y/n:
- IF "!confirmdelete!"=="y" (
- del NEOsave\save!selectiondelete! /q
- rmdir NEOsave\save!selectiondelete! /q
- REM Rename remaining folders.
- SET /a selectdelrename=selectiondelete+1
- SET /a selectdelrenamedown=selectdelrename-1
- :renamesavefolders
- IF EXIST "NEOsave\save!selectdelrename!" (
- ren NEOsave\save!selectdelrename! save!selectdelrenamedown!
- SET /a selectdelrename=selectdelrename+1
- SET /a selectdelrenamedown=selectdelrenamedown+1
- GOTO renamesavefolders
- )
- REM Update settings.ini file.
- FOR /d %%a IN ("%launchdir%NEOsave\"*) DO SET /a foldercount+=1
- SET /a foldercount-=1
- SET /a !foldercount!=!foldercount!
- (
- ECHO [AVAILABLE SAVEGAME SLOTS]
- ECHO savegameslots=!foldercount!
- ) > NEOsave\settings.ini
- ECHO.
- ECHO Savegame save%selectiondelete% in %launchdir%NEOsave\save%selectiondelete%\ deleted.
- ECHO.
- GOTO deleteNEOmenu
- )
- IF "!confirmdelete!"=="n" (
- GOTO deleteNEOmenu
- ) ELSE (
- ECHO.
- ECHO ERROR: No valid selection.
- ECHO.
- GOTO deleteNEO
- )
- ) ELSE (
- ECHO.
- ECHO ERROR: No savegame found in: %launchdir%NEOsave\save%selectiondelete%\
- ECHO.
- PAUSE
- GOTO deleteNEOmenu
- )
- :exitNEOsave
- EXIT
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement