Subversion Repositories nw_plus

Rev

Rev 28 | Rev 30 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 28 Rev 29
1
@echo off
1
@echo off
2
@color 0C
2
@color 0C
3
3
4
:restart
4
:restart
5
title Duke: Nuclear Winter Plus Launcher
5
title Duke: Nuclear Winter Plus Launcher
6
if "%editor%"=="1" title Duke: Nuclear Winter Plus Editor Launcher
6
if "%editor%"=="1" title Duke: Nuclear Winter Plus Editor Launcher
7
7
8
set dir=%cd%
8
set dir=%cd%
9
set exedir=%~dp0
9
set exedir=%~dp0
10
set addondir=%~dp0
10
set addondir=%~dp0
11
set addonhrpdir=%~dp0
11
set addonhrpdir=%~dp0
12
12
13
set exename=eduke32
13
set exename=eduke32
14
set exeproper=EDuke32
14
set exeproper=EDuke32
15
set action=playing
15
set action=playing
16
16
17
if "%editor%"=="1" (
17
if "%editor%"=="1" (
18
set exename=mapster32
18
set exename=mapster32
19
set exeproper=Mapster32
19
set exeproper=Mapster32
20
set action=editing
20
set action=editing
21
)
21
)
22
22
23
set addonver=r004
23
set addonver=r004
24
24
25
:title
25
:title
26
echo                          ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
26
echo                          ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
27
echo                          º Duke: Nuclear Winter Plus º
27
echo                          º Duke: Nuclear Winter Plus º
28
echo                          ÈÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍͼ
28
echo                          ÈÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍͼ
29
echo                               ³ By Hendricks266 ³
29
echo                               ³ By Hendricks266 ³
30
echo                               ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
30
echo                               ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
31
echo.
31
echo.
32
echo You are %action% Simply Silly Software's Duke: Nuclear Winter with the various
32
echo You are %action% Simply Silly Software's Duke: Nuclear Winter with the various
33
echo enhancements of Duke: Nuclear Winter Plus, maintained by Hendricks266.
33
echo enhancements of Duke: Nuclear Winter Plus, maintained by Hendricks266.
34
echo.
34
echo.
35
35
36
36
37
if "%xxx%"=="1" echo Using XXX mode.
37
if "%xxx%"=="1" echo Using XXX mode.
38
if "%dp%"=="1" echo Using Duke Plus by DeeperThought.
38
if "%dp%"=="1" echo Using Duke Plus by DeeperThought.
39
if "%debug%"=="1" echo Using debug mode.
39
if "%debug%"=="1" echo Using debug mode.
40
40
41
:recheck
41
:recheck
42
if not exist %exename%.exe goto execheck
42
if not exist %exename%.exe goto execheck
43
:execheck_done
43
:execheck_done
44
set exedir=%cd%
44
set exedir=%cd%
45
if "%debug%"=="1" echo DEBUG: %exeproper% Directory: "%exedir%"
45
if "%debug%"=="1" echo DEBUG: %exeproper% Directory: "%exedir%"
46
46
47
if not exist nw_plus\ goto nodir
47
if not exist nw_plus\ goto nodir
48
if not exist duke3d.grp echo Warning: You don't have Duke3D.grp in your directory.
48
if not exist duke3d.grp echo Warning: You don't have Duke3D.grp in your directory.
49
49
50
if exist nwinter\ set addonhrpdir=%cd%
50
if exist nwinter\ set addonhrpdir=%cd%
51
:addondircheck
51
:addondircheck
52
52
53
cd nw_plus
53
cd nw_plus
54
set addondir=%cd%
54
set addondir=%cd%
55
if exist nwinter\ set addonhrpdir=%cd%
55
if exist nwinter\ set addonhrpdir=%cd%
56
if exist nw_plus\ goto addondircheck
56
if exist nw_plus\ goto addondircheck
57
if "%debug%"=="1" echo DEBUG: NW+ Directory: "%addondir%".
57
if "%debug%"=="1" echo DEBUG: NW+ Directory: "%addondir%".
58
if "%debug%"=="1" echo DEBUG: NWHRP Directory: "%addonhrpdir%".
58
if "%debug%"=="1" echo DEBUG: NWHRP Directory: "%addonhrpdir%".
59
59
60
if not exist "%addondir%\NWINTER.GRP" (
60
if not exist "%addondir%\NWINTER.GRP" (
61
if exist "%exedir%\NWINTER.GRP" (
61
if exist "%exedir%\NWINTER.GRP" (
62
move /y "%exedir%\NWINTER.GRP" "%addondir%\"
62
move /y "%exedir%\NWINTER.GRP" "%addondir%\"
63
ren "%addondir%\NWINTER.GRP" nwinter.grp
63
ren "%addondir%\NWINTER.GRP" nwinter.grp
64
) else (
64
) else (
65
goto nonwgrp
65
goto nonwgrp
66
) )
66
) )
67
67
68
:nonwgrp_return
68
:nonwgrp_return
69
if not exist nwl1.map goto mapextract
69
if not exist nwl1.map goto mapextract
70
if not exist nwl2.map goto mapextract
70
if not exist nwl2.map goto mapextract
71
if not exist nwl3.map goto mapextract
71
if not exist nwl3.map goto mapextract
72
if not exist nwl4.map goto mapextract
72
if not exist nwl4.map goto mapextract
73
if not exist nwl5.map goto mapextract
73
if not exist nwl5.map goto mapextract
74
if not exist nwl6.map goto mapextract
74
if not exist nwl6.map goto mapextract
75
if not exist nwl7.map goto mapextract
75
if not exist nwl7.map goto mapextract
76
if not exist nwl8.map goto mapextract
76
if not exist nwl8.map goto mapextract
77
if not exist nwflag_%addonver%.h266 goto updateextract
77
if not exist nwflag_%addonver%.h266 goto updateextract
78
78
79
79
80
80
81
81
82
cd "%exedir%"
82
cd "%exedir%"
83
echo.
83
echo.
84
echo To switch your character, open the console (~) and type one of the following:
84
echo To switch your character, open the console (~) and type one of the following:
85
echo Duke: "setvar skin 0".
85
echo Duke: "setvar skin 0".
86
echo Santa: "setvar skin 1".
86
echo Santa: "setvar skin 1".
87
echo.
87
echo.
88
echo.
88
echo.
89
89
90
:init
90
:init
91
pause
91
pause
92
echo.
92
echo.
93
goto check
93
goto check
94
94
95
:check
95
:check
96
96
97
echo.
97
echo.
98
echo Launching Duke Nukem 3D . . .
98
echo Launching Duke Nukem 3D . . .
99
echo Thanks for %action%^!
99
echo Thanks for %action%^!
100
100
101
if "%editor%"=="1" (
101
if "%editor%"=="1" (
102
type "%exedir%\names.h" > "%exedir%\NWNames.h"
102
type "%exedir%\names.h" > "%exedir%\NWNames.h"
103
echo. >> "%exedir%\NWNames.h"
103
echo. >> "%exedir%\NWNames.h"
104
type "%addondir%\NWNames.def" >> "%exedir%\NWNames.h"
104
type "%addondir%\NWNames.def" >> "%exedir%\NWNames.h"
105
)
105
)
106
106
107
:arguments
107
:arguments
108
set args=
108
set args=
109
if exist "%exedir%\polymer_hrp\" set args=%args% -jpolymer_hrp
109
if exist "%exedir%\polymer_hrp\" set args=%args% -jpolymer_hrp
110
if exist "%exedir%\duke3d_voxel.zip" set args=%args% -gduke3d_voxel.zip
110
if exist "%exedir%\duke3d_voxel.zip" set args=%args% -gduke3d_voxel.zip
111
if exist "%exedir%\duke3d_hrp.zip" set args=%args% -gduke3d_hrp.zip
111
if exist "%exedir%\duke3d_hrp.zip" set args=%args% -gduke3d_hrp.zip
112
if exist "%exedir%\hrp_update.zip" set args=%args% -ghrp_update.zip
112
if exist "%exedir%\hrp_update.zip" set args=%args% -ghrp_update.zip
113
if exist "%exedir%\maphacks.zip" set args=%args% -gmaphacks.zip
113
if exist "%exedir%\maphacks.zip" set args=%args% -gmaphacks.zip
114
if exist "%exedir%\eduke32_mus.zip" set args=%args% -geduke32_mus.zip
114
if exist "%exedir%\eduke32_mus.zip" set args=%args% -geduke32_mus.zip
115
if exist "%addondir%" set args=%args% -j"%addondir:\=/%"
115
if exist "%addondir%" if not "%addondir%"=="%exedir%" set args=%args% -j"%addondir:\=/%"
116
if exist "%addonhrpdir%" set args=%args% -j"%addonhrpdir:\=/%"
116
if exist "%addonhrpdir%" if not "%addonhrpdir%"=="%exedir%" if not "%addonhrpdir%"=="%addondir%" set args=%args% -j"%addonhrpdir:\=/%"
117
set args=%args% -gnwinter.grp -hnwinter.def -xNWEDuke.con
117
set args=%args% -gnwinter.grp -hnwinter.def -xNWEDuke.con
118
if "%editor%"=="1" set args=%args% -namesfile NWNames.h
118
if "%editor%"=="1" set args=%args% -namesfile NWNames.h
119
if "%dp%"=="1" set args=%args% -hnw_dp.def -xNWDP.con
119
if "%dp%"=="1" set args=%args% -hnw_dp.def -xNWDP.con
120
if "%xxx%"=="1" if exist "%exedir%\xxx_lite.zip" set args=%args% -gxxx_lite.zip
120
if "%xxx%"=="1" if exist "%exedir%\xxx_lite.zip" set args=%args% -gxxx_lite.zip
121
if "%xxx%"=="1" if exist "%exedir%\xxx_lite\" set args=%args% -jxxx_lite
121
if "%xxx%"=="1" if exist "%exedir%\xxx_lite\" set args=%args% -jxxx_lite
122
if "%xxx%"=="1" if exist "%exedir%\xxx_pack.zip" set args=%args% -gxxx_pack.zip
122
if "%xxx%"=="1" if exist "%exedir%\xxx_pack.zip" set args=%args% -gxxx_pack.zip
123
if "%xxx%"=="1" if exist "%exedir%\xxx_pack\" set args=%args% -jxxx_pack
123
if "%xxx%"=="1" if exist "%exedir%\xxx_pack\" set args=%args% -jxxx_pack
124
if "%xxx%"=="1" set args=%args% -hnw_xxx.def
124
if "%xxx%"=="1" set args=%args% -hnw_xxx.def
125
if "%xxx%"=="1" if "%dp%"=="1" set args=%args% -hnw_dp_xxx.def -xNWDPXXX.con
125
if "%xxx%"=="1" if "%dp%"=="1" set args=%args% -hnw_dp_xxx.def -xNWDPXXX.con
126
set args=%args% %*
126
set args=%args% %*
127
if "%dp%"=="1" set args=%args% -jDukePlus
127
if "%dp%"=="1" set args=%args% -jDukePlus
128
128
129
set exe=%exename%
129
set exe=%exename%
130
if "%debug%"=="1" set exe=%exename%.debug
130
if "%debug%"=="1" set exe=%exename%.debug
131
131
132
if exist %exe%.bat (
132
if exist %exe%.bat (
133
call %exe%.bat %args%
133
call %exe%.bat %args%
134
) else (
134
) else (
135
start %exe%.exe %args%
135
start %exe%.exe %args%
136
)
136
)
137
137
138
goto end
138
goto end
139
139
140
:nonwgrp
140
:nonwgrp
141
echo.
141
echo.
142
echo Error: You don't have NWINTER.GRP in your directory.
142
echo Error: You don't have NWINTER.GRP in your directory.
143
143
144
144
145
:retry
145
:retry
146
echo.
146
echo.
147
set cddrive=
147
set cddrive=
148
set /p cddrive=What is the drive letter that your Nuclear Winter CD is in?
148
set /p cddrive=What is the drive letter that your Nuclear Winter CD is in?
149
echo.
149
echo.
150
if not '%cddrive%'=='' set cddrive=%cddrive:~0,1%
150
if not '%cddrive%'=='' set cddrive=%cddrive:~0,1%
151
if '%cddrive%'=='' goto cdno
151
if '%cddrive%'=='' goto cdno
152
if not exist %cddrive%:\ goto cdno
152
if not exist %cddrive%:\ goto cdno
153
if not exist %cddrive%:\* goto cdno
153
if not exist %cddrive%:\* goto cdno
154
if not exist %cddrive%:\GAMEDATA\NWINTER.GRP goto cdw
154
if not exist %cddrive%:\GAMEDATA\NWINTER.GRP goto cdw
155
copy %cddrive%:GAMEDATA\NWINTER.GRP .\nwinter.grp
155
copy %cddrive%:GAMEDATA\NWINTER.GRP .\nwinter.grp
156
echo.
156
echo.
157
type NWINTRO.TXT
157
type NWINTRO.TXT
158
echo.
158
echo.
159
pause
159
pause
160
160
161
echo a6728f621f121f9db02ee67c39efdbb5eea95711 *nwinter.grp | "%addondir%\utils\windows\win32\sha1sum.exe" --status --check -
161
echo a6728f621f121f9db02ee67c39efdbb5eea95711 *nwinter.grp | "%addondir%\utils\windows\win32\sha1sum.exe" --status --check -
162
if "%ERRORLEVEL%"=="0" echo NWINTER.GRP checksum verified.
162
if "%ERRORLEVEL%"=="0" echo NWINTER.GRP checksum verified.
163
if "%ERRORLEVEL%"=="1" echo NWINTER.GRP checksum does not match. You may have a bad copy.
163
if "%ERRORLEVEL%"=="1" echo NWINTER.GRP checksum does not match. You may have a bad copy.
164
goto nonwgrp_return
164
goto nonwgrp_return
165
165
166
166
167
:cdno
167
:cdno
168
echo '%cddrive%' is not valid.  Please try again.
168
echo '%cddrive%' is not valid.  Please try again.
169
goto retry
169
goto retry
170
170
171
:cdw
171
:cdw
172
echo '%cddrive%' is not the correct disc.  Please try again.
172
echo '%cddrive%' is not the correct disc.  Please try again.
173
goto retry
173
goto retry
174
174
175
:mapextract
175
:mapextract
176
echo Extracted maps not found. Proceeding to installation.
176
echo Extracted maps not found. Proceeding to installation.
177
goto extract
177
goto extract
178
178
179
:updateextract
179
:updateextract
180
echo Map patch update required. Proceeding to installation.
180
echo Map patch update required. Proceeding to installation.
181
goto extract
181
goto extract
182
182
183
:extract
183
:extract
184
echo.
184
echo.
185
echo                                ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
185
echo                                ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
186
echo                                º Installation º
186
echo                                º Installation º
187
echo                                ÈÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
187
echo                                ÈÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
188
echo.
188
echo.
189
if not exist nwl1.patch goto nopatch
189
if not exist nwl1.patch goto nopatch
190
if not exist nwl2.patch goto nopatch
190
if not exist nwl2.patch goto nopatch
191
if not exist nwl3.patch goto nopatch
191
if not exist nwl3.patch goto nopatch
192
if not exist nwl4.patch goto nopatch
192
if not exist nwl4.patch goto nopatch
193
if not exist nwl5.patch goto nopatch
193
if not exist nwl5.patch goto nopatch
194
if not exist nwl6.patch goto nopatch
194
if not exist nwl6.patch goto nopatch
195
if not exist nwl7.patch goto nopatch
195
if not exist nwl7.patch goto nopatch
196
if not exist nwl8.patch goto nopatch
196
if not exist nwl8.patch goto nopatch
197
md nw_preserve
197
md nw_preserve
198
if exist nwl*.map move /y nwl*.map nw_preserve\
198
if exist nwl*.map move /y nwl*.map nw_preserve\
199
if exist "%exedir%\nwl*.map" move /y "%exedir%\nwl*.map" nw_preserve\
199
if exist "%exedir%\nwl*.map" move /y "%exedir%\nwl*.map" nw_preserve\
200
"%addondir%\utils\windows\win32\kextract.exe" NWINTER.GRP E2L*.MAP
200
"%addondir%\utils\windows\win32\kextract.exe" NWINTER.GRP E2L*.MAP
201
ren E2L1.MAP nwl1.map
201
ren E2L1.MAP nwl1.map
202
ren E2L2.MAP nwl2.map
202
ren E2L2.MAP nwl2.map
203
ren E2L3.MAP nwl3.map
203
ren E2L3.MAP nwl3.map
204
ren E2L4.MAP nwl4.map
204
ren E2L4.MAP nwl4.map
205
ren E2L5.MAP nwl5.map
205
ren E2L5.MAP nwl5.map
206
ren E2L6.MAP nwl6.map
206
ren E2L6.MAP nwl6.map
207
ren E2L7.MAP nwl7.map
207
ren E2L7.MAP nwl7.map
208
ren E2L8.MAP nwl8.map
208
ren E2L8.MAP nwl8.map
209
if exist nwpatch*.h266 del /f /q nwpatch*.h266
209
if exist nwpatch*.h266 del /f /q nwpatch*.h266
210
if exist nwflag*.h266 del /f /q nwflag*.h266
210
if exist nwflag*.h266 del /f /q nwflag*.h266
211
echo.
211
echo.
212
echo Map patching will now begin.
212
echo Map patching will now begin.
213
echo.
213
echo.
214
pause
214
pause
215
echo
215
echo
216
"%addondir%\utils\windows\win32\bspatch.exe" nwl1.map nwl1.map nwl1.patch
216
"%addondir%\utils\windows\win32\bspatch.exe" nwl1.map nwl1.map nwl1.patch
217
"%addondir%\utils\windows\win32\bspatch.exe" nwl2.map nwl2.map nwl2.patch
217
"%addondir%\utils\windows\win32\bspatch.exe" nwl2.map nwl2.map nwl2.patch
218
"%addondir%\utils\windows\win32\bspatch.exe" nwl3.map nwl3.map nwl3.patch
218
"%addondir%\utils\windows\win32\bspatch.exe" nwl3.map nwl3.map nwl3.patch
219
"%addondir%\utils\windows\win32\bspatch.exe" nwl4.map nwl4.map nwl4.patch
219
"%addondir%\utils\windows\win32\bspatch.exe" nwl4.map nwl4.map nwl4.patch
220
"%addondir%\utils\windows\win32\bspatch.exe" nwl5.map nwl5.map nwl5.patch
220
"%addondir%\utils\windows\win32\bspatch.exe" nwl5.map nwl5.map nwl5.patch
221
"%addondir%\utils\windows\win32\bspatch.exe" nwl6.map nwl6.map nwl6.patch
221
"%addondir%\utils\windows\win32\bspatch.exe" nwl6.map nwl6.map nwl6.patch
222
"%addondir%\utils\windows\win32\bspatch.exe" nwl7.map nwl7.map nwl7.patch
222
"%addondir%\utils\windows\win32\bspatch.exe" nwl7.map nwl7.map nwl7.patch
223
"%addondir%\utils\windows\win32\bspatch.exe" nwl8.map nwl8.map nwl8.patch
223
"%addondir%\utils\windows\win32\bspatch.exe" nwl8.map nwl8.map nwl8.patch
224
if exist nwpatch*.h266 del /f /q nwpatch*.h266
224
if exist nwpatch*.h266 del /f /q nwpatch*.h266
225
if exist nwflag*.h266 del /f /q nwflag*.h266
225
if exist nwflag*.h266 del /f /q nwflag*.h266
226
echo Do not delete this file^! You will be forced to reinstall NW+ and repatch the maps. >nwflag_%addonver%.h266
226
echo Do not delete this file^! You will be forced to reinstall NW+ and repatch the maps. >nwflag_%addonver%.h266
227
attrib +r nwflag_%addonver%.h266
227
attrib +r nwflag_%addonver%.h266
228
echo.
228
echo.
229
echo Patching complete^!
229
echo Patching complete^!
230
:scanning
230
:scanning
231
cd "%exedir%"
231
cd "%exedir%"
232
echo.
232
echo.
233
echo Scanning directory for potential problems.
233
echo Scanning directory for potential problems.
234
if exist nwl1.mhk goto mhkfound
234
if exist nwl1.mhk goto mhkfound
235
if exist nwl1demo.mhk goto mhkfound
235
if exist nwl1demo.mhk goto mhkfound
236
if exist nwl2.mhk goto mhkfound
236
if exist nwl2.mhk goto mhkfound
237
if exist nwl3.mhk goto mhkfound
237
if exist nwl3.mhk goto mhkfound
238
if exist nwl4.mhk goto mhkfound
238
if exist nwl4.mhk goto mhkfound
239
if exist nwl5.mhk goto mhkfound
239
if exist nwl5.mhk goto mhkfound
240
if exist nwl6.mhk goto mhkfound
240
if exist nwl6.mhk goto mhkfound
241
if exist nwl7.mhk goto mhkfound
241
if exist nwl7.mhk goto mhkfound
242
if exist nwl8.mhk goto mhkfound
242
if exist nwl8.mhk goto mhkfound
243
if exist _nwzoo.mhk goto mhkfound
243
if exist _nwzoo.mhk goto mhkfound
244
:mhkfound_done
244
:mhkfound_done
245
if exist TILES005.ART goto artfound
245
if exist TILES005.ART goto artfound
246
if exist TILES006.ART goto artfound
246
if exist TILES006.ART goto artfound
247
if exist TILES007.ART goto artfound
247
if exist TILES007.ART goto artfound
248
if exist TILES008.ART goto artfound
248
if exist TILES008.ART goto artfound
249
if exist TILES009.ART goto artfound
249
if exist TILES009.ART goto artfound
250
if exist TILES012.ART goto artfound
250
if exist TILES012.ART goto artfound
251
if exist TILES013.ART goto artfound
251
if exist TILES013.ART goto artfound
252
if exist TILES014.ART goto artfound
252
if exist TILES014.ART goto artfound
253
if exist TILES015.ART goto artfound
253
if exist TILES015.ART goto artfound
254
:artfound_done
254
:artfound_done
255
call :checksum c6b8ca33ea6a2ec46b8dfeca4f9a3d5e078d0789 NWACTOR.CON "NWINTER file detected and neutralized:"
255
call :checksum c6b8ca33ea6a2ec46b8dfeca4f9a3d5e078d0789 NWACTOR.CON "NWINTER file detected and neutralized:"
256
call :checksum fdb91aa2912f16232ed9020a7d8ec35834ef58c8 NWDEFS.CON "NWINTER file detected and neutralized:"
256
call :checksum fdb91aa2912f16232ed9020a7d8ec35834ef58c8 NWDEFS.CON "NWINTER file detected and neutralized:"
257
call :checksum 2bb2ddc7319e0935569b724f3c67cb953fdb79d6 NWINTER.CON "NWINTER file detected and neutralized:"
257
call :checksum 2bb2ddc7319e0935569b724f3c67cb953fdb79d6 NWINTER.CON "NWINTER file detected and neutralized:"
258
call :checksum 5ae347733be1f87f35d1930186de1ed764f4682f NWSNOW.CON "NWINTER file detected and neutralized:"
258
call :checksum 5ae347733be1f87f35d1930186de1ed764f4682f NWSNOW.CON "NWINTER file detected and neutralized:"
259
call :checksum 5df8b3b4216dcfdb8bc0adf6241f8a893eacfd98 NWUSER.CON "NWINTER file detected and neutralized:"
259
call :checksum 5df8b3b4216dcfdb8bc0adf6241f8a893eacfd98 NWUSER.CON "NWINTER file detected and neutralized:"
260
if exist NWinter.con goto confound
260
if exist NWinter.con goto confound
261
if exist NWActor.con goto confound
261
if exist NWActor.con goto confound
262
if exist NWDefs.con goto confound
262
if exist NWDefs.con goto confound
263
if exist NWDP.con goto confound
263
if exist NWDP.con goto confound
264
if exist NWDPCode.con goto confound
264
if exist NWDPCode.con goto confound
265
if exist NWDPXXX.con goto confound
265
if exist NWDPXXX.con goto confound
266
if exist NWEDuke.con goto confound
266
if exist NWEDuke.con goto confound
267
if exist NWSnow.con goto confound
267
if exist NWSnow.con goto confound
268
if exist NWUser.con goto confound
268
if exist NWUser.con goto confound
269
:confound_done
269
:confound_done
270
cd /d "%exedir%"
270
cd /d "%exedir%"
271
if not exist GAME.CON "%addondir%\utils\windows\win32\kextract.exe" DUKE3D.GRP GAME.CON
271
if not exist GAME.CON "%addondir%\utils\windows\win32\kextract.exe" DUKE3D.GRP GAME.CON
272
if not exist DEFS.CON "%addondir%\utils\windows\win32\kextract.exe" DUKE3D.GRP DEFS.CON
272
if not exist DEFS.CON "%addondir%\utils\windows\win32\kextract.exe" DUKE3D.GRP DEFS.CON
273
if not exist USER.CON "%addondir%\utils\windows\win32\kextract.exe" DUKE3D.GRP USER.CON
273
if not exist USER.CON "%addondir%\utils\windows\win32\kextract.exe" DUKE3D.GRP USER.CON
274
cd /d "%addondir%"
274
cd /d "%addondir%"
275
echo.
275
echo.
276
pause
276
pause
277
goto restart
277
goto restart
278
278
279
:checksum
279
:checksum
280
if not exist "%~2" goto :eof
280
if not exist "%~2" goto :eof
281
echo %~1 *%~2 | "%addondir%\utils\windows\win32\sha1sum.exe" --status --check -
281
echo %~1 *%~2 | "%addondir%\utils\windows\win32\sha1sum.exe" --status --check -
282
if "%ERRORLEVEL%"=="0" (
282
if "%ERRORLEVEL%"=="0" (
283
ren "%~2" "NWOld_%~nx2"
283
ren "%~2" "NWOld_%~nx2"
284
echo %~3 %~nx2
284
echo %~3 %~nx2
285
)
285
)
286
goto :eof
286
goto :eof
287
287
288
:nopatch
288
:nopatch
289
echo.
289
echo.
290
echo Error: You don't have all the *.patch files in your directory.
290
echo Error: You don't have all the *.patch files in your directory.
291
echo Aborting installation.
291
echo Aborting installation.
292
echo Map patching is required for NW+ to function correctly.
292
echo Map patching is required for NW+ to function correctly.
293
echo.
293
echo.
294
pause
294
pause
295
goto end
295
goto end
296
296
297
:mhkfound
297
:mhkfound
298
echo.
298
echo.
299
echo Problematic .mhk files have been found in your directory.
299
echo Problematic .mhk files have been found in your directory.
300
echo Unless you have knowingly made a modification to NW's map hacks,
300
echo Unless you have knowingly made a modification to NW's map hacks,
301
echo the presence of these files in your %exeproper% directory will
301
echo the presence of these files in your %exeproper% directory will
302
echo cause NW+ to function incorrectly.
302
echo cause NW+ to function incorrectly.
303
echo.
303
echo.
304
echo nwl1.mhk
304
echo nwl1.mhk
305
echo nwl1demo.mhk
305
echo nwl1demo.mhk
306
echo nwl2.mhk
306
echo nwl2.mhk
307
echo nwl3.mhk
307
echo nwl3.mhk
308
echo nwl4.mhk
308
echo nwl4.mhk
309
echo nwl5.mhk
309
echo nwl5.mhk
310
echo nwl6.mhk
310
echo nwl6.mhk
311
echo nwl7.mhk
311
echo nwl7.mhk
312
echo nwl8.mhk
312
echo nwl8.mhk
313
echo _nwzoo.mhk
313
echo _nwzoo.mhk
314
goto mhkfound_done
314
goto mhkfound_done
315
315
316
:artfound
316
:artfound
317
echo.
317
echo.
318
echo Problematic .art files have been found in your directory.
318
echo Problematic .art files have been found in your directory.
319
echo Unless you have knowingly made a modification to NW's art,
319
echo Unless you have knowingly made a modification to NW's art,
320
echo the presence of these files in your %exeproper% directory will
320
echo the presence of these files in your %exeproper% directory will
321
echo cause NW+ to function incorrectly.
321
echo cause NW+ to function incorrectly.
322
echo.
322
echo.
323
echo TILES005.ART
323
echo TILES005.ART
324
echo TILES006.ART
324
echo TILES006.ART
325
echo TILES007.ART
325
echo TILES007.ART
326
echo TILES008.ART
326
echo TILES008.ART
327
echo TILES009.ART
327
echo TILES009.ART
328
echo TILES012.ART
328
echo TILES012.ART
329
echo TILES013.ART
329
echo TILES013.ART
330
echo TILES014.ART
330
echo TILES014.ART
331
echo TILES015.ART
331
echo TILES015.ART
332
goto artfound_done
332
goto artfound_done
333
333
334
:confound
334
:confound
335
echo.
335
echo.
336
echo Problematic .con files have been found in your directory.
336
echo Problematic .con files have been found in your directory.
337
echo Unless you have knowingly made a modification to NW's programming,
337
echo Unless you have knowingly made a modification to NW's programming,
338
echo the presence of these files in your %exeproper% directory will
338
echo the presence of these files in your %exeproper% directory will
339
echo cause NW+ to function incorrectly.
339
echo cause NW+ to function incorrectly.
340
echo.
340
echo.
341
echo NWinter.con
341
echo NWinter.con
342
echo NWEDuke.con
342
echo NWEDuke.con
343
echo NWDefs.con
343
echo NWDefs.con
344
echo NWUser.con
344
echo NWUser.con
345
echo NWDP.con
345
echo NWDP.con
346
echo NWDPCode.con
346
echo NWDPCode.con
347
echo NWDPXXX.con
347
echo NWDPXXX.con
348
echo NWActor.con
348
echo NWActor.con
349
echo NWSnow.con
349
echo NWSnow.con
350
echo.
350
echo.
351
echo IF THESE ARE THE ORIGINAL NUCLEAR WINTER CON FILES, OR THEY COME FROM
351
echo IF THESE ARE THE ORIGINAL NUCLEAR WINTER CON FILES, OR THEY COME FROM
352
echo AN OUTDATED VERSION OF NW+, REMOVE THEM FROM YOUR %exeproper% DIRECTORY
352
echo AN OUTDATED VERSION OF NW+, REMOVE THEM FROM YOUR %exeproper% DIRECTORY
353
echo IMMEDIATELY^!
353
echo IMMEDIATELY^!
354
echo NW+ uses modified .con files to fix programming errors created by
354
echo NW+ uses modified .con files to fix programming errors created by
355
echo the original programmers. Due to improvements made to the levels,
355
echo the original programmers. Due to improvements made to the levels,
356
echo NW+ will have major errors if the included .con files are not used.
356
echo NW+ will have major errors if the included .con files are not used.
357
goto confound_done
357
goto confound_done
358
358
359
:execheck
359
:execheck
360
if exist %exename%.bat goto execheck_done
360
if exist %exename%.bat goto execheck_done
361
if exist ..\%exename%.exe (
361
if exist ..\%exename%.exe (
362
cd ..
362
cd ..
363
goto recheck
363
goto recheck
364
)
364
)
365
if exist ..\..\%exename%.exe (
365
if exist ..\..\%exename%.exe (
366
cd ..\..
366
cd ..\..
367
goto recheck
367
goto recheck
368
)
368
)
369
if exist ..\..\..\%exename%.exe (
369
if exist ..\..\..\%exename%.exe (
370
cd ..\..\..
370
cd ..\..\..
371
goto recheck
371
goto recheck
372
)
372
)
373
if exist ..\%exename%.bat (
373
if exist ..\%exename%.bat (
374
cd ..
374
cd ..
375
goto execheck_done
375
goto execheck_done
376
)
376
)
377
if exist ..\..\%exename%.bat (
377
if exist ..\..\%exename%.bat (
378
cd ..\..
378
cd ..\..
379
goto execheck_done
379
goto execheck_done
380
)
380
)
381
if exist ..\..\..\%exename%.bat (
381
if exist ..\..\..\%exename%.bat (
382
cd ..\..\..
382
cd ..\..\..
383
goto execheck_done
383
goto execheck_done
384
)
384
)
385
echo Warning: You don't have %exeproper% in your directory.
385
echo Warning: You don't have %exeproper% in your directory.
386
goto execheck_done
386
goto execheck_done
387
387
388
:nodir
388
:nodir
389
echo.
389
echo.
390
echo Error: "nw_plus" data directory not found.
390
echo Error: "nw_plus" data directory not found.
391
echo Aborting launch.
391
echo Aborting launch.
392
echo.
392
echo.
393
pause
393
pause
394
goto end
394
goto end
395
395
396
:end
396
:end
397
echo.
397
echo.
398
set editor=0
398
set editor=0
399
set xxx=0
399
set xxx=0
400
set dp=0
400
set dp=0
401
set debug=0
401
set debug=0
402
cd %dir%
402
cd %dir%
403
@title %ComSpec%
403
@title %ComSpec%
404
@color 07
404
@color 07
405
 
405