Advertisement
Guest User

NEOsave C:\Program Files (x86)\steam

a guest
Aug 22nd, 2020
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Batch 13.16 KB | None | 0 0
  1. @ECHO OFF
  2. TITLE NEO Scavenger Savegame Backup Tool - NEOsave Steam in C:\Program Files (x86)\
  3. SETLOCAL enabledelayedexpansion
  4.  
  5. REM Find and set .bat file launch folder.
  6. SET launchdir=%~dp0
  7.  
  8. REM Find NEOScavenger.exe file in C:\Program Files (x86)\Steam folder.
  9. FOR /r "%ProgramFiles(x86)%\steam" %%a IN (*) DO IF /I "%%~nxa"=="NEOScavenger.exe" SET neoexepath=%%~dpa
  10.  
  11. REM Set variables for savegame folder creation.
  12. SET /a saveslots=0
  13. SET /a saveslotcntr=1
  14.  
  15. cls
  16.  
  17. REM Look for NEOScavenger.exe and create NEOsave folder in .bat file folder.
  18. IF EXIST "%neoexepath%\NEOScavenger.exe" (
  19.     IF NOT EXIST "NEOsave" (
  20.         mkdir NEOsave
  21.         mkdir NEOsave\quicksave
  22.         (
  23.             ECHO [AVAILABLE SAVEGAME SLOTS]
  24.             ECHO savegameslots=0
  25.         ) > NEOsave\settings.ini
  26.         ECHO.
  27.         ECHO NEOsave folder created in: %launchdir%NEOsave
  28.         ECHO NEOsave quick save folder created in: %launchdir%NEOsave\quicksave
  29.         ECHO NEOsave settings.ini created in: %launchdir%NEOsave\settings.ini
  30.         ECHO.
  31.         PAUSE
  32.     )
  33. ) ELSE (
  34.     ECHO.
  35.     ECHO ERROR: NEOScavenger.exe not found.
  36.     ECHO.
  37.     PAUSE
  38.     GOTO exitNEOsave
  39. )
  40.  
  41.  
  42.  
  43. REM Menu and save backup management.
  44. :menu
  45. cls
  46. SET selection=
  47. REM Check number of savegame folders and update settings.ini if necessary.
  48. SET foldercount=
  49. FOR /d %%a IN ("%launchdir%NEOsave\"*) DO SET /a foldercount+=1
  50. SET /a foldercount-=1
  51. FOR /f "delims== tokens=1,2" %%i IN ('findstr "savegameslots" NEOsave\settings.ini') DO @SET savegameslots=%%j
  52. IF NOT !savegameslots!==!foldercount! (
  53.     (
  54.         ECHO [AVAILABLE SAVEGAME SLOTS]
  55.         ECHO savegameslots=!foldercount!
  56.     ) > NEOsave\settings.ini
  57. )
  58. REM Build main menu.
  59. ECHO ==================================
  60. ECHO   NEO Scavenger SAVEGAME BACKUP:
  61. ECHO ==================================
  62. ECHO.
  63. ECHO    1: START NEO Scavenger
  64. ECHO.
  65. ECHO    2: QUICK SAVE
  66. ECHO    3: QUICK RESTORE
  67. IF EXIST "NEOsave\quicksave\savesettings.ini" (
  68.     FOR /f "delims== tokens=1,2" %%i IN ('findstr "saverestoredon" NEOsave\quicksave\savesettings.ini') DO @SET savedate=%%j
  69.     ECHO      [Last save: !savedate!]
  70. ) ELSE (
  71.     ECHO      [No quick save data]
  72. )
  73. ECHO.
  74. ECHO    4: SAVE savegame
  75. ECHO    5: RESTORE savegame
  76. ECHO.
  77. ECHO    6: DELETE savegame
  78. ECHO.
  79. ECHO    0: EXIT
  80. ECHO.
  81. ECHO.
  82.  
  83. SET /p selection=SELECT:
  84. ECHO.
  85. IF "%selection%"=="1" GOTO startNEO
  86. IF "%selection%"=="2" GOTO quickSaveNEO
  87. IF "%selection%"=="3" GOTO quickLoadNEO
  88. IF "%selection%"=="4" GOTO saveNEOmenu
  89. IF "%selection%"=="5" GOTO loadNEOmenu
  90. IF "%selection%"=="6" GOTO deleteNEOmenu
  91. IF "%selection%"=="0" (
  92.     GOTO exitNEOsave
  93. ) ELSE (
  94.     cls
  95.     ECHO.
  96.     ECHO ERROR: Invalid selection.
  97.     ECHO.
  98.     PAUSE
  99.     GOTO menu
  100. )
  101.  
  102.  
  103.  
  104. :startNEO
  105. REM Start game.
  106. IF NOT EXIST "%neoexepath%\NEOScavenger.exe" (
  107.     cls
  108.     ECHO.
  109.     ECHO ERROR: NEOScavenger.exe not found.
  110.     ECHO.
  111.     PAUSE
  112.     GOTO menu
  113. ) ELSE (
  114.     "%neoexepath%\NEOScavenger.exe"
  115.     GOTO menu
  116. )
  117.  
  118.  
  119.  
  120. :quickSaveNEO
  121. REM Find NEOScavenger Flash Player folder and savegames.
  122. SET p=
  123. FOR /r "%userprofile%\AppData\Roaming\Macromedia\Flash Player\#SharedObjects" %%a IN (*) DO IF "%%~nxa"=="nsTest.sol" SET p=%%~dpa
  124. IF DEFINED p (
  125.     ECHO Savegame found in: %p%
  126. ) ELSE (
  127.     ECHO ERROR: No NEO Scavenger savegame found.
  128.     ECHO.
  129.     PAUSE
  130.     GOTO menu
  131. )
  132.  
  133. REM Copy savegame from NEOScavenger Flash Player folder to backup folder.
  134. XCOPY "%p%*.sol" "%launchdir%NEOsave\quicksave\" /y
  135. SET dateandtime=%DATE%, %TIME:~0,2%:%TIME:~3,2%:%TIME:~6,2%
  136. (
  137.     ECHO [DATE OF SAVEGAME]
  138.     ECHO saverestoredon=%dateandtime%
  139. ) > "%launchdir%NEOsave\quicksave\savesettings.ini"
  140. ECHO.
  141. ECHO Savegame copied to: %launchdir%NEOsave\quicksave\
  142. ECHO.
  143. PAUSE
  144. GOTO menu
  145.  
  146.  
  147.  
  148. :quickLoadNEO
  149. REM Look for backed up files in NEOsave.
  150. IF NOT EXIST "%launchdir%NEOsave\quicksave\nsTest.sol" (
  151.     ECHO ERROR: No NEO Scavenger savegame found in: %launchdir%NEOsave\quicksave\
  152.     ECHO.
  153.     PAUSE
  154.     GOTO menu
  155. )
  156.  
  157. REM Find NEOScavenger Flash Player folder.
  158. SET p=
  159. FOR /r "%userprofile%\AppData\Roaming\Macromedia\Flash Player\#SharedObjects" %%a IN (*) DO IF "%%~nxa"=="nsTest.sol" SET p=%%~dpa
  160. IF DEFINED p (
  161.     ECHO NEO Scavenger savegame folder found in: %p%
  162. ) ELSE (
  163.     ECHO ERROR: No NEO Scavenger savegame folder found.
  164.     ECHO SOLUTION: Please restart NEO Scavenger, exit the game and run this batch file again.
  165.     ECHO.
  166.     PAUSE
  167.     GOTO menu
  168. )
  169.  
  170. REM Copy savegame from backup folder to NEOScavenger Flash Player savegame folder.
  171. XCOPY "%launchdir%NEOsave\quicksave\*.sol" "%p%" /y
  172. ECHO.
  173. ECHO NEO Scavenger savegame restored.
  174. ECHO.
  175. PAUSE
  176. GOTO menu
  177.  
  178.  
  179.  
  180. :saveNEOmenu
  181. cls
  182. SET selectionsave=
  183. SET newsaveslotcreated=
  184. SET confirmoverwrite=
  185. REM Read settings.ini file.
  186. FOR /f "delims== tokens=1,2" %%i IN ('findstr "savegameslots" NEOsave\settings.ini') DO @SET savegameslots=%%j
  187. ECHO ==================================
  188. ECHO   NEO Scavenger SAVEGAME BACKUP:
  189. ECHO ==================================
  190. ECHO.
  191. ECHO  SAVE savegame
  192. ECHO.
  193. ECHO    0: BACK
  194. ECHO.
  195. ECHO    n: NEW SAVE
  196. ECHO.
  197. REM Build menu entries.
  198. SET /a savegameslots=savegameslots+1
  199. SET /a savemenucounter=1
  200. :buildsavemenu
  201. IF NOT "%savemenucounter%"=="%savegameslots%" (
  202.     IF EXIST "%launchdir%NEOsave\save%savemenucounter%\savesettings.ini" (
  203.         FOR /f "delims== tokens=1,2" %%i IN ('findstr "saverestoredon" NEOsave\save%savemenucounter%\savesettings.ini') DO @SET savedate=%%j
  204.         FOR /f "delims== tokens=1,2" %%i IN ('findstr "savename" NEOsave\save%savemenucounter%\savesettings.ini') DO @SET menusavename=%%j
  205.         ECHO    %savemenucounter%: !menusavename!_[!savedate!]
  206.     ) ELSE (
  207.         ECHO    %savemenucounter%: Save Data for save%savemenucounter% not found.
  208.     )
  209.     SET /a savemenucounter=savemenucounter+1
  210.     GOTO buildsavemenu
  211. )
  212. ECHO.
  213. SET /a savegameslots=savegameslots-1
  214. SET /p selectionsave=SELECT:
  215. ECHO.
  216. IF "%selectionsave%" LSS "1" GOTO menu
  217. IF "%selectionsave%"=="n" GOTO createnewsave
  218. IF "%selectionsave%" LEQ "%savegameslots%" (
  219.     GOTO overwritecheck
  220. ) ELSE (
  221.     ECHO ERROR: No save location available for this selection.
  222.     ECHO.
  223.     PAUSE
  224.     GOTO saveNEOmenu
  225. )
  226.  
  227.  
  228.  
  229. :loadNEOmenu
  230. cls
  231. SET selectionload=
  232. REM Read settings.ini file.
  233. FOR /f "delims== tokens=1,2" %%i IN ('findstr "savegameslots" NEOsave\settings.ini') DO @SET savegameslots=%%j
  234. ECHO ==================================
  235. ECHO   NEO Scavenger SAVEGAME BACKUP:
  236. ECHO ==================================
  237. ECHO.
  238. ECHO  RESTORE savegame
  239. ECHO.
  240. ECHO    0: BACK
  241. ECHO.
  242. REM Build menu entries.
  243. SET /a savegameslots=savegameslots+1
  244. SET /a loadmenucounter=1
  245. :buildloadmenu
  246. IF NOT "%loadmenucounter%"=="%savegameslots%" (
  247.     IF EXIST "%launchdir%NEOsave\save%loadmenucounter%\savesettings.ini" (
  248.         FOR /f "delims== tokens=1,2" %%i IN ('findstr "saverestoredon" NEOsave\save%loadmenucounter%\savesettings.ini') DO @SET savedate=%%j
  249.         FOR /f "delims== tokens=1,2" %%i IN ('findstr "savename" NEOsave\save%loadmenucounter%\savesettings.ini') DO @SET menusavename=%%j
  250.         ECHO    %loadmenucounter%: !menusavename!_[!savedate!]
  251.     ) ELSE (
  252.         ECHO    %loadmenucounter%: Save Data for save%loadmenucounter% not found.
  253.     )
  254.     SET /a loadmenucounter=loadmenucounter+1
  255.     GOTO buildloadmenu
  256. )
  257. ECHO.
  258. SET /a savegameslots=savegameslots-1
  259. SET /p selectionload=SELECT:
  260. ECHO.
  261. IF "%selectionload%" LSS "1" GOTO menu
  262. IF "%selectionload%" LEQ "%savegameslots%" (
  263.     GOTO loadNEO
  264. ) ELSE (
  265.     ECHO ERROR: No save location available for this selection.
  266.     ECHO.
  267.     PAUSE
  268.     GOTO loadNEOmenu
  269. )
  270.  
  271.  
  272.  
  273. :deleteNEOmenu
  274. cls
  275. SET selectiondelete=
  276. SET foldercount=
  277. REM Read settings.ini file.
  278. FOR /f "delims== tokens=1,2" %%i IN ('findstr "savegameslots" NEOsave\settings.ini') DO @SET savegameslots=%%j
  279. ECHO ==================================
  280. ECHO   NEO Scavenger SAVEGAME BACKUP:
  281. ECHO ==================================
  282. ECHO.
  283. ECHO  DELETE savegame
  284. ECHO.
  285. ECHO    0: BACK
  286. ECHO.
  287. REM Build menu entries.
  288. SET /a savegameslots=savegameslots+1
  289. SET /a deletemenucounter=1
  290. :builddeletemenu
  291. IF NOT "%deletemenucounter%"=="%savegameslots%" (
  292.     IF EXIST "%launchdir%NEOsave\save%deletemenucounter%\savesettings.ini" (
  293.         FOR /f "delims== tokens=1,2" %%i IN ('findstr "saverestoredon" NEOsave\save%deletemenucounter%\savesettings.ini') DO @SET savedate=%%j
  294.         FOR /f "delims== tokens=1,2" %%i IN ('findstr "savename" NEOsave\save%deletemenucounter%\savesettings.ini') DO @SET menusavename=%%j
  295.         ECHO    %deletemenucounter%: !menusavename!_[!savedate!]
  296.     ) ELSE (
  297.         ECHO    %deletemenucounter%: Save Data for save%deletemenucounter% not found.
  298.     )
  299.     SET /a deletemenucounter=deletemenucounter+1
  300.     GOTO builddeletemenu
  301. )
  302. ECHO.
  303. SET /a savegameslots=savegameslots-1
  304. SET /p selectiondelete=SELECT:
  305. ECHO.
  306. IF "%selectiondelete%" LSS "1" GOTO menu
  307. IF "%selectiondelete%" LEQ "%savegameslots%" (
  308.     GOTO deleteNEO
  309. ) ELSE (
  310.     ECHO ERROR: No save location available for this selection.
  311.     ECHO.
  312.     PAUSE
  313.     GOTO deleteNEOmenu
  314. )
  315.  
  316.  
  317.  
  318. :createnewsave
  319. SET newsaveslotcreated=
  320. REM Find NEOScavenger Flash Player folder and savegames.
  321. SET p=
  322. FOR /r "%userprofile%\AppData\Roaming\Macromedia\Flash Player\#SharedObjects" %%a IN (*) DO IF "%%~nxa"=="nsTest.sol" SET p=%%~dpa
  323. IF NOT DEFINED p (
  324.     ECHO ERROR: No NEO Scavenger savegame found.
  325.     ECHO.
  326.     PAUSE
  327.     GOTO menu
  328. )
  329. REM Create savegame folder and settings.ini file.
  330. SET /a lookforsavecounter=1
  331. :lookforsaves
  332. IF EXIST "%launchdir%NEOsave\save%lookforsavecounter%" (
  333.     SET /a lookforsavecounter=lookforsavecounter+1
  334.     GOTO lookforsaves
  335. ) ELSE (
  336.     mkdir "%launchdir%NEOsave\save%lookforsavecounter%"
  337.     SET /a selectionsave=%lookforsavecounter%
  338.     SET /a foldercount=0
  339.     FOR /d %%a IN ("%launchdir%NEOsave\"*) DO SET /a foldercount+=1
  340.     SET /a foldercount=foldercount-1
  341.     (
  342.         ECHO [AVAILABLE SAVEGAME SLOTS]
  343.         ECHO savegameslots=!foldercount!
  344.     ) > NEOsave\settings.ini
  345. )
  346. SET /a newsaveslotcreated=1
  347. GOTO overwritecheck
  348.  
  349.  
  350.  
  351. :overwritecheck
  352. SET confirmoverwrite=
  353. REM Check for existing save and ask for overwrite confirmation.
  354. IF NOT "!newsaveslotcreated!"=="1" (
  355.     SET /p confirmoverwrite=Are you sure you want to OVERWRITE save!selectionsave!? y/n:
  356.     IF "!confirmoverwrite!"=="n" (
  357.         GOTO saveNEOmenu
  358.     )
  359.     IF "!confirmoverwrite!"=="y" (
  360.         GOTO saveNEO
  361.     ) ELSE (
  362.         ECHO.
  363.         ECHO ERROR: No valid selection.
  364.         ECHO.
  365.         GOTO overwritecheck
  366.     )
  367. ) ELSE (
  368.     GOTO saveNEO
  369. )
  370.  
  371.  
  372.  
  373. :saveNEO
  374. REM Find NEOScavenger Flash Player folder and savegame.
  375. SET p=
  376. FOR /r "%userprofile%\AppData\Roaming\Macromedia\Flash Player\#SharedObjects" %%a IN (*) DO IF "%%~nxa"=="nsTest.sol" SET p=%%~dpa
  377. IF DEFINED p (
  378.     ECHO.
  379.     ECHO Savegame found in: %p%
  380.     ECHO.
  381. ) ELSE (
  382.     ECHO ERROR: No NEO Scavenger savegame found.
  383.     ECHO.
  384.     PAUSE
  385.     GOTO menu
  386. )
  387. SET /p nameofsave=Enter savegame name:
  388. REM Copy savegame from NEOScavenger Flash Player folder to backup folder.
  389. XCOPY "%p%*.sol" "%launchdir%NEOsave\save!selectionsave!\" /y
  390. SET dateandtime=%DATE%, %TIME:~0,2%:%TIME:~3,2%:%TIME:~6,2%
  391. (
  392.     ECHO [SAVEGAME NAME]
  393.     ECHO savename=%nameofsave%
  394.     ECHO.
  395.     ECHO [DATE OF SAVEGAME]
  396.     ECHO saverestoredon=%dateandtime%
  397. ) > "%launchdir%NEOsave\save%selectionsave%\savesettings.ini"
  398. ECHO.
  399. ECHO Savegame copied to: %launchdir%NEOsave\save%selectionsave%\
  400. ECHO.
  401. PAUSE
  402. GOTO saveNEOmenu
  403.  
  404.  
  405.  
  406. :loadNEO
  407. REM Look for backed up files in NEOsave.
  408. IF NOT EXIST "%launchdir%NEOsave\save%selectionload%\nsTest.sol" (
  409.     ECHO ERROR: No NEO Scavenger savegame found in: %launchdir%NEOsave\save%selectionload%\
  410.     ECHO.
  411.     PAUSE
  412.     GOTO loadNEOmenu
  413. )
  414.  
  415. REM Find NEOScavenger Flash Player folder.
  416. SET p=
  417. FOR /r "%userprofile%\AppData\Roaming\Macromedia\Flash Player\#SharedObjects" %%a IN (*) DO IF "%%~nxa"=="nsTest.sol" SET p=%%~dpa
  418. IF DEFINED p (
  419.     ECHO NEO Scavenger savegame folder found in: %p%
  420. ) ELSE (
  421.     ECHO ERROR: No NEO Scavenger savegame folder found.
  422.     ECHO SOLUTION: Please restart NEO Scavenger, exit the game and run this batch file again.
  423.     ECHO.
  424.     PAUSE
  425.     GOTO menu
  426. )
  427.  
  428. REM Copy savegame from backup folder to NEOScavenger Flash Player savegame folder.
  429. XCOPY "%launchdir%NEOsave\save%selectionload%\*.sol" "%p%" /y
  430. ECHO.
  431. ECHO NEO Scavenger savegame restored.
  432. ECHO.
  433. PAUSE
  434. GOTO loadNEOmenu
  435.  
  436.  
  437.  
  438. :deleteNEO
  439. SET foldercount=
  440. SET confirmdelete=
  441. IF EXIST "NEOsave\save%selectiondelete%\" (
  442.     ECHO Savegame found in: %launchdir%NEOsave\save%selectiondelete%\
  443.     ECHO.
  444.     SET /p confirmdelete=Are you sure you want to DELETE save%selectiondelete%? y/n:
  445.     IF "!confirmdelete!"=="y" (
  446.         del NEOsave\save!selectiondelete! /q
  447.         rmdir NEOsave\save!selectiondelete! /q
  448. REM Rename remaining folders.
  449.         SET /a selectdelrename=selectiondelete+1
  450.         SET /a selectdelrenamedown=selectdelrename-1       
  451.         :renamesavefolders
  452.         IF EXIST "NEOsave\save!selectdelrename!" (
  453.             ren NEOsave\save!selectdelrename! save!selectdelrenamedown!
  454.             SET /a selectdelrename=selectdelrename+1
  455.             SET /a selectdelrenamedown=selectdelrenamedown+1
  456.             GOTO renamesavefolders
  457.         )
  458. REM Update settings.ini file.
  459.         FOR /d %%a IN ("%launchdir%NEOsave\"*) DO SET /a foldercount+=1
  460.         SET /a foldercount-=1
  461.         SET /a !foldercount!=!foldercount!
  462.         (
  463.             ECHO [AVAILABLE SAVEGAME SLOTS]
  464.             ECHO savegameslots=!foldercount!
  465.         ) > NEOsave\settings.ini
  466.         ECHO.
  467.         ECHO Savegame save%selectiondelete% in %launchdir%NEOsave\save%selectiondelete%\ deleted.
  468.         ECHO.
  469.         GOTO deleteNEOmenu
  470.     )
  471.     IF "!confirmdelete!"=="n" (
  472.         GOTO deleteNEOmenu
  473.     ) ELSE (
  474.         ECHO.
  475.         ECHO ERROR: No valid selection.
  476.         ECHO.
  477.         GOTO deleteNEO
  478.     )
  479. ) ELSE (
  480.     ECHO.
  481.     ECHO ERROR: No savegame found in: %launchdir%NEOsave\save%selectiondelete%\
  482.     ECHO.
  483.     PAUSE
  484.     GOTO deleteNEOmenu
  485. )
  486.  
  487.  
  488.  
  489. :exitNEOsave
  490. EXIT
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement