Subversion Repositories nw_plus

Rev

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

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