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

Crispy Doom 6.0 (Update: Mar 31, 2023)

Recommended Posts

I'm experiencing a very strange thing regarding demo playback. This just happened several minutes ago and I can't point my finger at what could be causing it, anyways:

 

I have a whole set of demos recorded from some months ago when I was still using 5.4., demos that back then played perfectly fine. Today I wanted to look at them in 5.9.1. because of reasons that don't matter in this, and I found out that a couple would crash after 5 seconds more or less of loading, while some other demos loaded fine, or so it seems. At first I thought it'd be version incompatibilities or something so I went to check on different crispy versions (5.9.0., again on 5.4. but decompressed in a different folder, also checked on a different computer) and they also crashed. Furthermore, when it gets even stranger, now they also crash when using the same crispy executable that I used for recording!! 

 

There is something else, I loaded one of the demos in glboom+ just for safety and it never crashed, so this means the demos aren't corrupted, I think? But where is the problem though, and could there be a solution?

 

I compiled three of the demos in a zip file so someone could take a look and check if this also happens to them. 01 and 15s crashed, 02 didn't. 

https://www.dropbox.com/s/no8rvd8mli335h3/demoscrash.zip?dl=0

Share this post


Link to post
5 minutes ago, galileo31dos01 said:

I compiled three of the demos in a zip file so someone could take a look and check if this also happens to them. 01 and 15s crashed, 02 didn't. 

https://www.dropbox.com/s/no8rvd8mli335h3/demoscrash.zip?dl=0

 

Thanks, but they don't crash for me. I have just timedemo'd through 01 and 15s and they both finished just fine.

 

Did you know that you could simply attach a ZIP archive to your reply?

Share this post


Link to post

@galileo31dos01 @fabian They crash for me. Will try to investigate some more...

 

edit: Both crashes occur when the ARMADOSI texture comes into view. (The big "Armadosia" logo.)

 

With Chocolate Doom, that texture is displayed as if it's corrupted, but it doesn't crash.

 

The texture displays normally in both ports when not running a demo.

 

I couldn't find anything amiss in the textures for armadosia.wad, other than that the INTERPIC lump is included in the Patch and Texture tables, but removing it seems to make no difference.

 

edit 2: Hacking out that texture makes the demos play back fine. Wad attached. I don't know if the problem is with Crispy/Chocolate, or with the wad itself. I also have no idea why this is affecting us but not you @fabian

armadosia_nologo.wad.zip

 

arm_chocolate_tex.png

 

edit 3: The wad won't even load in vanilla doom :P

 

edit 4: aha, should have read the output of Crispy:

Warning: Truncated 'armadosia_01.lmp' lump name to 'ARMADOSI'.

@galileo31dos01 try renaming your demos and playing them, it should work fine then.

Edited by plums

Share this post


Link to post
20 hours ago, fabian said:

I don't own any Apple hardware, but there is a wiki article describing in detail how to build Crispy on Mac Os:

 

https://github.com/fabiangreffrath/crispy-doom/wiki/OS-X-Compilation-and-Installation-Guide

 

No dice. I get an error relating to not being able to find autotools. Who/where else would I ask about this? I don't really know my way around Github enough to be able to navigate it.

Share this post


Link to post
21 hours ago, plums said:

edit 4: aha, should have read the output of Crispy:


Warning: Truncated 'armadosia_01.lmp' lump name to 'ARMADOSI'.

@galileo31dos01 try renaming your demos and playing them, it should work fine then.

 

Oh, this bug again! I should find a solution for this, it is getting annoying...

 

Edii: It didn't crash for me because I loaded the demo as "~/armadosia_01.lmp", which M_ExtractFileBase() couldn't properly truncate to "armadosi".

 

Thanks a lot @plums for the analysis!

 

Edit 2: This could be a solution:

 

--- a/src/doom/d_main.c
+++ b/src/doom/d_main.c
@@ -1842,6 +1842,18 @@ void D_DoomMain (void)

         if (D_AddFile(file))
         {
+           char *name = lumpinfo[numlumps - 1]->name;
+           int i;
+
+           // [crispy] check if the demo file name gets truncated to a lump name that is already present.
+           if (strncasecmp(name, "demo", 4) &&
+               (i = W_CheckNumForNameFromTo(name, numlumps - 2, 0)) > -1)
+           {
+               I_Error("Demo lump name collision detected with lump \'%.8s\' from %s!\n"
+                       "Please rename your demo file.",
+                       lumpinfo[i]->name, W_WadNameForLump(lumpinfo[i]));
+           }
+
             M_StringCopy(demolumpname, lumpinfo[numlumps - 1]->name,
                          sizeof(demolumpname));
         }

 

That is, quit with an error message if the case is detected that a demo file name gets truncated to a lump name that is already present.

Edited by fabian

Share this post


Link to post
9 hours ago, fabian said:

That is, quit with an error message if the case is detected that a demo file name gets truncated to a lump name that is already present.

That seems the easiest.

 

For a more complex solution, it might be nice to rename the demo lump on load; since you can only load one demo at a time for playback, and wads essentially never have lumps with characters in the range of 0x80-0xFF, trying a rename to something like DEMOα should in theory always avoid collisions. This is maybe more trouble than it's worth though.

Share this post


Link to post
2 hours ago, fabian said:

I could just rename the lump to DEMO1 internally for the very reasons you outlined above. 

It would not surprise me if, among all the wads that exist, there is at least one with a lump named DEMO1 that is a graphic lump of some kind ;)

But yes that should be a decent solution.

Share this post


Link to post
47 minutes ago, plums said:

It would not surprise me if, among all the wads that exist, there is at least one with a lump named DEMO1 that is a graphic lump of some kind ;)

But yes that should be a decent solution.

That would crash the demo loop then. No, DEMO1 is almost certainly already a demo lump. 

Share this post


Link to post

@plums Thank you, renaming it to "arma_01" worked! 

 

BTW the Interpic lump was added by myself, maybe I inserted it in the patches by complete mistake and that could explain why it shows the titlepic image instead at the tally screen. Also yes, Armadosia is limit-removing. 

Share this post


Link to post
On 9/15/2020 at 10:57 PM, fabian said:

That would crash the demo loop then. No, DEMO1 is almost certainly already a demo lump. 

 

That's what I implemented today. Now you could name your demo files as you wish!

Share this post


Link to post

So I'm trying to make a DVD with loads of megawads and Crispy Doom, playable from the disc. Works fine with -cdrom as it should, and saves the data at c:\doomdata.

 

How can I get the setup exe to do the same as the game though? So I can start fresh off the DVD, and have setup save in c:\doomdata.

 

I used to use zdoom for this purpose and I would have a convoluted batch file that copies my standard config over if it doesn't exist already, or use what's there if something exists. I was hoping to make it simpler this time and start like it's a fresh crispy install (since it is!).

Share this post


Link to post

Hey! I'm having trouble with the Master Levels. I have them on the same folder as Crispy, and they load just fine (they appear as a " second episode" in Doom 2), but the skyboxes are all wrong, they keep the ones from Doom 2, and not the original ones. Is there a way to fix that? Thank you.

Share this post


Link to post

Maybe I'm not understanding this correctly, but I'm pretty sure all but three of the master levels have always used SKY1.

Share this post


Link to post
2 hours ago, Demion said:

Hey! I'm having trouble with the Master Levels. I have them on the same folder as Crispy, and they load just fine (they appear as a " second episode" in Doom 2), but the skyboxes are all wrong, they keep the ones from Doom 2, and not the original ones. Is there a way to fix that? Thank you.

 

It's in the Known Issues section:

 

https://github.com/fabiangreffrath/crispy-doom#crispy-doom-590

 

Share this post


Link to post
42 minutes ago, M_W said:

Maybe I'm not understanding this correctly, but I'm pretty sure all but three of the master levels have always used SKY1.

Yes, you're right. I meant that the ones that do use an alternative skybox were wrong, in this case 8 maps. It's not a big deal, but i thought that maybe it could be easily fixed.

Share this post


Link to post
7 hours ago, Demion said:

Yes, you're right. I meant that the ones that do use an alternative skybox were wrong, in this case 8 maps. It's not a big deal, but i thought that maybe it could be easily fixed.

Sorry! I misunderstood.

Share this post


Link to post

Update Sep 22, 2020: Crispy Doom 5.9.2 is released!


Crispy Doom is a friendly fork of Chocolate Doom that provides a higher display resolution, removes the static limits of the Doom engine and offers further optional visual, tactical and physical enhancements while remaining entirely config file, savegame, netplay and demo compatible with the original.

 

Crispy Doom 5.9.2 is released on September 22, 2020 to fix some more bugs and add some minor improvements.

 

Please visit the Crispy Doom homepage for more information:
https://github.com/fabiangreffrath/crispy-doom/releases

Binaries for Windows (x86) are available here:
https://github.com/fabiangreffrath/crispy-doom/releases/download/crispy-doom-5.9.2/crispy-doom-5.9.2-win32.zip

https://github.com/fabiangreffrath/crispy-doom/releases/download/crispy-doom-5.9.2/crispy-heretic-5.9.2-win32.zip


Have a lot of fun!

- Fabian

Share this post


Link to post
Quote

-pistolstart

This is rad as hell. I've always wanted source ports to have a feature like this, but this the first time I've ever seen it. I realize that such a feature saves maybe one second versus using idclev or binding a restart map key, but that one second of convenience just feels so nice.

 

That being said, trying to record a demo with -pistolstart causes the port to crash. I know that that is something that shouldn't be done, but I feel like maybe the parameter should just be ignored instead?

Share this post


Link to post
54 minutes ago, Spie812 said:

That being said, trying to record a demo with -pistolstart causes the port to crash. I know that that is something that shouldn't be done, but I feel like maybe the parameter should just be ignored instead?

 

It doesn't crash (I hope at least), but quit with an explicit error message - that's quite a difference. ;)

 

Ignoring the parameter when attempting to record a demo means you would only realize it doesn't work when entering the next level - which would probably annoy you enough to complain in this forum thread. So, in the end, the result is the same. :D

Share this post


Link to post

I have a friend who's trying to get into Doom and I want her to use Crispy, but she's insisting on using a controller and the setup isnt detecting it.  since GZDoom detects it just fine, she wants to use that.  is there a solution for this?

Share this post


Link to post

I'm trying to use the up to date dev builds of Crispy Heretic, but these two executables keep getting flagged as viruses. Any idea what's going on?

Crispy Heretic Virus.PNG

Share this post


Link to post

windows is always giving out false positives.  just last night I downloaded a crispy to a new folder, and everything was fine.  this morning, it tries to tell me the setup program in that folder is a virus.  it's bogus

Share this post


Link to post
9 hours ago, Mr.Unsmiley said:

I have a friend who's trying to get into Doom and I want her to use Crispy, but she's insisting on using a controller and the setup isnt detecting it.  since GZDoom detects it just fine, she wants to use that.  is there a solution for this?

I can't get Crispy Doom or Chocolate Doom to detect my Xbox One controller, either. Tests just fine in game controller properties in Windows 10. Works on everything else. No idea why it isn't detected in either port. Exited Steam just to make sure their controller API wasn't screwing something up, but it should all be kosher.

 

Also detected with joytest.exe. Registers all inputs. Tested with Crispy 5.9.0 and 20200927 daily build.

 

EDIT: Same story with dualshock 4.

Edited by M_W

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
×