Possibly incorrect 4CC data in VBSP #4

Open
opened 2026-01-29 21:16:26 +00:00 by claunia · 1 comment
Owner

Originally created by @TheRogueArchivist on GitHub (Nov 16, 2024).

After checking some VBSP files in HL2, I noticed that seemingly every lump in every file checked reports: 4CC: , , , .

This seems to require further investigation, and VBSP files of versions 19 and 20 were checked.

Originally created by @TheRogueArchivist on GitHub (Nov 16, 2024). After checking some VBSP files in HL2, I noticed that seemingly every lump in every file checked reports: ``4CC: , , , ``. This seems to require further investigation, and VBSP files of versions 19 and 20 were checked.
Author
Owner

@TheRogueArchivist commented on GitHub (Nov 16, 2024):

Further info on 4CC/FourCC:

The first two integers contain the byte offset (from the beginning of the bsp file) and byte length of that lump's data block; an integer defining the version number of the format of that lump (usually zero), and then a four byte identifier that is usually 0, 0, 0, 0. For compressed lumps, the fourCC contains the uncompressed lump data size in integer form (see section [Lump compression](https://developer.valvesoftware.com/wiki/Source_BSP_File_Format#Lump_compression) for details). Unused members of the lump_t array (those that have no data to point to) have all elements set to zero.

Lump offsets (and their corresponding data lumps) are always rounded up to the nearest 4-byte boundary, though the lump length may not be.

https://developer.valvesoftware.com/wiki/BSP_(Source)

@TheRogueArchivist commented on GitHub (Nov 16, 2024): Further info on 4CC/FourCC: ``` The first two integers contain the byte offset (from the beginning of the bsp file) and byte length of that lump's data block; an integer defining the version number of the format of that lump (usually zero), and then a four byte identifier that is usually 0, 0, 0, 0. For compressed lumps, the fourCC contains the uncompressed lump data size in integer form (see section [Lump compression](https://developer.valvesoftware.com/wiki/Source_BSP_File_Format#Lump_compression) for details). Unused members of the lump_t array (those that have no data to point to) have all elements set to zero. Lump offsets (and their corresponding data lumps) are always rounded up to the nearest 4-byte boundary, though the lump length may not be. ``` https://developer.valvesoftware.com/wiki/BSP_(Source)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: SabreTools/SabreTools.Serialization#4