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

Compatibility level recommendation discussion

Recommended Posts


While PrBoom and PrBoom-plus support various compatibility levels (in addition to the specific compatibility settings), only a couple are widely used for recording:

For true vanilla or Doom levels, use compatibility levels 2-4, depending on the game played (2 is DOOM II, 3 is The Ultimate Doom, and 4 is Final DOOM). These compatibility levels are best used with the IWADs themselves as well as with all PWADs successfully tested by the level author with the vanilla executables or Chocolate Doom.

These compatibility levels may also work with many limit removing level sets, but note that such demos will likely not play back in other executables (Doom, Doom95, Chocolate Doom or Doom-plus) by exceeding visplane overflow limits and such, and may also suffer from severe or unreliable intercepts overflows. To avoid these overflows and use compatibility settings that still behave quite like vanilla you can use PrBoom or PrBoom-plus with nolimit.cfg, attached here. It applies all the Doom compatibility settings (without requiring overflow emulation), giving the resulting demo a version readable by PrBoom or PrBoom-plus but not by engines that may choke on bigger levels. Apply it thus in the command line:

PrBoom -config nolimit.cfg -record whatever
Make sure, also, that the default_compatibility_level setting at the top of nolimits.cfg is set to -1. Applying any other setting (other than the current PrBoom version) will interfere with the selected settings or the behavior.

For Boom levels, compatibility level 9, Boom's standard behavior, is most suitable. Practically all levels presented as "Boom compatible" will run as intended with this compatibility level. One drawback of Boom compatibility is that living monsters may fall off ledges, possibly into hard-to-access pits. Thus, when playing large (limit removing) levels that don't use Boom triggers, it may be better to use nolimit.cfg (as noted above).

Keep in mind the above notes while creating and testing levels, as well, if you are interested in seeing consistent demos of your levels from fellow players.

Edit: Eliminated the compatibility level 7 suggestion due to its "monsters get glued together" bug. (05 May 2009)

Share this post

Link to post

I'd just like to make it clear that I disagree strongly with the suggestion to use complevel 7. I urge people to use complevels 2 and 3 as usual for levels that are designed as "limit-removing" but otherwise vanilla compatible. That is what these complevels are intended for.

Complevel 7 has some weird stuff that is only there for compatibility with Boom's version of vanilla compatibility, and which even changed between Boom versions.

Share this post

Link to post

Grazza said:
That is what these complevels are intended for.

As far as intention is involved, what happened is that the PrBoom team added Doom compatible playback support so people could watch COMPET-N demos on Linux, Windows 2000 and XP. Not "to record v1.9 but without limits". You could do something like that using the individual settings anyway. Since it's there, people have also used it to play and record... sometimes on "limit removing", but fortunately mostly on true vanilla levels where it works most like in Doom and true compatibles. That is, you don't have the problem where a demo with a certain version is handled differently by different engines, and probably fails in the engine that version really belongs to.

Complevel 7 has some weird stuff that is only there for compatibility with Boom's version of vanilla compatibility

Weird stuff? Let's be specific. Compatibility level 7 simply uses some Boom algorithms with a lot of the compatibility changes that make it work much (but not exactly) like Doom. It's not the same as 2-4 or 9, and that's not really a problem because the levels it's best used on don't really need those compatibility levels or their exact behavior. Arguably, though, various "limit removing" levels will work better with compatibility level 9 than 7, if they were tested in PrBoom's default behavior, ZDoom, or Boom's default behavior, as they may break if some Boom-like behavior (not editing features, just "Boomisms") is not present.

Another option would be to use "-1" plus many or all Doom settings, but most would agree it's hard to manage demos that are consistent with each other when they may have different settings and its annoying to have to set different specific compatibility settings and keep track of them. I'd only use this on "strong limit removing" levels which would fail even in Boom.

Share this post

Link to post

I found a serious bug in compatibility level 7, which I was suggesting as an option for limit removing levels, that makes it unsuitable for playing. Like in MBF, it fails to check whether there's an obstruction in the location where a monster is being respawned or resurrected. This makes monsters get stuck together.

I've replaced the recommendation with using a CFG that behaves much like vanilla without overflow emulation, instead of a compatibility level.

Share this post

Link to post

I like idea of that nolimit.cfg but recommending people use it for non Boom levels isn't going to keep monsters from falling into pits. I find it does work properly and is respected when compatibility is set to 11, 12, or 13. I had even downloaded all the old PrBoom packages to find the version that had broken it, it's been awhile but if I recall correctly it was version 2.1.1 even though PrBoom-Plus says that complevel 13 is for PrBoom 2.1.0 - 2.1.1.

I hope we get a new complevel and drop the numbers for some nice short simple names soon.


Also I just remembered that the bug where the ssg reloads even when ammo is zero/one didn't get fixed until the 2.3.x/2.4.0 line. It isn't a big deal and for nolimit maps I'd rather that then monsters falling out of reach. Still worth pointing out.

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