Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Kagemaru_H

My Chocolate Doom Frontend [Now with raven-branch support]

Recommended Posts

I made a batch file to act as a frontend for Chocolate Doom. That's what I needed help with in some thread but not I found help elsewhere. The Google Gods blessed me with the ability to make this FE for Chocolate Doom.

Now I bless you with convenience for Chocolate Doom in a few simple steps.

Step 1) Open Notepad
Step 2) Copy and paste the text in the "code" box into Notepad

@echo off
ECHO ****************************
ECHO *Welcome to Chocolate Doom!*
ECHO ****************************
pause
:start
cls
ECHO What would you like to do?
ECHO.
ECHO 1 = Play The Ultimate Doom
ECHO 2 = Play Doom II: Hell on Earth
ECHO 3 = Play Final Doom - TNT Evilution
ECHO 4 = Play Final Doom - The Plutonia Experiment
ECHO 5 = Play Heretic: Shadow of the Serpent Riders
ECHO 6 = Play Hexen: Beyond Heretic
ECHO 7 = Play Hexen: Deathkings of the Dark Citadel
ECHO 8 = Load a modification
ECHO 9 = Setup Chocolate Doom
ECHO 0 = Exit
ECHO.
ECHO.

:choice
set /P C=[What would you like to do]? 

if "%C%"=="1" goto DOOM
if "%C%"=="2" goto DOOM2
if "%C%"=="3" goto TNT
if "%C%"=="4" goto PLUTONIA
if "%C%"=="5" goto HERETIC
if "%C%"=="6" goto HEXEN
if "%C%"=="7" goto HEXDD
if "%C%"=="8" goto MOD
if "%C%"=="9" goto SETUP
if "%C%"=="0" goto END
goto choice

:DOOM2
ECHO You have chosen to play DOOM II: Hell On Earth.
pause
chocolate-doom -iwad doom2.wad
goto start

:DOOM
ECHO You have chosen to play The Ultimate Doom.
pause
chocolate-doom -iwad doom.wad
goto start

:TNT
ECHO You have chosen to play Final Doom - TNT Evilution.
pause
chocolate-doom -iwad tnt.wad
goto start

:PLUTONIA
ECHO You have chosen to play Final Doom - the Plutonia Experiment.
pause
chocolate-doom -iwad plutonia.wad
goto start

:SETUP
ECHO You have chosen Setup Chocolate Doom.
pause
chocolate-setup
goto start

:MOD
ECHO You have chosen to load a modification file.
pause
Set /P E=[What game are you playing (WAD filename)]?
set /P D=[What WAD would you like to load (filename)]?
:MOD2
Set /P G=[Will you load a .DEH file(Y or N)?
if "%G%"=="y" goto deh
if "%G%"=="n" goto nodeh
ECHO You must type "y" or "n". Please try again.
goto mod

:nodeh
chocolate-doom -iwad "%E%" -merge "%D%"
goto start

:deh
Set /p F=[What DEH patch would you like to load (filename)]?
chocolate-doom -iwad "%E%" -merge "%D%" -deh "%F%"
goto start

:HERETIC
ECHO You have chosen to play Heretic: Shadow of the Serpent Riders
pause
chocolate-heretic
goto start

:HEXEN
ECHO You have chosen to play Hexen: Beyond Heretic
pause
chocolate-hexen
goto start

:HEXDD
ECHO You have chosen to play Hexen: Deathkings of the Dark Citadel
pause
chocolate-hexen -file hexdd.wad
goto start

:END
exit
Step 3) Save the file as a Batch file "*.BAT" in your Chocolate Doom directory
Step 4) Run the batch file.

This will work on Windows XP because it doesn't use CHOICE.COM.

EDIT: Better code organization and a more verbose interface. I may publish the BAT for people who can't be bothered with these simple steps.

EDIT2: Now you can load a DEH file with it!

EDIT3: I've made it so the frontend loops back to the menu when an action is selected rather than closing out.

EDIT4: Integrated raven-branch support.

Share this post


Link to post

Updated.

Also, if you wish to load another WAD, such as graphics or music, you should do the following:

Hell revealed is the only WAD I know to use an external music WAD, so type "hr.wad -file hrmus.wad".

Share this post


Link to post

Ah, batch files. Amazing little things. Also, you might want to add an "/i" switch to the IFs in the "MOD2" section of the code.

Share this post


Link to post
ducon said:

I made something like this in Perl a few years ago.


Well some of us don't have Perl and have better things to do than figure out Perl, like create a MegaWAD or finish a game/book. Anyone who bothered to install Linux, Perl, or whatever else isn't really needed is wasting time solely for g33k c123d that they'll never get because the 10000 other geeks in the universe installed Linux and Perl. Why not do something else for geek cred, like get laid. The only reason I installed Firefox because I prefer it over IE. It's more stable and has a lot of things over IE.

Share this post


Link to post
Kagemaru_H said:

Why not do something else for geek cred, like get laid.

Or insulting strangers for no reason on an internet forum about video games. Wait a minute--

Share this post


Link to post
Kagemaru_H said:

Well some of us don't have Perl and have better things to do than figure out Perl, like create a MegaWAD or finish a game/book. Anyone who bothered to install Linux, Perl, or whatever else isn't really needed is wasting time solely for g33k c123d that they'll never get because the 10000 other geeks in the universe installed Linux and Perl. Why not do something else for geek cred, like get laid.

I suggest you ditch the shitty attitude fast or you won't be on these forums much longer.

Share this post


Link to post

This is pretty cool, but does it have support for -merge (in case I don't feel like whipping out my copy of DEU to play Batman Doom?)

EDIT: heh, just because we play Doom doesn't mean we can't get girlfriends. unless you're AndrewB of course, but what's the worst that could happen ...

Share this post


Link to post
Patrick said:

This is pretty cool, but does it have support for -merge (in case I don't feel like whipping out my copy of DEU to play Batman Doom?)


I just put the -merge function in the code not too long ago. Though D2Xtreme.deh and D2Xgold.deh don't work on Chocolate Doom. I'll download Batman Doom and try sometime.

Share this post


Link to post
Kagemaru_H said:

Why not do something else for geek cred, like get laid.


Programming this DOS script doesn’t make you a bit of a geek? ;-)
Of course my script is made for Unix, because Perl is very often installed even if you didn’t asked for it. But it might work in Windows if it is rewritten.

Share this post


Link to post
Quasar said:

Isn't getting laid negative geek cred anyway?


Dressed as Princess Leia maybe?

Back on topic. That's a nice clean bat and should be helpful to some.

I've got a mess of a batch file that I made/I'm remaking for PrBoom-Plus. It can open the text file so I can read about the game/comp setting before adding the wads/dehs/complevel and it will spit out a batch file with the name of the first wad added. Then I have a recording batch that asks for a game bat to launch (the one made by the first batch file) and then asks for level and skill info to record a demo. Once the demo recording is done it asks what the time was and if I give a time it renames my demo modname-skill-level-time.lmp but if I leave it blank then it just starts the recording again. I keep adding and changing what I want it to do and where so it's a mess and I doubt many would find it useful but maybe I'll post it next time its in working order.

Share this post


Link to post

could you add an option for demo playback/recording?

Share this post


Link to post

Demos aren't really anything I'm into, but I'll add a command line option for advanced users, in which if you know the command or have a program to record/play demos, you can record and playback demos.

But for now, I don't know of a function for demo recording in Chocolate Doom, and I'll just throw in a command line and leave it to advanced users.

EDIT: My command line didn't work so well.

:CMD
set /p A=[CMD]?
"%A%"
goto START

Share this post


Link to post
Kagemaru_H said:

Demos aren't really anything I'm into, but I'll add a command line option for advanced users, in which if you know the command or have a program to record/play demos, you can record and playback demos.

But for now, I don't know of a function for demo recording in Chocolate Doom, and I'll just throw in a command line and leave it to advanced users.

EDIT: My command line didn't work so well.

:CMD
set /p A=[CMD]?
"%A%"
goto START


-record <lump>, -playdemo <lump>, and -timedemo <lump>

Share this post


Link to post

Kagemaru_H: Take a look on the following code. I think it can give you something to start off from, in case you want to add demo support.

@echo off
set x=0
for %%? in (PATH-TO-DEMOS\*.lmp) do call :addlmp %%?
if %x% equ 0 goto :eof
:choose
set y=0
cls
echo Demos
echo -----
echo.
for /l %%? in (1 1 %x%) do call echo %%?. %%file%%?%%
echo.
set /p y=Your choice: 
if %y% lss 1 (goto choose) else if %y% gtr %x% goto choose
call start <SOURCE-PORT> -iwad <IWAD> -playdemo %%file%y%%%
goto :eof
:addlmp
set /a x+=1
set file%x%=%*
goto :eof

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×