Subversion Repositories vaca_plus

Rev

Rev 52 | Rev 54 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. @echo off
  2. @color 0C
  3. pushd .
  4. chdir /d "%~dp0"
  5.  
  6. :restart
  7. title Duke Caribbean: Life's A Beach Plus Launcher
  8. if "%editor%"=="1" title Duke Caribbean: Life's A Beach Plus Editor Launcher
  9.  
  10. set exedir=%~dp0
  11. set addondir=%~dp0
  12. set addonhrpdir=%~dp0
  13.  
  14. set exename=eduke32
  15. set exeproper=EDuke32
  16. set action=playing
  17.  
  18. if "%editor%"=="1" (
  19. set exename=mapster32
  20. set exeproper=Mapster32
  21. set action=editing
  22. )
  23.  
  24. set addonver=r004
  25.  
  26. :title
  27. echo                     ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
  28. echo                     º Duke Caribbean: Life's A Beach Plus º
  29. echo                     ÈÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍͼ
  30. echo                               ³ By Hendricks266 ³
  31. echo                               ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
  32. echo.
  33. echo You are %action% Sunstorm Interactive's Duke Caribbean: Life's A Beach with the
  34. echo various enhancements of Duke Caribbean: Life's A Beach Plus, maintained by
  35. echo Hendricks266.
  36. echo.
  37.  
  38. if "%xxx%"=="1" echo Using XXX mode.
  39. if "%dp%"=="1" echo Using Duke Plus by DeeperThought.
  40. if "%debug%"=="1" echo Using debug mode.
  41.  
  42. if "%debug%"=="1" echo DEBUG: Command Line Input: %*
  43.  
  44. :recheck
  45. if not exist %exename%.exe goto execheck
  46. :execheck_done
  47. set exedir=%cd%
  48. if "%debug%"=="1" echo DEBUG: %exeproper% Directory: "%exedir%"
  49.  
  50. if not exist vaca_plus\ goto nodir
  51. if not exist duke3d.grp echo Warning: You don't have Duke3D.grp in your directory.
  52.  
  53. if exist vacation\ set addonhrpdir=%cd%
  54. :addondircheck
  55. if exist VACATION.PRG ren VACATION.PRG vacation.grp
  56. chdir vaca_plus
  57. set addondir=%cd%
  58. if exist vacation\ set addonhrpdir=%cd%
  59. if exist vaca_plus\ goto addondircheck
  60. if "%debug%"=="1" echo DEBUG: Vaca+ Directory: "%addondir%".
  61. if "%debug%"=="1" echo DEBUG: VacaHRP Directory: "%addonhrpdir%".
  62.  
  63. if "%vacagrpname%"=="" set vacagrpname=vacation.grp
  64. if not exist "%exedir%\%vacagrpname%" if not exist "%addondir%\%vacagrpname%" if exist "%exedir%\vaca15.grp" set vacagrpname=vaca15.grp
  65. if not exist "%exedir%\%vacagrpname%" if not exist "%addondir%\%vacagrpname%" if exist "%addondir%\vaca15.grp" set vacagrpname=vaca15.grp
  66. if not exist "%exedir%\%vacagrpname%" if not exist "%addondir%\%vacagrpname%" if exist "%exedir%\vacapp.grp" set vacagrpname=vacapp.grp
  67. if not exist "%exedir%\%vacagrpname%" if not exist "%addondir%\%vacagrpname%" if exist "%addondir%\vacapp.grp" set vacagrpname=vacapp.grp
  68. if not exist "%exedir%\%vacagrpname%" if not exist "%addondir%\%vacagrpname%" if exist "%exedir%\vaca13.grp" set vacagrpname=vaca13.grp
  69. if not exist "%exedir%\%vacagrpname%" if not exist "%addondir%\%vacagrpname%" if exist "%addondir%\vaca13.grp" set vacagrpname=vaca13.grp
  70. if not exist "%exedir%\%vacagrpname%" if not exist "%addondir%\%vacagrpname%" if exist "%exedir%\vacation13.grp" set vacagrpname=vacation13.grp
  71. if not exist "%exedir%\%vacagrpname%" if not exist "%addondir%\%vacagrpname%" if exist "%addondir%\vacation13.grp" set vacagrpname=vacation13.grp
  72. if not exist "%exedir%\%vacagrpname%" if not exist "%addondir%\%vacagrpname%" goto novacagrp
  73.  
  74. if exist vacation.grp ren vacation.grp vacation.grp
  75. call :grpchecksum
  76. :novacagrp_return
  77. if not "%version%"=="demo" (
  78. if not exist vaca1.map goto mapextract
  79. if not exist vaca2.map goto mapextract
  80. if not exist vaca3.map goto mapextract
  81. if not exist vaca4.map goto mapextract
  82. if not exist vaca5.map goto mapextract
  83. if not exist vaca6.map goto mapextract
  84. if not exist vaca7.map goto mapextract
  85. if not exist vacasl.map goto mapextract
  86. if not exist vacadm1.map goto mapextract
  87. if not exist vacadm2.map goto mapextract
  88. if not exist vacadm3.map goto mapextract
  89. if not exist vacadm4.map goto mapextract
  90. if not exist vacaflag_%addonver%.h266 goto updateextract
  91. )
  92. chdir /d "%exedir%"
  93. echo.
  94. echo.
  95. echo.
  96. echo.
  97. echo.
  98. echo.
  99. echo.
  100. echo.
  101. echo.
  102.  
  103. :init
  104. pause
  105. echo.
  106. goto check
  107.  
  108. :check
  109.  
  110. echo.
  111. echo Launching Duke Nukem 3D . . .
  112. echo Thanks for %action%^!
  113. echo.
  114.  
  115. if "%editor%"=="1" (
  116. type "%exedir%\names.h" > "%exedir%\VacaNames.h"
  117. echo. >> "%exedir%\VacaNames.h"
  118. type "%addondir%\VacaNames.def" >> "%exedir%\VacaNames.h"
  119. )
  120.  
  121. :arguments
  122. set args=
  123. if exist "%exedir%\HRP\" set args=%args% -jHRP
  124. if exist "%exedir%\polymer_hrp\" set args=%args% -jpolymer_hrp
  125. if exist "%exedir%\duke3d_voxel.zip" set args=%args% -gduke3d_voxel.zip
  126. if exist "%exedir%\duke3d_hrp.zip" set args=%args% -gduke3d_hrp.zip
  127. if exist "%exedir%\hrp_update.zip" set args=%args% -ghrp_update.zip
  128. if exist "%exedir%\maphacks.zip" set args=%args% -gmaphacks.zip
  129. if exist "%exedir%\eduke32_mus.zip" set args=%args% -geduke32_mus.zip
  130. if exist "%addondir%" if not "%addondir%"=="%exedir%" set args=%args% -j"%addondir:\=/%"
  131. if exist "%addonhrpdir%" if not "%addonhrpdir%"=="%exedir%" if not "%addonhrpdir%"=="%addondir%" set args=%args% -j"%addonhrpdir:\=/%"
  132. set args=%args% -g%vacagrpname% -hvacation.def -xVacaEDuke.con
  133. if "%editor%"=="1" set args=%args% -namesfile VacaNames.h
  134. if "%dp%"=="1" set args=%args% -hvaca_dp.def -xVacaDP.con
  135. if "%xxx%"=="1" if exist "%exedir%\xxx_lite.zip" set args=%args% -gxxx_lite.zip
  136. if "%xxx%"=="1" if exist "%exedir%\xxx_lite\" set args=%args% -jxxx_lite
  137. if "%xxx%"=="1" if exist "%exedir%\xxx_pack.zip" set args=%args% -gxxx_pack.zip
  138. if "%xxx%"=="1" if exist "%exedir%\xxx_pack\" set args=%args% -jxxx_pack
  139. if "%xxx%"=="1" set args=%args% -hvaca_xxx.def
  140. if "%xxx%"=="1" if "%dp%"=="1" set args=%args% -hvaca_dp_xxx.def -xVacaDPXXX.con
  141. set args=%args% %*
  142. if "%dp%"=="1" set args=%args% -jDukePlus
  143.  
  144. set exe=%exename%
  145. if "%debug%"=="1" set exe=%exename%.debug
  146.  
  147. if exist %exe%.bat (
  148. call %exe%.bat %args%
  149. if "%debug%"=="1" echo DEBUG: Final Command Line: call %exe%.bat %args%
  150. ) else (
  151. start %exe%.exe %args%
  152. if "%debug%"=="1" echo DEBUG: Final Command Line: start %exe%.exe %args%
  153. )
  154.  
  155. set svnpath=0
  156. if "%svnpath%"=="0" if exist "%~dp0\svn\bin\svn.exe" set svnpath=%~dp0\svn\bin
  157. if "%svnpath%"=="0" if exist "%exedir%\svn\bin\svn.exe" set svnpath=%exedir%\svn\bin
  158. if "%svnpath%"=="0" if exist "%ProgramFiles%\SlikSvn\bin\svn.exe" set svnpath=%ProgramFiles%\SlikSvn\bin
  159. if "%svnpath%"=="0" if exist "%ProgramFiles(x86)%\SlikSvn\bin\svn.exe" set svnpath=%ProgramFiles(x86)%\SlikSvn\bin
  160. if "%svnpath%"=="0" if exist "%ProgramFiles%\Subversion\bin\svn.exe" set svnpath=%ProgramFiles%\Subversion\bin
  161. if "%svnpath%"=="0" if exist "%ProgramFiles(x86)%\Subversion\bin\svn.exe" set svnpath=%ProgramFiles(x86)%\Subversion\bin
  162. if "%svnpath%"=="0" if exist "%ProgramFiles%\TortoiseSVN\bin\svn.exe" set svnpath=%ProgramFiles%\TortoiseSVN\bin
  163. if "%svnpath%"=="0" if exist "%ProgramFiles(x86)%\TortoiseSVN\bin\svn.exe" set svnpath=%ProgramFiles(x86)%\TortoiseSVN\bin
  164. if "%svnpath%"=="0" for %%S in (svn.exe) do if exist "%%~dp$PATH:S" set svnpath=%%~dp$PATH:S
  165.  
  166. chdir /d "%addondir%"
  167. if not "%svnpath%"=="0" if exist ".svn" "%svnpath%\svn.exe" update
  168. chdir /d "%addonhrpdir%"
  169. if not "%svnpath%"=="0" if exist ".svn" "%svnpath%\svn.exe" update
  170.  
  171. goto end
  172.  
  173. :novacagrp
  174. echo.
  175. echo Error: You don't have VACATION.GRP in your directory.
  176. echo.
  177. goto ssicheck
  178. :retry
  179. echo.
  180. set cddrive=
  181. set /p cddrive=What is the drive letter that your Caribbean CD is in?
  182. echo.
  183. if not '%cddrive%'=='' set cddrive=%cddrive:~0,1%
  184. if '%cddrive%'=='' goto cdno
  185. if not exist %cddrive%:\ goto cdno
  186. if not exist %cddrive%:\* goto cdno
  187. if exist %cddrive%:\VACATION\VACA13.SSI copy %cddrive%:\VACATION\*.SSI .\ && goto ssicheck
  188. if exist %cddrive%:\VACATION\VACATION\VACA13.SSI copy %cddrive%:\VACATION\VACATION\*.SSI .\ && goto ssicheck
  189. if exist %cddrive%:\CARIBBEA\VACA13.SSI copy %cddrive%:\CARIBBEA\VACATION\*.SSI .\ && goto ssicheck
  190. if exist %cddrive%:\CARIBBEAN\VACA13.SSI copy %cddrive%:\CARIBBEAN\VACATION\*.SSI .\ && goto ssicheck
  191. goto cdwrong
  192.  
  193. :cdno
  194. echo '%cddrive%' is not valid.  Please try again.
  195. goto retry
  196.  
  197. :cdwrong
  198. echo '%cddrive%' is not the correct disc.  Please try again.
  199. goto retry
  200.  
  201. :ssicheck
  202. if exist VACA15.SSI goto ssi1
  203. if exist VACAPP.SSI goto ssi2
  204. if exist VACA13.SSI goto ssi3
  205. echo You don't have the SSI files in your directory.
  206. goto retry
  207.  
  208. :ssi1
  209. echo You do have the Caribbean SSI file in this directory, but it has not been
  210. echo extracted.  It will now be unpacked.
  211. echo.
  212. pause
  213. mkdir vaca15ssi
  214. chdir vaca15ssi
  215. if "%debug%"=="1" echo DEBUG: Changing directory to "%cd%".
  216. "%addondir%\utils\windows\win32\unpackssi.exe" ..\VACA15.SSI
  217. if exist VACATION.PRG move /y VACATION.PRG ..\vacation.grp
  218. chdir ..
  219. if "%debug%"=="1" echo DEBUG: Changing directory to "%cd%".
  220. if exist vacation.grp (
  221. rmdir /s /q vaca15ssi
  222. goto novacagrp_done
  223. )
  224. if not exist vacation.grp (
  225. echo Installation Error!
  226. echo Contact Hendricks266 for help.
  227. echo.
  228. pause
  229. goto end
  230. )
  231.  
  232. :ssi2
  233. echo You do have the Caribbean SSI file in this directory, but it has not been
  234. echo extracted.  It will now be unpacked.
  235. echo.
  236. pause
  237. mkdir vacappssi
  238. chdir vacappssi
  239. if "%debug%"=="1" echo DEBUG: Changing directory to "%cd%".
  240. "%addondir%\utils\windows\win32\unpackssi.exe" ..\VACAPP.SSI
  241. if exist VACATION.PRG move /y VACATION.PRG ..\vacation.grp
  242. chdir ..
  243. if "%debug%"=="1" echo DEBUG: Changing directory to "%cd%".
  244. if exist vacation.grp (
  245. rmdir /s /q vacappssi
  246. goto novacagrp_done
  247. )
  248. if not exist vacation.grp (
  249. echo Installation Error!
  250. echo Contact Hendricks266 for help.
  251. echo.
  252. pause
  253. goto end
  254. )
  255.  
  256. :ssi3
  257. echo You do have the Caribbean SSI file in this directory, but it has not been
  258. echo extracted.  It will now be unpacked.
  259. echo.
  260. pause
  261. mkdir vaca13ssi
  262. chdir vaca13ssi
  263. if "%debug%"=="1" echo DEBUG: Changing directory to "%cd%".
  264. "%addondir%\utils\windows\win32\unpackssi.exe" ..\VACA13.SSI
  265. ren *.TRA *.ART
  266. ren *.PCS *.SCP
  267. ren VACA1.MAP vaca1.map
  268. ren VACA2.MAP vaca2.map
  269. ren VACA3.MAP vaca3.map
  270. ren VACA4.MAP vaca4.map
  271. ren VACA5.MAP vaca5.map
  272. ren VACA6.MAP vaca6.map
  273. ren VACA7.MAP vaca7.map
  274. ren VACASL.MAP vacasl.map
  275. ren VACADM1.MAP vacadm1.map
  276. ren VACADM2.MAP vacadm2.map
  277. ren VACADM3.MAP vacadm3.map
  278. ren VACADM4.MAP vacadm4.map
  279. ren *.NOC *.CON
  280. ren *.DIM *.MID
  281. ren *.MNA *.ANM
  282. ren *.COV *.VOC
  283. ren *.OMD *.DMO
  284. ren GAME.CON VACAGAME.CON
  285. ren USER.CON VACAUSER.CON
  286. ren DEFS.CON VACADEFS.CON
  287. ren DUKETEAM.ANM RADLOGO.ANM
  288. "%addondir%\utils\windows\win32\kgroup.exe" vacation.grp *.ART *.SCP *.map *.MID *.ANM *.VOC *.DMO CARIB.EXE
  289. if exist vacation.grp move /y vacation.grp ..\vacation.grp
  290. move /y *.map ..\
  291. chdir ..
  292. if "%debug%"=="1" echo DEBUG: Changing directory to "%cd%".
  293. if exist vacation.grp (
  294. rmdir /s /q vaca13ssi
  295. goto novacagrp_done
  296. )
  297. if not exist vacation.grp (
  298. echo Installation Error!
  299. echo Contact Hendricks266 for help.
  300. echo.
  301. pause
  302. goto end
  303. )
  304.  
  305. :novacagrp_done
  306. type DVINTRO.TXT
  307. echo.
  308. pause
  309. call :grpchecksum
  310. call :grpchecksum_results
  311. goto novacagrp_return
  312.  
  313. :grpchecksum
  314. if not exist "%addondir%\utils\windows\win32\sha1sum.exe" (
  315. echo "%addondir%\utils\windows\win32\sha1sum.exe" not found.
  316. goto :eof
  317. )
  318. pushd .
  319. if exist "%addondir%\%vacagrpname%" cd /d %addondir%
  320. if exist "%exedir%\%vacagrpname%" cd /d %exedir%
  321. echo ea0a9a77b9aee6edce76afa19eaea3a810fb2390 *%vacagrpname% | "%addondir%\utils\windows\win32\sha1sum.exe" --status --check -
  322. if "%ERRORLEVEL%"=="0" set version=full && popd && goto :eof
  323. if "%ERRORLEVEL%"=="1" set version=unknown
  324. popd
  325. goto :eof
  326.  
  327. :grpchecksum_results
  328. if "%version%"=="full" echo VACATION.GRP checksum verified.
  329. if "%version%"=="unknown" echo VACATION.GRP checksum does not match. You may have a bad copy.
  330. echo.
  331. goto :eof
  332.  
  333.  
  334. :mapextract
  335. echo Extracted maps not found or patched. Proceeding to installation.
  336. goto extract
  337.  
  338. :updateextract
  339. echo Map patch update required. Proceeding to installation.
  340. goto extract
  341.  
  342. :extract
  343. echo.
  344. echo                                ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
  345. echo                                º Installation º
  346. echo                                ÈÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
  347. echo.
  348. call :grpchecksum
  349. call :grpchecksum_results
  350. if not exist vaca1.patch goto nopatch
  351. if not exist vaca2.patch goto nopatch
  352. if not exist vaca3.patch goto nopatch
  353. if not exist vaca4.patch goto nopatch
  354. if not exist vaca5.patch goto nopatch
  355. if not exist vaca6.patch goto nopatch
  356. if not exist vaca7.patch goto nopatch
  357. if not exist vacasl.patch goto nopatch
  358. if not exist vacadm1.patch goto nopatch
  359. if not exist vacadm2.patch goto nopatch
  360. if not exist vacadm3.patch goto nopatch
  361. if not exist vacadm4.patch goto nopatch
  362. mkdir vaca_preserve
  363. if exist vaca*.map move /y vaca*.map vaca_preserve\
  364. if exist "%exedir%\vaca*.map" move /y "%exedir%\vaca*.map" vaca_preserve\
  365. "%addondir%\utils\windows\win32\kextract.exe" vacation.grp VACA*.MAP
  366. ren VACA1.MAP vaca1.map
  367. ren VACA2.MAP vaca2.map
  368. ren VACA3.MAP vaca3.map
  369. ren VACA4.MAP vaca4.map
  370. ren VACA5.MAP vaca5.map
  371. ren VACA6.MAP vaca6.map
  372. ren VACA7.MAP vaca7.map
  373. ren VACASL.MAP vacasl.map
  374. ren VACADM1.MAP vacadm1.map
  375. ren VACADM2.MAP vacadm2.map
  376. ren VACADM3.MAP vacadm3.map
  377. ren VACADM4.MAP vacadm4.map
  378. if exist vacapatch*.h266 del /f /q vacapatch*.h266
  379. if exist vacaflag*.h266 del /f /q vacaflag*.h266
  380. echo.
  381. echo Map patching will now begin.
  382. echo.
  383. pause
  384. echo
  385. "%addondir%\utils\windows\win32\bspatch.exe" vaca1.map vaca1.map vaca1.patch
  386. "%addondir%\utils\windows\win32\bspatch.exe" vaca2.map vaca2.map vaca2.patch
  387. "%addondir%\utils\windows\win32\bspatch.exe" vaca3.map vaca3.map vaca3.patch
  388. "%addondir%\utils\windows\win32\bspatch.exe" vaca4.map vaca4.map vaca4.patch
  389. "%addondir%\utils\windows\win32\bspatch.exe" vaca5.map vaca5.map vaca5.patch
  390. "%addondir%\utils\windows\win32\bspatch.exe" vaca6.map vaca6.map vaca6.patch
  391. "%addondir%\utils\windows\win32\bspatch.exe" vaca7.map vaca7.map vaca7.patch
  392. "%addondir%\utils\windows\win32\bspatch.exe" vacasl.map vacasl.map vacasl.patch
  393. "%addondir%\utils\windows\win32\bspatch.exe" vacadm1.map vacadm1.map vacadm1.patch
  394. "%addondir%\utils\windows\win32\bspatch.exe" vacadm2.map vacadm2.map vacadm2.patch
  395. "%addondir%\utils\windows\win32\bspatch.exe" vacadm3.map vacadm3.map vacadm3.patch
  396. "%addondir%\utils\windows\win32\bspatch.exe" vacadm4.map vacadm4.map vacadm4.patch
  397. if exist vacapatch*.h266 del /f /q vacapatch*.h266
  398. if exist vacaflag*.h266 del /f /q vacaflag*.h266
  399. echo Do not delete this file^! You will be forced to reinstall Vaca+ and repatch the maps. >vacaflag_%addonver%.h266
  400. attrib +r vacaflag_%addonver%.h266
  401. echo.
  402. echo Patching complete^!
  403. :scanning
  404. chdir "%exedir%"
  405. echo.
  406. echo Scanning directory for potential problems.
  407. if exist vaca1.mhk goto mhkfound
  408. if exist vaca2.mhk goto mhkfound
  409. if exist vaca3.mhk goto mhkfound
  410. if exist vaca4.mhk goto mhkfound
  411. if exist vaca5.mhk goto mhkfound
  412. if exist vaca6.mhk goto mhkfound
  413. if exist vaca7.mhk goto mhkfound
  414. if exist vacasl.mhk goto mhkfound
  415. if exist vacadm1.mhk goto mhkfound
  416. if exist vacadm2.mhk goto mhkfound
  417. if exist vacadm3.mhk goto mhkfound
  418. if exist vacadm4.mhk goto mhkfound
  419. if exist dcava0r.mhk goto mhkfound
  420. if exist dcava1.mhk goto mhkfound
  421. if exist _vacazoo.mhk goto mhkfound
  422. :mhkfound_done
  423. if exist TILES000.ART goto artfound
  424. if exist TILES003.ART goto artfound
  425. if exist TILES005.ART goto artfound
  426. if exist TILES006.ART goto artfound
  427. if exist TILES007.ART goto artfound
  428. if exist TILES008.ART goto artfound
  429. if exist TILES009.ART goto artfound
  430. if exist TILES010.ART goto artfound
  431. if exist TILES012.ART goto artfound
  432. if exist TILES014.ART goto artfound
  433. :artfound_done
  434. call :checksum 3d5092d053b23a823c1fa0ad0b0bdbc33b2a09bb DEFS.CON "VACA15 file detected and neutralized:"
  435. call :checksum 807aaf21edd6e315bcb76dd54450f28616f84609 GAME.CON "VACA15 file detected and neutralized:"
  436. call :checksum 6d29c3b19d26ff84edb104e68120edc5150066dd USER.CON "VACA15 file detected and neutralized:"
  437. call :checksum 856374f3b42a1f2e355730ffc70497a3e6a49585 BEACHBAB.CON "VACA15 file detected and neutralized:"
  438. call :checksum efb8168c6351d4b5e2c108ebc8189d4aba85ef35 BEACHBAL.CON "VACA15 file detected and neutralized:"
  439. call :checksum a947947409a76ea7e6c46076a8cfbaa76f8b0172 BEACHBTH.CON "VACA15 file detected and neutralized:"
  440. call :checksum 3c11b9d40a204849c2d7d6c10984397f3b6a444c DRAGON.CON "VACA15 file detected and neutralized:"
  441. call :checksum 1417476e2cd8a3aef85dd9c1f36308f2123d8b54 SEAGULL.CON "VACA15 file detected and neutralized:"
  442. call :checksum 0c1314dcd983b232f6afb941942e1ccbd7331ebb SOUNDS.CON "VACA15 file detected and neutralized:"
  443. call :checksum 032a25b2cd98e19a5ff9a859ac27c91a4abfcb46 USER.CON "VACAPP file detected and neutralized:"
  444. call :checksum 34ed9d27095d547e20fb9db87957d17ca9cb2046 DEFS.CON "VACA13 file detected and neutralized:"
  445. call :checksum 3480ad8caca150b7c4678a42a606c0d9941db631 GAME.CON "VACA13 file detected and neutralized:"
  446. call :checksum 74feb12ecfa57cb4c8e151593bff89e06b1ae11e USER.CON "VACA13 file detected and neutralized:"
  447. call :checksum 840d701ca5e1e590ff03510eb5d63880f3e5be79 BEACHBAB.CON "VACA13 file detected and neutralized:"
  448. call :checksum f4c7080384dde2f298e807b1bc9901e6e61ac617 BEACHBAL.CON "VACA13 file detected and neutralized:"
  449. call :checksum 9965ae6e6b4337d06e1df22b41592b4cdfb69b2f BEACHBTH.CON "VACA13 file detected and neutralized:"
  450. call :checksum d56a1ff075671d0919540086a062b37290113621 DRAGON.CON "VACA13 file detected and neutralized:"
  451. call :checksum 06be81473bad004296324b2d63f4730ac2160aa6 SEAGULL.CON "VACA13 file detected and neutralized:"
  452. call :checksum ef149cd90764bae685d9fab83eb2fe719486dce3 SOUNDS.CON "VACA13 file detected and neutralized:"
  453. if exist Vacation.con goto confound
  454. if exist VacaEDuke.con goto confound
  455. if exist VacaDefs.con goto confound
  456. if exist VacaUser.con goto confound
  457. if exist VacaDP.con goto confound
  458. if exist VacaDPCode.con goto confound
  459. if exist VacaDPXXX.con goto confound
  460. if exist VSounds.con goto confound
  461. if exist VBeachBabe.con goto confound
  462. if exist VBeachBall.con goto confound
  463. if exist VBeachBather.con goto confound
  464. if exist VDragon.con goto confound
  465. if exist VSeagull.con goto confound
  466. :confound_done
  467. chdir /d "%exedir%"
  468. if not exist GAME.CON "%addondir%\utils\windows\win32\kextract.exe" DUKE3D.GRP GAME.CON
  469. if not exist DEFS.CON "%addondir%\utils\windows\win32\kextract.exe" DUKE3D.GRP DEFS.CON
  470. if not exist USER.CON "%addondir%\utils\windows\win32\kextract.exe" DUKE3D.GRP USER.CON
  471. chdir /d "%addondir%"
  472. echo.
  473. pause
  474. goto restart
  475.  
  476. :checksum
  477. if not exist "%addondir%\utils\windows\win32\sha1sum.exe" (
  478. echo "%addondir%\utils\windows\win32\sha1sum.exe" not found.
  479. goto :eof
  480. )
  481. if not exist "%~2" goto :eof
  482. echo %~1 *%~2 | "%addondir%\utils\windows\win32\sha1sum.exe" --status --check -
  483. if "%ERRORLEVEL%"=="0" (
  484. ren "%~2" "VacaOld_%addonver%_%~nx2"
  485. echo %~3 %~nx2
  486. )
  487. goto :eof
  488.  
  489. :nopatch
  490. echo.
  491. echo Error: You don't have all the *.patch files in your directory.
  492. echo Aborting installation.
  493. echo Map patching is required for Vaca+ to function correctly.
  494. echo.
  495. pause
  496. goto end
  497.  
  498. :mhkfound
  499. echo.
  500. echo Problematic .mhk files have been found in your directory.
  501. echo Unless you have knowingly made a modification to Vaca's map hacks,
  502. echo the presence of these files in your %exeproper% directory will
  503. echo cause Vaca+ to function incorrectly.
  504. echo.
  505. echo vaca1.mhk
  506. echo vaca2.mhk
  507. echo vaca3.mhk
  508. echo vaca4.mhk
  509. echo vaca5.mhk
  510. echo vaca6.mhk
  511. echo vaca7.mhk
  512. echo vacasl.mhk
  513. echo vacadm1.mhk
  514. echo vacadm2.mhk
  515. echo vacadm3.mhk
  516. echo vacadm4.mhk
  517. echo dcava0r.mhk
  518. echo dcava1.mhk
  519. echo _vacazoo.mhk
  520. goto mhkfound_done
  521.  
  522. :artfound
  523. echo.
  524. echo Problematic .art files have been found in your directory.
  525. echo Unless you have knowingly made a modification to Vaca's art,
  526. echo the presence of these files in your %exeproper% directory will
  527. echo cause Vaca+ to function incorrectly.
  528. echo.
  529. echo TILES000.ART
  530. echo TILES003.ART
  531. echo TILES005.ART
  532. echo TILES006.ART
  533. echo TILES007.ART
  534. echo TILES008.ART
  535. echo TILES009.ART
  536. echo TILES010.ART
  537. echo TILES012.ART
  538. echo TILES014.ART
  539. goto artfound_done
  540.  
  541. :confound
  542. echo.
  543. echo Problematic .con files have been found in your directory.
  544. echo Unless you have knowingly made a modification to Vaca's programming,
  545. echo the presence of these files in your %exeproper% directory will
  546. echo cause Vaca+ to function incorrectly.
  547. echo.
  548. echo Vacation.con
  549. echo VacaEDuke.con
  550. echo VacaDefs.con
  551. echo VacaUser.con
  552. echo VacaDP.con
  553. echo VacaDPCode.con
  554. echo VacaDPXXX.con
  555. echo VSounds.con
  556. echo VBeachBabe.con
  557. echo VBeachBall.con
  558. echo VBeachBather.con
  559. echo VDragon.con
  560. echo VSeagull.con
  561. echo.
  562. echo IF THESE ARE THE ORIGINAL CARIBBEAN CON FILES, OR THEY COME FROM
  563. echo AN OUTDATED VERSION OF VACA+, REMOVE THEM FROM YOUR %exeproper% DIRECTORY
  564. echo IMMEDIATELY^!
  565. echo Vaca+ uses modified .con files to fix programming errors created by
  566. echo the original programmers. Due to improvements made to the levels,
  567. echo Vaca+ will have major errors if the included .con files are not used.
  568. goto confound_done
  569.  
  570. :execheck
  571. if exist %exename%.bat goto execheck_done
  572. if exist %exename%.exe goto recheck
  573. set prevdir=%cd%
  574. if not "%cd%"=="%cd:~0,3%" cd ..
  575. if not "%cd%"=="%prevdir%" goto execheck
  576. echo Warning: You don't have %exeproper% in your directory.
  577. chdir /d "%~dp0"
  578. goto execheck_done
  579.  
  580. :nodir
  581. echo.
  582. echo Error: "vaca_plus" data directory not found.
  583. echo Aborting launch.
  584. echo.
  585. pause
  586. goto end
  587.  
  588. :end
  589. echo.
  590. popd
  591. @title %ComSpec%
  592. @color 07
  593.