Jump to content

Recommended Posts

Hello,

 

I am currently working on a PBO Manager-like tool which would aim to be able to extract any PBO file format without crashing (unlike other PBOs Manager wich crash depending of some variants).

To do so I've looked for some documentation regarding the format, and found two pages:

 

- https://community.bistudio.com/wiki/PBO_File_Format

- http://wiki.xentax.com/index.php/PBO_SREV

 

The documentation found is quite incomplete, as for an example, documentation on the magic bytes is nowhere to be found in the Bistudio wiki.

Here are the two file formats I've found and one which I could not find any resources in either wiki pages:

 

Regular Format:

/*
	Magic Bytes
	[A0 73 72 65 56] - Followed by 17 null bytes
*/

struct
{
	Asciiz filename;
	uint32_t packingMethod;
	uint32_t originalSize;
	uint32_t junk;
	uint32_t timeStamp;
	uint32_t dataSize;
};

...

Variant Format:

/*
	Magic Bytes
	[00 73 72 65 56] - Followed by 16 null bytes
*/

struct
{
	Asciiz someString;
	...
	Asciiz someOtherString;
	uint8_t nullByte = 0;
	struct unknownStruct
	{
		/* Unknown Data of approximatively 45 bytes (varies between PBOs) */
	};
};

struct
{
	Asciiz filename;
	uint32_t packingMethod;
	uint32_t originalSize;
	uint32_t junk;
	uint32_t timeStamp;
	uint32_t dataSize;
};

...

You'll note that both are distinguished with their magic bytes, with the first byte changing for the variant format and the extra null byte in the regular format.

 

What does represent the first byte of the magic bytes sequence ?

Why does the null byte sequences in the magic bytes sequence varies depending of the format ? What does it represent ?

What are the strings of the variant format used for in the first structure ?

What are the unknown data in the unknown structure in the variant format ? Why does it vary ?

 

Thanks for your help !

Share this post


Link to post
Share on other sites
11 minutes ago, Flinty said:

Hiya mate

 

I can't help you, but I reckon you'll have more success posting in the following sub forum instead https://forums.bohemia.net/forums/forum/180-arma-3-bi-tools-general/

 

Hope this helps you in your endeavours 

Oh, thank you, I already gave a look at the Community Utilities section which was not what I was looking for, but I did not see the Bi Tools' one.

I'll post it there, thanks !

  • Like 2

Share this post


Link to post
Share on other sites

Take a look at SwiftPbo or Armake if you need more info about the format.
If something says "unknown" or "junk" that usually means you are supposed to ignore it.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×