Hacking currently translating unchained blades exxiv

shadue

Member
Newcomer
Joined
Nov 21, 2015
Messages
15
Trophies
0
XP
83
Country
United States
I took a look at the .cpk file and there sure is a lot in there. It does look like kaikaisers method will work if someone could figure out the issues. The menu stuff is in there too, but locked in .tpk files. They are compressed right?
 

BlackDog61

Well-Known Member
Newcomer
Joined
Nov 30, 2013
Messages
81
Trophies
0
Age
40
XP
210
Country
Indonesia
OK so for anyone who wants to take this part of the project up here was my plans so you can give it a go

1) use quickbms to unpack all.cpk file.
2) use this program to convert .kbd files to text http://www.richwhitehouse.com/index.php?content=inc_projects.php&filemirror=noesisv417.zip
3) edit and convert back to .kbd with same program
4) reinsert new files with quickbms or manual with hex editor etc
5) test
Good luck!!
If all you need is extract the CPK then you can run the game (assuming PSP version) in jpcsp and it will automatically extract everything for you in jpcsp's temp folders. At least that's what I read for other games.
 

Guren no heya kara

Well-Known Member
Newcomer
Joined
Jul 8, 2014
Messages
53
Trophies
0
XP
127
Country
Italy
I've done thousands of fixes, changes, improvements and so on in the data_msg_txt file.
All the monsters descriptions were translated too.
Someone should do a test insert to see the max number of characters that can be
displayed in monsters, items and quest descriptions and then align the texts accordingly :)
And issue a new patch, obviously.
Some things can only be checked in game to see if they work or not.
 
Last edited by Guren no heya kara,
  • Like
Reactions: Deleted User

Guren no heya kara

Well-Known Member
Newcomer
Joined
Jul 8, 2014
Messages
53
Trophies
0
XP
127
Country
Italy
Does anyone have the save file that has all items, characters, abilities, quests, etc...? Is there one available somewhere? We can find all errors at once if we have something like that.
One way could be to use the cheat function, find the inventory offsets and force everything to unlock.
Too bad a cheat like that doesn't already exist
http://gamehitoiki.doorblog.jp/archives/51395309.html
and it probably wouldn't work in the patched version due to offsets getting moved from their original position.
However, you could make the cheat and apply it to a non patched version and then load the save in the patched one...or work on making one directly in the patched version (I vote for this).

edit: roughly translated

Code:
_S NPJH-50648
_G Unchain Blades Exxiv

_C0 Money Max
_L 0x2028F5C0 0x0098967F

_C0 Money earned after battle n
_L 0x2157D68C 0x00xxxxxx
*xxxxxx=001388(5000)、00C350(50000)、07A120(500000)、4C4B40(5000000)

_C0 EXP earned after battle n
_L 0x2157D688 0x00xxxxxx
*xxxxxx=001388(5000)、00C350(50000)、07A120(500000)、4C4B40(5000000)

_C0 Monsters Defeated For Quests
_L 0x20091894 0x00000000
_L 0x200918A8 0x00000000
_L 0x200918B0 0x00000000
_L 0x20091BC4 0x00000000

_C0 Remaining Kikouseki x50 steps
_L 0x002ADFF6 0x00000032

_C0 Synth Proficiency Max
_L 0x1028F5E4 0x00003EE8

_C0 Carried Items x50, Select
_L 0xD0000001 0x10000001
_L 0x8028F5F0 0x00640002
_L 0x10000032 0x00000000

_C0 After warehouse opens, Item x50, Select
_L 0xD0000001 0x10000001
_L 0x8029D7C2 0x04B00002
_L 0x10000032 0x00000000

_C0 Encount Off, L On
_L 0x0158EEB8 0x00000000
_L 0xD0000001 0x10000100
_L 0x0158EEB8 0x000000FF

_C0 Follower Exp Max (only for those who participated in battle)
_L 0x402937E0 0x001C0040
_L 0x05F5E0FF 0x00000000

_C0 Ryuuga
_L 0x1028F892 0x0000270F
_L 0x1028F894 0x0000270F  ←HP 9999
_L 0x1028F896 0x0000270F
_L 0x1028F898 0x0000270F  ←MP 9999
_L 0x1028F88A 0x000003E7  ←SP 999
_L 0x1028F88C 0x0000012C
_L 0x1028F88E 0x0000012C  ←Burst Gauge Max
_L 0x0028F888 0x00000005  ←Charisma Gauge Max
_L 0x1028F79A 0x0000001E  ←Capacity 30
_C0 Ryuuga STR/INT/VIT/SPD 999 (updated for/to 32bit)
_L 0x4028F78C 0x00040001
_L 0x03E703E7 0x00000000

_C0 Sofia
_L 0x1029009A 0x0000270F
_L 0x1029009C 0x0000270F
_L 0x1029009E 0x0000270F
_L 0x102900A0 0x0000270F
_L 0x10290092 0x000003E7
_L 0x10290094 0x0000012C
_L 0x10290096 0x0000012C
_L 0x00290090 0x00000005
_L 0x1028FFA2 0x0000001E
_C0 Sofia STR/INT/VIT/SPD 999 (updated for 32bit)
_L 0x4028FF94 0x00040001
_L 0x03E703E7 0x00000000

_C0 Hilda
_L 0x102908A2 0x0000270F
_L 0x102908A4 0x0000270F
_L 0x102908A6 0x0000270F
_L 0x102908A8 0x0000270F
_L 0x1029089A 0x000003E7
_L 0x1029089C 0x0000012C
_L 0x1029089E 0x0000012C
_L 0x00290898 0x00000005
_L 0x102907AA 0x0000001E
_C0 Hilda STR/INT/VIT/SPD 999 (updated for 32bit)
_L 0x4029079C 0x00040001
_L 0x03E703E7 0x00000000

_C0 Sieg
_L 0x102918B2 0x0000270F
_L 0x102918B4 0x0000270F
_L 0x102918B6 0x0000270F
_L 0x102918B8 0x0000270F
_L 0x102918AA 0x000003E7
_L 0x102918AC 0x0000012C
_L 0x102918AE 0x0000012C
_L 0x002918A8 0x00000005
_L 0x102917BA 0x0000001E
_C0 Sieg STR/INT/VIT/SPD 999 (updated for 32bit)
_L 0x402917AC 0x00040001
_L 0x03E703E7 0x00000000

_C0 Mint
_L 0x102920BA 0x0000270F
_L 0x102920BC 0x0000270F
_L 0x102920BE 0x0000270F
_L 0x102920C0 0x0000270F
_L 0x102920B2 0x000003E7
_L 0x102920B4 0x0000012C
_L 0x102920B6 0x0000012C
_L 0x002920B0 0x00000005
_L 0x10291FC2 0x0000001E
_C0 Mint STR/INT/VIT/SPD 999 (updated for 32bit)
_L 0x40291FB4 0x00040001
_L 0x03E703E7 0x00000000

_C0 Emil
_L 0x102928C2 0x0000270F
_L 0x102928C4 0x0000270F
_L 0x102928C6 0x0000270F
_L 0x102928C8 0x0000270F
_L 0x102928BA 0x000003E7
_L 0x102928BC 0x0000012C
_L 0x102928BE 0x0000012C
_L 0x002928B8 0x00000005
_L 0x102927CA 0x0000001E
_C0 Emil STR/INT/VIT/SPD 999
_L 0x402927BC 0x00040001
_L 0x03E703E7 0x00000000

_C0 Riesled
_L 0x102930CA 0x0000270F
_L 0x102930CC 0x0000270F
_L 0x102930CE 0x0000270F
_L 0x102930D0 0x0000270F
_L 0x102930C2 0x000003E7
_L 0x102930C4 0x0000012C
_L 0x102930C6 0x0000012C
_L 0x002930C0 0x00000005
_L 0x10292FD2 0x0000001E
_C0 Riesled STR/INT/VIT/SPD 999
_L 0x40292FC4 0x00040001
_L 0x03E703E7 0x00000000

_C0 Diane
_L 0x102910AA 0x0000270F
_L 0x102910AC 0x0000270F
_L 0x102910AE 0x0000270F
_L 0x102910B0 0x0000270F
_L 0x102910A2 0x000003E7
_L 0x102910A4 0x0000012C
_L 0x102910A6 0x0000012C
_L 0x002910A0 0x00000005
_L 0x10290FB2 0x0000001E
_C0 Diane STR/INT/VIT/SPD 999
_L 0x40290FA4 0x00040001
_L 0x03E703E7 0x00000000
 
Last edited by Guren no heya kara,
D

Deleted User

Guest
Hey guys. I'm working on this as a side project and I have a question. Inside the .cpk is a folder called menu. Inside that is another folder called data and Inside that is a list of .tpk files I believe to be the menu images. Here's why I think this, I opened the first file and used Utf 8. Inside the mess I found this: 2009tgGimPhotoshopPlugin. I did some googling and found it is a photo shop plugin, or one you can use with gimp. Does anyone know about this or know of a way to convert these .tpk to png? I do not have photo shop. Maybe another image/edit program could open these?

side note: I am doing a final edit on the script and will let you know when it is finished.
 
Last edited by ,
D

Deleted User

Guest
I would very much like to keep going with this project. If anyone out there could check the compression on these file would be great. I have had no luck yet. That's the main thing that is stopping the main menu translation.
 
D

Deleted User

Guest
Scratch the script insertion. Grrrrr, if you mod too many files the game sticks on the opening. I wonder if a compression issue. . . . Anyways back to the drawing board. :cry:
 
D

Deleted User

Guest
OK I'm back to ask if anyone knows how to extract the text from the .kbd files. Also if anyone has any idea how to insert them back. My guess after trying MANY different things and failing, is we will have to extract, translate, then insert back into, the .kbd files for this to work. Any ideas? ? ? ? ? ?
 
Last edited by ,
D

Deleted User

Guest
So my next experiment was to use a tpk bms script to try and extract the menu images. What I got looked like empty video files and some empty text files. I think we are getting closer. Maybe all we need is a bms script write different then the one I have. Can anyone write one?
 

BlackDog61

Well-Known Member
Newcomer
Joined
Nov 30, 2013
Messages
81
Trophies
0
Age
40
XP
210
Country
Indonesia
Hi there, Sephurchin and all!

Would it be possible to sort of list exactly what is done, to be done, and the exact blocking points?
I've re-read the thread and I'm not sure who's done what.
- It was said the data_msg_txt.dat has been taken care of, along with the eboot, in order to provide a "menu patch". is that a correct statement?
- I think I've read that re-inserting into kbd files doesn't work anymore. Could someone elaborate on this? And if we think it's a size issue, have we determined the max size that works?
- I've read something about not knowing how to handle .tpk files. Please find a suggestion below.
- Opening the CPK seems to work OK with the procedure provided by zero_g_monkey. Has this been used?
- What's the currently blocking part for the story?
- Is something blocking further progress on the "menu patch" front?

With regards to TPK files, as was mentioned, these contain (potentially among others) a collection of GIM files. I don't have an easy way of handling them, but I have a convoluted one to propose. (It's up for improvement, obviously.)
- Get TextER (texture extractor)
- Get Gimconv
- Get pngout.exe
- Save the following into extract_graphics.bat file:
Code:
@Echo[/USER] off
set GIMCONV="C:\where you put GimConv\GimConv.exe"
set PNGOUT="C:\where you put \pngout.exe"

rem Extract GIM files from binaries - could limit to window, map and graphics:
for /F "delims=" %%a IN ('dir /b *.tpk') do TextER.exe -e  "%%a" -gim

rem convert to PNG with 8-bit colour:
For /R . %%G IN (*.gim) do %GIMCONV% "%%G" -o "%%G_8.png"
rem Convert the new 8bit+Alpha PNG to 32bit PNG using pngout:
For /R . %%G IN (*_8.png) do %PNGOUT% "%%G" "%%G_32.png" /c6 /force
- run it in every directory where you have tpk files.
- Note: you could alternatively replace the first "for /F" with a "for /R" to go through all directories in a single go. Not sure it will extract things nicely, up to you.
- The result is a crapton of png files :) where "_8.png" files contain the raw extracted image, and "_32.png" files contain the same image, but in 32-bit-per-pixel.
- Edit _32.png files of interest in Gimp.
- IMPORTANT: Gimpwill stupidly assume these are RGB files instead of palette-driven files. So first thing after opening: menu->image->mode->indexed (and create a palette with up to 256 colors).
- Never use a new color in your edits.
- you could dump the palette too - it is just before the pixels in the TPC (see the spec.log file for the right place in the source tpk).

From what I can check, the following contain kanji/katakana:
http://pastebin.com/2xg7jsCd
(One of the files only has blurred out Japanese writings, but you can tell it's Japanese nonetheless. ;) )
 
Last edited by BlackDog61,
  • Like
Reactions: kaikaiser

flame1234

Well-Known Member
Member
Joined
May 17, 2009
Messages
734
Trophies
0
XP
957
Country
United States
Last edited by flame1234,
  • Like
Reactions: BlackDog61
D

Deleted User

Guest
Hi there, Sephurchin and all!

Would it be possible to sort of list exactly what is done, to be done, and the exact blocking points?
I've re-read the thread and I'm not sure who's done what.
- It was said the data_msg_txt.dat has been taken care of, along with the eboot, in order to provide a "menu patch". is that a correct statement?
- I think I've read that re-inserting into kbd files doesn't work anymore. Could someone elaborate on this? And if we think it's a size issue, have we determined the max size that works?
- I've read something about not knowing how to handle .tpk files. Please find a suggestion below.
- Opening the CPK seems to work OK with the procedure provided by zero_g_monkey. Has this been used?
- What's the currently blocking part for the story?
- Is something blocking further progress on the "menu patch" front?

With regards to TPK files, as was mentioned, these contain (potentially among others) a collection of GIM files. I don't have an easy way of handling them, but I have a convoluted one to propose. (It's up for improvement, obviously.)
- Get TextER (texture extractor)
- Get Gimconv
- Get pngout.exe
- Save the following into extract_graphics.bat file:
Code:
@Echo[/USER] off
set GIMCONV="C:\where you put GimConv\GimConv.exe"
set PNGOUT="C:\where you put \pngout.exe"

rem Extract GIM files from binaries - could limit to window, map and graphics:
for /F "delims=" %%a IN ('dir /b *.tpk') do TextER.exe -e  "%%a" -gim

rem convert to PNG with 8-bit colour:
For /R . %%G IN (*.gim) do %GIMCONV% "%%G" -o "%%G_8.png"
rem Convert the new 8bit+Alpha PNG to 32bit PNG using pngout:
For /R . %%G IN (*_8.png) do %PNGOUT% "%%G" "%%G_32.png" /c6 /force
- run it in every directory where you have tpk files.
- Note: you could alternatively replace the first "for /F" with a "for /R" to go through all directories in a single go. Not sure it will extract things nicely, up to you.
- The result is a crapton of png files :) where "_8.png" files contain the raw extracted image, and "_32.png" files contain the same image, but in 32-bit-per-pixel.
- Edit _32.png files of interest in Gimp.
- IMPORTANT: Gimpwill stupidly assume these are RGB files instead of palette-driven files. So first thing after opening: menu->image->mode->indexed (and create a palette with up to 256 colors).
- Never use a new color in your edits.
- you could dump the palette too - it is just before the pixels in the TPC (see the spec.log file for the right place in the source tpk).

From what I can check, the following contain kanji/katakana:
http://pastebin.com/2xg7jsCd
(One of the files only has blurred out Japanese writings, but you can tell it's Japanese nonetheless. ;) )
Yes that is some of the main problems. The images could not be found/extracted for edit. Like flame said the font spacing was another big issue. Regarding the script, justfuit was able to extract the kbd files, but could not convert/repack the txt files back into kbd files, so the script cannot be inserted either. BUT, if we can at least extract the images we can get those translated.
 

BlackDog61

Well-Known Member
Newcomer
Joined
Nov 30, 2013
Messages
81
Trophies
0
Age
40
XP
210
Country
Indonesia
Need to fix font spacing issue: http://gbatemp.net/threads/currently-translating-unchained-blades-exxiv.394877/page-8#post-5822075
I am not working on this problem.
It would be good if you could somehow redirect the game to the built-in VWF routine that is used for item text. I have not investigated it so it might be worth it to try.
OK. I take it text is encoded in UTF8 like you mentioned in both cases (script & menu stuff)?

Guren revised the text for data_msg.txt so it needs to be inserted again. I will take care of this, it is really a quick process.
Any idea why this doesn't work for story kbd's? I mean, I assume your python script has been tried against the story kbd's right? Or is it at iso generation time, when kbd's are bigger, that things go bang (suggesting there'd be a kind of files offsets registry somewhere)?

Yes that is some of the main problems. The images could not be found/extracted for edit. Like flame said the font spacing was another big issue. Regarding the script, justfuit was able to extract the kbd files, but could not convert/repack the txt files back into kbd files, so the script cannot be inserted either. BUT, if we can at least extract the images we can get those translated.
You can extract images as I mentioned above.
And once edited, you can re-insert them (for instance) by exporting BMP's out of Gimp, then inserting the hex for the pixels from these BMP's in the same place as where they came from (manually adjusted from the spec.log file).
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Veho @ Veho: Firefox users be like "look at what they have to do to mimic a fraction of our power."