Skip to content
View in the app

A better way to browse. Learn more.

ResHax

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Help us keep the site running.
Zero Tolerance for Disrespect

Unreal Engine 4 pak-file Unpacker / unreal_tournament_4.bms [UE4 global topic]

Featured Replies

  • Author
  • Localization

Kein, posted Wed Feb 17, 2021 2:36 pm (62315)


spiritovod wrote:
@Kein: Apparently, if you have non-oracle version of JRE without legacy support enabled or any kind of custom installed JRE, current finder will not work properly. You may try test version from this post. Also, proper usage of it would be putting finder's exe and game's exe in the same folder, while no other exes are present there.
As for the encryption - native unrealpak tool from UE can encrypt paks (index, or assets, or both), but if you're creating a mod, it's not required. Simply re-use existing signature (.sig file) if present, and the game should work with unencrypted mod pak. In some cases game doesn't support custom paks of the same format and lower one should be used. For example, if a game is built with 4.24 (v8 paks), but v8 pak mod doesn't work, try to create v4 pak. You can find a bit more info about it in this post and base instruction (part 3.10.1).


I cant get it to work with Little Nightmares 2. It has encrypted and signed PAKs and it wont load ANYTHING that is not original PAK (I'm packing with native 4.24 UnrealPak tool and the game is 4.24 as well, no compatibility issues here). It seems like it only wants properly signed and encrypted one.

spiritovod wrote:
As for the encryption - native unrealpak tool from UE can encrypt paks

Yes, question is how to use it outside of source project. Even if you have the key there is no way to supply it to the tool and the process is more complex than just that.
  • Replies 2.3k
  • Views 555
  • Created
  • Last Reply

Top Posters In This Topic

  • Author
  • Localization

spiritovod, posted Wed Feb 17, 2021 4:56 pm (62324)


Kein wrote:
I'm packing with native 4.24 UnrealPak tool and the game is 4.24 as well, no compatibility issues here.

spiritovod wrote:
In some cases game doesn't support custom paks of the same format and lower one should be used. For example, if a game is built with 4.24 (v8 paks), but v8 pak mod doesn't work, try to create v4 pak.

A handful of UE games are supporting side paks only through fallback functionality (or backward compatibility if you prefer). For example, unrealpak from vanilla FluffyQuack's workflow and u4pak are producing v4 format. Also, it may be different kind of issues, like improper paths for packaged assets or something. It's all covered in my posts linked above.

Update: I don't want to argue just for the sake of arguing, so here is simple text mod for the game (tested on both GOG and steam versions). It replaces "Exit to Desktop" with "Exit to Windows" in the main menu. Followed my own instruction and posts, packed with vanilla FluffyQuack's workflow with no compression/encryption.
  • Author
  • Localization

Kein, posted Wed Feb 17, 2021 8:44 pm (62330)


Nope, ignores it.

UPD: I figured out what was the issue - it is damn filename. First time having such problem. Usually it would load ANY pak file for all the game I've worked with so far but this one is weird, only Helios-WindowsNoEditor_*.pak

Native paker works just fine
  • Author
  • Localization

spiritovod, posted Wed Feb 17, 2021 9:47 pm (62334)


@Kein: UE is prioritizing paks in reverse alphabetical order. So if you have 01.pak (mod) and 02.pak (base), mod will not work in most cases. And it was also mentioned in one of my linked posts. Though in this particular case it seems the game is limiting it even further.
  • Author
  • Localization

bluetooth, posted Wed Feb 24, 2021 10:40 am (62467)


I edit the .pak file without any problem (quickbms or unrealpak). but the game does not open on the ps4 console. (Game: Nba2k playground 2) What could be the problem? I used the latest version of unrealpak.
  • Author
  • Localization

spiritovod, posted Wed Feb 24, 2021 1:29 pm (62468)


@bluetooth: Never worked with PS4 mods, but start with reading some posts above (most stuff is universal for all platforms) and make sure you're creating patch properly (something like Patch Builder should be easy to use).
For example, you can't repack original paks, only add mods - also you should use unrealpak of the same engine version as the game (or lower) - and so on.
  • Author
  • Localization

bluetooth, posted Wed Feb 24, 2021 1:53 pm (62469)


@spiritovod thank you for the answer. How can I tell the engine version the game was created for? The game is made for ps4 console, there is no .exe file. (My goal is to edit the language file)
  • Author
  • Localization

spiritovod, posted Wed Feb 24, 2021 3:04 pm (62472)


@bluetooth: You can take a look at steam version of the game, games are usually built with the same UE versions across platforms. Also, you can use older paks format in most cases, but I can't confirm anything for PS4.
  • Author
  • Localization

Ascarre, posted Thu Feb 25, 2021 3:47 pm (62481)


I can successfully extract pak files(Pubg mobile All 1.2.0 versions like global, korea and all) and get .dat files in which they can be edited and eventually edit those pak files and repack them to .pak files again but when i try to put it back to obb the obb doesn't get detected...can anyone tell me where am i wrong.... The size of the obb files are same and pak files are also the same.....
  • Author
  • Localization

spiritovod, posted Thu Feb 25, 2021 5:38 pm (62484)


@Ascarre: PUBG surely has integrity checks in its libraries, so even if you'll edit 1 byte in an extracted file and somehow put it back - and resulted size will not change - integrity check will still fail. Also, I'm not sure how exactly you're putting stuff back, since current index format is unknown (at least for public) and the game will not accept generic pak format, unlike usual UE4 games.

-----------------------------------------------------------------

Beyond a Steel Sky script from specific scripts bundle is replaced with more generic "*_zstd" script, which should also work for other games with zstd compression, like Bravely Default 2. I think it's time to implement some kind of auto-detection of compression types feature (instead of multiplying similar scripts), but it will take some time to test it properly.
  • Author
  • Localization

Monteven, posted Thu Feb 25, 2021 11:53 pm (62492)


Outriders Demo released today, uses UE4.25. Was able to identify some possible encryption keys but am unsure on the compression method? Tried oodle using oo2core and deflate but both seem to fail. Also tried the quickbms stuff but didn't seem to work, although I am new to unreal overall. link to shipping exe and an example .pak.
  • Author
  • Localization

Idiotgodc, posted Fri Feb 26, 2021 3:49 am (62494)


@Ascarre Contact me on mail will help you on that !
[email protected]
  • Author
  • Localization

Nyny, posted Fri Feb 26, 2021 5:11 pm (62513)


@Monteven Im having the same issue. Were you able to find a workaround? Some tips or guidance would be great
  • Author
  • Localization

spiritovod, posted Fri Feb 26, 2021 5:16 pm (62514)


@Monteven, @Nyny: The game is using modified paks, close to "frozen index" format, but noticeably different. Chunks are compressed with zlib and then encrypted with AES - luckily, they didn't touch encryption, so I've added proper key to the list (available via my signature). There are no tools or scripts with support of such unique format at the moment though, but I don't think it would be hard to create any, at least for raw chunks extraction.

-----------------------------------------------------------------

latest_UE4_bms-script updated to version 0.4.25b. It can now detect all common compressions in paks (zlib, gzip, zstd, lz4, oodle) without the need to set them manually. Therefore some scripts were removed from specific scripts bundle - namely Days Gone, Tony Hawk's Pro Skater 1 2, Pathless, Beyond a Steel Sky and zstd - because updated main script can handle those games now.
  • Author
  • Localization

Nyny, posted Fri Feb 26, 2021 5:44 pm (62515)


@spiritovod Thanks for the response. I was able to get the AES key using AES finder (same key that you shared on the link below), but even using the latest ue4_bms_script, and a couple of other scripts I have and using the encryption key, I'm not getting anything.
Unfortunately, I don't have enough knowledge to create a script by myself to meet the new format. I mainly use the textures for u4model, and then I export them and edit them myself.
I think I'll have to wait until someone can create a bms for it, or some other tool.
Once again, thank you for your response
  • Author
  • Localization

spiritovod, posted Fri Feb 26, 2021 8:36 pm (62516)


Raw extract script for Outriders added to custom_UE4_scripts bundle. Note that it will only allow you to extract assets without filenames (and last file before error will be some garbage, not actual asset). Maybe I'll dig into that a bit later. Anyway, it should be relatively easy to support such files properly for those who understand latest pak formats (though it's not me).

Update: Small fix is applied to Outriders script, because initial one could fail on some big files. Also, it's not clear to me why 1GB (compressed) -> 300MB (decompressed) happens upon extraction. At first I thought about paddings and wrong chunks detection, but in that case last files from an archive wouldn't be extracted properly and it seems like game doesn't use chunked assets at all (i.e. one asset per chunk).
  • Author
  • Localization

Nyny, posted Fri Feb 26, 2021 9:47 pm (62517)


@spiritovod Man you rock! Having the files is a huge step. I'll ask a friend who has some knowledge on filenames and helped me with some hashe names on another game some time ago. If I have any kind of progress I'll post it here.
Thank you for the script. Really appreciated
  • Author
  • Localization

cybermallus, posted Sun Feb 28, 2021 4:30 am (62544)


bro can you post how to unpack pubg mobile beta files . I tried hard still i cannot . Please help you are the last option to me
  • Author
  • Localization

Monteven, posted Mon Mar 01, 2021 9:14 pm (62606)


I have no clue how quickbms works so I put together a quick python script that works for a single pak - it seems to mess up the last few bytes for uncompressed stuff due to padding errors with zlib but everything else is fine. I wrote some basic code for file names but doesn't fully work yet
  • Author
  • Localization

Kein, posted Tue Mar 02, 2021 10:32 am (62614)


@Spirit
Lole, Nacon used your AES finder to unpack game, mod it and redistribute illegaly.
https://www.youtube.com/watch?v=VYTSt5oOr5g

Really curious how did they repack it with same AES key, how id they figure out prime for key pairs. Threw a few mining plantations at it, maybe.
  • Author
  • Localization

spiritovod, posted Tue Mar 02, 2021 12:20 pm (62619)


@Kein: You're mistaking encryption with signing. Encryption is reversible with known key, signing is not (due to private component). But basically UE4 is accepting any valid signatures, it doesn't validate them against pak or something - so you can sign a mod with your own signature parameters (unrealpak can do that). In case of main pak there is additional signature check though, but it can be easily bypassed by a professional UE4 dev - and according to Frogwares' statement, Nacon has used one from their own studio, Neopica, to modify the game. So it would take just a few hours for them.

@Monteven: Chunks headers also has decompressed sizes, in case you're willing to implement additional checks. It's last 4 bytes / 0x1000. If you have some doubts, so you can compare your output with output of my script for raw extraction.

-----------------------------------------------------------------

Proper script for Outriders added to specific scripts bundle, thanks to mobus_c352. Though the game is using custom engine (and it's rather mix of 4.25-26), so even textures will not work in umodel.
  • Author
  • Localization

Nik Burnt, posted Mon Mar 08, 2021 4:02 pm (62731)


Did someone have success with textures/localizations extraction from Outriders Demo?
  • Author
  • Localization

TheDarkness1994, posted Wed Mar 10, 2021 12:18 am (62758)


kevinbaconten wrote:
Dead Trigger is an android game made from an unreal engine. you can also find the dead trigger mod apk as the moded games have more fun to play. https://bestgamesapk.com/dead-trigger-2-mod-apk/

Unity
  • Author
  • Localization

TopHat, posted Wed Mar 10, 2021 1:48 am (62760)


Sorry if this questions has been asked before, but I'm trying to extract files from Sea of Thieves. I've searched for the correct BMS file, but there's been quite a few, and I'm unsure of which is the right one to use.
Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.