Subversion Repositories vaca_plus

Rev

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

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