Offtopic: Into Commodore 64 (6502) coding, pixeling or music?
Xentax is looking for new members for the C64 activities!
Just drop us a message at forum@xentax.com and join the Scene Team!

Forum rules: Click here

Assassins Creed PC .forge files

The Original Forum. Game archives, full of resources. How to open them? Get help here.
Post Reply
VenomOC
beginner
Posts: 23
Joined: Sun Mar 21, 2010 2:01 am
Been thanked: 1 time

Re: Assassins Creed PC .forge files

Post by VenomOC » Fri Apr 23, 2010 1:35 am

Ok friend, I'll be waiting for your progress to convert these files.

Hugs.

FordGT90Concept
advanced
Posts: 47
Joined: Thu Apr 15, 2010 7:16 am
Has thanked: 3 times
Been thanked: 13 times

Re: Assassins Creed PC .forge files

Post by FordGT90Concept » Fri Apr 23, 2010 5:57 am

Turfster wrote:No, but if you upload say the first 5 or 10 megs of it, I could take a quick look at it.
I'll document it myself then. :D


Edit: It uses URIs (Uniform Resource Identifiers) and practically all offsets are relative. This is going to be a pain. :(

Oh, and Assassin's Creed II was coded by Ubisoft Montreal and it shows: Most of the acroynms (AKPK, BKHD, DIDX, HIRC, STMG) make no sense in English. They probably stand for something in French.


Edit: Every acronym is followed by a 32-bit length of that section (this is true without exception). Found more too: DATA (uncompressed data, used exclusively for short .wav files), STID, and I doubt that's all.


The URIs generally aren't in order either. I don't think you'd get far with only 10 MiB of it. :(

OrangeC
double-veteran
double-veteran
Posts: 860
Joined: Sun Apr 20, 2008 2:58 am
Has thanked: 5 times
Been thanked: 33 times

Re: Assassins Creed PC .forge files

Post by OrangeC » Fri Apr 23, 2010 1:07 pm

Assasins creed 2 uses the WWise audio platform, no french.

FordGT90Concept
advanced
Posts: 47
Joined: Thu Apr 15, 2010 7:16 am
Has thanked: 3 times
Been thanked: 13 times

Re: Assassins Creed PC .forge files

Post by FordGT90Concept » Fri Apr 23, 2010 1:56 pm

All those four-letter combos I posted are known WWise identifiers? If so, is there already a program to handle them?

Rick
Moderator
Posts: 388
Joined: Tue Aug 09, 2005 10:10 pm
Location: California
Been thanked: 84 times
Contact:

Re: Assassins Creed PC .forge files

Post by Rick » Sat Apr 24, 2010 4:03 am

Someone posted this script for PCK before somewhere on these forums, I don't recall where. aluigi probably wrote it -- though it was made for the XBox 360 version of the game, so I had to fix the script for PC.

And yes, sounds are wwise format and you can use ww2ogg to convert.

Code: Select all

# script for QuickBMS http://aluigi.org/papers.htm#quickbms

Endian little

# Main header
IDString "AKPK"
Get HEADER_TOTAL_SIZE long

Get HEADER_UNK1 long
If HEADER_UNK1 != 1
   Print "Strange HEADER_UNK1 = %HEADER_UNK1%, may crash..."
EndIf

Get HEADER_EXTRA_DATA_SIZE long
Get SIZE_OF_BLOCK1 long
Get SIZE_OF_BLOCK2 long

SavePos TEMP_POS
Math TEMP_POS += HEADER_EXTRA_DATA_SIZE
GoTo TEMP_POS

# Block 1
Set EXTRACT_BLOCK_BASE_PATH string "1"
CallFunction EXTRACT_BLOCK

# Block 2
Set EXTRACT_BLOCK_BASE_PATH string "2"
CallFunction EXTRACT_BLOCK

# Function to extract a block
# Set EXTRACT_BLOCK_BASE_PATH to the path where the files should be extracted before calling
StartFunction EXTRACT_BLOCK
   Get BLOCK_NUM_ENTRIES long

   For I = 0 < BLOCK_NUM_ENTRIES
      # Read the file entry
      Get ENTRY_ID long
      Get ENTRY_BLOCK_SIZE long
      Get ENTRY_SIZE long
      Get ENTRY_UNK1 long
      If ENTRY_UNK1 != 0
         Print "Strange ENTRY_UNK1 = %ENTRY_UNK1%, may crash..."
      EndIf
      Get ENTRY_OFFSET_IN_BLOCKS long
      Get ENTRY_UNK2 long
      If ENTRY_UNK2 != 0
         If ENTRY_UNK2 != 1
            Print "Strange ENTRY_UNK2 = %ENTRY_UNK2%, may crash..."
         EndIf
      EndIf

      # Extract
      Set PATH EXTRACT_BLOCK_BASE_PATH
      String PATH += "/"
      String PATH += ENTRY_ID

      Set OFFSET ENTRY_OFFSET_IN_BLOCKS
      Math OFFSET *= ENTRY_BLOCK_SIZE

      Log PATH OFFSET ENTRY_SIZE
   Next I
EndFunction
http://blog.gib.me/

Don't ask me about localization tools; if you don't have the resources to develop them yourself you don't need them.

FordGT90Concept
advanced
Posts: 47
Joined: Thu Apr 15, 2010 7:16 am
Has thanked: 3 times
Been thanked: 13 times

Re: Assassins Creed PC .forge files

Post by FordGT90Concept » Sat Apr 24, 2010 4:41 am

That would unpack the file but it wouldn't do anything about all the subtypes I listed. I'll look at the app you mentioned to see if it does...

ww2ogg looks like it will only handle the RIFF WAVE files which is useful but, from the looks of it, that is only like 2% of the PAK files. There's a whole lot more there.

Rick
Moderator
Posts: 388
Joined: Tue Aug 09, 2005 10:10 pm
Location: California
Been thanked: 84 times
Contact:

Re: Assassins Creed PC .forge files

Post by Rick » Sat Apr 24, 2010 5:58 am

FordGT90Concept wrote:That would unpack the file but it wouldn't do anything about all the subtypes I listed. I'll look at the app you mentioned to see if it does...

ww2ogg looks like it will only handle the RIFF WAVE files which is useful but, from the looks of it, that is only like 2% of the PAK files. There's a whole lot more there.
Uh, huh? subtypes? the "subtypes" you're talking about are part of the WWise format stuff, and are not really interesting (except where the RIFF data is embedded), those are mostly in the "1" directory. I converted all of the "2" directory with ww2ogg with no issues (or most of, don't recall, I think the only exception were already wav format?).
http://blog.gib.me/

Don't ask me about localization tools; if you don't have the resources to develop them yourself you don't need them.

FordGT90Concept
advanced
Posts: 47
Joined: Thu Apr 15, 2010 7:16 am
Has thanked: 3 times
Been thanked: 13 times

Re: Assassins Creed PC .forge files

Post by FordGT90Concept » Sat Apr 24, 2010 6:46 am

It is block 1 that has all the BKHD, DIDX, HIRC, STMG, DATA, etc. subtypes. So block 1 apparently contains a sort of compiled script and block 2 contains the audio?

I wouldn't say block 1 isn't interesting because it is. I never seen a file format that uses names like that to define what is following. Is it worth investigating further? Probably not because there is little to gain by doing so.

Rick
Moderator
Posts: 388
Joined: Tue Aug 09, 2005 10:10 pm
Location: California
Been thanked: 84 times
Contact:

Re: Assassins Creed PC .forge files

Post by Rick » Sat Apr 24, 2010 8:35 pm

FordGT90Concept wrote:I never seen a file format that uses names like that to define what is following.
It's actually quite a common method.

http://en.wikipedia.org/wiki/Interchange_File_Format
FordGT90Concept wrote:Is it worth investigating further? Probably not because there is little to gain by doing so.
It's WWise related data (soundbank information, etc). Some of the files in the 1 directory have some sound data but otherwise it's nothing interesting if you just want to get sound files.
http://blog.gib.me/

Don't ask me about localization tools; if you don't have the resources to develop them yourself you don't need them.

FordGT90Concept
advanced
Posts: 47
Joined: Thu Apr 15, 2010 7:16 am
Has thanked: 3 times
Been thanked: 13 times

Re: Assassins Creed PC .forge files

Post by FordGT90Concept » Sat Apr 24, 2010 11:34 pm

Learn something new everyday.


Oh, right, there are some RIFFs in block 1. I think that's what I'll try to do: extract all RIFFs from both blocks.

FordGT90Concept
advanced
Posts: 47
Joined: Thu Apr 15, 2010 7:16 am
Has thanked: 3 times
Been thanked: 13 times

Re: Assassins Creed PC .forge files

Post by FordGT90Concept » Mon Apr 26, 2010 5:45 am

I extracted 29,478 RIFF files out of block 2 and all successfully converted to OGG with ww2ogg.exe. Most of the music is in the sfx file.


Edit: Extracted 3,178 RIFF files out of block 2 (BKHD) of sounds_eng.pck and had a listen to 6 of them: two were a fire crackling, two were a horses galloping (different speeds), one was something creeking loudly, and the last one was the voice overs for one of the major plot speeches by the main character. Not too likely to find any music in those so I think my pck research ends there.

OrangeC
double-veteran
double-veteran
Posts: 860
Joined: Sun Apr 20, 2008 2:58 am
Has thanked: 5 times
Been thanked: 33 times

Re: Assassins Creed PC .forge files

Post by OrangeC » Mon Apr 26, 2010 1:32 pm

All music is in the Sounds_sfx pck.

Rick
Moderator
Posts: 388
Joined: Tue Aug 09, 2005 10:10 pm
Location: California
Been thanked: 84 times
Contact:

Re: Assassins Creed PC .forge files

Post by Rick » Mon Apr 26, 2010 3:17 pm

OrangeC wrote:All music is in the Sounds_sfx pck.
Sort by filesize after converting and the large files should mostly be music. That's how I found the music track I was after. :)
http://blog.gib.me/

Don't ask me about localization tools; if you don't have the resources to develop them yourself you don't need them.

User avatar
Tosyk
double-veteran
double-veteran
Posts: 934
Joined: Thu Oct 22, 2009 10:24 am
Location: Russia, Siberia
Has thanked: 225 times
Been thanked: 111 times
Contact:

Re: Assassins Creed PC .forge files

Post by Tosyk » Tue Apr 27, 2010 3:48 am

Dear Turfster can you make support skinning data?
Thank you for all you do here
my blog | my forum

FordGT90Concept
advanced
Posts: 47
Joined: Thu Apr 15, 2010 7:16 am
Has thanked: 3 times
Been thanked: 13 times

Re: Assassins Creed PC .forge files

Post by FordGT90Concept » Tue Apr 27, 2010 3:55 am

Rick wrote:
OrangeC wrote:All music is in the Sounds_sfx pck.
Sort by filesize after converting and the large files should mostly be music. That's how I found the music track I was after. :)
Same. There are 4 music tracks in the language files (eng and ita). Either works as they are the same. Other than that, most are in SFX.

Post Reply