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

structured PK3, R667 sprites and brightmaps - doesn't work?

Question

I've been dipping my toes into using .pk3 and folders for my new mapset, in part to properly compartmentalize custom monsters.

 

The unpacked code can be found on my github repo, here.

 

I have been building for GZDoom 4.4.x


OK, so I have successfully added a couple of R667 monsters, one of which has brightmaps defined. Following various howtos, and analysing existing .pk3 maps (ar luminae, Dawn of Reality) I have the basics almost working - sprite frames, sounds and brightmaps etc separated into paths, root DECORATE referencing sprite DECORATE files and my first map in the correct folder:

Spoiler

 


/
    Actors/
        BeamZombie/
            DECORATE
        CyberImp/
            DECORATE
        Brightmaps/
            BeamZombie/
                [brightmap images]
        Maps/
            e1m1.wad
        Sounds/
            BeamZombie/
                [sound files]
            CyberImp/
                [sound files]
        Sprites/
            BeamZombie/
                [sprite frame images]
            CyberImp/
                [sprite frame images]
    DECORATE
    GLDEFS.BeamZombie
    MAPINFO
    SNDINFO

    

 

 

So the root DECORATE file just imports the specific monster DECORATE files, MAPINFO is - well - a mapinfo, SNDINFO combines both sprite sound defs and the various file types from each custom monster def are separated as per the above file system plan. I also removed all the cruft (credits, start/end marker lumps etc.) so there are no startup errors or warnings.

 

The map plays just fine, as do the sprites and their corresponding sounds. It will play correctly loading the root folder and as a compressed .pk3 (via Slade3) file.

 

The issue is that I don't get any beam zombie brightmaps being applied when I play the map. The map 'Ar luminae' uses this same custom monster, and the brightmaps seem to work fine for that map, and as far as I can see, I have applied the GLDEFS correctly.

 

A couple of things may be going on:

 

 - I altered the paths in the GLDEFS file, but I found a couple of references that talked about differences between referencing lumpnames vs actual image file names - but they were discussing .wad files not .pk3 files.

 - I also read something about extensions being ignored and I followed the pattern in 'Ar luminae' of using the sprite name as the extension. I am not certain though that the GLDEFS.BeamZombie file is being read at all...

 

Like I said, it all works beautifully, except the brightmaps...

 

I'd appreciate advice or suggestions on what I am doing wrong here.

 

Thanks, Doom gurus!

 

 

 

 

Share this post


Link to post

4 answers to this question

Recommended Posts

  • 0

@smeghammerI'd ran into trouble building Dissension into a .pk3 when I completed it. Had issues everywhere. The WAD is a bit of a mess in SLADE but in the end I just went with it. I'd also like some advice about .pk3 from anyone who understands it's better :)

Share this post


Link to post
  • 0

@Doom-X-Machina

Here are some URLs etc. that I used to help me out:

 

Brightmaps:

 

General structure:

 

For custom monsters:

  • split the WAD lump contents into [folder]/monster/[files] by type as per the folder structure above.
    • i.e. sprite frames, sprite sounds, brightmaps
    • remove irrelevant lump data (start/end markers, credits texts etc.) to prevent startup warnings
  • Use a DECORATE file in root to load specific ones for each custom monster
    • make sure you give custom monster a unique ID if not there already
    • Don't duplicate loading (ZSCRIPT sometimes is same as DECORATE) - I had this exact same issue - warnings about duplicated class definitions on startup. Still ran OK but took ages to find.
  • I combined both monster sound defs into a root level SNDINFO, though there is probably a way to split out and load as per the DECORATE method

Hopefully these refs might help.

 

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
×