Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation since 08/02/2025 in Posts

  1. Actually it uses PAL8 w/ GC/Wii swizzle (There's a palette data at the end) Palette format is N64_RGB5A3 Image data offset starts at 48 (0x30) end-01-color_panel1.texture.ps3 uses BGRA8888 w/ XBOX/PS3 swizzle while end-01-color_panel2.texture.ps3 and end-01-color_panel3.texture.ps3 uses BC3/DXT5
    2 points
  2. Just use this script to extract and import Unity bundles from/to PKG archive https://github.com/bartlomiejduda/Tools/blob/master/NEW Tools/UNITY_TOOLS/Multiple_UnityFS_files_in_one_archive_script.bms There should be 712 unity bundels after extraction. Use UABEA to edit them. Follow this tutorial in case of any troubles https://ikskoks.pl/tutorial-what-is-quickbms-how-to-export-and-import-with-quickbms/
    2 points
  3. By the way, you can also get the same result with ImageHeat https://github.com/bartlomiejduda/ImageHeat
    2 points
  4. public static Byte[] iDecrypt(Byte[] lpBuffer) { Byte bTemp = lpBuffer[lpBuffer.Length - 1]; for (Int32 i = 0; i < lpBuffer.Length; i++) { bTemp = (Byte)(lpBuffer[i] ^ (87 * i + 85)); lpBuffer[i] = (Byte)(bTemp ^ 0xAA); } return lpBuffer; } Just drag and drop those dat files🙂 IKV.DatDecryptor.zip
    2 points
  5. Well so here's everything I know so far. Models are pain. Can't figure out monstrous table which has info about buffer id, vertex count, index count. I output only element buffers. I only know about vertex buffer. At cars they are mostly 8 bytes stride, int16 data type. Not sure what are others buffers. But they have type id. Textures on the other hand are simple. You can get pretty much all of them. I also looked into the sound files. Some are wav, but most of them are unexplored... need some time to research. Also those wav files are named by id which is described in track_table file which is also unexplored yet... So here's bms script. You can use it on any file from *.pack file which you can unpack with 7Zip. And here's Noesis for *.jtex files. from inc_noesis import * import noesis import rapi import os def registerNoesisTypes(): handle = noesis.register("Asphalt 9 Legends - Texture", ".jtex") noesis.setHandlerTypeCheck(handle, noepyCheckType) noesis.setHandlerLoadRGBA(handle, noepyLoadRGBA) noesis.logPopup() return 1 def noepyCheckType(data): bs = NoeBitStream(data) if len(data) < 20: return 0 return 1 def noepyLoadRGBA(data, texList): bs = NoeBitStream(data) baseName = rapi.getExtensionlessName(rapi.getLocalFileName(rapi.getInputName())) TextureWidth = bs.readUShort() TextureHeight = bs.readUShort() bs.read(1) PixelFormat = bs.readUByte() BufferSize = bs.readUInt() data = bs.readBytes(BufferSize) if PixelFormat == 34: print("Pixel Format > BC7 ", PixelFormat) elif PixelFormat == 35: print("Pixel Format > BC6H ", PixelFormat) elif PixelFormat == 36: print("Pixel Format > BC5 ", PixelFormat) elif PixelFormat == 5: print("Pixel Format > RGB8", PixelFormat) elif PixelFormat == 6: print("Pixel Format > RGBA8", PixelFormat) else: print("Unknown Pixel Format > ", PixelFormat) if PixelFormat == 34: data = rapi.imageDecodeDXT(data, TextureWidth, TextureHeight, noesis.FOURCC_BC7) texFmt = noesis.NOESISTEX_RGBA32 elif PixelFormat == 35: data = rapi.imageDecodeDXT(data, TextureWidth, TextureHeight, noesis.FOURCC_BC6H) texFmt = noesis.NOESISTEX_RGBA32 elif PixelFormat == 36: data = rapi.imageDecodeDXT(data, TextureWidth, TextureHeight, noesis.FOURCC_BC5) texFmt = noesis.NOESISTEX_RGBA32 elif PixelFormat == 5: texFmt = noesis.NOESISTEX_RGB24 elif PixelFormat == 6: texFmt = noesis.NOESISTEX_RGBA32 texList.append(NoeTexture(rapi.getInputName(), TextureWidth, TextureHeight, data, texFmt)) return 1
    2 points
  6. Yeah, I got things working to extract the files. Just checking some of the other mesh files, seems like some work and some don't. But here's another one I could get something from. I'll have a look at the textures to see if I can do anything with them, although they seem like an unknown format at the moment. Looks like BC1 maybe with some swizzling/tiling.
    2 points
  7. I checked jmox files but mesh needs transformation... Here's quick sum up content of *.pack archives. main = ? > mixed mdc = jmox > models cars mde = jmox > models environment so = xvs > sounds lm = jtex > textures prb = jtex > textures gin = jtex > textures
    2 points
  8. Here's 010 editor template for jtex files. I will write bms for decompress + noesis for preview later... LittleEndian();OutputPaneClear(); local uint32 i,j,k,l,m,n,TotalFileSize=FileSize(); local string FileName=GetFileName(),FilePath=FileNameGetPath(FileName,true),BaseName=FileNameGetBase(FileName,false); struct { ubyte Version; char JTEXSign[4]; uint32 Unknown_0; uint32 Unknown_1; }Header; struct { uint32 TextureTableSize; uint32 TextureInfoSize; uint32 Unknown_0; uint16 Unknown_1; struct { uint16 TextureWidth; uint16 TextureHeight; ubyte Unknown_0; ubyte PixelFormat; ubyte Unknown_1; ubyte Unknown_2; uint16 Unknown_3; ubyte Unknown_4; ubyte MipMap; uint32 Unknown_5; float Unknown_6; float Unknown_7; uint16 TextureWidth_t; uint16 TextureHeight_t; struct { uint32 MipMapTableSize; uint32 MipMapInfoSize; uint32 Unknown_0; uint16 Unknown_1; struct { uint32 MipMapBlockSize; uint32 CompressedSize; // - 8 uint32 DecompressedSize; ubyte CompFlag; ubyte Unknown_1; uint32 Unknown_2; float Unknown_3; if (CompFlag == 0) byte Buffer[DecompressedSize]; else byte ZSDTBuffer[CompressedSize - 8]; }MipMapInfo[MipMap]<optimize=false>; }MipMapTable; }TextureInfo; }TextureTable;
    2 points
  9. And it's compressed... I see multiple chunks. Chunk table > uint16 compressed size, But not sure where is offset Compression is deflate. Offzip should dump it into one file. After decompression I get this textures
    2 points
  10. Asset Studio can open the files you provide, but some files will crash when they are opened, so you can test several more versions and use the version with the least flashback to open the most files for subsequent processing. But before that, you need to split your pkg file Divide them into block files of multiple unityfs I wrote a python script and you just need to run it python split.py pkg file Output folder If you find it troublesome to run scripts, you can also try a more professional unityfs splitter Attached a few screenshots I ran If the problem is solved, you can mark this reply as a solution split.py
    2 points
  11. A few moths ago, I took a break from the Front Mission games just to poke around the the PS2 entries of Armored Core and made a surprisingly rapid amount of progress on their model file formats. The last hurdle I've been experiencing for most of this time is face formation- meshes are composed of either a triangle list (for FX spawn points) or multiple triangle strips. The strips are a problem as it's not clear where one should end and another should begin. I've tried looking in the model file for a flag but found nothing that stood out, then shifted to studying the verts and UVs in hopes they they contain some sort of "rhythm" to no real success. using UVs or the distance between points to determine face formation still yields "bad" faces. I've poked around a few PS2 topics here and it sounds like this is the best I can hope for but would like a second opinion before going forward. File, meshes, and tmr.7z
    1 point
  12. hey guys i need help to get lewis staney lizzy and bowler hat guy and all of them from the cutscene game meet the robinsons gamecube and wii please post the extracted game files of the cutscenes dbl characrers if you found them please everyone I'm back please
    1 point
  13. Not possible to open these files with Asset Studio. They are in a .pkg format but the file still seems to be a normal unity bundle archive. https://www.mediafire.com/file/3jdp3wstro17xhg/SRDM.zip/file
    1 point
  14. Done a few more optimisations to reduce the number of submeshes down to a reasonable level. Still work in progress:
    1 point
  15. It doesn't extract anything from the new file, maybe because the file that i upload here was obsolete? I've attached the new one. Before, I had attached the old one from two years ago from another guy. I'm sure there's some text inside folders called scenes. Game Download link (24 gb) https://exe.playbpsr.com/download/StarLauncher Setup1.0.285.exe m0.rar
    1 point
  16. These files cannot be opened with UABEA or Asset Studio. They are in .pkg format, but the file still appears to be a normal Unity bundle archive. I am only interested in extracting the clean game text so that I can translate it and inject it back in. https://www.mediafire.com/file/3jdp3wstro17xhg/SRDM.zip/file
    1 point
  17. The file format itself isn't too terribly complex it seems? There's seemingly no compression for those files either (at least in the demo). I've written a basic file extractor, it's probably far from perfect though.pac_extract.py
    1 point
  18. Holy crap thank you so much, for the longest I thought it was an archive file. I guess not 😄.
    1 point
  19. Your samples are textures but there are no pointers to textures or palettes. I can see a pattern, it seems like palette is first and then image data and each has a line of 16 bytes like a header. Something like this(in LLOGO.bin): 1st Texture offset 0x00: 10 00 00 00 10 00 00 00 20 00 00 00 00 00 00 00 --16 bytes palette header offset 0x10: Palette --size 400 Hex or 1024 Dec offset 0x410: 00 01 00 00 80 00 00 00 08 00 00 00 00 00 00 00 --16 bytes image data header. 4 bytes Width(100) & 4 bytes Height(80). So 100x80(256x128) offset 0x420: Image data 256x128 2nd texture offset 0x8800: 10 00 00 00 10 00 00 00 20 00 00 00 00 00 00 00 --16 bytes palette header offset 0x8810: Palette --size 400 Hex or 1024 Dec offset 0x8C10: 00 01 00 00 80 00 00 00 08 00 00 00 00 00 00 00 --16 bytes image data header. 4 bytes Width(100) & 4 bytes Height(80) so 100x80(256x128) offset 0x8C20: Image data 256x128 3rd Texture 4th Texture Etc.. Now, IMAGDATA.bin is just one texture but it has several palettes. Image Data offset at 0x1C700. File format is the same but with multiple palettes; Palette header1 Palette1 Palette header2 Palette2 Palette header3 Palette3 Palette header4 Palette4 . . Etc.. Image data header Image data Here is the 1st Texture in LLOGO.bin using Console Texture Explorer:
    1 point
  20. I still need to fix the tri-strip winding so that it looks right, but here's a couple of examples of maps 4 and 9 without textures.
    1 point
  21. It says, "thanks, I need to know what you did to get atleast something ". I searched for VIF tags,
    1 point
  22. Using hex2obj, one sub mesh of Gundam versus sample:
    1 point
  23. It uses classic XYZ positions and for rotation XYZ but in radians.
    1 point
  24. Here's bms for unpacking GAMEDATA.WAD with resource name support pulled out of PS2 game exe. Just make sure that your exe name match bms one and is next to the GAMEDATA.WAD. If not change it in bms on third line > Open FDSE SLES_519.86 1 get BaseFileName basename Open FDSE SLES_519.86 1 # Header Info getdstring Sign 0x4 get TotalFileSize uint32 get Unknown uint32 get ResourceCount uint32 getdstring Align 0x7F0 savepos ResourceTableOffset # Search for resource name table FindLoc FileNameTableOffset string "\x5C\x47\x41\x4D\x45\x44\x41\x54\x41\x2E\x57\x41\x44\x00" 1 goto FileNameTableOffset 1 get MainResourceName string 1 Padding 8 1 for i = 0 < ResourceCount get ResourceName[i] string 1 Padding 8 1 next i goto ResourceTableOffset # Resource Info for i = 0 < ResourceCount get ResourceOffset uint32 get ResourceSize uint32 string Name p "%s%s" BaseFileName ResourceName[i] Log Name ResourceOffset ResourceSize next i
    1 point
  25. There are at least two types of i3d file formats, used within the .i3d files used in ape escape 3 and Rule of Rose uses .i3d files in .mdl files. I3D_BIN: Mesh ✔️ Bones ✔️ Skin ❌ I3D_I3M: Animation ❌ Tools: https://github.com/Durik256/Noesis-Plugins/blob/master/fmt_i3dg.py - Supports meshes. fmt_RuleOfRose_PS2__i3d.zip - Supports bones (made by Bigchillghost from xentax, reuploaded into reshax for quicker accessibility)
    1 point
  26. No idea which error you mean. Since both scripts register i3d you'll need to disable one to make use of the other.
    1 point
  27. Used a Make_H2O project from 2021 - result looks a little bit strange:
    1 point
  28. GT4 doesn't use built-in indices, instead they are generated. Here's the tool i used to export GT 4 cars. https://github.com/Nenkai/GTPS2ModelTool
    1 point
  29. I see you couldn't resist. Yes, time is the limiting factor. (And the meshes and flat landscape were not impressive enough to me but seeing them gathered (and maybe textured) looks quite nice.)
    1 point
  30. The .scb ones seem to be DXT3 format from the few I've tested, although I'm not sure if they all are. There are also several images in each scb file, so it would need a proper script to pull them all out. The .scb files don't seen to store image dimensions, so not sure where they would be, making it tricky to do a proper script. There are other image formats in the .str files, some of which seem to be RGBA. A quick example of 4 images from Net_Feedback_BG.scb, which the game obviously combines into 1 image:
    1 point
  31. I made an attempt at putting all the bits together, doing a bit of manual extraction and some hacked together incomplete script. There's a lot of stuff unidentified in the file and a lot of data to connect the various geometry buffers/textures, etc. It would need a proper amount of time spent on a script to pull out everything correctly. From st00b_ground.mdl - this one has 245 submeshes:
    1 point
  32. And this is "odd": an FVFsize of 27. edit: another tree 0xC5EE0 11976 Vb1 28 16 0xCBC70 2786 020100 0x0 255 staffs, whatever 0xE8EC0 3368 Vb1 27 16 0xEA920 2798 020100 0x0 255 0x2AF590 3180 Vb1 27 16 0x2B0E70 2546 020100 0x0 255
    1 point
  33. Global.str seems to have a SCB header not sure what that means maybe a .scb file or something? but the GOH_Hed.str file is most definetly a audio file of sorts
    1 point
  34. You can extract the pak files with this QuickBMS script. The .str files look like audio data. Models are probably in another archive. pak.zip
    1 point
  35. Using hex2obj, first sub mesh st14a:
    1 point
  36. Interesting so the model is there. Jeff19995 said he found the model and it is labeled as "Lewis_Hi" but is not present on PS2/PC so check the files from other platforms. I can't do it because I don't have the games. Good luck! BTW, He posted that model on sketchfab: Lewis by Jeff19995
    1 point
  37. I Have The 3D Models And The Script And I Can Publish This ;D
    1 point
  38. Thank you so much, brother! You're truly a lifesaver and a hero for sharing the modding tools. I really appreciate your support.
    1 point
  39. Use the python script I've linked to before, or use someone else's splitter tool, if there is no problem, you can mark the previous reply as a solution, I think this reply has solved your problem Your file can be recognized
    1 point
  40. I'm working on a tool to modify existing models or import custom models into Horizon Forbidden West. So far my first test is to fix Aloy's face. I tried a few options, and now I'm sure it will work and looks good, and probably a few mods will be already released soon. Then after import tool is ready, it will be release here on reshax. Here are some example screens. First i reduced her cheeks to 70%, to be sure i can see difference. Since only face shape is changed, you can see the old "fat" shape of peachfuzz (which is not scaled down yet). And then i did 90%
    1 point
  41. I figured it out. In addition to making sure the .blend file is opening with Blender249, I needed to make sure the newGameLib folder from the .zip download is copied and placed in my python folder. Once I did that, Blender did finally open a window for me to select my files. Thanks for all your help!
    1 point
  42. I really don't understand this .mpk file. Is this file the same as the .pak pubg file that can be extracted and find a collection of other files inside?
    1 point
  43. Old Chipicao tool works fine: M3G2FBX.zip M3G2FBX-master.zip
    1 point
  44. After testing file parsing through regex expressions and finding it to be impractical, I've returned to my earlier approach and completed a finalized converter for Front Mission 4. The models are available here for those interested. FMO is next and will take far less time. FM4 Final Mass Converter.7z
    1 point
  45. It's been a while. I did get through FMO and found the PS2 version is missing some models and plan to take a look at the PC version. I also tried to work on the maps of FM4/FMO since people asked for them and had some success but, much like the wanzers, the maps are subdivided into chunks that are dumped at the origin, making them impossible to work with. Right now, I'm working on identifying what I've dumped and converted from FM5 with the help of this script. Script and Test Files.7z
    1 point
  46. OK, I set up a github repository to host the scripts, hopefully they'll help anyone who's curious about it! https://github.com/ScornMandark/G-SaviourExtract
    1 point
  47. OK It seem all gs images are linear format. They can be converted into bmp directly. So I make a quick and dirty BMS script to do these job. The converting process is a little bit slow so it convert single gs image once at a time! Also 0x02 type (5551 pixel format) is not supported since there are only a few. You can use other program like TextureFinder to convert them. how it works: a. convert gsp into gs (using GSPextract.bms) b. convert gs to bmp (using GS2BMP.bms) there are some batch files to help you running QuickBMS in easy. Just edit the path of the batch files path will work. Extract_GSP_to_GS(Drag_and_Drop_Here).bat and Convert_GS_to_BMP(Drag_and_Drop_Here).bat can be in anywhere and as the name said drop the source file into it will do. if you need batch conversion, place Batch_Convert_GS_to_BMP.bat in the same folder as the gs files are and double click the .bat file G_Scripts2.rar PS: feel free to edit these scripts
    1 point
  48. sorry guys, I'd been too busy in real life and didn't come back here. for GS texture, 0x14 is 8bits indices + 256 color palette, 0x13 is 4bits indices + 16 color palette and 0x02 is 16bits pixel without palette. also after W and H, there is a short value for no. mipmaps. I made two quickbms script to convert md to nj and gs/gsp to tm2 directly. hope it help! :) G_Scripts.rar
    1 point
×
×
  • Create New...