Subversion Repositories nw_plus

Rev

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

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