[TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - Printable Version +- The VG Resource (https://www.vg-resource.com) +-- Forum: The Resources (https://www.vg-resource.com/forum-109.html) +--- Forum: General Ripping (https://www.vg-resource.com/forum-145.html) +--- Thread: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! (/thread-28180.html) |
RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - Triangle90 - 03-18-2017 Thanks Pingu, it works like a charm! Could you please explain your script? RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - Pingus! - 03-18-2017 Certainly! So firstly I ignored the first byte, because it didn't really correspond to anything. The next byte (One before the name you see there in the archive with the extension) corresponds to the length of each file name when you highlighted it. So i used the command: getdstring NAME FNAMELENGTH the fnamelength, being from the byte we grabbed from before. now another issue we faced is that the offset data was weird. Because, it was padded/aligned data, so we needed to skip over those 0's until we got to the offset, which came after that "20" value. So, i wrote that little do while statement in order to skip over the zero's, until it grabbed the 20 byte and broke as the condition becomes false, as the byte grabbed is no longer a zero. The script then starts off at the position one byte after the "20" byte, which would be the size value, followed by the offset value. The way i checked this was, the first value had an offset of 0x270 (it was in little endian). So i jumped to that position and the file began after the filenametable. From there, i took the last value and added it to the offset, to check if it was the size. It was, as it was 0x2 bytes under the next supposed offset in the data table. Then i saved the file using the log command, then started again at the top with grabbing the null byte(the script loops). and continued to loop until it broke out to an incorrect file input size value, which ends after all the files have been read. RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - Triangle90 - 03-19-2017 Alright, I understand it a bit more now! But I'm a little confused as to how you got 0x270? Did you add up the total offset of the 20, 9F and 01 bytes? RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - Pingus! - 03-19-2017 The 270 came after the 20 byte. The value in that spot was correspondant to that being an entry data slot that appeared in all the other entries > xmount of 0 bytes > 20 byte > Offset long RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - Triangle90 - 03-19-2017 Ah, I see it. Thanks again RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - Krantek - 05-04-2017 Please help with this code for file https://yadi.sk/d/B7Bynf4G3HgLJL Code: get FILES long its doing something wrong....files are broken RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - Pingus! - 05-04-2017 (05-04-2017, 04:07 PM)Krantek Wrote: Please help with this code for file Code: get FCOUNT long Your DATASTART variable should be logged, you never assigned anything to the variable labeled "OFFSET". RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - Krantek - 05-04-2017 Thank you very much Pingu! You are the best! RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - Krantek - 05-05-2017 And one more question, please, why reimport give me an error...as I understand right we need to use the same script...is it right? RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - Pingus! - 05-05-2017 The data file you could be trying to import may be bigger than the original size allocated/there's no data values to shift the entries RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - zADAN - 05-05-2017 Hello Pingu!; Looking for help discovered this page, hope you can help me... I'm working on the english translation for Puyo Puyo Tetris for Wii U and I have extracted the required textures from ".narc" files, but I found out that the game didn't use the ".narc" files... I suspect that the used textures are in other files with the ".tzip" extension. I have reviewed the .tzip files in the HEX editor but can't find anything. Can you help me to read these files? Here are three files that I suspect have textures on them: Download Thank in advance! zL RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - Struggleton! - 05-05-2017 (05-05-2017, 09:58 PM)zADAN Wrote: Hello Pingu!; Code: comtype COMP_UNZIP_DYNAMIC Here you go. It decompresses the TZIP into NARC files RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - zADAN - 05-06-2017 (05-05-2017, 11:53 PM)ThatTrueStruggle Wrote: Wow! What kind of sorcery was that? The ".tzip" file was a 644 KB size and the code extracted a few ".narc" files, one of 6 MB. Awesome and thanks! You will be in the credits for this translation. Here is the work in action: I have another request (I want to bother the less I can)... I want to extract the text (I can't find the strings in the files) from these ".mtx" files: Download It is possible to extract the text in a ".txt" file to be able to inject the translated text later? Someone else has done this before time ago, but never shared the tools, don't know if was done with QuickBMS. Here is the extracted text from that person. Thanks in advance! zL RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - Struggleton! - 05-07-2017 (05-06-2017, 04:46 AM)zADAN Wrote:(05-05-2017, 11:53 PM)ThatTrueStruggle Wrote: It's called compression It compressed it pretty well and made the file smaller. Here you go. I wrote this in about an hour and wasn't too hard. Usage below: Code: MTX2TXT -d inputMTX outTXT : This decodes an MTX into a TXT file. Replace inputMTX with the path to the MTX file and outTXT with the name you want to it be. When you want to encode a text file, make sure you have the setup like the decoded MTX files (text on new lines for each one) This was a fun little project and I haven't had so much fun writing something like this in a while. Hope you enjoy! (I can provide source code to this if you'd like to look at how it works, it's pretty simple) RE: [TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts! - zADAN - 05-08-2017 (05-07-2017, 09:16 PM)ThatTrueStruggle Wrote: Here you go. I wrote this in about an hour and wasn't too hard. Usage below: Hello ThatTrueStruggle, first of all thank you very much for your time, it works! I was working with the SLog option from QuickBMS without any satisfactory result, also trying to code but I was far from this yet. Here is the result: Notes: 1.- When you decode (-d) you need to add the path to the .txt file too (Maybe I misunderstood the instructions but I thought the .txt file would be created just specifying it's name). Not a problem. 2.- When open the extracted .txt file, notepad shows the text all together, without line separation per text section. This was solved in Notepad++. 3.- The line break symbol is unknown (), but I just copied it and paste where was requiered, it worked. 4.- Not sure if all text were extracted for one file... Is there a way to prove that all text were extracted? The file "mainmenuJapanese.mtx" just have twelve lines in the extracted .txt file and it not cover all the main menu text in the game, also the text extraction made by another person some time ago (review here) includes more line covering all main menu text (39 lines). That mainmenuJapanese It could be a compilation of various files, I'll explore the files to see if I can find the othee parts, or if there is a way to review the .mtx file and see if that's all the text I'll appreciate that. I'm glad that you enjoyed doing something that was a nightmare for me (Not that bad, but I was so far). And of course I enjoyed the result, thanks again!! I'll share the english patch with you once it get done (Based in your dumps, I assume that you own a Wii U, hope you enjoy this puzzle game too). Edit: Related to the source code, I'll return as one of your padawan to become a Jedi on this like Pingu! did. For the moemnt, I'll concentrate to finish this translation. zL |