Jump to content

BSA Archive Flags


Recommended Posts

I used my powers of awesomeness to determine the archive flags that were used to pack the official BSAs. This information could be important!

 

Skyrim - Animations.bsa

Flags: Compressed

 

Skyrim - Interface.bsa

Uncompressed, Flags: None

 

Skyrim - Meshes.bsa

Flags: Compressed, Retain Strings During Startup

Resource Types: Meshes

 

Skyrim - Misc.bsa

Uncompressed, Flags: Retain File Names

 

Skyrim - Shaders.bsa

Uncompressed, Flags: None

 

Skyrim - Sounds.bsa

Uncompressed, Flags: Retain File Names

Resource Types: Sounds, Voices

 

Skyrim - Textures.bsa

Flags: Compressed, Embed File Names

Resource Types: Textures

 

Skyrim - Voices.bsa

Uncompressed, Flags: None

Resource Types: Sounds, Voices

 

Skyrim - VoicesExtra.bsa

Uncompressed, Flags: None

Resource Types: Sounds, Voices

 

Dawnguard.bsa

Uncompressed, Flags: Retain File Names, Retain Strings During Startup

Resource Types: Meshes, Sounds, Textures, Voices

 

HearthFires.bsa

Uncompressed, Flags: Retain File Names, Retain Strings During Startup

Resource Types: Meshes, Sounds, Textures, Voices

 

Dragonborn.bsa

Uncompressed, Flags: Retain File Names, Retain Strings During Startup

Resource Types: Meshes, Sounds, Textures, Voices

 

HighResTexturePack01.bsa

Flags: Compressed, Embed File Names

Resource Types: Textures

 

HighResTexturePack02.bsa

Flags: Compressed, Embed File Names

Resource Types: Textures

 

HighResTexturePack03.bsa

Flags: Compressed, Embed File Names

Resource Types: Textures

 

Note:

By default, all BSAs have these flags: Include Directory Names and Include File Names. You can't change those flags, so I didn't add them to the list.

 

ARCHIVE FLAGS

 

 

Offset: 12	Byte: 0x03	Uncompressed, Flags(2): Include Directory Names, Include File Names
Offset: 12	Byte: 0x0B	Uncompressed, Flags(3): Retain Directory Names
Offset: 12	Byte: 0x13	Uncompressed, Flags(3): Retain File Names
Offset: 12	Byte: 0x23	Uncompressed, Flags(3): Retain File Name Offsets
Offset: 12	Byte: 0x83	Uncompressed, Flags(3): Retain Strings During Startup
Offset: 12	Byte: 0x1B	Uncompressed, Flags(4): Retain Directory Names, Retain File Names
Offset: 12	Byte: 0x2B	Uncompressed, Flags(4): Retain Directory Names, Retain File Name Offsets
Offset: 12	Byte: 0x8B	Uncompressed, Flags(4): Retain Directory Names, Retain Strings During Startup
Offset: 12	Byte: 0x33	Uncompressed, Flags(4): Retain File Names, Retain File Name Offsets
Offset: 12	Byte: 0x93	Uncompressed, Flags(4): Retain File Names, Retain Strings During Startup
Offset: 12	Byte: 0xA3	Uncompressed, Flags(4): Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0x3B	Uncompressed, Flags(5): Retain Directory Names, Retain File Names, Retain File Name Offsets
Offset: 12	Byte: 0x9B	Uncompressed, Flags(5): Retain Directory Names, Retain File Names, Retain Strings During Startup
Offset: 12	Byte: 0xAB	Uncompressed, Flags(5): Retain Directory Names, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0xB3	Uncompressed, Flags(5): Retain File Names, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0xBB	Uncompressed, Flags(6): Retain Directory Names, Retain File Names, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0x07	Flags(3): Compressed
Offset: 12	Byte: 0x0F	Flags(4): Compressed, Retain Directory Names
Offset: 12	Byte: 0x17	Flags(4): Compressed, Retain File Names
Offset: 12	Byte: 0x27	Flags(4): Compressed, Retain File Name Offsets
Offset: 12	Byte: 0x87	Flags(4): Compressed, Retain Strings During Startup
Offset: 12	Byte: 0x1F	Flags(5): Compressed, Retain Directory Names, Retain File Names
Offset: 12	Byte: 0x2F	Flags(5): Compressed, Retain Directory Names, Retain File Name Offsets
Offset: 12	Byte: 0x8F	Flags(5): Compressed, Retain Directory Names, Retain Strings During Startup
Offset: 12	Byte: 0x37	Flags(5): Compressed, Retain File Names, Retain File Name Offsets
Offset: 12	Byte: 0x97	Flags(5): Compressed, Retain File Names, Retain Strings During Startup
Offset: 12	Byte: 0xA7	Flags(5): Compressed, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0x3F	Flags(6): Compressed, Retain Directory Names, Retain File Names, Retain File Name Offsets
Offset: 12	Byte: 0x9F	Flags(6): Compressed, Retain Directory Names, Retain File Names, Retain Strings During Startup
Offset: 12	Byte: 0xAF	Flags(6): Compressed, Retain Directory Names, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0xB7	Flags(6): Compressed, Retain File Names, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0xBF	Flags(7): Compressed, Retain Directory Names, Retain File Names, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0x43	Uncompressed, Flags(3): Xbox 360, Include Directory Names, Include File Names
Offset: 12	Byte: 0x4B	Uncompressed, Flags(4): Xbox 360, Retain Directory Names
Offset: 12	Byte: 0x53	Uncompressed, Flags(4): Xbox 360, Retain File Names
Offset: 12	Byte: 0x63	Uncompressed, Flags(4): Xbox 360, Retain File Name Offsets
Offset: 12	Byte: 0xC3	Uncompressed, Flags(4): Xbox 360, Retain Strings During Startup
Offset: 12	Byte: 0x5B	Uncompressed, Flags(5): Xbox 360, Retain Directory Names, Retain File Names
Offset: 12	Byte: 0x6B	Uncompressed, Flags(5): Xbox 360, Retain Directory Names, Retain File Name Offsets
Offset: 12	Byte: 0xCB	Uncompressed, Flags(5): Xbox 360, Retain Directory Names, Retain Strings During Startup
Offset: 12	Byte: 0x73	Uncompressed, Flags(5): Xbox 360, Retain File Names, Retain File Name Offsets
Offset: 12	Byte: 0xD3	Uncompressed, Flags(5): Xbox 360, Retain File Names, Retain Strings During Startup
Offset: 12	Byte: 0xE3	Uncompressed, Flags(5): Xbox 360, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0x7B	Uncompressed, Flags(6): Xbox 360, Retain Directory Names, Retain File Names, Retain File Name Offsets
Offset: 12	Byte: 0xDB	Uncompressed, Flags(6): Xbox 360, Retain Directory Names, Retain File Names, Retain Strings During Startup
Offset: 12	Byte: 0xEB	Uncompressed, Flags(6): Xbox 360, Retain Directory Names, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0xF3	Uncompressed, Flags(6): Xbox 360, Retain File Names, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0xFB	Uncompressed, Flags(7): Xbox 360, Retain Directory Names, Retain File Names, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0x47	Flags(4): Xbox 360, Compressed
Offset: 12	Byte: 0x4F	Flags(5): Xbox 360, Compressed, Retain Directory Names
Offset: 12	Byte: 0x57	Flags(5): Xbox 360, Compressed, Retain File Names
Offset: 12	Byte: 0x67	Flags(5): Xbox 360, Compressed, Retain File Name Offsets
Offset: 12	Byte: 0xC7	Flags(5): Xbox 360, Compressed, Retain Strings During Startup
Offset: 12	Byte: 0x5F	Flags(6): Xbox 360, Compressed, Retain Directory Names, Retain File Names
Offset: 12	Byte: 0x6F	Flags(6): Xbox 360, Compressed, Retain Directory Names, Retain File Name Offsets
Offset: 12	Byte: 0xCF	Flags(6): Xbox 360, Compressed, Retain Directory Names, Retain Strings During Startup
Offset: 12	Byte: 0x77	Flags(6): Xbox 360, Compressed, Retain File Names, Retain File Name Offsets
Offset: 12	Byte: 0xD7	Flags(6): Xbox 360, Compressed, Retain File Names, Retain Strings During Startup
Offset: 12	Byte: 0xE7	Flags(6): Xbox 360, Compressed, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0x7F	Flags(7): Xbox 360, Compressed, Retain Directory Names, Retain File Names, Retain File Name Offsets
Offset: 12	Byte: 0xDF	Flags(7): Xbox 360, Compressed, Retain Directory Names, Retain File Names, Retain Strings During Startup
Offset: 12	Byte: 0xEF	Flags(7): Xbox 360, Compressed, Retain Directory Names, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0xF7	Flags(7): Xbox 360, Compressed, Retain File Names, Retain File Name Offsets, Retain Strings During Startup
Offset: 12	Byte: 0xFF	Flags(8): Xbox 360, Compressed, Retain Directory Names, Retain File Names, Retain File Name Offsets, Retain Strings During Startup
Offset: 13	Byte: 0x01	Flags: Embed File Names
Offset: 13	Byte: 0x02	Flags: XMem Codec (available to only compressed Xbox 360 archives)
Offset: 13	Byte: 0x03	Flags: Embed File Names, XMem Codec (available to only compressed Xbox 360 archives)

 

 

RESOURCE FLAGS

 

 

Offset: 32	Byte: 0x01	Resource Types: Meshes
Offset: 32	Byte: 0x02	Resource Types: Textures
Offset: 32	Byte: 0x03	Resource Types: Meshes, Textures
Offset: 32	Byte: 0x04	Resource Types: Menus,
Offset: 32	Byte: 0x05	Resource Types: Menus, Meshes
Offset: 32	Byte: 0x06	Resource Types: Menus, Textures
Offset: 32	Byte: 0x07	Resource Types: Menus, Meshes, Textures
Offset: 32	Byte: 0x08	Resource Types: Sounds
Offset: 32	Byte: 0x09	Resource Types: Meshes, Sounds
Offset: 32	Byte: 0x10	Resource Types: Voices
Offset: 32	Byte: 0x11	Resource Types: Meshes, Voices
Offset: 32	Byte: 0x12	Resource Types: Textures, Voices
Offset: 32	Byte: 0x13	Resource Types: Meshes, Textures, Voices
Offset: 32	Byte: 0x14	Resource Types: Menus, Voices
Offset: 32	Byte: 0x15	Resource Types: Menus, Meshes, Voices
Offset: 32	Byte: 0x16	Resource Types: Menus, Textures, Voices
Offset: 32	Byte: 0x17	Resource Types: Menus, Meshes, Textures, Voices
Offset: 32	Byte: 0x18	Resource Types: Sounds, Voices
Offset: 32	Byte: 0x19	Resource Types: Meshes, Sounds, Voices
Offset: 32	Byte: 0x20	Resource Types: Shaders
Offset: 32	Byte: 0x21	Resource Types: Meshes, Shaders
Offset: 32	Byte: 0x22	Resource Types: Shaders, Textures
Offset: 32	Byte: 0x23	Resource Types: Meshes, Shaders, Textures
Offset: 32	Byte: 0x24	Resource Types: Menus, Shaders
Offset: 32	Byte: 0x25	Resource Types: Menus, Meshes, Shaders
Offset: 32	Byte: 0x26	Resource Types: Menus, Shaders, Textures
Offset: 32	Byte: 0x27	Resource Types: Menus, Meshes, Shaders, Textures
Offset: 32	Byte: 0x28	Resource Types: Shaders, Sounds
Offset: 32	Byte: 0x29	Resource Types: Meshes, Shaders, Sounds
Offset: 32	Byte: 0x30	Resource Types: Shaders, Voices
Offset: 32	Byte: 0x31	Resource Types: Meshes, Shaders, Voices
Offset: 32	Byte: 0x32	Resource Types: Shaders, Textures, Voices
Offset: 32	Byte: 0x33	Resource Types: Meshes, Shaders, Textures, Voices
Offset: 32	Byte: 0x34	Resource Types: Menus, Shaders, Voices
Offset: 32	Byte: 0x35	Resource Types: Menus, Meshes, Shaders, Voices
Offset: 32	Byte: 0x36	Resource Types: Menus, Shaders, Textures, Voices
Offset: 32	Byte: 0x37	Resource Types: Menus, Meshes, Shaders, Textures, Voices
Offset: 32	Byte: 0x38	Resource Types: Shaders, Sounds, Voices
Offset: 32	Byte: 0x39	Resource Types: Meshes, Shaders, Sounds, Voices
Offset: 32	Byte: 0x40	Resource Types: Trees
Offset: 32	Byte: 0x41	Resource Types: Meshes, Trees
Offset: 32	Byte: 0x42	Resource Types: Textures, Trees
Offset: 32	Byte: 0x43	Resource Types: Meshes, Textures, Trees
Offset: 32	Byte: 0x44	Resource Types: Menus, Trees
Offset: 32	Byte: 0x45	Resource Types: Menus, Meshes, Trees
Offset: 32	Byte: 0x46	Resource Types: Menus, Textures, Trees
Offset: 32	Byte: 0x47	Resource Types: Menus, Meshes, Textures, Trees
Offset: 32	Byte: 0x48	Resource Types: Sounds, Trees
Offset: 32	Byte: 0x49	Resource Types: Meshes, Sounds, Trees
Offset: 32	Byte: 0x50	Resource Types: Trees, Voices
Offset: 32	Byte: 0x51	Resource Types: Meshes, Trees, Voices
Offset: 32	Byte: 0x52	Resource Types: Textures, Trees, Voices
Offset: 32	Byte: 0x53	Resource Types: Meshes, Textures, Trees, Voices
Offset: 32	Byte: 0x54	Resource Types: Menus, Trees, Voices
Offset: 32	Byte: 0x55	Resource Types: Menus, Meshes, Trees, Voices
Offset: 32	Byte: 0x56	Resource Types: Menus, Textures, Trees, Voices
Offset: 32	Byte: 0x57	Resource Types: Menus, Meshes, Textures, Trees, Voices
Offset: 32	Byte: 0x58	Resource Types: Sounds, Trees, Voices
Offset: 32	Byte: 0x59	Resource Types: Meshes, Sounds, Trees, Voices
Offset: 32	Byte: 0x60	Resource Types: Shaders, Trees
Offset: 32	Byte: 0x61	Resource Types: Meshes, Shaders, Trees
Offset: 32	Byte: 0x62	Resource Types: Shaders, Textures, Trees
Offset: 32	Byte: 0x63	Resource Types: Meshes, Shaders, Textures, Trees
Offset: 32	Byte: 0x64	Resource Types: Menus, Shaders, Trees
Offset: 32	Byte: 0x65	Resource Types: Menus, Meshes, Shaders, Trees
Offset: 32	Byte: 0x66	Resource Types: Menus, Shaders, Textures, Trees
Offset: 32	Byte: 0x67	Resource Types: Menus, Meshes, Shaders, Textures, Trees
Offset: 32	Byte: 0x68	Resource Types: Shaders, Sounds, Trees
Offset: 32	Byte: 0x69	Resource Types: Meshes, Shaders, Sounds, Trees
Offset: 32	Byte: 0x70	Resource Types: Shaders, Trees, Voices
Offset: 32	Byte: 0x71	Resource Types: Meshes, Shaders, Trees, Voices
Offset: 32	Byte: 0x72	Resource Types: Shaders, Textures, Trees, Voices
Offset: 32	Byte: 0x73	Resource Types: Meshes, Shaders, Textures, Trees, Voices
Offset: 32	Byte: 0x74	Resource Types: Menus, Shaders, Trees, Voices
Offset: 32	Byte: 0x75	Resource Types: Menus, Meshes, Shaders, Trees, Voices
Offset: 32	Byte: 0x76	Resource Types: Menus, Shaders, Textures, Trees, Voices
Offset: 32	Byte: 0x77	Resource Types: Menus, Meshes, Shaders, Textures, Trees, Voices
Offset: 32	Byte: 0x78	Resource Types: Shaders, Sounds, Trees, Voices
Offset: 32	Byte: 0x79	Resource Types: Meshes, Shaders, Sounds, Trees, Voices
Offset: 32	Byte: 0x80	Resource Types: Fonts
Offset: 32	Byte: 0x81	Resource Types: Fonts, Meshes
Offset: 32	Byte: 0x82	Resource Types: Fonts, Textures
Offset: 32	Byte: 0x83	Resource Types: Fonts, Meshes, Textures
Offset: 32	Byte: 0x84	Resource Types: Fonts, Menus
Offset: 32	Byte: 0x85	Resource Types: Fonts, Menus, Meshes
Offset: 32	Byte: 0x86	Resource Types: Fonts, Menus, Textures
Offset: 32	Byte: 0x87	Resource Types: Fonts, Menus, Meshes, Textures
Offset: 32	Byte: 0x88	Resource Types: Fonts, Sounds
Offset: 32	Byte: 0x89	Resource Types: Fonts, Meshes, Sounds
Offset: 32	Byte: 0x90	Resource Types: Fonts, Voices
Offset: 32	Byte: 0x91	Resource Types: Fonts, Meshes, Voices
Offset: 32	Byte: 0x92	Resource Types: Fonts, Textures, Voices
Offset: 32	Byte: 0x93	Resource Types: Fonts, Meshes, Textures, Voices
Offset: 32	Byte: 0x94	Resource Types: Fonts, Menus, Voices
Offset: 32	Byte: 0x95	Resource Types: Fonts, Menus, Meshes, Voices
Offset: 32	Byte: 0x96	Resource Types: Fonts, Menus, Textures, Voices
Offset: 32	Byte: 0x97	Resource Types: Fonts, Menus, Meshes, Textures, Voices
Offset: 32	Byte: 0x98	Resource Types: Fonts, Sounds, Voices
Offset: 32	Byte: 0x99	Resource Types: Fonts, Meshes, Sounds, Voices
Offset: 32	Byte: 0x1A	Resource Types: Sounds, Textures, Voices
Offset: 32	Byte: 0x1B	Resource Types: Meshes, Sounds, Textures, Voices
Offset: 32	Byte: 0x1C	Resource Types: Menus, Sounds, Voices
Offset: 32	Byte: 0x1D	Resource Types: Menus, Meshes, Sounds, Voices
Offset: 32	Byte: 0x1E	Resource Types: Menus, Sounds, Textures, Voices
Offset: 32	Byte: 0x1F	Resource Types: Menus, Meshes, Sounds, Textures, Voices
Offset: 32	Byte: 0x2A	Resource Types: Shaders, Sounds, Textures
Offset: 32	Byte: 0x2B	Resource Types: Meshes, Shaders, Sounds, Textures
Offset: 32	Byte: 0x2C	Resource Types: Menus, Shaders, Sounds
Offset: 32	Byte: 0x2D	Resource Types: Menus, Meshes, Shaders, Sounds
Offset: 32	Byte: 0x2E	Resource Types: Menus, Shaders, Sounds, Textures
Offset: 32	Byte: 0x2F	Resource Types: Menus, Meshes, Shaders, Sounds, Textures
Offset: 32	Byte: 0x3A	Resource Types: Shaders, Sounds, Textures, Voices
Offset: 32	Byte: 0x3B	Resource Types: Meshes, Shaders, Sounds, Textures, Voices
Offset: 32	Byte: 0x3C	Resource Types: Menus, Shaders, Sounds, Voices
Offset: 32	Byte: 0x3D	Resource Types: Menus, Meshes, Shaders, Sounds, Voices
Offset: 32	Byte: 0x3E	Resource Types: Menus, Shaders, Sounds, Textures, Voices
Offset: 32	Byte: 0x3F	Resource Types: Menus, Meshes, Shaders, Sounds, Textures, Voices
Offset: 32	Byte: 0x4A	Resource Types: Sounds, Textures, Trees
Offset: 32	Byte: 0x4B	Resource Types: Meshes, Sounds, Textures, Trees
Offset: 32	Byte: 0x4C	Resource Types: Menus, Sounds, Trees
Offset: 32	Byte: 0x4D	Resource Types: Menus, Meshes, Sounds, Trees
Offset: 32	Byte: 0x4E	Resource Types: Menus, Sounds, Textures, Trees
Offset: 32	Byte: 0x4F	Resource Types: Menus, Meshes, Sounds, Textures, Trees
Offset: 32	Byte: 0x5A	Resource Types: Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0x5B	Resource Types: Meshes, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0x5C	Resource Types: Menus, Sounds, Trees, Voices
Offset: 32	Byte: 0x5D	Resource Types: Menus, Meshes, Sounds, Trees, Voices
Offset: 32	Byte: 0x5E	Resource Types: Menus, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0x5F	Resource Types: Menus, Meshes, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0x6A	Resource Types: Shaders, Sounds, Textures, Trees,
Offset: 32	Byte: 0x6B	Resource Types: Meshes, Shaders, Sounds, Textures, Trees
Offset: 32	Byte: 0x6C	Resource Types: Menus, Shaders, Sounds, Trees
Offset: 32	Byte: 0x6D	Resource Types: Menus, Meshes, Shaders, Sounds, Trees
Offset: 32	Byte: 0x6E	Resource Types: Menus, Shaders, Sounds, Textures, Trees
Offset: 32	Byte: 0x6F	Resource Types: Menus, Meshes, Shaders, Sounds, Textures, Trees
Offset: 32	Byte: 0x7A	Resource Types: Shaders, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0x7B	Resource Types: Meshes, Shaders, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0x7C	Resource Types: Menus, Shaders, Sounds, Trees, Voices
Offset: 32	Byte: 0x7D	Resource Types: Menus, Meshes, Shaders, Sounds, Trees, Voices
Offset: 32	Byte: 0x7E	Resource Types: Menus, Shaders, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0x7F	Resource Types: Menus, Meshes, Shaders, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0x8A	Resource Types: Fonts, Sounds, Textures
Offset: 32	Byte: 0x8B	Resource Types: Fonts, Meshes, Sounds, Textures
Offset: 32	Byte: 0x8C	Resource Types: Fonts, Menus, Sounds
Offset: 32	Byte: 0x8D	Resource Types: Fonts, Menus, Meshes, Sounds
Offset: 32	Byte: 0x8E	Resource Types: Fonts, Menus, Sounds, Textures
Offset: 32	Byte: 0x8F	Resource Types: Fonts, Menus, Meshes, Sounds, Textures
Offset: 32	Byte: 0x9A	Resource Types: Fonts, Sounds, Textures, Voices
Offset: 32	Byte: 0x9B	Resource Types: Fonts, Meshes, Sounds, Textures, Voices
Offset: 32	Byte: 0x9C	Resource Types: Fonts, Menus, Sounds, Voices
Offset: 32	Byte: 0x9D	Resource Types: Fonts, Menus, Meshes, Sounds, Voices
Offset: 32	Byte: 0x9E	Resource Types: Fonts, Menus, Sounds, Textures, Voices
Offset: 32	Byte: 0x9F	Resource Types: Fonts, Menus, Meshes, Sounds, Textures, Voices
Offset: 32	Byte: 0x0A	Resource Types: Sounds, Textures
Offset: 32	Byte: 0xA0	Resource Types: Fonts, Shaders
Offset: 32	Byte: 0xA1	Resource Types: Fonts, Meshes, Shaders
Offset: 32	Byte: 0xA2	Resource Types: Fonts, Shaders, Textures
Offset: 32	Byte: 0xA3	Resource Types: Fonts, Meshes, Shaders, Textures
Offset: 32	Byte: 0xA4	Resource Types: Fonts, Menus, Shaders
Offset: 32	Byte: 0xA5	Resource Types: Fonts, Menus, Meshes, Shaders
Offset: 32	Byte: 0xA6	Resource Types: Fonts, Menus, Shaders, Textures
Offset: 32	Byte: 0xA7	Resource Types: Fonts, Menus, Meshes, Shaders, Textures
Offset: 32	Byte: 0xA8	Resource Types: Fonts, Shaders, Sounds
Offset: 32	Byte: 0xA9	Resource Types: Fonts, Meshes, Shaders, Sounds
Offset: 32	Byte: 0xAA	Resource Types: Fonts, Shaders, Sounds, Textures
Offset: 32	Byte: 0xAB	Resource Types: Fonts, Meshes, Shaders, Sounds, Textures
Offset: 32	Byte: 0xAC	Resource Types: Fonts, Menus, Shaders, Sounds
Offset: 32	Byte: 0xAD	Resource Types: Fonts, Menus, Meshes, Shaders, Sounds
Offset: 32	Byte: 0xAE	Resource Types: Fonts, Menus, Shaders, Sounds, Textures
Offset: 32	Byte: 0xAF	Resource Types: Fonts, Menus, Meshes, Shaders, Sounds, Textures
Offset: 32	Byte: 0x0B	Resource Types: Meshes, Sounds, Textures
Offset: 32	Byte: 0xB0	Resource Types: Fonts, Shaders, Voices
Offset: 32	Byte: 0xB1	Resource Types: Fonts, Meshes, Shaders, Voices
Offset: 32	Byte: 0xB2	Resource Types: Fonts, Shaders, Textures, Voices
Offset: 32	Byte: 0xB3	Resource Types: Fonts, Meshes, Shaders, Textures, Voices
Offset: 32	Byte: 0xB4	Resource Types: Fonts, Menus, Shaders, Voices
Offset: 32	Byte: 0xB5	Resource Types: Fonts, Menus, Meshes, Shaders, Voices
Offset: 32	Byte: 0xB6	Resource Types: Fonts, Menus, Shaders, Textures, Voices
Offset: 32	Byte: 0xB7	Resource Types: Fonts, Menus, Meshes, Shaders, Textures, Voices
Offset: 32	Byte: 0xB8	Resource Types: Fonts, Shaders, Sounds, Voices
Offset: 32	Byte: 0xB9	Resource Types: Fonts, Meshes, Shaders, Sounds, Voices
Offset: 32	Byte: 0xBA	Resource Types: Fonts, Shaders, Sounds, Textures, Voices
Offset: 32	Byte: 0xBB	Resource Types: Fonts, Meshes, Shaders, Sounds, Textures, Voices
Offset: 32	Byte: 0xBC	Resource Types: Fonts, Menus, Shaders, Sounds, Voices
Offset: 32	Byte: 0xBD	Resource Types: Fonts, Menus, Meshes, Shaders, Sounds, Voices
Offset: 32	Byte: 0xBE	Resource Types: Fonts, Menus, Shaders, Sounds, Textures, Voices
Offset: 32	Byte: 0xBF	Resource Types: Fonts, Menus, Meshes, Shaders, Sounds, Textures, Voices
Offset: 32	Byte: 0x0C	Resource Types: Menus, Sounds
Offset: 32	Byte: 0xC0	Resource Types: Fonts, Trees
Offset: 32	Byte: 0xC1	Resource Types: Fonts, Meshes, Trees
Offset: 32	Byte: 0xC2	Resource Types: Fonts, Textures, Trees
Offset: 32	Byte: 0xC3	Resource Types: Fonts, Meshes, Textures, Trees
Offset: 32	Byte: 0xC4	Resource Types: Fonts, Menus, Trees
Offset: 32	Byte: 0xC5	Resource Types: Fonts, Menus, Meshes, Trees
Offset: 32	Byte: 0xC6	Resource Types: Fonts, Menus, Textures, Trees
Offset: 32	Byte: 0xC7	Resource Types: Fonts, Menus, Meshes, Textures, Trees
Offset: 32	Byte: 0xC8	Resource Types: Fonts, Sounds, Trees
Offset: 32	Byte: 0xC9	Resource Types: Fonts, Meshes, Sounds, Trees
Offset: 32	Byte: 0xCA	Resource Types: Fonts, Sounds, Textures, Trees
Offset: 32	Byte: 0xCB	Resource Types: Fonts, Meshes, Sounds, Textures, Trees
Offset: 32	Byte: 0xCC	Resource Types: Fonts, Menus, Sounds, Trees
Offset: 32	Byte: 0xCD	Resource Types: Fonts, Menus, Meshes, Sounds, Trees
Offset: 32	Byte: 0xCE	Resource Types: Fonts, Menus, Sounds, Textures, Trees
Offset: 32	Byte: 0xCF	Resource Types: Fonts, Menus, Meshes, Sounds, Textures, Trees
Offset: 32	Byte: 0x0D	Resource Types: Menus, Meshes, Sounds
Offset: 32	Byte: 0xD0	Resource Types: Fonts, Trees, Voices
Offset: 32	Byte: 0xD1	Resource Types: Fonts, Meshes, Trees, Voices
Offset: 32	Byte: 0xD2	Resource Types: Fonts, Textures, Trees, Voices
Offset: 32	Byte: 0xD3	Resource Types: Fonts, Meshes, Textures, Trees, Voices
Offset: 32	Byte: 0xD4	Resource Types: Fonts, Menus, Trees, Voices
Offset: 32	Byte: 0xD5	Resource Types: Fonts, Menus, Meshes, Trees, Voices
Offset: 32	Byte: 0xD6	Resource Types: Fonts, Menus, Textures, Trees, Voices
Offset: 32	Byte: 0xD7	Resource Types: Fonts, Menus, Meshes, Textures, Trees, Voices
Offset: 32	Byte: 0xD8	Resource Types: Fonts, Sounds, Trees, Voices
Offset: 32	Byte: 0xD9	Resource Types: Fonts, Meshes, Sounds, Trees, Voices
Offset: 32	Byte: 0xDA	Resource Types: Fonts, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0xDB	Resource Types: Fonts, Meshes, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0xDC	Resource Types: Fonts, Menus, Sounds, Trees, Voices
Offset: 32	Byte: 0xDD	Resource Types: Fonts, Menus, Meshes, Sounds, Trees, Voices
Offset: 32	Byte: 0xDE	Resource Types: Fonts, Menus, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0xDF	Resource Types: Fonts, Menus, Meshes, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0x0E	Resource Types: Menus, Sounds, Textures
Offset: 32	Byte: 0xE0	Resource Types: Fonts, Shaders, Trees
Offset: 32	Byte: 0xE1	Resource Types: Fonts, Meshes, Shaders, Trees
Offset: 32	Byte: 0xE2	Resource Types: Fonts, Shaders, Textures, Trees
Offset: 32	Byte: 0xE3	Resource Types: Fonts, Meshes, Shaders, Textures, Trees
Offset: 32	Byte: 0xE4	Resource Types: Fonts, Menus, Shaders, Trees
Offset: 32	Byte: 0xE5	Resource Types: Fonts, Menus, Meshes, Shaders, Trees
Offset: 32	Byte: 0xE6	Resource Types: Fonts, Menus, Shaders, Textures, Trees
Offset: 32	Byte: 0xE7	Resource Types: Fonts, Menus, Meshes, Shaders, Textures, Trees
Offset: 32	Byte: 0xE8	Resource Types: Fonts, Shaders, Sounds, Trees
Offset: 32	Byte: 0xE9	Resource Types: Fonts, Meshes, Shaders, Sounds, Trees
Offset: 32	Byte: 0xEA	Resource Types: Fonts, Shaders, Sounds, Textures, Trees
Offset: 32	Byte: 0xEB	Resource Types: Fonts, Meshes, Shaders, Sounds, Textures, Trees
Offset: 32	Byte: 0xEC	Resource Types: Fonts, Menus, Shaders, Sounds, Trees
Offset: 32	Byte: 0xED	Resource Types: Fonts, Menus, Meshes, Shaders, Sounds, Trees
Offset: 32	Byte: 0xEE	Resource Types: Fonts, Menus, Shaders, Sounds, Textures, Trees
Offset: 32	Byte: 0xEF	Resource Types: Fonts, Menus, Meshes, Shaders, Sounds, Textures, Trees
Offset: 32	Byte: 0x0F	Resource Types: Menus, Meshes, Sounds, Textures
Offset: 32	Byte: 0xF0	Resource Types: Fonts, Shaders, Trees, Voices
Offset: 32	Byte: 0xF1	Resource Types: Fonts, Meshes, Shaders, Trees, Voices
Offset: 32	Byte: 0xF2	Resource Types: Fonts, Shaders, Textures, Trees, Voices
Offset: 32	Byte: 0xF3	Resource Types: Fonts, Meshes, Shaders, Textures, Trees, Voices
Offset: 32	Byte: 0xF4	Resource Types: Fonts, Menus, Shaders, Trees, Voices
Offset: 32	Byte: 0xF5	Resource Types: Fonts, Menus, Meshes, Shaders, Trees, Voices
Offset: 32	Byte: 0xF6	Resource Types: Fonts, Menus, Shaders, Textures, Trees, Voices
Offset: 32	Byte: 0xF7	Resource Types: Fonts, Menus, Meshes, Shaders, Textures, Trees, Voices
Offset: 32	Byte: 0xF8	Resource Types: Fonts, Shaders, Sounds, Trees, Voices
Offset: 32	Byte: 0xF9	Resource Types: Fonts, Meshes, Shaders, Sounds, Trees, Voices
Offset: 32	Byte: 0xFA	Resource Types: Fonts, Shaders, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0xFB	Resource Types: Fonts, Meshes, Shaders, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0xFC	Resource Types: Fonts, Menus, Shaders, Sounds, Trees, Voices
Offset: 32	Byte: 0xFD	Resource Types: Fonts, Menus, Meshes, Shaders, Sounds, Trees, Voices
Offset: 32	Byte: 0xFE	Resource Types: Fonts, Menus, Shaders, Sounds, Textures, Trees, Voices
Offset: 32	Byte: 0xFF	Resource Types: Fonts, Menus, Meshes, Shaders, Sounds, Textures, Trees, Voices
Offset: 33	Byte: 0x01	Resource Types: Misc

 

Edited by z929669
Link to comment
Share on other sites

So lossy textures are okay to be compressed a second time, but lossy/lossless sound files are not okay to be compressed a second time. That is weird one. Might be from higher compression that lossy sound files usually have over lossy textures. Nice analysis, firebro!

Link to comment
Share on other sites

Thanks.  It helps explain why BSAopt/DDSopt has had problems for the past 2 years or so when packing BSAs (compression needs to be set manually in BSAopt/DDSopt), why Archive.exe is sometimes so fast when archiving, and perhaps what the resource type checkboxes in Archive.exe are used for.

Link to comment
Share on other sites

Thanks.  It helps explain why BSAopt/DDSopt has had problems for the past 2 years or so when packing BSAs (compression needs to be set manually in BSAopt/DDSopt), why Archive.exe is sometimes so fast when archiving, and perhaps what the resource type checkboxes in Archive.exe are used for.

BSAopt can produce only uncompressed (0x03) and compressed BSAs (0x07). No flags. They are otherwise identical to Archive-created uncompressed and compressed BSAs. Edited by fireundubh
Link to comment
Share on other sites

Hmmm... When I repacked the DDSOpted textures I used "retain" rather than "embed". They seem to work ok ... but then my game's not been entirely stable this weekend ... for what I assumed were unrelated reasons.

 

Even if I repack them, it's going to be hard to say that made a difference...

Link to comment
Share on other sites

Hmmm... When I repacked the DDSOpted textures I used "retain" rather than "embed". They seem to work ok ... but then my game's not been entirely stable this weekend ... for what I assumed were unrelated reasons. Even if I repack them, it's going to be hard to say that made a difference...

When I compare two identical BSAs, one with Retain File Names and one with Embed File Names, in a hex editor, I don't see a material difference. There's nothing different except the flag bytes.I also don't see a material difference between a plain BSA and one with Retain File Names, Retain Directory Names, or Retain File Name Offsets.It's possible that these flags actually do nothing! But with flags like Retain File Name Offsets and Retain Strings During Startup, it's more likely that these flags instruct the game engine on how to load game data from the associated BSAs. Compress Archive and Xbox 360 Archive are probably the only flags that materially change the file.If we could get tangible results from these flags—results that we can test—we could use BSAopt to create pure BSAs and manually flag them with a hex editor to see what happens. If we could produce good results, someone could make a program that "fixes" BSAopt-created BSAs or even a program that goes through your mods and automatically flags them. 

Could this knowledge lead to being able to repack the DLC BSAs with optimized textures instead of having those as loose files?

Yes? Try and report back. Edited by fireundubh
Link to comment
Share on other sites

  • 5 months later...
  • 9 months later...

I realize I'm a little late to this party but I feel compelled to revive this. I have been repacking  bsas for a while now, including vanilla and official DLCs, and I am really surprised to hear of others having so much trouble with it. Last time I played, I combined all vanilla, update, DG, HF, and DB into 5 (I think) bsas and played for around 100 hrs with no problems. At first I had to play around with settings and figure out what could or could not be compressed but I always use max compression and I have yet to have any problems with it. I also have not observed any difference between having those original flags set or not.

 

The only problem I have had with compression are sound files. Xwm files don't comress well so it doesn't make sense to try anyway. Wav files do compress well but the game either crashes or won't load them consistently. AFAICT, only sound fx must be wav.

 

BSAOpt can create mixed archives (meaning compress + uncomrpessed). Here is an example of what I do using Convenient Horses v5.0:

  • Extract BSA (97.5MB)
  • Convert all wavs in sound/voice to xwm

    for /r %n in ("*.wav") do xwmaencode "%n" "%~pnn.xwm"
    (CD to the extraced files first! This command will recurse all folders under the currend directory!)
  • Remove original wav files

    for /r %n in ("*.xwm") do del "%~pnn.wav"
    (This will only delete a wav if there is an xwm with the same name.)
  • Open BSAOpt, choose CH files and output bsa name
  • Set compression to maximum
  • Make sure recursive is checked, select sound, uncheck all
  • Select scripts\source, uncheck all
  • Pack
  • When done, choose root folder in top treeview, uncheck all
  • Choose sound folder, check all
  • Set compression to none
  • Pack (49.1MB)
I am currently trying to work up the motivation to write my own BSA packer. I want it to be a drop in replacement for archive.exe with more options e.g. choose compression and flag options before packing, 7-zip and zopfli compression algorithms, search for duplicates before adding to the archive, automatically create multiple archives if the archive becomes too large (IIRC, you can have 2GB + 1 file). I've been thinking about it for some time now but I only just started it and I tend to start projects that I never finish.

 

 

BSAopt can produce only uncompressed (0x03) and compressed BSAs (0x07). No flags. They are otherwise identical to Archive-created uncompressed and compressed BSAs.

It may be specific to v2 but BSAOpt does set flags for me. For "Convenient Horses.bsa" the set flags are Meshes, Textures, Sounds, Voices, Shaders, and Misc.

Edited by x79
  • +1 1
Link to comment
Share on other sites

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
×
×
  • Create New...

Important Information

By using this site, you agree to our Guidelines, Privacy Policy, and Terms of Use.