Hello,

I have been tinkering with the PrBoom codebase and have been wondering about PrBoom+... Are they so different? I assume that PrBoom development has stopped but wonder if PrBoom+ is meant as a succesor.

Taking a look at the differences between them, I wonder why PrBoom+ is a different fork and not a next version of PrBoom. Any reason for this?

Thanks!

Share this post


Link to post

They are pretty different now. PrBoom+ has a lot more features. Even some new editing features that have no effect on demo compatibility, like MUSINFO support.

RjY still works a bit on the PrBoom codebase, but since I doubt a new official version is planned at all, I'm not sure I see the point.

I also don't know why PrBoom+ features both a prboom-plus and a glboom-plus exes. Since the GLBoom+ one can work in software mode with all the features of PrBoom+, wouldn't it make more sense to keep only this one?

Share this post


Link to post

So PrBoom could be considered as esentially finished and kind of the definitive merge/evolution of Boom/MBF?

I wonder which design decisions kickstarted the creation of PrBoom+...

Share this post


Link to post

Andrey Budko started PrBoom+ to add extra tool-assisted speedrun features for demo recording but he also maintained it regularly while PrBoom only had occasional updates and has been in a semi-abandoned state for a while.

If I'm not mistaken, they didn't merge because each coder preferred to keep their own development vision. PrBoom has taken fixes from PrBoom+ but doesn't aim to adopt all the TAS features its offshoot added, and PrBoom+ is compatible with PrBoom but lets Andrey add whatever extras he wants without having to reach agreements with other coders.

Share this post


Link to post
Gez said:

RjY still works a bit on the PrBoom codebase...

Let me derail the topic and ask, is anyone in contact with him? Last online: 15th July, I PM'ed him almost 2 months ago, all of it makes me feel concerned.

Share this post


Link to post
myk said:

Andrey Budko started PrBoom+ to add extra tool-assisted speedrun features for demo recording but he also maintained it regularly while PrBoom only had occasional updates and has been in a semi-abandoned state for a while.

If I'm not mistaken, they didn't merge because each coder preferred to keep their own development vision. PrBoom has taken fixes from PrBoom+ but doesn't aim to adopt all the TAS features its offshoot added, and PrBoom+ is compatible with PrBoom but lets Andrey add whatever extras he wants without having to reach agreements with other coders.


This clears things up to me. I can more or less consider PrBoom 'finished' except for any bug than can be still hiding inside. So, a stable codebase if one wants to dabble with Doom+Boom/MBF extensions.

Share this post


Link to post

No, that is absolutely the wrong conclusion. Prboom+ fixes a large number of PrBoom bugs and adds many compatibility improvements. It can be regarded as the current line of development, and a continuation of the project that was started (but abandoned part way through) with PrBoom.

See the Prboom+ changelog in case you're in any doubt as to how many glitches have been fixed, and how much the compatibility (with Doom2.exe, Boom, MBF and Doom.exe 1.2, etc.) has been critically enhanced. Remember that even this changelog is just a summary.

PrBoom+ has been extensively tested throughout its development process, and bugs generally fixed very quickly upon being discovered. With the old Prboom, you could report a bug, wait a year and then find the new release broke something major in its attempt to fix it.

It's a shame the projects weren't merged (with "PrBoom-plus" becoming simply "PrBoom", as this would have meant a wider audience), but I don't know what strings (if any) were attached when Proff proposed this to Andrey.

Share this post


Link to post

I'm kind of repeating what's already been said at this stage, but Colin Phipps (the main PrBoom developer) seems to have lost interest in the project; PrBoom+ probably ought to be seen as the "canonical" maintained version of the port at this stage.

EDIT: I didn't realise RjY is now maintaining PrBoom.

Share this post


Link to post

At the moment, Linux distros, *BSD, etc. all have more PrBoom packages than PrBoom+, so maybe someone should send out a memo to package maintainers or else they won't know about this situation and lots of people will continue to use the older code for a long time. Heck, I didn't even know PrBoom was stagnant, despite reading these forums.

Btw, anyone else ever run xdoom or lxdoom? (I used those before PrBoom existed, sometime in 1999 or so). xdoom in particular seems to have some features that never got ported. It had a demo PWAD with examples of that stuff (communicator gadget, laser fields, maybe other stuff... can't remember).

Share this post


Link to post
fraggle said:

I'm kind of repeating what's already been said at this stage, but Colin Phipps (the main PrBoom developer) seems to have lost interest in the project; PrBoom+ probably ought to be seen as the "canonical" maintained version of the port at this stage.

Repetition isn't necessarily a bad thing. I certainly think it doesn't hurt to mention again that PrBoom+ really ought to be renamed (to just PrBoom) and take over the upstream project properly.

Share this post


Link to post
chungy said:

Repetition isn't necessarily a bad thing. I certainly think it doesn't hurt to mention again that PrBoom+ really ought to be renamed (to just PrBoom) and take over the upstream project properly.


Not until that codebase is cleaned up. It's an honest-to-God hellhole.

Share this post


Link to post
hex11 said:

Btw, anyone else ever run xdoom or lxdoom? (I used those before PrBoom existed, sometime in 1999 or so). xdoom in particular seems to have some features that never got ported. It had a demo PWAD with examples of that stuff (communicator gadget, laser fields, maybe other stuff... can't remember).

I never really used xdoom, but lxdoom is basically an older version of PrBoom.

Long ago there used to be 3-4 source ports that were trying to do similar things. There was PrBoom (Florian Schulze's Windows port of Boom), LxDoom (Colin Phipps' Linux port of Boom), GLboom and SDL Doom. Last two I'm not sure about. Anyway they combined their efforts - LxDoom was used as the source base and the features of all the others incorporated, and it took PrBoom's name. The result was the portable, SDL-based Boom-compatible source port that we all know and love.

Share this post


Link to post

chungy said:
I certainly think it doesn't hurt to mention again that PrBoom+ really ought to be renamed (to just PrBoom) and take over the upstream project properly.

I don't think PrBoom was ever meant to have all that TAS stuff. Yes, PrBoom+ has many important fixes over PrBoom, and for speed runners and many players it's a better choice, but not necessarily for coders working on a new project, although in any case it would at least make good reference material.

Share this post


Link to post
fraggle said:

I'm kind of repeating what's already been said at this stage, but Colin Phipps (the main PrBoom developer) seems to have lost interest in the project; PrBoom+ probably ought to be seen as the "canonical" maintained version of the port at this stage.

EDIT: I didn't realise RjY is now maintaining PrBoom.


My main interest is to know if I were to port the PrBoom codebase to another machine... which one will I have to chose. Judging by the last posts it should be PrBoom+. however all the TAS stuff into PrBoom+ seems to be almost useless on these new machine (for example, a console).

I always thought of PrBoom as a kind of counter part to Chocolate Doom, in the sense that it preserved the features of Boom/MBF combined and little more.

Share this post


Link to post

While TAS stuff and some other features such as video output are not necessarily useful on some platforms; they don't hurt either unless the space available to store code is very limited.

Since compatibility levels are actually more faithful in PrBoom+ than in PrBoom (especially but not only the one for Doom 1.2), I'd recommend using that, generally.

Only exception is if multiplayer is important. Entryway's the first person to recommend using the old PrBoom instead of PrBoom+ if you want to play Boom online. The netcode part has been neglected.

However, if you want a multiplayer-centric port; I'd actually recommend ditching PrBoom entirely and looking at Odamex instead.

Share this post


Link to post

LordMeow said:
however all the TAS stuff into PrBoom+ seems to be almost useless on these new machine (for example, a console).

The TAS features are all optional and disabled by default. If you have no need for them, you don't have to take any action, and they will never be a problem to you.

I always thought of PrBoom as a kind of counter part to Chocolate Doom, in the sense that it preserved the features of Boom/MBF combined and little more.

Except that it didn't actually emulate them very well, and some Boom and MBF features and behaviours have only been implemented accurately (or at all) in Prboom+. Colormaps, friction, some dehacked features, etc.

Don't believe that line in the old documentation about "All MBF demos should play back perfectly in Prboom". That clearly wasn't based on much testing. When I actually tested all the MBF demos at DSDA, the result was a list of issues to the fixed/investigated.

If you want a pure Windows port of Boom, then you could try Prboom 2.02. Versions after that (though named Prboom 2.x.x) were based on LxDoom, and were rather glitchy in their emulation of earlier exes.

Share this post


Link to post

Seems that what I was looking for does not exist: a port of Boom to modern standards which support Boom & MBF features modularly, correcting bugs but giving you the option to emulate the original behaviour.

Kind of Chocolate Boom / MBF.

Share this post


Link to post

The bill you listed is perfectly fit by PrBoom+.

Share this post


Link to post
Grazza said:

If you want a pure Windows port of Boom, then you could try Prboom 2.02. Versions after that (though named Prboom 2.x.x) were based on LxDoom, and were rather glitchy in their emulation of earlier exes.

There's also WInMBF.

Share this post


Link to post

LordMeow said:
support Boom & MBF features modularly

Prboom-plus with -complevel -1
choose individual comp options from the menu

LordMeow said:
giving you the option to emulate the original behaviour.

Prboom-plus -complevel 9 emulates Boom 2.02
Prboom-plus -complevel 11 emulates MBF

Share this post


Link to post
Grazza said:

Prboom-plus with -complevel -1
choose individual comp options from the menu

Prboom-plus -complevel 9 emulates Boom 2.02
Prboom-plus -complevel 11 emulates MBF


These PrBoom-plus complevels are more precise than the ones PrBoom has?

Share this post


Link to post
LordMeow said:

These PrBoom-plus complevels are more precise than the ones PrBoom has?

Yes. Many hundreds of hours of work have gone into making that the case.

Share this post


Link to post
Grazza said:

Yes. Many hundreds of hours of work have gone into making that the case.


Time to switch codebase then. Thank you everybody!

As I see then, we have these major players:

Chocolate Doom - as pure vanilla as you can get
PrBoom+ - BOOM / MBF
ZDoom/GL - as it stands, the classic Zdoom
Doomsday - also in its own league
Legacy - What happened to Legacy? Is is still maintained?

I have left on purpose multiplayer ports and Mocha Doom which is also on its own league, deciding right now if it stays vanilla with limits lifted or if it goes BOOM.

Share this post


Link to post
LordMeow said:

Time to switch codebase then. Thank you everybody!

As I see then, we have these major players:

Chocolate Doom - as pure vanilla as you can get
PrBoom+ - BOOM / MBF
ZDoom/GL - as it stands, the classic Zdoom
Doomsday - also in its own league
Legacy - What happened to Legacy? Is is still maintained?

I have left on purpose multiplayer ports and Mocha Doom which is also on its own league, deciding right now if it stays vanilla with limits lifted or if it goes BOOM.

Good to know I'm not even in the club but Legacy still is. Wow 9_9

Share this post


Link to post

Legacy is actually still maintained by one person, wesleyjohnson. There's also a fork of Legacy named ReMooD created and maintained by GhostlyDeath.

And Eternity is probably a bigger player now than both of these ports combined.



Also, ZDoomGL has been dead for years. Instead there's GZDoom.

Share this post


Link to post
Quasar said:

Good to know I'm not even in the club but Legacy still is. Wow 9_9


You are, but Eternity would be in the same league as Doomsday. In fact I've been following Eternity since long ago when I found EDF similar to the DDF DOSDoom had. I was pretty familiar with it.

I included Doomsday to put an example of a port that went its own way. I'm more interested in Vanilla/BOOM/MBF compatibility.

Sorry if I bothered you.

Share this post


Link to post
Gez said:

Legacy is actually still maintained by one person, wesleyjohnson. There's also a fork of Legacy named ReMooD created and maintained by GhostlyDeath.

And Eternity is probably a bigger player now than both of these ports combined.

Also, ZDoomGL has been dead for years. Instead there's GZDoom.


I mentioned Legacy because I had not heard much about it recently. Also when I wrote Zdoom/GL I was trying to refer to GZdoom but forgot about the previous ZDoomGL.

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