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

Crispy Doom 7.0 (Update: Aug 09, 2024)

Recommended Posts

26 minutes ago, NightFright said:

And nothing needs to be changed in the header, the one with "heretic version"?

No, in fact AFAIK you can't change the header or it will not get recognised as a valid hhe patch. I will check this later if no one else confirms.

Share this post


Link to post

Well, if it's like this, right now it's better to only use the first three episodes. Having to utilize a launch parameter isn't too convenient for the average user.

 

BTW: Those text IDs can be different, depending on which Heretic version is supposed to be used. 

Edited by NightFright

Share this post


Link to post

I installed 7.0 on MacOs via Homebrew but I can't see any Truecolor option?

Share this post


Link to post
2 minutes ago, s4f3s3x said:

I installed 7.0 on MacOs via Homebrew but I can't see any Truecolor option?

It's a compile-time option, meaning you either build the truecolour version with it unconditionally applied, or the normal (non-truecolour) version which can't do truecolour at all. I'm guessing the Homebrew version only builds the normal version by default.

Share this post


Link to post

I see, thank you. Unfortunately I wouldn't know how to compile anything... I hope maybe in the future will be possibile to add to Homebrew also the Truecolor version (why hasn't it been made as a toggable menu voice, by the way?)

Share this post


Link to post
2 minutes ago, s4f3s3x said:

why hasn't it been made as a toggable menu voice, by the way?

Given that Crispy Doom is meant to be "Chocolate Doom with a lot of patches on top," the nature of the changes make it very hard to create a single program that has both rendering types.

 

In contrast, International Doom, which is broadly derived from Crispy, has a toggle for truecolour on/off. But actually it's *always* running in truecolour, and the toggle just affects how things are drawn. This has some consequences on performance, as well as visuals -- it doesn't use Doom's extra palettes for the pain effect for instance.

Share this post


Link to post

Just as plums said. I'll explain remaining problems a bit:

  1. Translucency is a bit expensive because it's always dynamically calculated. Using a LUT (TRANMAP, TINTMAP, XLATAB) is no longer possible, because such table contains only 256 color values, while TrueColor expects to get one of 256r * 256g * 256b = 16.777.216 possible color values. Depending on how much translucent objects are on the screen and how closer they are to the player, the more expensive calculations have to be.
  2. Custom palette effects don't work. While pain/bonus/rad and Hexen extra palette effects are happening, the engine is making a copy of the screen and blending it over using 100% precise but hard coded color and accurate blending mode. This can also be considered as a translucency effect, but this blending is done by SDL itself and is really not that expensive.
  3. When TrueColor is compiled in and enabled in the game, custom COLORMAP tricks like brightmaps will not work. This is unavoidable, unfortunately. Knee-Deep in KDiZD even shows a warning right before jumping into the first map, @esselfortium knows how to use magic. 😊

The first and second issues are theoretically fixable, but we haven't come up with a solution yet. Also, please keep in mind that despite TrueColor capabilities, the engine still works in single-threaded software mode. It does not require a modern video card and tons of RAM, and can still run on literally anything. All it really needs is 32-bit display mode. 

Share this post


Link to post

Will Crispy be made ID24-compliant in the future? Assuming it's within the scope of the project.

Asking because I'd like to play newly released Legacy of Rust expansion with it.

Share this post


Link to post
8 minutes ago, Nilex said:

Will Crispy be made ID24-compliant in the future? Assuming it's within the scope of the project.

Asking because I'd like to play newly released Legacy of Rust expansion with it.

I'd say the answer is likely a "no" because Legacy of Rust also requires Boom features and runs with the MBF21 comp level. Crispy Doom is meant to remain a vanilla port with the exception of removing engine limits.

 

If you wanna play Legacy of Rust in something kinda similar to Crispy Doom, you should check out Woof.

Share this post


Link to post

Thanks for informing me about Woof!, looks like it's the best option for me indeed.

And its ID24 support has already been requested too so that's nice.

Share this post


Link to post

Are there any test WADs available demonstrating the “Min missile chance”, “Melee threshold”, etc. parameters that are available in Crispy Doom? I’ve ported them over to my MBF24 spec, but I’d like to make sure I got them right.

Share this post


Link to post
54 minutes ago, ZigfriedYoshimitsu said:

Excuse the stupid question but where can I see the benefits of this true colour mode? I ran crispy-doom-truecolor.exe but I don't really see any differences

Is there color banding there? On flats?

Share this post


Link to post
Posted (edited)
1 hour ago, ZigfriedYoshimitsu said:

Excuse the stupid question but where can I see the benefits of this true colour mode? I ran crispy-doom-truecolor.exe but I don't really see any differences

Here are some comparison screenshots I took. You can click on one to open up the expanded view and use the left/right arrow keys to easily compare.

 

Doom 2 - Entryway

Spoiler

doom-palette.png.570b16ec754f8bef19bb5f3451e90908.pngdoom-truecolor.png.3517222cdc5e323093939de7b9ad5701.png

Hexen - Winnowing Hall

Spoiler

hexen-palette.png.4259629becb60936bde3fbf708e7b176.pnghexen-truecolor.png.7a23dfdfe04ca68845d55bab867b4401.png

Perhaps there are better examples, but these ones are easy to try out yourself.

Share this post


Link to post

Since Crispy Doom offers a lot of vanilla Doom bug fixes I was wondering if you guys could address this bug as well: https://doomwiki.org/wiki/Wrong_sound_for_exit_switches ?

 

Not much needs to be done here. All you have to do is add

// EXIT SWITCH?
if (line->special == 11 || line->special == 51)
    sound = sfx_swtchx;
else
    sound = sfx_swtchn;

before https://github.com/fabiangreffrath/crispy-doom/blob/master/src/doom/p_switch.c#L271-L272

 

Also, I am not sure if this is out of project's scope, but could you possibly revisit the masterlevels.wad support and add some non-vanilla behavior to sky lumps, so that only levels that should have custom sky lumps would have starry sky, but use iwad's lumps for other levels?

Share this post


Link to post

speaking of master levels, would it be feasible to add a -nosideload equivalent to the config file, or maybe to straight up pass command line params through the config itself? i have nrftl/master levels/sigil in a folder under doom1/2/tnt/plutonia and i just dont want to load any other wads ever lol. i've been using a batch file for now but that's a pretty unsightly situation imo

Share this post


Link to post
Posted (edited)
On 8/11/2024 at 2:46 AM, plums said:

This has some consequences on performance, as well as visuals

 

Surprisingly, and because i thought something is wrong, i ran multiple times and double-checked if i had run the wrong .exe file,

paletted Crispy gave me 670fps, while truecolor Crispy gave me 730 fps.

 

Test-setup was the limit removing boomer.wad with -timedemo demo1 and a fresh install of Crispy DOOM with an aspect ratio of 16:9 and 400p on a Ryzen 8700G.

 

Sure, both framerates are far far away from a juddery experience, but my hardware seems to like truecolor more.

But i could imagine that many ghost enemies in Heretic standing behind each other impact the performance.

Edited by Meerschweinmann

Share this post


Link to post
Posted (edited)

Too bad the latest version of Crispy doesn't work on my laptop (by factory standard, the original OS was Windows 8 on x86, modified on Windows 10 when It was released at first time), i'll see all the new stuff added when i'll install this on my PC at home...

Edited by Walter confetti

Share this post


Link to post
2 hours ago, Walter confetti said:

Too bad the latest version of Crispy doesn't work on my laptop (by factory standard, the original OS was Windows 8 on x64, modified on Windows 10 when It was released at first time), i'll see all the new stuff added when i'll install this on my PC at home...

Why doesn't it work? What happens?

Share this post


Link to post
9 minutes ago, Walter confetti said:

It just say that the software can't be opened with the OS

 

Are you trying to run the 64-bit version on a 32-bit OS?

Share this post


Link to post

Yeah, that's It! Simple as that!

That lead to a question... There's not any chance for a 32 bit version like for the previous releases? Actually, works good with the 6.0 version

Share this post


Link to post

Hello, is there a sane way to use Nuked-SC55 in Crispy on Linux?

 

Using

snd_musiccmd                  "aplaymidi -p 128:0 -d 0"

in crispy-doom.cfg kinda works, but notes get stuck very frequently when the MIDI song gets switched.

 

I found another MIDI player: https://gitlab.com/dajoha/midiplay

But it complains about "/tmp/doom" not being a valid argument when booting Crispy.

Edited by SilverKeeper

Share this post


Link to post
19 minutes ago, SilverKeeper said:

Hello, is there a sane way to use Nuked-SC55 in Crispy on Linux?

 

Not really. Try Woof! for native MIDI support.

Share this post


Link to post
21 hours ago, ceski said:

 

Not really. Try Woof! for native MIDI support.

Sure, I know of Woof! (and by extension, Nugget) support. In any case, after some more testing it seems like I have to reset Nuked-SC55 (mostly) once with the Q key for aplaymidi to behave during the same Crispy session.

 

Tough chance with Eternity or the new RZDoom with FMOD, though. (it's back, although I can't see the Linux support to test this: https://github.com/atsb/RZDoom)
It's a shame that now that we have accurate SC55 playback, the sourceports audio backends have become a barrier; at least on Linux...
Granted, my usecases are kinda dumb: I like forgetting about vanilla/limit-removing complevels with Crispy; Nugget is the go-to for the rest; Eternity is just there for the few exclusive mapsets, but seeing the GZDoom supremacy, it might have to go...; and RZDoom I got just due to paranoia about GZDoom claimed "perfect ZDoom support".

Edited by SilverKeeper

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
×