Subversion Repositories vaca_plus

Rev

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

  1. @echo off
  2. @color 0C
  3.  
  4. :restart
  5. title Duke Caribbean: Life's A Beach Plus Launcher
  6. if "%editor%"=="1" title Duke Caribbean: Life's A Beach Plus Editor Launcher
  7.  
  8. set dir=%cd%
  9. set exedir=%~dp0
  10. set addondir=%~dp0
  11. set addonhrpdir=%~dp0
  12.  
  13. set exename=eduke32
  14. set exeproper=EDuke32
  15. set action=playing
  16.  
  17. if "%editor%"=="1" (
  18. set exename=mapster32
  19. set exeproper=Mapster32
  20. set action=editing
  21. )
  22.  
  23. set addonver=r001
  24.  
  25. :title
  26. echo                     ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
  27. echo                     º Duke Caribbean: Life's A Beach Plus º
  28. echo                     ÈÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍͼ
  29. echo                               ³ By Hendricks266 ³
  30. echo                               ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
  31. echo.
  32. echo You are %action% Sunstorm Interactive's Duke Caribbean: Life's A Beach with the
  33. echo various enhancements of Duke Caribbean: Life's A Beach Plus, maintained by
  34. echo Hendricks266.
  35. echo.
  36.  
  37. if "%xxx%"=="1" echo Using XXX mode.
  38. if "%dp%"=="1" echo Using Duke Plus by DeeperThought.
  39. if "%debug%"=="1" echo Using debug mode.
  40.  
  41. :recheck
  42. if not exist %exename%.exe goto execheck
  43. :execheck_done
  44. set exedir=%cd%
  45. if "%debug%"=="1" echo DEBUG: %exeproper% Directory: "%exedir%"
  46.  
  47. if not exist vaca_plus\ goto nodir
  48. if not exist duke3d.grp echo Warning: You don't have Duke3D.grp in your directory.
  49.  
  50. if exist vacation\ set addonhrpdir=%cd%
  51. :addondircheck
  52. if exist VACATION.PRG ren VACATION.PRG vacation.grp
  53. cd vaca_plus
  54. set addondir=%cd%
  55. if exist vacation\ set addonhrpdir=%cd%
  56. if exist vaca_plus\ goto addondircheck
  57. if "%debug%"=="1" echo DEBUG: Vaca+ Directory: "%addondir%".
  58. if "%debug%"=="1" echo DEBUG: VacaHRP Directory: "%addonhrpdir%".
  59.  
  60. if not exist "%addondir%\VACATION.GRP" (
  61. if exist "%exedir%\VACATION.GRP" (
  62. move /y "%exedir%\VACATION.GRP" "%addondir%\"
  63. ren "%addondir%\VACATION.GRP" vacation.grp
  64. ) else (
  65. goto novacagrp
  66. ) )
  67.  
  68. :novacagrp_done
  69. if not exist vacaflag_%addonver%.h266 goto extract
  70. if not exist vaca1.map goto extract
  71. if not exist vaca2.map goto extract
  72. if not exist vaca3.map goto extract
  73. if not exist vaca4.map goto extract
  74. if not exist vaca5.map goto extract
  75. if not exist vaca6.map goto extract
  76. if not exist vaca7.map goto extract
  77. if not exist vacadm1.map goto extract
  78. if not exist vacadm2.map goto extract
  79. if not exist vacadm3.map goto extract
  80. if not exist vacadm4.map goto extract
  81. if not exist vacasl.map goto extract
  82. cd "%exedir%"
  83. echo.
  84. echo.
  85. echo.
  86. echo.
  87. echo.
  88.  
  89.  
  90. :init
  91. pause
  92. echo.
  93. goto check
  94.  
  95. :check
  96.  
  97. echo.
  98. echo Launching Duke Nukem 3D . . .
  99. echo Thanks for %action%^!
  100.  
  101. :arguments
  102. set args=
  103. if exist polymer_hrp\ set args=%args% -jpolymer_hrp
  104. if exist duke3d_voxel.zip set args=%args% -gduke3d_voxel.zip
  105. if exist duke3d_hrp.zip set args=%args% -gduke3d_hrp.zip
  106. if exist hrp_update.zip set args=%args% -ghrp_update.zip
  107. if exist maphacks.zip set args=%args% -gmaphacks.zip
  108. if exist eduke32_mus.zip set args=%args% -geduke32_mus.zip
  109. if exist "%addondir%" set args=%args% -j"%addondir:\=/%"
  110. if exist "%addonhrpdir%" set args=%args% -j"%addonhrpdir:\=/%"
  111. set args=%args% -gvacation.grp -hvacation.def
  112. if "%editor%"=="1" set args=%args% -namesfile VacaNames.h
  113. if not "%editor%"=="1" set args=%args% -xVacaEDuke.con
  114. if "%dp%"=="1" (
  115. set args=%args% -hvaca_dp.def
  116. if not "%editor%"=="1" set args=%args% -xVacaDP.con
  117. )
  118. if "%xxx%"=="1" (
  119. if exist xxx_lite.zip set args=%args% -gxxx_lite.zip
  120. if exist xxx_pack.zip set args=%args% -gxxx_pack.zip
  121. set args=%args% -hvaca_xxx.def
  122. if "%dp%"=="1" (
  123. set args=%args% -hvaca_dp_xxx.def
  124. if not "%editor%"=="1" set args=%args% -xVacaDPXXX.con
  125. ) )
  126. set args=%args% %*
  127. if "%dp%"=="1" set args=%args% -jDukePlus
  128.  
  129. set exe=%exename%
  130. if "%debug%"=="1" set exe=%exename%.debug
  131.  
  132. if exist %exe%.bat (
  133. call %exe%.bat %args%
  134. ) else (
  135. start %exe%.exe %args%
  136. )
  137.  
  138. goto end
  139.  
  140. :novacagrp
  141. echo.
  142. echo Error: You don't have VACATION.GRP in your directory.
  143. echo.
  144. if exist VACA15.SSI goto ssi1
  145. if exist VACAPP.SSI goto ssi2
  146. if exist VACA13.SSI goto ssi3
  147. echo You don't have the SSI files in your directory.
  148. :retry
  149. echo.
  150. set cddrive=
  151. set /p cddrive=What is the drive letter that your Caribbean CD is in?
  152. echo.
  153. if not '%cddrive%'=='' set cddrive=%cddrive:~0,1%
  154. if '%cddrive%'=='' goto cdno
  155. if not exist %cddrive%:\ goto cdno
  156. if not exist %cddrive%:\* goto cdno
  157. if not exist %cddrive%:\VACATION\VACA13.SSI goto cdw
  158. copy %cddrive%:\VACATION\*.SSI .\
  159. echo.
  160. type DVINTRO.TXT
  161. goto novacagrp_done
  162.  
  163. :cdno
  164. echo '%cddrive%' is not valid.  Please try again.
  165. goto retry
  166.  
  167. :cdw
  168. echo '%cddrive%' is not the correct disc.  Please try again.
  169. goto retry
  170.  
  171. :ssi1
  172. echo You do have the Caribbean SSI file in this directory, but it has not been
  173. echo extracted.  It will now be unpacked.
  174. echo.
  175. pause
  176. md vaca15ssi
  177. cd vaca15ssi
  178. if "%debug%"=="1" echo DEBUG: Changing directory to "%cd%".
  179. ..\utils\windows\win32\unpackssi.exe ..\VACA15.SSI
  180. move /y VACATION.PRG ..\vacation.grp
  181. cd ..
  182. if "%debug%"=="1" echo DEBUG: Changing directory to "%cd%".
  183. rd /s /q vaca15ssi
  184. goto novacagrp_done
  185.  
  186. :ssi2
  187. echo You do have the Caribbean SSI file in this directory, but it has not been
  188. echo extracted.  It will now be unpacked.
  189. echo.
  190. pause
  191. md vacappssi
  192. cd vacappssi
  193. if "%debug%"=="1" echo DEBUG: Changing directory to "%cd%".
  194. ..\utils\windows\win32\unpackssi.exe ..\VACAPP.SSI
  195. move /y VACATION.PRG ..\vacation.grp
  196. cd ..
  197. if "%debug%"=="1" echo DEBUG: Changing directory to "%cd%".
  198. rd /s /q vacappssi
  199. goto novacagrp_done
  200.  
  201. :ssi3
  202. echo You do have the Caribbean SSI file in this directory, but it has not been
  203. echo extracted.  It will now be unpacked.
  204. echo.
  205. pause
  206. md vaca13ssi
  207. cd vaca13ssi
  208. if "%debug%"=="1" echo DEBUG: Changing directory to "%cd%".
  209. ..\utils\windows\win32\unpackssi.exe ..\VACA13.SSI
  210. ren *.TRA *.ART
  211. ren *.PCS *.SCP
  212. ren VACA1.MAP vaca1.map
  213. ren VACA2.MAP vaca2.map
  214. ren VACA3.MAP vaca3.map
  215. ren VACA4.MAP vaca4.map
  216. ren VACA5.MAP vaca5.map
  217. ren VACA6.MAP vaca6.map
  218. ren VACA7.MAP vaca7.map
  219. ren VACASL.MAP vacasl.map
  220. ren VACADM1.MAP vacadm1.map
  221. ren VACADM2.MAP vacadm2.map
  222. ren VACADM3.MAP vacadm3.map
  223. ren VACADM4.MAP vacadm4.map
  224. ren *.NOC *.CON
  225. ren *.DIM *.MID
  226. ren *.MNA *.ANM
  227. ren *.COV *.VOC
  228. ren *.OMD *.DMO
  229. ren DUKETEAM.ANM RADLOGO.ANM
  230. ..\utils\windows\win32\kgroup.exe VACATION.GRP *.ART *.SCP *.map *.MID *.ANM *.VOC *.DMO CARIB.EXE
  231. move /y VACATION.GRP ..\vacation.grp
  232. move /y *.map ..\
  233. cd ..
  234. if "%debug%"=="1" echo DEBUG: Changing directory to "%cd%".
  235. rd /s /q vaca13ssi
  236. goto novacagrp_done
  237.  
  238. :extract
  239. echo.
  240. echo                                ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
  241. echo                                º Installation º
  242. echo                                ÈÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
  243. echo.
  244. if not exist vaca1.ips goto noips
  245. if not exist vaca2.ips goto noips
  246. if not exist vaca3.ips goto noips
  247. if not exist vaca4.ips goto noips
  248. if not exist vaca5.ips goto noips
  249. if not exist vaca6.ips goto noips
  250. if not exist vaca7.ips goto noips
  251. if not exist vacasl.ips goto noips
  252. if not exist vacadm1.ips goto noips
  253. if not exist vacadm2.ips goto noips
  254. if not exist vacadm3.ips goto noips
  255. if not exist vacadm4.ips goto noips
  256. md vaca_preserve
  257. if exist vaca*.map move /y vaca*.map vaca_preserve\
  258. if exist "%exedir%\vaca*.map" move /y "%exedir%\vaca*.map" vaca_preserve\
  259. utils\windows\win32\kextract.exe VACATION.GRP VACA*.MAP
  260. ren VACA1.MAP vaca1.map
  261. ren VACA2.MAP vaca2.map
  262. ren VACA3.MAP vaca3.map
  263. ren VACA4.MAP vaca4.map
  264. ren VACA5.MAP vaca5.map
  265. ren VACA6.MAP vaca6.map
  266. ren VACA7.MAP vaca7.map
  267. ren VACASL.MAP vacasl.map
  268. ren VACADM1.MAP vacadm1.map
  269. ren VACADM2.MAP vacadm2.map
  270. ren VACADM3.MAP vacadm3.map
  271. ren VACADM4.MAP vacadm4.map
  272. if exist vacapatch*.h266 del /f /q vacapatch*.h266
  273. if exist vacaflag*.h266 del /f /q vacaflag*.h266
  274. echo.
  275. echo Map patching will now begin.
  276. echo.
  277. pause
  278. echo
  279. utils\windows\win32\uips.exe a vaca1.ips vaca1.map
  280. utils\windows\win32\uips.exe a vaca2.ips vaca2.map
  281. utils\windows\win32\uips.exe a vaca3.ips vaca3.map
  282. utils\windows\win32\uips.exe a vaca4.ips vaca4.map
  283. utils\windows\win32\uips.exe a vaca5.ips vaca5.map
  284. utils\windows\win32\uips.exe a vaca6.ips vaca6.map
  285. utils\windows\win32\uips.exe a vaca7.ips vaca7.map
  286. utils\windows\win32\uips.exe a vacasl.ips vacasl.map
  287. utils\windows\win32\uips.exe a vacadm1.ips vacadm1.map
  288. utils\windows\win32\uips.exe a vacadm2.ips vacadm2.map
  289. utils\windows\win32\uips.exe a vacadm3.ips vacadm3.map
  290. utils\windows\win32\uips.exe a vacadm4.ips vacadm4.map
  291. if exist vacapatch*.h266 del /f /q vacapatch*.h266
  292. if exist vacaflag*.h266 del /f /q vacaflag*.h266
  293. echo Do not delete this file^! You will be forced to reinstall Vaca+ and repatch the maps. >vacaflag_%addonver%.h266
  294. attrib +r vacaflag_%addonver%.h266
  295. echo.
  296. echo Patching complete^!
  297. :scanning
  298. cd "%exedir%"
  299. echo.
  300. echo Scanning directory for potential problems.
  301. if exist vaca1.mhk goto mhkfound
  302. if exist vaca2.mhk goto mhkfound
  303. if exist vaca3.mhk goto mhkfound
  304. if exist vaca4.mhk goto mhkfound
  305. if exist vaca5.mhk goto mhkfound
  306. if exist vaca6.mhk goto mhkfound
  307. if exist vaca7.mhk goto mhkfound
  308. if exist vacasl.mhk goto mhkfound
  309. if exist vacadm1.mhk goto mhkfound
  310. if exist vacadm2.mhk goto mhkfound
  311. if exist vacadm3.mhk goto mhkfound
  312. if exist vacadm4.mhk goto mhkfound
  313. if exist dcava0r.mhk goto mhkfound
  314. if exist dcava1.mhk goto mhkfound
  315. if exist _vacazoo.mhk goto mhkfound
  316. :mhkfound_done
  317. if exist TILES000.ART goto artfound
  318. if exist TILES003.ART goto artfound
  319. if exist TILES005.ART goto artfound
  320. if exist TILES006.ART goto artfound
  321. if exist TILES007.ART goto artfound
  322. if exist TILES008.ART goto artfound
  323. if exist TILES009.ART goto artfound
  324. if exist TILES010.ART goto artfound
  325. if exist TILES012.ART goto artfound
  326. if exist TILES014.ART goto artfound
  327. :artfound_done
  328. if exist Vacation.con goto confound
  329. if exist VacaEDuke.con goto confound
  330. if exist VacaDefs.con goto confound
  331. if exist VacaUser.con goto confound
  332. if exist VacaDP.con goto confound
  333. if exist VacaDPCode.con goto confound
  334. if exist VacaDPXXX.con goto confound
  335. if exist VSounds.con goto confound
  336. if exist VBeachBabe.con goto confound
  337. if exist VBeachBall.con goto confound
  338. if exist VBeachBather.con goto confound
  339. if exist VDragon.con goto confound
  340. if exist VSeagull.con goto confound
  341. :confound_done
  342. echo.
  343. pause
  344. goto restart
  345.  
  346. :noips
  347. echo.
  348. echo Error: You don't have all the *.ips files in your directory.
  349. echo Aborting installation.
  350. echo Map patching is required for Vaca+ to function correctly.
  351. echo.
  352. pause
  353. goto end
  354.  
  355. :mhkfound
  356. echo.
  357. echo Problematic .mhk files have been found in your directory.
  358. echo Unless you have knowingly made a modification to Vaca's map hacks,
  359. echo the presence of these files in your %exeproper% directory will
  360. echo cause Vaca+ to function incorrectly.
  361. echo.
  362. echo vaca1.mhk
  363. echo vaca2.mhk
  364. echo vaca3.mhk
  365. echo vaca4.mhk
  366. echo vaca5.mhk
  367. echo vaca6.mhk
  368. echo vaca7.mhk
  369. echo vacasl.mhk
  370. echo vacadm1.mhk
  371. echo vacadm2.mhk
  372. echo vacadm3.mhk
  373. echo vacadm4.mhk
  374. echo dcava0r.mhk
  375. echo dcava1.mhk
  376. echo _vacazoo.mhk
  377. goto mhkfound_done
  378.  
  379. :artfound
  380. echo.
  381. echo Problematic .art files have been found in your directory.
  382. echo Unless you have knowingly made a modification to Vaca's art,
  383. echo the presence of these files in your %exeproper% directory will
  384. echo cause Vaca+ to function incorrectly.
  385. echo.
  386. echo TILES000.ART
  387. echo TILES003.ART
  388. echo TILES005.ART
  389. echo TILES006.ART
  390. echo TILES007.ART
  391. echo TILES008.ART
  392. echo TILES009.ART
  393. echo TILES010.ART
  394. echo TILES012.ART
  395. echo TILES014.ART
  396. goto artfound_done
  397.  
  398. :confound
  399. echo.
  400. echo Problematic .con files have been found in your directory.
  401. echo Unless you have knowingly made a modification to Vaca's programming,
  402. echo the presence of these files in your %exeproper% directory will
  403. echo cause Vaca+ to function incorrectly.
  404. echo.
  405. echo Vacation.con
  406. echo VacaEDuke.con
  407. echo VacaDefs.con
  408. echo VacaUser.con
  409. echo VacaDP.con
  410. echo VacaDPCode.con
  411. echo VacaDPXXX.con
  412. echo VSounds.con
  413. echo VBeachBabe.con
  414. echo VBeachBall.con
  415. echo VBeachBather.con
  416. echo VDragon.con
  417. echo VSeagull.con
  418. echo.
  419. echo IF THESE ARE THE ORIGINAL CARIBBEAN CON FILES, OR THEY COME FROM
  420. echo AN OUTDATED VERSION OF VACA+, REMOVE THEM FROM YOUR %exeproper% DIRECTORY
  421. echo IMMEDIATELY^!
  422. echo Vaca+ uses modified .con files to fix programming errors created by
  423. echo the original programmers. Due to improvements made to the levels,
  424. echo Vaca+ will have major errors if the included .con files are not used.
  425. goto confound_done
  426.  
  427. :execheck
  428. if exist %exename%.bat goto execheck_done
  429. if exist ..\%exename%.exe (
  430. cd ..
  431. goto recheck
  432. )
  433. if exist ..\..\%exename%.exe (
  434. cd ..\..
  435. goto recheck
  436. )
  437. if exist ..\..\..\%exename%.exe (
  438. cd ..\..\..
  439. goto recheck
  440. )
  441. if exist ..\%exename%.bat (
  442. cd ..
  443. goto execheck_done
  444. )
  445. if exist ..\..\%exename%.bat (
  446. cd ..\..
  447. goto execheck_done
  448. )
  449. if exist ..\..\..\%exename%.bat (
  450. cd ..\..\..
  451. goto execheck_done
  452. )
  453. echo Warning: You don't have %exeproper% in your directory.
  454. goto execheck_done
  455.  
  456. :nodir
  457. echo.
  458. echo Error: "vaca_plus" data directory not found.
  459. echo Aborting launch.
  460. echo.
  461. pause
  462. goto end
  463.  
  464. :end
  465. echo.
  466. set editor=0
  467. set xxx=0
  468. set dp=0
  469. set debug=0
  470. cd %dir%
  471. @title %ComSpec%
  472. @color 07
  473.