home *** CD-ROM | disk | FTP | other *** search
/ D!Zone (Collector's Edition) / D_ZONE_CD.ISO / programs / graphics / lmpvol2 / lmpvol2.exe / LMP.BAT
DOS Batch File  |  1994-03-20  |  14KB  |  518 lines

  1. @ECHO OFF
  2. ECHO.
  3. ECHO ALFRED, The Automatic LMP File Recorder and Developer v1.2
  4.  
  5. REM **************************************************************
  6. REM **      The DOOM Hall of Fame: The Collectors Edition       **
  7. REM **         Automatic LMP File Recorder and Developer        **
  8. REM **  by Michael Houston (mp_hous@pavo.concordia.ca) 03/03/94 **
  9. REM **************************************************************
  10.  
  11. REM ** SET WADPATH TO BE THE DIRECTORY CONTAINING YOUR WADFILES **
  12. SET WADPATH=LMP\PWAD
  13. SET E=
  14. SET L=
  15. SET S=
  16. SET A1=
  17. SET A2=
  18. SET A3=
  19.  
  20. IF NOT EXIST DOOM.EXE GOTO DirErr
  21. IF "%1" == "LIST" GOTO showlist
  22. IF "%1" == "list" GOTO showlist
  23. IF "%1" == "" GOTO saidnada
  24. IF "%1" == "r" GOTO record
  25. IF "%1" == "R" GOTO record
  26. IF "%1" == "w" GOTO edit
  27. IF "%1" == "W" GOTO edit
  28. IF "%1" == "t" GOTO Tedit
  29. IF "%1" == "T" GOTO Tedit
  30. IF "%1" == "p" GOTO Play
  31. IF "%1" == "P" GOTO Play
  32.  
  33. :pwadcheck
  34. IF NOT EXIST lmp\pwad\%1.lmp GOTO Nextstep
  35. IF "%A2%" == "text" SET A1=pwad
  36. IF "%A2%" == "text" GOTO Tedit3
  37. copy lmp\pwad\%1.lmp . > nul
  38. IF NOT EXIST lmp\pwad\%1.txt GOTO wadfile
  39. type lmp\pwad\%1.txt |more
  40. PAUSE
  41. GOTO wadfile
  42.  
  43. REM ***** CHECK ALL DIRECTORIES ****
  44. :Nextstep
  45. IF NOT "%a2%" == "text" IF NOT "%2" == "" GOTO randoom
  46. IF NOT EXIST lmp\levels\%1.lmp GOTO CheckHall
  47. IF "%A2%" == "text" SET A1=levels
  48. IF "%A2%" == "text" GOTO Tedit3
  49. copy lmp\levels\%1.lmp . > nul
  50. IF NOT EXIST lmp\levels\%1.txt GOTO Later
  51. type lmp\levels\%1.txt |more
  52. PAUSE
  53. GOTO Later
  54.  
  55. :CheckHall
  56. IF NOT EXIST lmp\hall\%1.lmp GOTO CheckMult
  57. IF "%A2%" == "text" SET A1=hall
  58. IF "%A2%" == "text" GOTO Tedit3
  59. copy lmp\hall\%1.lmp . > nul
  60. IF NOT EXIST lmp\hall\%1.txt GOTO Later
  61. type lmp\hall\%1.txt |more
  62. PAUSE
  63. GOTO Later
  64.  
  65. :CheckMult
  66. IF NOT EXIST lmp\multiplr\%1.lmp GOTO CheckMisc
  67. IF "%A2%" == "text" SET A1=multiplr
  68. IF "%A2%" == "text" GOTO Tedit3
  69. copy lmp\multiplr\%1.lmp . > nul
  70. IF NOT EXIST lmp\multiplr\%1.txt GOTO Later
  71. type lmp\multiplr\%1.txt |more
  72. PAUSE
  73. GOTO Later
  74.  
  75. :CheckMisc
  76. IF NOT EXIST lmp\misc\%1.lmp GOTO CheckNite
  77. IF "%A2%" == "text" SET A1=misc
  78. IF "%A2%" == "text" GOTO Tedit3
  79. copy lmp\misc\%1.lmp . > nul
  80. IF NOT EXIST lmp\misc\%1.txt GOTO Later
  81. type lmp\misc\%1.txt |more
  82. PAUSE
  83. GOTO Later
  84.  
  85. :CheckNite
  86. IF NOT EXIST lmp\nitemare\%1.lmp GOTO randoom
  87. IF "%A2%" == "text" SET A1=nitemare
  88. IF "%A2%" == "text" GOTO Tedit3
  89. copy lmp\nitemare\%1.lmp . > nul
  90. IF NOT EXIST lmp\nitemare\%1.txt GOTO Later
  91. type lmp\nitemare\%1.txt |more
  92. PAUSE
  93. GOTO Later
  94.  
  95. REM ***** PLAY A RANDOOM FILE *****
  96. :randoom
  97. IF "%A2%" == "text" IF NOT EXIST lmp\randoom\%1.lmp GOTO Tedit2
  98. IF "%A2%" == "text" SET A1=randoom
  99. IF "%A2%" == "text" GOTO Tedit3
  100. IF NOT EXIST lmp\randoom\%1.lmp GOTO NotFound
  101. copy lmp\randoom\%1.lmp . > nul
  102. IF NOT EXIST lmp\randoom\%1.txt GOTO notext
  103. type lmp\randoom\%1.txt |more
  104. PAUSE
  105. IF NOT EXIST lmp\randoom\%1.w GOTO noW1
  106. IF "%2" == "" GOTO NoSeed
  107. SET A3=randoomb
  108. GOTO ranepi
  109.  
  110. :randoomb
  111. LMP\RANDOOM\RANDOOM -D
  112. ECHO.
  113. IF "%E%" == "4" LMP\RANDOOM\RANDOOM -C%2 -M3 -Wlmp\randoom\%1.w
  114. IF NOT "%E%" == "4" LMP\RANDOOM\RANDOOM -C%2 -M3 -Wlmp\randoom\%1.w -Le%E%M%L%
  115. ECHO.
  116. doom -playdemo %1
  117. del %1.lmp
  118. LMP\RANDOOM\RANDOOM -D
  119. ECHO.
  120. GOTO end
  121.  
  122. :notext
  123. ECHO.
  124. ECHO ERROR: NO ACCOMPANYING TEXT FILE FOR RANDOOM .LMP
  125. ECHO.
  126. ECHO You must create a text file for the RanDOOM .LMP you specified, since you
  127. ECHO need a record of the seed, episode and level you have used to create the
  128. ECHO RanDOOM file. Create this text file by typing:   LMP t %1
  129. ECHO.
  130. del %1.lmp
  131. GOTO end.
  132.  
  133. REM ***** DISPLAY ALL .LMP FILES IN THE .LMP DIRECTORIES *****
  134. :showlist
  135. ECHO.
  136. dir lmp\*.lmp /s /p
  137. GOTO end
  138.  
  139. :NotFound
  140. ECHO. 
  141. ECHO ERROR: .LMP FILE NOT FOUND
  142. ECHO.
  143. ECHO Sorry, I could not find the file %1.lmp in the following directories:
  144. ECHO LMP\HALL, LMP\LEVELS, LMP\MISC, LMP\MULTIPLR, LMP\NITEMARE, LMP\PWAD or 
  145. ECHO LMP\RANDOOM. In order to use this batch file your .LMP must be in one 
  146. ECHO of these directories.
  147. GOTO saidnada
  148.  
  149. REM ***** HELP SCREEN *****
  150. :saidnada
  151. ECHO.
  152. ECHO Proper usage:          LMP [rwtp] lmpfile [seed, pwadfile]
  153. ECHO No extensions (.lmp, .w, .txt, .wad) required.
  154. ECHO.
  155. ECHO            LMP LIST     Gives directory of the .LMPs available.
  156. ECHO            lmpfile      Either .LMP, .W or .TXT file format.
  157. ECHO            seed         Character seed for RanDOOM files.
  158. ECHO            pwadfile     .WAD pwad file for pwad .LMPs
  159. ECHO Options:   r            Record an .LMP file.
  160. ECHO            w            Create/edit RanDOOM .W file.
  161. ECHO            t            Create/edit .LMP intro .TXT file.
  162. ECHO            p            Play (not record) DOOM with a RanDOOM .W file.
  163. GOTO end
  164.  
  165. :DirErr
  166. ECHO.
  167. ECHO ERROR: LMP.BAT NOT RUN FROM DOOM DIRECTORY
  168. ECHO.
  169. ECHO In order to run this program you must be in your DOOM directory.
  170. GOTO end
  171.  
  172. :NoSeed
  173. ECHO.
  174. ECHO ERROR: NO SEED SPECIFIED
  175. ECHO.
  176. ECHO You must specify the proper seed in order for this RanDOOM .LMP
  177. ECHO to work. To see what seed it is, check the text file %1.txt which
  178. ECHO was displayed above.
  179. GOTO saidnada
  180.  
  181. REM ***** PLAY THE LMP FILE *****
  182. :Later
  183. doom -playdemo %1
  184. del %1.lmp
  185. ECHO.
  186. ECHO lmp.bat execution completed.
  187. ECHO.
  188. GOTO end
  189.  
  190. REM *****                         *****
  191. REM *****   RECORD AN .LMP FILE   *****
  192. REM *****                         *****
  193.  
  194. :record
  195. IF "%2" == "" GOTO NoRec
  196. IF "%3" == "" GOTO recrd2
  197. IF EXIST %WADPATH%\%3.wad SET A1=pwad
  198. IF EXIST %WADPATH%\%3.wad GOTO Check
  199. ECHO.
  200. ECHO There was no pwad file named %3.wad in the %WADPATH% directory, 
  201. ECHO so I'm assuming that '%3' is a random seed for a RanDOOM .LMP, O.K.?
  202. CHOICE /C:YN
  203. IF ERRORLEVEL 2 GOTO END
  204. SET A1=randoom
  205. GOTO Check
  206.  
  207. :recrd2
  208. ECHO.
  209. ECHO Please choose what category you want %2.lmp to be recorded, so I know
  210. ECHO what directory to put it in. NOTE: If you want to record a RANDOOM .LMP,
  211. ECHO include a random seed as your third parameter.
  212.  
  213. :recrd2B
  214. ECHO.
  215. ECHO 1) LEVELS                         2) HALL OF FAME
  216. ECHO 3) MULTIPLAYER                    4) MISCELLANEOUS
  217. IF "%A2%"=="text" ECHO 5) NIGHTMARE                      6) RANDOOM
  218. IF "%A2%"=="text" ECHO 7) PWAD                           8) QUIT
  219. IF NOT "%A2%"=="text" ECHO 5) NIGHTMARE                      Q) QUIT
  220. CHOICE /C:1234567Q /n
  221. IF ERRORLEVEL 8 GOTO end
  222. IF ERRORLEVEL 1 SET A1=levels
  223. IF ERRORLEVEL 2 SET A1=hall
  224. IF ERRORLEVEL 3 SET A1=multiplr
  225. IF ERRORLEVEL 4 SET A1=misc
  226. IF ERRORLEVEL 5 SET A1=nitemare
  227. IF "%A2%"=="text" IF ERRORLEVEL 6 SET A1=randoom
  228. IF "%A2%"=="text" IF ERRORLEVEL 7 SET A1=pwad
  229. IF NOT "%A2%"=="text" IF ERRORLEVEL 6 GOTO recrd2B
  230. IF NOT "%A2%"=="text" IF ERRORLEVEL 7 GOTO recrd2B
  231.  
  232. REM ***** CHECK IF FILE EXISTS *****
  233. :Check
  234. IF "%A2%"=="text" GOTO Tedit3
  235. IF NOT EXIST lmp\%A1%\%2.LMP GOTO EPISODE
  236. ECHO.
  237. ECHO WARNING: lmp\%A1%\%2.lmp already exists. Overwrite? (Y/N)
  238. CHOICE /C:YN /n
  239. IF ERRORLEVEL 2 GOTO END
  240. IF ERRORLEVEL 1 GOTO EPISODE
  241.  
  242. :NoRec
  243. ECHO.
  244. ECHO ERROR: NO .LMP FILE SPECIFIED
  245. ECHO.
  246. ECHO You must include the name of the .LMP file you wish to record.
  247. GOTO saidnada
  248.  
  249. :EPISODE
  250. ECHO.
  251. ECHO Enter Episode:
  252. ECHO.
  253. ECHO 1) Knee Deep in the Dead          2) The Shores of Hell
  254. ECHO 3) Inferno                        Q) Quit
  255. CHOICE /C:123Q /n
  256. IF ERRORLEVEL 4 GOTO end
  257. IF ERRORLEVEL 1 SET E=1
  258. IF ERRORLEVEL 2 SET E=2
  259. IF ERRORLEVEL 3 SET E=3
  260.  
  261. :LEVEL
  262. ECHO.
  263. ECHO Enter Level (1-9) or (Q)uit:
  264. CHOICE /C:123456789Q /n
  265. IF ERRORLEVEL 10 GOTO end
  266. IF ERRORLEVEL 1 SET L=1
  267. IF ERRORLEVEL 2 SET L=2
  268. IF ERRORLEVEL 3 SET L=3
  269. IF ERRORLEVEL 4 SET L=4
  270. IF ERRORLEVEL 5 SET L=5
  271. IF ERRORLEVEL 6 SET L=6
  272. IF ERRORLEVEL 7 SET L=7
  273. IF ERRORLEVEL 8 SET L=8
  274. IF ERRORLEVEL 9 SET L=9
  275.  
  276. :SKILL
  277. IF "%A1%"=="nitemare" SET S=5
  278. IF "%A1%"=="nitemare" GOTO REC2
  279. ECHO.
  280. ECHO Enter Skill:
  281. ECHO.
  282. ECHO 1) I'm too young to die           2) Hey, not too rough
  283. ECHO 3) Hurt me plenty                 4) Ultra Violence
  284. ECHO 5) NIGHTMARE!                     Q) Quit
  285. CHOICE /C:12345Q /n
  286. IF ERRORLEVEL 6 GOTO end
  287. IF ERRORLEVEL 1 SET S=1
  288. IF ERRORLEVEL 2 SET S=2
  289. IF ERRORLEVEL 3 SET S=3
  290. IF ERRORLEVEL 4 SET S=4
  291. IF ERRORLEVEL 5 SET S=5
  292.  
  293. REM ***** ACTUAL RECORDING OF THE