September 2, 20241 yr Hi all, currently looking to rip from Galerians: Ash on the PS2. The files are in .bd1, .bd2 and .pss formats from what I can see. Does anyone know a tool or is Ninja Ripper my best bet? Edit: Sample files here, they were too big to attach to the main post. Edited September 2, 20241 yr by redgraves
September 2, 20241 yr Author 1 hour ago, Rabatini said: samples. Right I forgot! I also forgot to mention that it's a PS2 game. That's what I get for making a post so early in the morning! Here you go! The files are too large to attach here, so it's a mega link. I think model.bd2 has the model files. There are other bd2 files like stage.bd2 in the iso as well. Edited September 2, 20241 yr by redgraves
September 3, 20241 yr Supporter Solution try this in bd2 math i = 0 SET OFFSET = 0 do goto OFFSET get DUMMY long # Calcula o próximo OFFSET e avança 0x40 bytes math NEXT_OFFSET = OFFSET math NEXT_OFFSET += 0x40 goto NEXT_OFFSET # Obtém o nome com GETDSTRING getdstring NAME 0x03 # Verifica cada caractere individualmente set INVALID_CHAR 0 for j = 0 < 3 getvarchr CHAR_CODE NAME j if CHAR_CODE >= 65 && CHAR_CODE <= 90 # A-Z # Válido elif CHAR_CODE >= 48 && CHAR_CODE <= 57 # 0-9 # Válido elif CHAR_CODE == 95 || CHAR_CODE == 45 # _ ou - # Válido else set INVALID_CHAR 1 break endif next j if INVALID_CHAR != 0 set NAME string "unk" endif # Encontra o próximo "BD1" findloc NEXT_OFFSET string "BD1" "" 0 if NEXT_OFFSET == "" get FILESIZE asize math SIZE = FILESIZE else math SIZE = NEXT_OFFSET endif math SIZE -= OFFSET # Junta o número com `_` e depois o `NAME` string FULL_NAME p= i string FULL_NAME += "_" string FULL_NAME += NAME log FULL_NAME OFFSET SIZE math i += 1 math OFFSET = NEXT_OFFSET while NEXT_OFFSET != ""
September 3, 20241 yr Supporter After using Rabatinis's script, I analyzed the file "1_PED" and found Vertices and Normals. I don't know about UVs, probably are at 0xFB0 Vertices count at 0x16320
September 3, 20241 yr Supporter You can use this script to extract inside tex-PED-MOB extracted by the other script. because its a container inside another one idstring "BD1" GET FILE ASIZE GET ID BYTE GETDSTRING ZEROS 0X0C GET ENTRIES LONG FOR RIP = 1 TO ENTRIES GET OFFSET LONG GET CHECKSUM LONG SAVEPOS TEMP GET SIZE LONG IF SIZE == 0 MATH FILE - OFFSET LOG "" OFFSET FILE ELSE MATH SIZE - OFFSET LOG "" OFFSET SIZE GOTO TEMP ENDIF NEXT RIP
September 5, 20241 yr Author On 9/2/2024 at 9:04 PM, Rabatini said: try this in bd2 math i = 0 SET OFFSET = 0 do goto OFFSET get DUMMY long # Calcula o próximo OFFSET e avança 0x40 bytes math NEXT_OFFSET = OFFSET math NEXT_OFFSET += 0x40 goto NEXT_OFFSET # Obtém o nome com GETDSTRING getdstring NAME 0x03 # Verifica cada caractere individualmente set INVALID_CHAR 0 for j = 0 < 3 getvarchr CHAR_CODE NAME j if CHAR_CODE >= 65 && CHAR_CODE <= 90 # A-Z # Válido elif CHAR_CODE >= 48 && CHAR_CODE <= 57 # 0-9 # Válido elif CHAR_CODE == 95 || CHAR_CODE == 45 # _ ou - # Válido else set INVALID_CHAR 1 break endif next j if INVALID_CHAR != 0 set NAME string "unk" endif # Encontra o próximo "BD1" findloc NEXT_OFFSET string "BD1" "" 0 if NEXT_OFFSET == "" get FILESIZE asize math SIZE = FILESIZE else math SIZE = NEXT_OFFSET endif math SIZE -= OFFSET # Junta o número com `_` e depois o `NAME` string FULL_NAME p= i string FULL_NAME += "_" string FULL_NAME += NAME log FULL_NAME OFFSET SIZE math i += 1 math OFFSET = NEXT_OFFSET while NEXT_OFFSET != "" Thank you so much for this! I haven't had the free time to actually use it yet, but roocker666 seems to have gotten it working so I marked this as solved. I've never actually used model researcher before; do these models come out with the armature when exported? If not, that's fine. Edit: I have no idea how to use the script. I hate to be that guy but could someone point me where to start? All the tutorials I'm seeing are leaving me clueless as to how to find indicators of the models in the hex viewer too. I'm not new to hex, just new to it in this context. Edited September 5, 20241 yr by redgraves
September 5, 20241 yr You have to download quickbms tool from alluigi. Tem copy and paste , the script in a .txt file. Do two scripts, because have 2. And them use Quickbms. Choice script them file them folder. Thats it Edited September 5, 20241 yr by Sassarai
September 5, 20241 yr Author 10 hours ago, Sassarai said: You have to download quickbms tool from alluigi. Tem copy and paste , the script in a .txt file. Do two scripts, because have 2. And them use Quickbms. Choice script them file them folder. Thats it Ohh these are QuickBMS scripts, not something for Model Researcher! The posts weren't the most specific so I wasn't sure. Thanks. ❤️
September 5, 20241 yr Author Scripts work good; how does one open the files though? they don't have a file extension.
Create an account or sign in to comment