Leaderboard
-
ikskoks
Administrators9Points615Posts -
SgtSweetieBelle
Members8Points10Posts -
DKDave
Moderators7Points380Posts -
jmancoder
Members6Points95Posts
Popular Content
Showing content with the highest reputation since 10/09/2026 in Posts
-
EA Madden compression source
3 pointsHi guys, with the help of an AI agent, I decompiled the ea_madden_dump[] binary that is in ea_madden.c written by Aluigi Auriemma. The result is a functional decoder written in pure C for the NFL 07 game files. Here the link for the source: https://github.com/RayneDuarte/Madden-NFL-07-Decompressor3 points
-
Bleach Rebirth of Soul - Import-3dsMax 2025-2027
The plugin itself is not against the rules. You can choose whether to purchase the software to run it or not.2 points
-
Looking for help extracting the 3D models for Tetsujin 28 (PS2)
This one was really tricky, but I've managed to do it Here's Blender plugin (tested on 5.0, probably works on latest): io_scene_tetsujin28.zip Files that can be imported: .hgm - model files (no references to used textures) .hgt - texture files .vob - objects (structures with embedded model, animations and reference to texture file, some objects contain additional references to models) .kkm - map files (mutiple embedded models as templates and many instances of these models forming one game level geometry) .kkt - exact same as .hgt, but used with .kkm of same name Plugin loads any reference resource if finds them (if you keep file structure straight from T28GOU.DAT everything should be fine)2 points
-
I need help ripping assets from Naruto x Boruto Ninja Voltage (mobile game)
Hello, I have managed to get the game files and uploaded to AssetStudio to view them, and I found Texture2Ds and Sprites but some of the assets are missing. For an example, there are literally no audio/voice files at all. Then, I noticed AssetStudio doesnt recognize the assets inside a folder called "ondemand" and there are about 2k assets there and I think they are encrypted/compressed. Here is one of the examples of the encrypted assets: Is there a way to decrypt/decompress this type of file? I think those are the remaining assets. If anyone can help me I would really apprecaite it. 5db8fd68-da55-9c4a-c71f-84af76d61103.7z2 points
-
(PC) Need help with Dragon Ball Gekishin Squadra
I found and squashed a bug that was present in the previous version and I have added support for a few more formats. Please give the new version a try and let me know the results. What are you trying to import and where? python .\gekishin_jpkg_v3.py "path\to\*.jpkg" "path\to\extraction\folder"gekishin_jpkg_v3.py2 points
-
[PC]CONTROL Resonant
2 pointsTool supporting Alan Wake 2, Control, and FBC available: GitHubGitHub - Scobalula/Janitor: An asset extractor for Northl...An asset extractor for Northlight Engine games. Contribute to Scobalula/Janitor development by creating an account on GitHub.2 points
-
God Eater 3 model files and extraction/viewing help
i Found For Plugin For GE3 https://github.com/VelouriasMoon/GE3-Blender-Scene/tree/main1 point
-
Disney Speedstorm - extracting music/sfx/voice
PROGRESS updated 9/23/2024 THINGS WE'VE FIGURED OUT pack_sd.pack contains all the sound files! all filenames are a randomized 16-character alphanumeric string, with no obvious ordering and no metadata. filenames are consistent across patches... except for the Season 6 update, which renames all of the files >_< the following file types can be found within: WAV files (mostly music, must be converted with vgmstream) BNK packages (must be extracted with bnkextr) WEM files (mosty sound and voices) a single unidentifiable file called 397F9F6720B1625D that grows larger with each update to the game THINGS TO FIGURE OUT what is 397F9F6720B1625D?! is it an index of metadata?! WE MUST KNOW!!! file attached to this post here: INSTRUCTIONS what you need a copy of the game. the specific file for the music: (speedstorm directory)\Windows-Desktop\PC\pack_sd.pack quickbms by Luigi Auriemma to extract the files the BMS script by @DKDave so that QuickBMS can identify the filetypes of the extracted files. you can get it from this post: to convert the music: vgmstream-cli, download the relevant "Command Line" file for your OS to get the sound/voices: WWise *.BNK File Extractor how-to use QuickBMS to extract the files open quickbms.exe first prompt: select DKDave's BMS script second prompt: navigate to (speedstorm directory)\Windows-Desktop\PC\ and select pack_sd.pack, which contains all the sound files third prompt: choose whatever directory you want to extract all the files this will create a bajillion WAV and BNK files. the WAV files are music, the BNK files are packages containing sound and voice effects. use VGMStream to convert the music select ~400 of the WAV files at a time. any more and the command will fail. (my advice: if you start from the bottom of the file list and go up, then it'll prevent your window from autoscrolling.) drag and drop them onto vgmstream-cli.exe. you can do multiple batches at a time! repeat until all files are converted. the converted files will double-up the filename extension into .wav.wav. feel free to delete the rest. use BNK Extract to further extract the vox/sfx select a .bnk file drag and drop it onto bnkextr.exe repeat for each .bnk file (i'm pretty sure i figured out a way to do this in big batches but i forgot exactly how, will update when i can) ORIGINAL POST first off, apologies, i know VERY little about this sort of stuff, and a lot of this will probably seem pretty basic. i'd literally never heard of quickbms until maybe an hour ago lol tl;dr: trying to get music/sfx/voice files from Disney Speedstorm. opened .pack files and extracted ~40k files, most with no file extension. tried opening some at random in MPC-HC. one file gave me an error saying "failed to find a connectable filter" as well as tons of audio codec information. error log and file are attached. i feel like i'm getting close. i just need help turning this into something readable by audio playback apps, and a quick means to identify which extracted files contain audio. known game details: game: Disney Speedstorm developer: Gameloft engine: Jet Engine (shared with Asphalt 9, possibly modified/forked?) file type: .pack file list (as of 2024-07-11): my goals are to extract the following from Disney Speedstorm in a playable format by contemporary media players: music sound effects voice lines so far, using quickbms and the "Zip64Unpacker_A9_1.6.2.bms" script (which i found on this post by @ksg22 and this post by @Pige123), i've managed to extract around 40,000 files from all of the .pack files. their file extensions include: <none> (11,447 files) .json.jmodel (7,651 files) .tga.jtex (21,332 files) i'm guessing the files i want are somewhere in the 11.5k files with no file extension. at random i tried dumping a few into Media Player Classic. most come up "invalid", but occasionally i'll get something like this: i'll include the full log here, as i barely know what any of this means. LAV Splitter Source (internal)::Audio Media Type 0: -------------------------- Audio: 0xffff 44100Hz stereo 94kbps AM_MEDIA_TYPE: majortype: MEDIATYPE_Audio {73647561-0000-0010-8000-00AA00389B71} subtype: Unknown GUID Name {0000FFFF-0000-0010-8000-00AA00389B71} formattype: FORMAT_WaveFormatEx {05589F81-C356-11CE-BF01-00AA0055595A} bFixedSizeSamples: 1 bTemporalCompression: 0 lSampleSize: 256000 cbFormat: 66 WAVEFORMATEX: wFormatTag: 0xffff nChannels: 2 nSamplesPerSec: 44100 nAvgBytesPerSec: 11779 nBlockAlign: 0 wBitsPerSample: 0 cbSize: 48 (extra bytes) pbFormat: 0000: ff ff 02 00 44 ac 00 00 03 2e 00 00 00 00 00 00 ÿÿ..D¬.......... 0010: 30 00|00 00 02 31 00 00 a0 f6 95 00 ba 00 00 00 0....1.. ö.º... 0020: 12 0e 28 00 00 00 20 00 28 09 00 00 e2 09 00 00 ..(... .(...â... 0030: 24 01 20 00 f4 33 00 00 94 35 00 00 6f ce 50 a9 $. .ô3..5..oÎP© 0040: 08 0b .. Media Type 1: -------------------------- Audio AM_MEDIA_TYPE: majortype: MEDIATYPE_Audio {73647561-0000-0010-8000-00AA00389B71} subtype: Unknown GUID Name {AFBC2343-3DCB-4047-9655-E1E62A61B1C5} formattype: Unknown GUID Name {35189950-CAC9-4C8D-819D-B6FAEE15DD9D} bFixedSizeSamples: 1 bTemporalCompression: 0 lSampleSize: 256000 cbFormat: 72 WAVEFORMATEXFFMPEG: nCodecId: 0x0000 WAVEFORMATEX: wFormatTag: 0xffff nChannels: 2 nSamplesPerSec: 44100 nAvgBytesPerSec: 11779 nBlockAlign: 0 wBitsPerSample: 0 cbSize: 48 (extra bytes) pbFormat: 0000: 00 00 00 00 ff ff 02 00 44 ac 00 00 03 2e 00 00 ....ÿÿ..D¬...... 0010: 00 00 00 00 30 00 00 00|02 31 00 00 a0 f6 95 00 ....0....1.. ö. 0020: ba 00 00 00 12 0e 28 00 00 00 20 00 28 09 00 00 º.....(... .(... 0030: e2 09 00 00 24 01 20 00 f4 33 00 00 94 35 00 00 â...$. .ô3..5.. 0040: 6f ce 50 a9 08 0b 00 00 oÎP©.... i'll include a sample file, the one that gave me that error and thus presumably has some audio data in it: 2DCC76A86C2974BF.zip if anyone can help a gal decipher all this and squeeze something playable out of it, i'd really appreciate it! ^-^1 point
-
[ANDROID] Transformers Robots in Disguise .DAT tutorial for how to extract it in ModelResearcher
1 point1 point
-
Disney Speedstorm - extracting music/sfx/voice
cracked the index file, finally. several hours of messy work rooting through the EXE in Ghidra and cross-referencing it with a ProcDump of the running game to see what happens in RAM when music is loaded. turns out the encryption key was literallly a line of text disquised as an error: Error 3452: file not found lmao. the index contains a lot of useful information about the soundbanks, like filenames and folder structures for voice lines and SFX. but it's all mostly diegetic stuff. there's nothing that helps us identify the music in the loose .wem files in the root of the pack_sd file. gonna keep rooting around and see if i can figure out where else the music info might be stored. here are the manifests for now. manifests.zip1 point
-
TT isle of man Ride Of The Edge 3
The new release should only have warnings about the Shad tag, so feel free to share any other log messages you see here, as well as the files they are from. The two PTX texture types you sent should import as Blender images that you can assign in materials, as per the README. Note that for exporting to work, I will likely need to import various fields as custom properties, so don't count on what you import now being exportable later as-is. If you share just the main .exe for the game (I don't need enough files to actually run it), I could try analyzing it to make sure what I have is correct. That would make writing an exporter much simpler.1 point
-
How to extract or recreate animations from UFC 3 game?
Well, the first step would be actually getting the files onto your PC for analysis. Do you have a jailbroken PS4? If not, you could try downloading the game from somewhere, though the forum rules likely don't allow explaining the specifics. There are tools on GitHub for extracting PS4 PKG roms.1 point
-
TT isle of man Ride Of The Edge 3
Sorry for the delay. Here is what I have so far for a Blender 4.2+ add-on. It supports multi-file import, but it can be a bit slow. I'm still working on importing the vertex normals and skin data. Also, note that I may not have covered all of the texture formats, and materials for them are not automatically created. If you get any errors or missing textures/meshes, click Window->Toggle System Console and paste the contents here. Warnings for the last few unimplemented tags are normal. io_tt_isle_of_man-0.1.0-linux_x64.zip io_tt_isle_of_man-0.1.0-macos_arm64.zip io_tt_isle_of_man-0.1.0-windows_x64.zip1 point
-
God Eater 3 model files and extraction/viewing help
i found A tool for GE3 https://github.com/pmodel/GE3-Extractor1 point
-
Finding AES keys of Unreal Engine games
This is a blog of professional game developer to find aes key and its process.I just created new topic on it by thinking so further healthy discussion will continue in future. Links: https://blog.jamie.holdings/2019/03/23/reverse-engineering-aes-keys-from-unreal-engine-4-projects/1 point
-
[Tutorial] Hooking Android bytecode with Frida
Hi. I've posted a new tutorial on my blog https://ikskoks.pl/tutorial-hooking-android-bytecode-with-frida/1 point
-
[Xbox] Conker Live and Reloaded models
So, with the Unreal Port, what exactly is the end goal? Porting the game over to it or just playing with some of the stuff in another engine? It's been a hot minute since i've looked at this thread. Thanks to you, I've also been slowly working on remaking some of the models from the multiplayer and the campaign. I may be overdoing it a tad on using subdivision modifier, but I use the frame for basis, remake the mesh and with re-topologize in mind. They aren't perfect, I need to get back into making textures for this kind of stuff, but all placeholders and AO for now using node setups. I got a few others, but one thing at a time and good luck still to your endeavors in regards to this.1 point
-
Disney Speedstorm - extracting music/sfx/voice
two years later and i'm gonna take another crack at this. gonna attempt a memory dump with ProcDump and see what i can dig up.1 point
-
[ANDROID] Transformers Robots in Disguise Texture Data
It's Android, so it uses ETC1, and also change your dimensions and offset. The 12-byte header includes dimensions and data size:1 point
-
Resonance A Plague Tale Legacy
1 pointPosted two scripts you can use to get models from this game. Filenames are not existing because they seem to have stripped them from the engine. It is easy enough to locate characters inside level files when sorting by size though.1 point
-
Fate Grand Order Arcade .mot file
1 point
-
God Eater 3 model files and extraction/viewing help
i Found it https://forum.xentax.com/viewtopic.php?t=189231 point
-
Extracting Metin2 .EPK / .EIX Files
I couldn't find a working solution for this specific problem on the forum, so I decided to investigate it myself. After experimenting with the file structure and using AI assistance during the development process, I managed to put together a small Python-based extraction workflow that allows Metin2 .EPK / .EIX files to be extracted. I'm sharing it here in case it is useful to anyone else working with Metin2 assets or encountering the same problem. RequirementsWindows Python installed Metin2 .EPK and .EIX files UsageFirst, extract the provided ZIP archive. After extracting it, copy the Metin2 .EPK and .EIX files you want to work with into the same directory as: epk_extractor.py 1. Generate the extraction commandsRun: EPK List Tool.bat The batch file will scan the directory for .EIX / .EPK pairs and generate a file called: list.txt This file contains the Python commands required to extract each archive. 2. Run the generated commandsOpen the folder containing epk_extractor.py. Hold Shift and right-click an empty area inside the folder, then select: Open PowerShell window here On newer versions of Windows, this may appear as: Open in Terminal Open list.txt, copy its contents, paste them into PowerShell and press Enter. The commands will be executed sequentially and the corresponding EPK files will be extracted. 3. Extracted filesDepending on the contents of the archive, the extraction may produce files such as: .GR2 — Granny 3D model files .DDS — Texture files Other files contained within the archive The files are organized into their corresponding output directories. WorkflowMetin2 .EIX + .EPK │ ▼ EPK List Tool.bat │ ▼ list.txt │ ▼ Copy generated commands │ ▼ PowerShell │ ▼ epk_extractor.py │ ▼ Extracted GR2 / DDS / other files NotesThis is simply the workflow I ended up using successfully after not finding a suitable existing solution for my particular case. I am not claiming that this is the only or best way to handle the Metin2 archive format. I am posting it mainly as a practical solution and as a starting point for anyone interested in investigating the format further. If anyone has additional information about the Metin2 EPK/EIX format, encryption/compression, or a more complete way of handling these files, feel free to share it. Hopefully this is useful to someone. epk_extractor.zip1 point
-
Once Human (Beta) Noesis script
1 pointThe ZSTD compress algorithm is hide into the exe About the script udpate , i have done an update .. perfectible but it work i haven't share it before because no one have give me a response to test it deeper scripts.npk, shaders and mtlgen can be unpack all .pyc from the script.npk still have a ZSTD compression Once_Human_NPK_2026.7z1 point
-
[PC] Armored Fist 2 .RES
1 pointHey, These appear to be NovaLogic RESOURCE1 archives and quite some research has been invested into them already. The filenames are XOR'd with repeating bytes: 0xAD, 0xDE, 0xED, and 0xAC. Attached you will find two files: AF2_RES_Unpacker.py | This script will extract .RES files Place AF2_RES_Unpacker.py inside the same directory where the .RES files are and let it rip. AF2_LZP1_PNG.py | This script decompresses LZP1 and convert PCX to PNG. Place AF2_LZP1_PNG.py inside the same directory where the .PCX files are and let it rip. Below you will find the research / projects I briefly mentioned before. Source 1: Comanche 3 and Armored Fist 2 Notes Source 2: LZP1 Decompressor + PCX To PNG Converter AF2_RES_Unpacker.py AF2_LZP1_PNG.py1 point
-
Ape Escape 3/Rule of Rose .i3d file
Is this thread still relevant? Here's a skinning test for Rule of Rose. fmt_RuleOfRose_PS2_i3d.py1 point
-
(PSP) Yu-Gi-Oh Tag force model format (tms/tmt) help
1 point
-
The Amazing Spider-Man 1 and 2
1 pointNew Version of TASM 1+2 Tools Audio is now sorted/named Also sorted into languages.1 point
-
Asphalt 9 Legends (.jmodel) dump
1 point好了,我说完了。我会发布JTEX转ASTC的源代码。https://github.com/kuaishou114514/A9-ALU-JTEX-to-ASTC/blame/main/jtex2astc.py jtex2astc.py1 point
-
Disney Speedstorm - extracting music/sfx/voice
The file's here in the above thread (on 12 July 2024). It downloads ok, so not sure why you can't.1 point
-
Disney Speedstorm - extracting music/sfx/voice
@DKDave's file doesn't work anymore (i can't download it)1 point
-
Death Stranding 2 On The Beach models
Modding tools in progress (details in discord, forum thread will be created later). The first ever custom model in DS2. Extracted from the game, modified, and put back into it.1 point
-
Disney Speedstorm - extracting music/sfx/voice
@DKDave @SgtSweetieBelle Is there a way to repackage the files back to .pack? I'm making a mod with the voices of the characters in Spanish.1 point
-
Extracting The 3D Models And Textures From The Hundred Line: Last Defense Academy
I've had a quick look at the first archive. I don't know the exact format of the file tables and how they relate filenames to the actual files, but I can see that it uses LZ4 compression, so the raw files can be easily extracted without names. Here's an example image extracted manually as a test. If I can work out the filename/file relationship, a script should be easy enough.1 point
-
Disney Speedstorm - extracting music/sfx/voice
So I looked into this again and I'm still stumped. I managed to get a decrypted lib from the iOS version of the game via ArmConverter. I did find a few more hints but nothing I can make sense of. First, the devs refer to the pack files as "pegasus packs". Not sure if they were used in other Jet engine games. The file you're referring to is likely an encrypted SoundbanksInfo.xml file. Also the file names look like Murmur hashes by the const but the function has a that weird 0x61C88647 value use in a way that it is here. . I also have no idea what that string format they are using. Looks like Python but letters in the brackets don't make sense to me. Anyways. here is the lib if you want to play around and spend more time on it. You might get lucky but that's all I got in this sitting. https://drive.google.com/file/d/1Lzuinw7cys6_xgkOiu6Wkc0i8BhRe4Ft/view?usp=drive_link Next steps would be to find a way to attach a debugger to the game but that can be easier said then done.1 point
-
Disney Speedstorm - extracting music/sfx/voice
i went through all of the depots and manifests of the game on steamdb.info, used that to download a bunch of old versions of the game, and ran some comparisons to identify what was added or removed in each release. i've found the following: the game does, indeed, preserve filenames across versions! (WITH ONE EXCEPTION.) i can see all the new and changed tracks with a diff checker, which is great for continued archival. ...except for one big instance. will elaborate further below. the early access releases, starting from release #1 (18 April 2023) contains no pack_sd.pack file. instead, there's just a big main.pack file. presumably the sound files are in here, but @DKDave's BMS script wasn't able to identify them. i haven't figured out how to get anything usable out of this yet. the first release to contain a pack_sd.pack file is release #7 (28 September 2023) this is the pre-patch for Season 4 (Cave of Wonders, ft. Aladdin), and is also when the game left early access and became free-to-play. in release #11 (28 November 2023), a shit-ton of files were added. the package ballooned from 780 to 1503 wav files. i think someone forgot to .bnk a lot of the sfx/vox files. this is the pre-patch for Season 5 (Let It Go, ft. Frozen). in release #13 (6 February 2024), the file count went back to normal, but all of them had their names changed! because of this, it's hard to see what songs actually got added or removed. may have to do a CRC32 compare of every file in the directory or something... very annoying. this is the patch for Season 6 (Under the Sea, ft. The Little Mermaid). everything after #13 is business as usual. edit: I noticed something else that i think we should prioritize if possible: every single pack_sd.pack has an unidentifiable file in common that gets bigger with each release. this file is 397F9F6720B1625D. the growing filesize makes me think that this might be some kind of manifest/index with metadata for all of the sound files! anyone have any ideas on how to crack this open or decode it? i'll attach a zip with all of the files from every version of the game if anyone wants to take a crack at it: 397F9F6720B1625D.zip1 point
-
Disney Speedstorm - extracting music/sfx/voice
hi there! yeah, the music is in pack_sd, maybe they changed it in the newest updates? lemme check rq edit: yep it's all still in there! you're using DKDave's quickBMS script, right? the one in this post here: that'll get you all the music! i think i might have gotten lost a bit here, how are you able to see compression flags with that quickbms script? (sorry i'm new to all this! xD) also, where'd you nab that pack5 file from? all of the pack5 files i've seen so far have had filesizes in the hundreds of megabytes, but this one's tiny! edit: did some research, i see that these BT files are templates for 010 hex editor. never knew you could do that before. neat! might play around with this myself, though i barely know what i'm looking at, so you'll probably not get too much useful info from me ahahaha ^^;1 point
-
Disney Speedstorm - extracting music/sfx/voice
Thank you for your work! I was also looking into this game. I noticed that some of the files in some of these packs look like they are further compressed or possibly encrypted. Unsure. I included a BT template based on the quickbms script and a small pack with 2 files. One file has a compression flag and the other says it does not (based on the quickbms script) but the files extracted seem to have more packed data, as the files don't have headers like the _sd pack does. Any thoughts? dz_pack.bt pack5.zip1 point
-
Disney Speedstorm - extracting music/sfx/voice
I've been looking for a way to extract sounds from this game for ages. Thanks so much for this thread! I'm wondering though, have you found any music yet? If so, in which .pack file? The 'sd' one only seems to contain sfx and voice lines, right? I think I went through all the packs, but no other pack than the 'sd' one extracts .wav files.1 point
-
Tutorial archive format reversing with QuickBMS (medium)
Original poster great aluigi A real example/tutorial about a not-so-simple archive format. I think this is a bit advanced for beginners but I wanted to do something based on a recent file format I analyzed. The sample is attached: talk_Vat_00.zip Tools: QuickBMS http://quickbms.aluigi.org Hex editor if you don't have idea of what to take, try XVI32 Read hex, speak hex, eat hex: forget the decimal notation and think only to 0xNUMBER, it's what will help you during reversing... so 10 is 0xa. Things to notice: Do we have a magic number? It's a string/signature or number that is usually used to identify a file format, for example ZIP archives have "PK". In this case we have a 0x00 "CAP" which looks just like a magic. What is the endianess? The endianess is the direction of the numbers stored in the archives. Big endian of 0x11223344 is 11 22 33 44 Little endian of 0x11223344 is 44 33 22 11 The secret is watching the data as blocks of 4 bytes (32bit) so in this case after " CAP" we have: 00 00 00 00 00 00 00 0c That second field looks just a 0xc, so a big endian. Doesn't have sense to be 0x0c000000 in little endian We don't know yet what is this 0xc, let's check it later. Then we have another 00 00 00 00, skip the fields set to zero. And now 00 00 00 e0, so 0xe0. We are at the beginning of the format so it may be an offset, or the size of a section or the number of files or maybe nothing important. Go in your hex editor and press CTRL-G, select hexadecimal and type e0: The data at that offset looks just like a DDS image, take it in your notes. We can notice that it's a non-compressed file because there are many zeroes and the file is easily identified. The next field is 00 4e db 38, so 0x4edb38. Repeat the same operation as before and at that offset you will see a sequence of complete filenames (path + name): Now go back to the beginning of the file because there are still a lot of fields between that DDS image and the current position: 00 43 41 50 00 00 00 00 00 00 00 0c 00 00 00 00 .CAP............ 00 00 00 e0 00 3e db 38 00 00 00 00 00 00 00 00 .....>.8........ 00 00 00 00 00 10 00 80 00 00 00 00 00 00 00 2f .............../ 00 10 00 80 00 10 00 80 00 00 00 30 00 00 00 24 ...........0...$ 00 20 01 00 00 01 cc a8 00 00 00 58 00 00 00 1c . .........X.... 00 21 cd a8 00 00 6a 5f 00 00 00 78 00 00 00 1c .!....j_...x.... 00 22 38 08 00 02 a9 11 00 00 00 98 00 00 00 1c ."8............. 00 24 e1 1c 00 04 13 83 00 00 00 b8 00 00 00 1c .$.............. 00 28 f4 a0 00 04 70 93 00 00 00 d8 00 00 00 1c .(....p......... 00 2d 65 34 00 03 85 79 00 00 00 f8 00 00 00 1c .-e4...y........ 00 30 ea b0 00 04 e2 dc 00 00 01 18 00 00 00 1c .0.............. 00 35 cd 8c 00 01 8b 5a 00 00 01 38 00 00 00 1c .5.....Z...8.... 00 37 58 e8 00 07 7a 40 00 00 01 58 00 00 00 14 [email protected].... 00 3e d3 28 00 00 07 2f 00 00 01 70 00 00 00 2b .>.(.../...p...+ 44 44 53 20 7c 00 00 00 07 10 00 00 00 04 00 00 DDS |........... If you watch carefully you can notice a certain "pattern", from offset 0x20. Basically a sequence of fields that gets repeated, like 4 32bit numbers, 4 numbers, 4 numbers... So let's try to identify this pattern splitting the fields in our mind: Now it's time to make some math operations. We have the number 0xc at the beginning of the file that is also the number of these patterns composed by 4 fields each one, so probably that 0xc is the number of files. The first field is zero so if it's an offset it's for sure a relative offset: OFFSET + 0xe0 = file offset. The second field seems related to the first one. For example: OFFSET 0x00 and second field 0x100080 OFFSET 0x100080 (previous offset + previous size) and second field 0x100080 OFFSET 0x200100 (previous offset + previous size) and second field 0x1cca8 and so on. So let's say it's a SIZE. When we work with archives we need at least 3 parameters: OFFSET SIZE NAME The missing one is NAME and considering the ascendant number (0, 0x30, 0x58, 0x78) it may be a relative offset for the names table we have seen at the beginning of the analysis at offset 0x3edb38. Check it: 0x3edb38 + 0x30 = "BattleRes/talk/st_bg/screen_bg02.dds" 0x3edb38 + 0x58 = "se/talk/07Vat/Vat00_0001.msf" 0x3edb38 + 0x78 = "se/talk/07Vat/Vat00_0002.msf" Ok we have the NAME relative offset And what may be the last one? It's not important, but if you check it you will notice that it's related to the incremental name offset, it's the name size. The reversing of the file format is finished, we can extract all the files with their original filenames Let's check the relative script: http://aluigi.org/papers/bms/others/uniel.bms And in the next post we will see how to write the script from scratch with these parameters.1 point
-
Disney Speedstorm - extracting music/sfx/voice
understood all good! This has been an incredible help so far. Thank you so much for everything. do you have any tips and best practices for quickly identifying/organizing files? Any tools that that you like to use or workflows that help the process go by faster? edit: found an app called Eagle that shows tons of metadata and lets you build a database with tags, folders/subfolders, and most importantly lets you playback/scrub through simply by highlighting a file's thumbnail (which is a generated waveform). really incredible for previewing and basic tagging. it isn't perfect but it's really nice and i'm making it work!1 point
-
Disney Speedstorm - extracting music/sfx/voice
I've attached my QuickBMS script for these .pack files. It's a bit hacked together due to the way the zip file structure works, but it seems ok. It identifies the .wav and .bnk files and adds the appropriate extension to them. .wav is normal audio files containing music .bnk is WWise sound banks containing dialogue. Both can be played in Foobar/vgmstream, hopefully that should be all of the audio files. As for your other queries, I'm not sure. ss_zip.zip1 point
-
Disney Speedstorm - extracting music/sfx/voice
update: i did a mass rename to add .wav to all of the files, then ran them through vgmstream-cli.exe, and they all seem to have been converted successfully! this is an absolute treasure trove. here are my remaining questions: any faster way to identify these files? is there an index or metadata we can use to identify what each file is without playing it back? what about the ones that won't convert? there's about ~160 files that won't open. any ideas on how we can identify and get into 'em? how likely will game updates affect the integrity of these files and their names? i'm planning on indexing these in a database. but to do that, each file needs a static identifier. right now, that's the file name. how likely is the name to be preserved across updates in a frequently-patched live service game? i'm sure the answer differs from engine to engine, and since Jet Engine is proprietary, we probably don't have much insight into how exactly it works. but i'm hoping that these stay pretty fixed. i know some databases and indexes will muck around with file names while using a constantly-updated manifest to keep them identified... (if that's the case maybe i'll just use a hash instead lol) will you still be adapting your quickBMS script now that we've gotten this far? i know it's still useful to do just so we can skip the rename and vgmstream steps on future runs, but do you think it's possible it might help with any of the outstanding problems i mentioned above? edit: actually, yeah, the quickBMS script might come in handy, this has a LOT of files but it seems far from comprehensive. i can only guess that the rest of the sounds are spread out throughout the rest of the .pack files.1 point
-
Disney Speedstorm - extracting music/sfx/voice
oh wow, you're right, it worked! let me get that file uploaded for you...1 point
-
Disney Speedstorm - extracting music/sfx/voice
You can add the .wav extension to your sample file and it'll play in Foobar with vgmstream. Unfortunately, the files in the .pack archives don't seem to have extensions to identify them. If you can maybe upload an example .pack file that contains audio (such as the one from your sample), I might be able to adapt my zip QuickBMS script to identify them1 point
-
[Question] Where to start creating mods?
You can start with games made using popular engines like Unity or Unreal Engine. Here is the list of modding tools for Unreal Engine https://github.com/Buckminsterfullerene02/UE-Modding-Tools Try also search Xentax Wiki for game file formats that are already known. Each article should have a list of programs attached at the end. https://reshax.com/topic/110-xentax-wiki/#comment-21691 point
-
Finding AES keys of Unreal Engine games
1 point
-
Horizon Forbidden West PS5 Animation Tutorial
By any chance have noesis ASCII plugin. I see the video how to merge model on you channel thank you for that. Need some try but at the end got that model work in blender. Noesis don't load the ascii I don't know is me doing wrong on the model or have wrong plugin You gone say now have blender to see the model... -.- please No. If is possible the link what you use to load the mode.1 point
-
Where Can I Start Learning Reverse Engineering Game File Formats?
i would start in here from tutorial section. it will grow a lot in time..1 point
-
Horizon Forbidden West PS5 Animation Tutorial
Great, many people will find your tutorial useful.1 point