Subversion Repositories vaca_plus

Rev

Rev 21 | Rev 25 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

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