Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

.nbl file can't remember how to extract


Nemo
 Share

Recommended Posts

Discord = LordNemo#1312

So I've been a 3d modeler for over 10 years now and well off and on I've been going at it attempting to extract PSU Gamedata objects along with their textures.
At one point I succeeded and was stuck at re-packing without dataloss.

It's been awhile since I've done some PSU modding and since I cleaned my computer out last month.
I recently started playing PSUClem and again can't help but to feel we should be able to import models or use some sort of .XML format or .JSON for offloading new content.

I got as far as Extracting the .afs files to .nbl files but I don't have knowledge of .nbl and can't seem to import the data to .obj , I don't care if the any data is lost because I will fix that physically
and most likely polygon data won't be lost if someone has or can make a python script to convert .nbl to something more universal or better yes from a popular extension to .nbl.
I'm trying to better know the data that is store within the .nbl filetype.

So far what I've been able to extract are ..... .cvm to .ADX/.REL/.NBL/ , .AFS to .nbl

So currently some .AFS files I can't exactly extract either due to TimeStamp being Invalid and I can't Hex edit the TimeStamp correct otherwise the AFS extension is lost so help would be nice on that lol

I'll be updating this as with my progress even if I don't receive help lol

Edited : 01/13/2022 1:49am
ADX lossy compressed audio
CRI ADX ADPCM audio v3, standard ADX, 48000Hz
Audio: adpcm_adx

audio/x-adx; charset=binary

This format is being used to play as Audio for files ending in .ADX I've tested sounds and it's varies with a range from Menu music to Boss and Enemy Sounds.


Enigma_Dev - Mentioned

.NBL = This works almost similar to a .PAC or .DAT(Pack/Archive) format many Compile Heart games use. .NBL contains other File Types/Assets inside, located in the subdirectories, NMLL chunk and TMLL chunk.

.XNJ = 3D Model

.REL = File Integrity Checker?

.XNA = Data Switches for Particles or 3D Models?

.XNT = Index Data of Textures used on 3D Models in .XVR

.XNM = Motion Data or Dialogue?

.XNR = This does something with .XNA, .XNJ, .XNT, .XNM, Textures, etc. This may be some sort of Script.

 

 


Edited : 01/15/2022
Example creature Data file types - Ageeta

 .BIN = Taking a big guess but this is partial AI information or attack pattern instructions.

.SNA =[ en_xxx_1ndin.sna 1ndin Pelvis Chest Neck Head L_Thigh L_Calf L_Foot R_Thigh R_Calf R_Foot Tail01 Tail02 Tail03 1ndin_mdl

Notes=   "1ndin_mdl" May be the Rigging system for the Ageeta " .mdl " or " _mdl " mentions important for future

.SNJ = Object Models [" en_xxx_1ndin_Lead " is the Model ] without "_lead " is the Rig.

.SNR = Variety of Data involving Atk,Dmg and Targeting  ? Maybe More ?  

.SNT = Texture Data

SVR = I'm not to sure

Edited : 01/13/2022 11:15am 
I'm working on archiving the data so I can sort through them easier.

spacer.png

Edited by Nemo
Updated
Link to comment
Share on other sites

5 hours ago, Enigma_Dev said:

I might be able to help, but take my advice with a pinch of salt about the File Types. I wrote notes on what I assume the File Types are based on what I can read inside them using Hex Editor and looking at the File Size of each asset.

I used PSU Generic Parser to extract contents out of the .nbl from the NMLL chunk and TMLL chunk.

Here's the note I wrote of each File Type:

.NBL = This works almost similar to a .PAC or .DAT(Pack/Archive) format many Compile Heart games use. .NBL contains other File Types/Assets inside, located in the subdirectories, NMLL chunk and TMLL chunk.

.XNJ = 3D Model

.REL = File Integrity Checker?

.XNA = Data Switches for Particles or 3D Models?

.XNT = Index Data of Textures used on 3D Models in .XVR

.XNM = Motion Data or Dialogue?

.XNR = This does something with .XNA, .XNJ, .XNT, .XNM, Textures, etc. This may be some sort of Script.

There acouple AFS files that won't extract due to Time Parameters even though I fix it in Hex and assign appropriate Bits to match the file extension.

From my previous experience I believe you're right about how the file types are used.

We should be able to extract static model data from the .xnr file and create an XML sheet and have the game reference XML data for loading specific Static Mesh like Weapons.

Through my findings last night, Looking at Quest Data I believe S4 Missions pre-existed in the game ahead of it's time. Noticing there is a Language Section such as J/AE/G/F in the quest Data there is also Quest C, B, A, S, 1 ,2 ,3 ,4 then There are Block referencing which completely depends on the mission itself. Still much to brush through.

Link to comment
Share on other sites

Updated original post. I'm not to sure if the info I've found is known or not but from my previous experience I did find a way to extract the .snj files so I'll be working on that in the future from now.

If anyone has information pertaining to this feel free chat with me on discord or through these posts

Discord - LordNemo#1312

Link to comment
Share on other sites

  • 1 month later...

So in 5996addwhatever, idk real file name because laz to unhash, that's afs we have over9000 nbl archives that contains something. Am I dumb to think that bin files are actually textures or I should look for some headers in hex to find them? I'm so confused, and people don't telling me how they edit player model textures. I just want to finally get my face and clothes from infinity to psu >_> I'm a person of graphic\3d editors and definitely not a master at digging in such a researches\manipulate with json (but one day it would be great to learn how to use json to make patches without replacing whole files, if my expectations of it isn't wrong because I don't have special education), sega's formats are just a hell for newbie like. 

Link to comment
Share on other sites

PSU's files, particularly .xnj, are both simple and complex in terms of structure. While similar to PSO's ninja files, they've upgraded security by using a blowfish cypher to obfuscate files and have a different compression method, maybe because these files are only meant to work with the Sonic Team's proprietary engine used in the 2006 Sonic game. XNJ's have typical information at the start, magic number, data length, header, and a number that I believe to be file size followed by indices data and UV size. Models seem to have 4 submeshes in a 4x4 identity matrix with attributes packed in between each one. The problem with creating a parser for the models is identifying useless information from proper values dynamically. I'm not sure if this is so weird attempt at obfuscation but I don't have the knowledge to determine whether or not that's true. Anyways, essen from the old EGS private server created a set of tools that help with manipulating SEGA files. Only issue is he never completed the decryption of the TMLL header chunk thought to house texture data so at some point we'd have to work that out ourselves. You can find the source code here: https://github.com/essen/gasetools You should be able to extract most .nbl archives with these tools although I had to modify the code in order to get it to compile. Not sure if you'll run into the same issue

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...