Jump to content

Can't Get Map to Work in Vanilla Doom [Dehacked] (Works in Chocolate Doom)


Arsinikk

Recommended Posts

So I've been developing a map that was supposed to be Vanilla Doom (+Dehacked) compatible... but I've recently run into the following error when I load the map with DOOMHACK.EXE:
 

Quote

W_CacheLumpNum: 3410637 >= numlumps

 

After some research, I've deduced that it most likely has to do with the TEXTURE1 lump.

 

Since I use some custom textures, I just decided to copy over the original Doom2 TEXTURE1 lump and put all my new textures in a TEXTURE2 lump. But I'm still getting the same error.

 

I will mention that I have replaced DBRAIN1-4 and SW1BLUE/SW2BLUE in the TEXTURE1 lump to utilize the animation and switch texture functionalities.

 

The WAD works perfectly fine in Chocolate Doom, which is what I used to test Vanilla Compatibility.

 

Could someone please take a look and see what I'm doing wrong?

 

PurpleRain.zip link removed - Final WAD here

Edited by Arsinikk

Share this post


Link to post

Vanilla DOS have some quirks with flats and sprites. That may be the issue here.

1. Try to move your flats to the top of the WAD and put them under FF_START and F_END (instead of FF_END)

 

2. Make sure to copy all the original sprites from Doom 2 to your pwad, Vanilla Doom needs them to work. You can do that manually on Slade or using a program like DeusF to merge them for you (that's what Chocolate Doom emulates when you use "-merge"). There's a second method tho, you can change the name of your sprites and use the Strings table on Dehacked to replace them. However I prefer the first option - it's how I did on D4V.

3. If you choose the second method, make sure to apply your patch directly on the Doom 2 executable. You can use the DOS version of Dehacked to do that.

Here's more infomation about it: 

 

Edited by Noiser

Share this post


Link to post

Ok, so thanks @Noiser for the advice! I'm pretty sure it was FF_END that was causing that issue.
It should've been F_END, like you said.

 

I was totally looking at that Doomkid thread the other day!

 

I knew I remembered why I renamed the sprites and had the dehacked direct the names to a new name (example: POSS** to POSZ**)...

 

I would prefer to replace just the enemies I need with Dehacked with new names than to have to ask people to merge with DeusF.

 

Unfortunately, I'm having a different issue now...

Let me ask quickly, should the end of the sprites be S_END or SS_END?

 

I say this because if I have S_END, DOOMHACK.EXE will get stuck at P_Init: Init Playloop state...

 

If I have SS_END, DOOMHACK.EXE will load into the menu, but if I try to load the map, I get the dreaded R_ProjectSprite: Invalid sprite frame 38 : 0 error

 

I'll upload an updated version to reflect the switched sprite dehacked:

PurpleRain.zip link removed - Final WAD here

Edited by Arsinikk

Share this post


Link to post
On 9/7/2021 at 9:52 PM, Arsinikk said:

Unfortunately, I'm having a different issue now...

Let me ask quickly, should the end of the sprites be S_END or SS_END?

S_START and S_END (forget this)

Edited by Noiser

Share this post


Link to post

So even with replacing the names with dehacked, Vanilla Doom kept throwing the R_ProjectSprite error at me.

Only by using DeusF, was I able to get the map to load correctly.

 

But let me ask, it's not a common practice (or even legal) to include all of the IWAD sprites in a PWAD file, is it?

 

Would I just have to ask people to use DeusF to compile the WAD for vanilla?

 

I just wonder how in some of Doomkid's projects like "Ray Mohawk's Manic Monday!" are able to run with just Dehacked without replacing all the sprites...

Share this post


Link to post

I'm not sure why you are still getting this error, maybe @Doomkid could help you out

37 minutes ago, Arsinikk said:

 But let me ask, it's not a common practice (or even legal) to include all of the IWAD sprites in a PWAD file, is it?

Honestly, I don't think it's a big of an issue (as long as you don't upload to idgames... but you can make a separate version for it anyway)

Edited by Noiser

Share this post


Link to post

To load custom sprite sets into vanilla, you should put them between SS_START and S_END markers (assuming you're changing the four-letter sprite prefixes with DEHACKED). More importantly, however, is that your sprites need to be the first lumps (at the top of the list in SLADE). This is because you aren't actually putting in a normal S_START marker -- vanilla ignores the SS_START marker, which is just used by convention -- and so it tries to load everything above S_END as a sprite. So, the lumps should be in the following order:

 

SS_START

(sprites)

S_END

FF_START

(flats)

F_END

... and then everything else, in whatever order/arrangement you please.

Edited by maxmanium

Share this post


Link to post

@maxmanium Thanks so much!

 

This was exactly my problem! Once I put the sprites first, then flats, and then everything else, it worked!

 

Also thanks to @Noiser for your help as well with troubleshooting! :)

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...