Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
ixfd64

Chocolate Doom vs. PrBoom vs. PrBoom+

Recommended Posts

I haven't touched any DOS games since I upgraded to Windows XP in 2004, but I've recently become interested in Doom again. While there are many cross-platform source ports out there, I'm looking for one that offers the "look and feel" of vanilla Doom.

So far, I am considering the following source ports:

  • Chocolate Doom
  • PrBoom
  • PrBoom+
According to the Doom wiki, Chocolate Doom offers the best compatibility with vanilla Doom; the only problem is that Chocolate Doom does not officially support Hexen or Heretic yet. PrBoom does not seem to be as compatible, but it's a lot more popular. It also has some useful demo-recording features that Chocolate Doom lacks. Finally, PrBoom+ seems to come between Chocolate Doom and PrBoom.

Right now, I'm considering using Chocolate Doom for casual playing, and PrBoom+ for demo recording. Any thoughts?

Oh, and one more question: can I use a USB gamepad with any of these ports?

Thanks in advance.

Share this post


Link to post

PrBoom (+ or not) supports Heretic and Hexen even less than ChocoDoom. :p ChocoHeretic and ChocoHexen ought to be rather stable, though, now, I guess.

"Best compatibility" is not the way to describe ChocoDoom by the way. Best accuracy is closer. It's a port that focuses on being exactly like the original -- including bugging and crashing in exactly the same way. That makes it a very useful port for testing that a level you are designing is actually truly vanilla-compatible: if it works in Chocolate, you can be sure it works in vanilla. PrBoom(+) is "more compatible" since it also works with limit-breaking levels, and it supports Boom features.

If you're only interested in playing and recording vanilla-compatible levels, then you can only use Chocolate Doom. Where PrBoom+ shines is not so much demo-recording as demo playback, thanks to the wide variety of versions it emulates near-perfectly.

Share this post


Link to post

Between prboom and prboom+, I can't see much reason for not choosing prboom+, unless there are some compilation problems in the OS you're using (and it isn't one for which an executable is available). Prboom+ supports all options that Prboom does (it is based on it, after all), together with many extra ones, quite a few bug and glitch fixes and additional optional features.

Essentially, prboom+ is the current line of development of prboom (see the changelogs!). The only basis for putting it "in between" Choc and Prboom (other than fixes to compatibility issues) is that the default cfg is more vanilla-like. But that's just the defaults; you can change them to whatever you like.

Between Choc and Prboom+ (with -complevel 2, applied), in terms of behavioural compatibility with vanilla Doom2.exe, there's not much in it (and both have options for forcing the behaviour of the other main vanilla exes). There are just a small handful out of many thousands of vanilla demos where there is a problem with either. Though please note that Chocolate has not, as far as I know, actually been tested with every demo at compet-n and DSDA, in the way that Prboom+ has (as of 2007, anyway - yes, I actually did this). So the claim that Choc will play back almost any vanilla demo successfully is more by presumption and the fact that very few demos have been discovered to fail with it.

Where vanilla demos fail with Chocolate, this has tended to be due to map issues that crash the program (pr+ will work around these map errors and attempt to play the map anyway, sometimes successfully). Where there are problems with Prboom+, this tends to be due to the different memory management, meaning uninitialized fields will have different data.

Anyway, those are very rare problems and shouldn't worry anyone apart from the developers.

If you prefer something that looks just like vanilla, and crashes or fails exactly when vanilla does, then you should go for Chocolate. Likewise if you don't want to bother yourself with setting options. Or Doom2.exe in DosBox, obviously.

If you want the vanilla behaviour, but are happy to have many options with respect to resolution, visual features, higher limits and options of compatibility with several other standard formats, then you should go for Prboom+. You need to check the settings to bring them in line with what you want, of course. (You also see the argument that you might end up recording a demo that hits a vanilla limit, and thus won't play back with Doom2.exe. OK, but in that case I'd rather have a demo that will play back in something - i.e. any limit-extending vanilla-compatible exe - rather than have my demo erased or ruined on the spot by a program crash.)

Addendum: Oh yeah, Chocolate supports a few dehacked features that AFAIK no other ports (incl. pr+) support. However, these are very rarely used features mostly in the Text area (which in many cases affect much more than game text). If wads appear that use them, I guess you could make a feature request to Andrey and he'd be able to incoprorate Chocolate's code. BTW, please note that there has been a fair bit of exchange of ideas and code - in both directions - between Choc and Prb+.

Gez said:

If you're only interested in playing and recording vanilla-compatible levels, then you can only use Chocolate Doom. Where PrBoom+ shines is not so much demo-recording as demo playback, thanks to the wide variety of versions it emulates near-perfectly.

Odd statement, since this is one of the main uses of Prboom+, whereas relatively few demo recorders appear to use Choc (not sure why, but maybe ease of use? Or the thought, "why not use the vanilla exe itself?", which keeps it in line with Compet-n guidelines too). All those compatibility options are also available for recording in Prboom+. And it has been designed from the outset with the convenience of demo-recorders in mind (fast exit; features for checking demos times and validity; removal of GF49 glitch, designed to make multiple attempts more streamlined by having overwriting options, etc.). Essentially, it is the de facto "official port of the demo recording/watching community".

Share this post


Link to post

Good call, Gez. I definitely agree that "accuracy" would be a better term. :P

Thanks for the detailed reply, Grazza. I was thinking about making some vanilla Doom-compatible demos, but I've changed my mind after learning about the turning resolution bug. Since the unofficial "1.91" fix makes the demos incompatible, I've decided to drop my original plans. After all, very few people can still run the original executable (due to the lack of a DOS-based operating system) these days, so I don't think there is a large "demand" for such demos anyway.

PrBoom+ it is, then. :D

Share this post


Link to post

I don't think that the longtics option shouldn't really be a determining factor one way or the other. Chocolate and Prboom+ both support recording of vanilla demos with either shorttics (the default) or longtics (via the -longtics command-line option). For playback, the engine autodetects whether it is a shorttics or longtics demo, and plays it back accordingly without the user needing to intervene.

Anyone who chooses to watch it with Doom2.exe or Doom2-plus will probably also have the necessary DOS skills to handle it either way too. Most likely they will have copies of each exe already to hand rather than having to create them anew each time.

If you do record with -longtics, be sure to mention this in your txt and post, as people will tend to assume that a "vanilla" demo is recorded with shorttics.

Share this post


Link to post

"Out of the box" I think Chocolate offers a more vanilla experience. Provided you don't mind the 320x200 resolution, I'd definitely go that route. If you're recording Ultimate Doom, you'll get -ultimate compatibility automatically, same with Doom/Doom II 1.9 and Final. With PrBoom+ you'll need to use one of the -complevel parameters, which isn't a huge deal but it's something to be aware of. As Grazza said both support the longtics demo format.

Share this post


Link to post
Grazza said:

Odd statement, since this is one of the main uses of Prboom+, whereas relatively few demo recorders appear to use Choc

It's not odd. Of course PrBoom+ can be used to record demos. But Chocolate Doom can as well. If vanilla levels is all that someone wants to play, and that someone wants to use ChocoDoom, then that someone may as well record demos with ChocoDoom. They should be compatible with PrBoom+.

But if you want to watch demos of said levels, you may find some that desync because they're not the same format (for example, Boom complevel used instead of Doom 1.9 one). Then PrBoom+ is pretty much the only choice. Because as you said, that port is used to record a lot of demos.

Share this post


Link to post

ixfd64 said:
After all, very few people can still run the original executable (due to the lack of a DOS-based operating system) these days, so I don't think there is a large "demand" for such demos anyway.

That was more or less true in the earlier part of the post-2000 decade, but not anymore. See here for the system requirements.

As for a demand for such demos and activity regarding them, see this forum (and the Doomed Speed Demos Archive, which has an updates thread there.)

By the way, due to tradition and habit, to keep demos clearly comparable to those of the past, "long tics" are not usually used for speed running or single player demo sharing.

Share this post


Link to post

PrBoom (plus or not) has the light diminishing all wrong. Pitch-dark sectors are full-bright at melee range. Why?

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
Sign in to follow this  
×