Tosyk Posted October 2 Posted October 2 (edited) hi guys, I'm looking a way to separate this into a smaller files. in hex it looks like a container but offzip nor 7zip work on it. Can anyone help me? datapc_00_od0_3c7eb3e2.zip Edited Sunday at 03:01 PM by Tosyk
Engineers shak-otay Posted Friday at 06:19 AM Engineers Posted Friday at 06:19 AM Hi, the zip contains "smaller" files already. 1.dat has vertex blocks, obviously, but the lower 3 bytes of each vertex seem to be encrypted (just a wild guess).
Tosyk Posted Sunday at 02:45 PM Author Posted Sunday at 02:45 PM thanks for looking into this, Shak. They are not encrypted as I can tell, because if I separate them manually, they seem to be working. like dds for example.
Engineers shak-otay Posted Sunday at 05:36 PM Engineers Posted Sunday at 05:36 PM 2 hours ago, Tosyk said: because if I separate them manually, they seem to be working. like dds for example. What does that mean? Did you separate 1.dat into smaller files? (Can you show an example of the process?)
Solution Tosyk Posted Sunday at 07:19 PM Author Solution Posted Sunday at 07:19 PM with help of @DKDave, we got this bmses. to keep header: # For Honor Math OFFSET = 0 Get FILE_END asize For A = 0 If OFFSET = FILE_END Break Endif Goto OFFSET Get TYPE Long Get SIZE Long Get NAME_SIZE Long GetDString FILENAME NAME_SIZE String FILENAME P "%FILENAME%.%TYPE|x%" XMath SIZE2 "NAME_SIZE + SIZE + 12" Log FILENAME OFFSET SIZE2 Math OFFSET + SIZE2 Next A without header: # For Honor # Without header Math OFFSET = 0 Get FILE_END asize For A = 0 If OFFSET = FILE_END Break Endif Goto OFFSET Get TYPE Long Get SIZE Long Get NAME_SIZE Long GetDString FILENAME NAME_SIZE SavePos OFFSET String FILENAME P "%FILENAME%.%TYPE|x%" Log FILENAME OFFSET SIZE Math OFFSET + SIZE Next A and with some tweaks to get extensions: # For Honor - Extractor with extension mapping # Without header Math OFFSET = 0 Get FILE_END asize For A = 0 If OFFSET = FILE_END Break Endif Goto OFFSET Get TYPE Long Get SIZE Long Get NAME_SIZE Long GetDString FILENAME NAME_SIZE SavePos OFFSET # --- Extension mapping table --- If TYPE == 0x24aecb7c String EXT = ".RAWSKEL" ElIf TYPE == 0x415d9568 String EXT = ".RAWMDL" ElIf TYPE == 0xa2b7e917 String EXT = ".RAWDDS" ElIf TYPE == 0x9c2eff4f String EXT = ".RAWBONE" ElIf TYPE == 0x85c817c3 String EXT = ".RAWMTL" ElIf TYPE == 0x989dc6b2 String EXT = ".RAWMTL_I" ElIf TYPE == 0x953ac29c String EXT = ".RAWCLOTH" Else # fallback: use hex as extension String EXT P ".%TYPE|x%" EndIf # ------------------------------- String FILENAME P "%FILENAME%%EXT%" Log FILENAME OFFSET SIZE Math OFFSET + SIZE Next A 1
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now