home *** CD-ROM | disk | FTP | other *** search
/ Over 1,000 Doom Levels / 1000DOOMLevels-3DSharewareGames.bin / pc / doomwads / doombat1 / doom.bat < prev    next >
DOS Batch File  |  1994-03-10  |  12KB  |  410 lines

  1. @ECHO OFF
  2. ::
  3. :: This bat file writen by: Mr. Eric M. Evans :: March 10th, 1994
  4. :: Requires Waitkey.exe (included)
  5. :: Requires Ansi driver (not included, see your DOS Manual)
  6. :: Requires 70 bytes of environment space as is. (see DOS Manual)
  7. ::
  8. :: This batch file is set up for three local players, Net games, and will also
  9. :: run the RanDoom program.  WARNING Randoom (as of v1.41) still has bugs in it.
  10. :: Keep an unmodified copy of your DOOM.WAD file handy for net-games.
  11. :: You must either make/rename the directories that are needed, or change
  12. :: the dir. names in this batch file to match your setup.
  13. :: You must make the save game sub-directories for this setup.
  14. ::
  15. :: EXAMPLE: player Eric has savegames/cfg files in sub-dir EME.
  16. :: path EXAMPLE: c:\games\doom\eme = player Eric
  17. :: path EXAMPLE: c:\games\doom\cae = player Craig
  18. :: path EXAMPLE: c:\games\doom\gst = player Guest
  19. :: path EXAMPLE: c:\games\doom\net = net games (you could have multiple)
  20. ::
  21. :: This bat file uses two command line peramiters:
  22. :: #1 is the phone number to call.
  23. :: #2 is the seed for RanDoom. (see randoom documentation)
  24. :: EXAMPLE: Doom 18005551212
  25. :: EXAMPLE: Doom *70-1-800-555-1212 seed
  26. :: EXAMPLE: Doom anything seed
  27. ::
  28. :: The save games and config files ARE DELETED from the main doom directory.
  29. :: This is so that different peoples files will not intermix.
  30. ::
  31. :: Waitkey command line: 3 peramiters
  32. ::  #1 is the acceptable keys in errorlevel order "1234567" etc...
  33. ::  #2 is the prompt string to show user both #1 and #2 require quotes, and
  34. ::     all three must be seperated by a comma.  The ECHO . OK! is visual only.
  35. ::  #3 is the number of seconds to wait for imput, zero is wait forever.
  36. ::     Waitkey will exit after specified seconds with errorlevel 1 (one).
  37. ::
  38. :: ErrorLevels are ALWAYS tested highest to lowest. This is due to the fact
  39. :: that if errorlevel 5 is true, then errorlevel 0-4 are also true.
  40. ::
  41. ::  That's about it... Enjoy  ...  Avatar
  42. ::
  43. C:
  44. :START
  45. ECHO . OK!
  46. CLS
  47. ECHO 
  48. ECHO 
  49. ECHO               ╔════════════════════════════════════════════════════╗
  50. ECHO               ╠╦╦════════════════════════════════════════════════╦╦╣
  51. ECHO               ║║║   Welcome to the DOOM Central Control Station  ║║║
  52. ECHO               ╠╩╩════════════════════════════════════════════════╩╩╣
  53. ECHO               ╠════════════════════════════════════════════════════╣
  54. ECHO               ║  Type [C] To Start Doom for Craig                  ║
  55. ECHO               ║  Type [E] To Start Doom for Eric                   ║
  56. ECHO               ║  Type [G] To Start Doom for Guest                  ║
  57. ECHO               ║  Type [N] To Start Doom NET GAME...                ║
  58. ECHO               ║  Type [R] To Set up the RamDoomizer.               ║
  59. ECHO               ║  Type [Q] to QUIT TO DOS                           ║
  60. ECHO               ╚════════════════════════════════════════════════════╝
  61. ECHO 
  62. WAITKEY "CEGNRQ","                 Press appropriate key. ",0
  63. IF ERRORLEVEL 7 GOTO START
  64. IF ERRORLEVEL 6 GOTO QUIT
  65. IF ERRORLEVEL 5 GOTO RANDOOM
  66. IF ERRORLEVEL 4 GOTO PLAYERS
  67. IF ERRORLEVEL 3 GOTO GST
  68. IF ERRORLEVEL 2 GOTO EME
  69. IF ERRORLEVEL 1 GOTO CAE
  70. IF ERRORLEVEL 0 GOTO START
  71. :EME
  72. ECHO . OK!
  73. C:
  74. CD\GAMES\DOOM
  75. >NUL: COPY C:\GAMES\DOOM\EME\*.* .
  76. DOOM
  77. >NUL: COPY C:\GAMES\DOOM\*.CFG C:\GAMES\DOOM\EME
  78. >NUL: COPY C:\GAMES\DOOM\*.DSG C:\GAMES\DOOM\EME
  79. DEL C:\GAMES\DOOM\*.CFG
  80. DEL C:\GAMES\DOOM\*.DSG
  81. GOTO START
  82. :CAE
  83. ECHO . OK!
  84. C:
  85. CD\GAMES\DOOM
  86. >NUL: COPY C:\GAMES\DOOM\CAE\*.* .
  87. DOOM
  88. >NUL: COPY C:\GAMES\DOOM\*.CFG C:\GAMES\DOOM\CAE
  89. >NUL: COPY C:\GAMES\DOOM\*.DSG C:\GAMES\DOOM\CAE
  90. DEL C:\GAMES\DOOM\*.CFG
  91. DEL C:\GAMES\DOOM\*.DSG
  92. GOTO START
  93. :GST
  94. ECHO . OK!
  95. C:
  96. CD\GAMES\DOOM
  97. >NUL: COPY C:\GAMES\DOOM\GST\*.* .
  98. DOOM
  99. >NUL: COPY C:\GAMES\DOOM\*.CFG C:\GAMES\DOOM\GST
  100. >NUL: COPY C:\GAMES\DOOM\*.DSG C:\GAMES\DOOM\GST
  101. DEL C:\GAMES\DOOM\*.CFG
  102. DEL C:\GAMES\DOOM\*.DSG
  103. GOTO START
  104. :RANDOOM
  105. ECHO . OK!
  106. CLS
  107. ECHO 
  108. ECHO 
  109. ECHO            ╔══════════════════════════════════════════════════════════╗
  110. ECHO            ╠╦╦══════════════════════════════════════════════════════╦╦╣
  111. ECHO            ║║║                RanDoomizer Main Menu                 ║║║
  112. ECHO            ╠╩╩══════════════════════════════════════════════════════╩╩╣
  113. ECHO            ╠══════════════════════════════════════════════════════════╣
  114. ECHO            ║  Type [A] To Randomize Mode 0 - nothing +/-              ║
  115. ECHO            ║  Type [B] To Randomize Mode 1 - episode +/-              ║
  116. ECHO            ║  Type [C] To Randomize Mode 2 - totally random           ║
  117. ECHO            ║  Type [D] To Randomize Mode 0 Seed is %2 - nothing +/-     ║
  118. ECHO            ║  Type [E] To Randomize Mode 1 Seed is %2 - episode +/-     ║
  119. ECHO            ║  Type [F] To Randomize Mode 2 Seed is %2 - totally random  ║
  120. ECHO            ║  Type [R] To Restore the Default Levels.                 ║
  121. ECHO            ║  Type [Q] to QUIT TO MAIN                                ║
  122. ECHO            ╚══════════════════════════════════════════════════════════╝
  123. ECHO 
  124. WAITKEY "ABCDEFRQ","              Press appropriate key. ",0
  125. IF ERRORLEVEL 9 GOTO RANDOOM
  126. IF ERRORLEVEL 8 GOTO START
  127. IF ERRORLEVEL 7 GOTO RESTORE
  128. IF ERRORLEVEL 6 GOTO RANS3
  129. IF ERRORLEVEL 5 GOTO RANS2
  130. IF ERRORLEVEL 4 GOTO RANS1
  131. IF ERRORLEVEL 3 GOTO RAN3
  132. IF ERRORLEVEL 2 GOTO RAN2
  133. IF ERRORLEVEL 1 GOTO RAN1
  134. IF ERRORLEVEL 0 GOTO RANDOOM
  135. :RAN1
  136. ECHO . OK!
  137. C:
  138. CD\GAMES\DOOM
  139. RANDOOM DOOM.WAD -M0 -G
  140. GOTO RANDOOM
  141. :RAN2
  142. ECHO . OK!
  143. C:
  144. CD\GAMES\DOOM
  145. RANDOOM DOOM.WAD -M1 -G
  146. GOTO RANDOOM
  147. :RAN3
  148. ECHO . OK!
  149. C:
  150. CD\GAMES\DOOM
  151. RANDOOM DOOM.WAD -M2 -WRANDOOM.W -G
  152. GOTO RANDOOM
  153. :RANS1
  154. ECHO . OK!
  155. C:
  156. CD\GAMES\DOOM
  157. RANDOOM DOOM.WAD -M0 -C%2 -G
  158. GOTO RANDOOM
  159. :RANS2
  160. ECHO . OK!
  161. C:
  162. CD\GAMES\DOOM
  163. RANDOOM DOOM.WAD -M1 -C%2 -G
  164. GOTO RANDOOM
  165. :RANS3
  166. ECHO . OK!
  167. C:
  168. CD\GAMES\DOOM
  169. RANDOOM DOOM.WAD -M2 -WRANDOOM.W -C%2 -G
  170. GOTO RANDOOM
  171. :RESTORE
  172. ECHO . OK!
  173. C:
  174. CD\GAMES\DOOM
  175. RANDOOM DOOM.WAD -D -G
  176. GOTO RANDOOM
  177. :PLAYERS
  178. ECHO . OK!
  179. cls
  180. WAITKEY "234","Number of Players? [2], [3], [4], (default is 2). ",0
  181. IF ERRORLEVEL 4 GOTO PLAYERS
  182. IF ERRORLEVEL 3 GOTO IPX4
  183. IF ERRORLEVEL 2 GOTO IPX3
  184. IF ERRORLEVEL 1 GOTO IPX2
  185. IF ERRORLEVEL 0 GOTO PLAYERS
  186. :IPX2
  187. ECHO . OK!
  188. SET PLAYERS=2
  189. GOTO MATCH
  190. :IPX3
  191. ECHO . OK!
  192. SET PLAYERS=3
  193. GOTO MATCH
  194. :IPX4
  195. ECHO . OK!
  196. SET PLAYERS=4
  197. GOTO MATCH
  198. :MATCH
  199. ECHO . OK!
  200. cls
  201. WAITKEY "YN","Death Match Mode? [Y] or [N] (default is Y). ",0
  202. IF ERRORLEVEL 3 GOTO MATCH
  203. IF ERRORLEVEL 2 GOTO NO
  204. IF ERRORLEVEL 1 GOTO YES
  205. IF ERRORLEVEL 0 GOTO MATCH
  206. :YES
  207. ECHO . OK!
  208. SET MATCH=-DEATHMATCH
  209. GOTO SKILL
  210. :NO
  211. ECHO . OK!
  212. SET MATCH=
  213. GOTO SKILL
  214. :SKILL
  215. ECHO . OK!
  216. cls
  217. WAITKEY "41235","What Skill Level? [1], through [5] (default is 4). ",0
  218. IF ERRORLEVEL 6 GOTO SKILL
  219. IF ERRORLEVEL 5 GOTO SKL5
  220. IF ERRORLEVEL 4 GOTO SKL3
  221. IF ERRORLEVEL 3 GOTO SKL2
  222. IF ERRORLEVEL 2 GOTO SKL1
  223. IF ERRORLEVEL 1 GOTO SKL4
  224. IF ERRORLEVEL 0 GOTO SKILL
  225. :SKL4
  226. ECHO . OK!
  227. SET SKILL=4
  228. GOTO EPISODE
  229. :SKL1
  230. ECHO . OK!
  231. SET SKILL=1
  232. GOTO EPISODE
  233. :SKL2
  234. ECHO . OK!
  235. SET SKILL=2
  236. GOTO EPISODE
  237. :SKL3
  238. ECHO . OK!
  239. SET SKILL=3
  240. GOTO EPISODE
  241. :SKL5
  242. ECHO . OK!
  243. SET SKILL=5
  244. GOTO EPISODE
  245. :EPISODE
  246. ECHO . OK!
  247. cls
  248. WAITKEY "123","Which Episode? [1], [2], [3], (default is 1). ",0
  249. IF ERRORLEVEL 4 GOTO EPISODE
  250. IF ERRORLEVEL 3 GOTO EPS3
  251. IF ERRORLEVEL 2 GOTO EPS2
  252. IF ERRORLEVEL 1 GOTO EPS1
  253. IF ERRORLEVEL 0 GOTO EPISODE
  254. :EPS1
  255. ECHO . OK!
  256. SET EPISODE=1
  257. GOTO LOAD
  258. :EPS2
  259. ECHO . OK!
  260. SET EPISODE=2
  261. GOTO LOAD
  262. :EPS3
  263. ECHO . OK!
  264. SET EPISODE=3
  265. GOTO LOAD
  266. :LOAD
  267. ECHO . OK!
  268. cls
  269. WAITKEY "012345N","Do you want to load a game? [0] - [5] or [N] to NOT LOAD. ",0
  270. IF ERRORLEVEL 8 GOTO LOAD
  271. IF ERRORLEVEL 7 GOTO NOLOAD
  272. IF ERRORLEVEL 6 GOTO LOAD5
  273. IF ERRORLEVEL 5 GOTO LOAD4
  274. IF ERRORLEVEL 4 GOTO LOAD3
  275. IF ERRORLEVEL 3 GOTO LOAD2
  276. IF ERRORLEVEL 2 GOTO LOAD1
  277. IF ERRORLEVEL 1 GOTO LOAD0
  278. IF ERRORLEVEL 0 GOTO LOAD
  279. :LOAD0
  280. ECHO . OK!
  281. SET LOAD=-LOADGAME 0
  282. GOTO MONSTER
  283. :LOAD1
  284. ECHO . OK!
  285. SET LOAD=-LOADGAME 1
  286. GOTO MONSTER
  287. :LOAD2
  288. ECHO . OK!
  289. SET LOAD=-LOADGAME 2
  290. GOTO MONSTER
  291. :LOAD3
  292. ECHO . OK!
  293. SET LOAD=-LOADGAME 3
  294. GOTO MONSTER
  295. :LOAD4
  296. ECHO . OK!
  297. SET LOAD=-LOADGAME 4
  298. GOTO MONSTER
  299. :LOAD5
  300. ECHO . OK!
  301. SET LOAD=-LOADGAME 5
  302. GOTO MONSTER
  303. :NOLOAD
  304. ECHO . OK!
  305. SET LOAD=
  306. GOTO MONSTER
  307. :MONSTER
  308. ECHO . OK!
  309. cls
  310. WAITKEY "NY","Select NO-Monsters? [Y] or [N] (default is N). ",0
  311. IF ERRORLEVEL 3 GOTO MONSTER
  312. IF ERRORLEVEL 2 GOTO NOMONST
  313. IF ERRORLEVEL 1 GOTO YESMONST
  314. IF ERRORLEVEL 0 GOTO MONSTER
  315. :YESMONST
  316. ECHO . OK!
  317. SET MONSTER=
  318. GOTO NETGAME
  319. :NOMONST
  320. ECHO . OK!
  321. SET MONSTER=-NOMONSTERS
  322. GOTO NETGAME
  323. :NETGAME
  324. CLS
  325. ECHO 
  326. ECHO 
  327. ECHO               ╔═════════════════════════════════════════════════╗
  328. ECHO               ╠╦╦═════════════════════════════════════════════╦╦╣
  329. ECHO               ║║║         NETWORK GAMEING SESSION!!!          ║║║
  330. ECHO               ╠╩╩═════════════════════════════════════════════╩╩╣
  331. ECHO               ╠═════════════════════════════════════════════════╣
  332. ECHO               ║  Type [A] IPX Network Connection                ║
  333. ECHO               ║  Type [B] NULL Modem Connection                 ║
  334. ECHO               ║  Type [C] MODEM Connection -ANSWER              ║
  335. ECHO               ║  Type [D] MODEM Connection -DIAL                ║
  336. ECHO               ║  Type [Q] to QUIT TO START                      ║
  337. ECHO               ╚═════════════════════════════════════════════════╝
  338. ECHO 
  339. WAITKEY "ABCDQ","                 Press appropriate key. ",0
  340. IF ERRORLEVEL 6 GOTO NET
  341. IF ERRORLEVEL 5 GOTO START
  342. IF ERRORLEVEL 4 GOTO DIAL
  343. IF ERRORLEVEL 3 GOTO ANSWER
  344. IF ERRORLEVEL 2 GOTO NULL
  345. IF ERRORLEVEL 1 GOTO IPX
  346. IF ERRORLEVEL 0 GOTO NET
  347. :IPX
  348. ECHO . OK!
  349. C:
  350. CD\GAMES\DOOM
  351. CLS
  352. >NUL: COPY .\NET\*.*
  353. IPXSETUP -NODES %players% %match% -SKILL %skill% -EPISODE %episode% %load% %monster%
  354. >NUL: COPY *.CFG .\NET
  355. >NUL: COPY *.DSG .\NET
  356. >NUL: DEL *.CFG
  357. >NUL: DEL *.DSG
  358. GOTO START
  359. :NULL
  360. ECHO . OK!
  361. C:
  362. CD\GAMES\DOOM
  363. CLS
  364. >NUL: COPY .\NET\*.*
  365. SERSETUP -NODES %players% %match% -SKILL %skill% -EPISODE %episode% %load% %monster% -COM1
  366. >NUL: COPY *.CFG .\NET
  367. >NUL: COPY *.DSG .\NET
  368. >NUL: DEL *.CFG
  369. >NUL: DEL *.DSG
  370. GOTO START
  371. :DIAL
  372. ECHO . OK!
  373. C:
  374. CD\GAMES\DOOM
  375. CLS
  376. >NUL: COPY .\NET\*.*
  377. SERSETUP -NODES %players% %match% -SKILL %skill% -EPISODE %episode% %load% %monster% -COM2 -DIAL %1
  378. >NUL: COPY *.CFG .\NET
  379. >NUL: COPY *.DSG .\NET
  380. >NUL: DEL *.CFG
  381. >NUL: DEL *.DSG
  382. GOTO START
  383. :ANSWER
  384. ECHO . OK!
  385. C:
  386. CD\GAMES\DOOM
  387. CLS
  388. >NUL: COPY .\NET\*.*
  389. SERSETUP -NODES %players% %match% -SKILL %skill% -EPISODE %episode% %load% %monster% -COM2 -ANSWER
  390. >NUL: COPY *.CFG .\NET
  391. >NUL: COPY *.DSG .\NET
  392. >NUL: DEL *.CFG
  393. >NUL: DEL *.DSG
  394. GOTO START
  395. :QUIT
  396. ECHO . OK!
  397. :: D:     for multiple drive
  398. :: CD\    game installations
  399. C:
  400. CD\
  401. SET MATCH=
  402. SET PLAYERS=
  403. SET EPISODE=
  404. SET SKILL=
  405. SET LOAD=
  406. SET MONSTER=
  407. CLS
  408. :EXIT
  409.  
  410.