Sunday, 2024-11-24, 1:04 PM
Welcome, Anonymous | RSS
[ New messages · Members · Forum rules · Search · RSS ]
  • Page 1 of 2
  • 1
  • 2
  • »
SOL Trigger
ムギDate: Sunday, 2013-04-21, 8:37 PM | Message # 1

Rank: Nerdy Presence
Messages: 203
Reputation: 2
Status: Offline


well, this wasnt much of an obstacle really...
relevant data is in /USRDIR/GAMEDATA/TEXT/

Quote (TPK Container Header)
header consists of 12 bytes;

0x00: 5A5A 5A30 [file header 4 bytes]
0x04: Uncompressed Filesize [4 bytes]
0x08: Unknown 4 bytes, seems to always be 0400 0000


The remaining bytes are the contents of the TPK Container.
compression seems to be lossy zLib (SIG=7801)

Quote (/USRDIR/GAMEDATA/TEXT/A_WAY_00_C00.TPK)
ワイルたちが墜とした空母か……
ワイルたちもここを通ったのかな。 ……ファレル。
今朝の話、覚えているか? 今朝の話? おまえの……交友関係だ。    ああ、うん。  でも、どういう意味だ?
そんなことが重要なのか? ああ、この上なく、重要だ。 ……  『黄金のソール』──
あれはおまえ一人では発現しない。    信頼し合う男と女がいて
初めて輝くもの。 そう……なのか?
でもそんなこと、いつわかった? ワイルが教えてくれたんだ。
記録を残してくれた。 そうか…… ああ、今のおまえなら、できる。
黄金のソールはおまえのものだ。    いや、ちょっと待ってくれ。
ワイルは黄金のソールを
見たことがなかったはずだ。 発現の方法を知っていたのに
どうして── ワイルには、相手がいなかった。
信頼しあい、深い絆で結ばれた、相手がな。 やれるか、エマ。    うん、ファレルと一緒なら
どこまでもいけるよ!    やれるか、ソフィ。 問題ないわ!  大丈夫だ。 あいつなら、きっと――   ……ふふ、ワイル。
もう、だいじょうぶだ。  なんだかうれしそうだねヴァルター。 ああ、いい気分だ。
Attachments: 9804788.png (180.3 Kb)


 
ムギDate: Monday, 2013-04-22, 7:00 PM | Message # 2

Rank: Nerdy Presence
Messages: 203
Reputation: 2
Status: Offline
well it turned out it was just a little more annoying than it needed to be.

The game checks it's files against an internal TOC during boot refusing to boot and crashing the PSP if there is a mismatch.

Quote (UMD LBA Protection(eboot.BIN))
Nametable: 0x1A0298

table start: 0x1E6188
table end: 0x1F3CC4

Table structure:
Filename position [4-byte value] (Relative) !
File Start position in sectors [4-byte value] (Absolute) !!
File size [4-byte value] (Absolute)

Legend:
- Relative = treats 0x00 as the start of the containing file. (eboot.bin)
- Absolute = treats 0x00 as .iso file start.

! this offset is misaligned by 0xC0 bytes (size of the .elf header of eboot.bin)
pattern: name position address from table + 0xC0

!! multiply by 800 [hex]to gain real start address.

Attached is the original LBA Extracted from eboot.bin.

Note: the protection LBA omits following files;

\UMD_DATA.BIN
\PSP_GAME\SYSDIR\OPNSSMP.BIN
\PSP_GAME\SYSDIR\EBOOT.BIN
\PSP_GAME\SYSDIR\UPDATE\PARAM.SFO
\PSP_GAME\SYSDIR\UPDATE\EBOOT.BIN
\PSP_GAME\SYSDIR\UPDATE\DATA.BIN

I will describe the process of editing the script data (/GAMEDATA/TEXT/*.tpk) once i have confirmed all it's data.

With this it should be possible to produce a full or near-full translation of this game.
Attachments: LBA.txt (333.4 Kb)


 
ムギDate: Wednesday, 2013-04-24, 10:19 PM | Message # 3

Rank: Nerdy Presence
Messages: 203
Reputation: 2
Status: Offline
/GAMEDATA/TEXT/*.TPK General Filestructure.

Uncompressing a .tpk file will reveal a script binary.
The .bin file consists of 2 parts

TPK  Header

BIN File:
1) script offset data
2) Script data

Example file: H_SPC_00_C00.tpk

Quote (Header)
0x00: 9A84 0400 0100 0000 3000 0000 485F 5350
0x10: 435F 3030 5F43 3030 2E42 494E 0000 0000
0x20: 0000 0000 0000 0000 0000 0000 0000 0000


0x00: file signature [4-bytes] it seems to always be 9A84 0400
0x04: Number of files (Hex) [4-bytes]
0x08: File start address [4-bytes]
0x0C: Filename [n-bytes]

[0x08 - 0x0n] pattern repeats for as many times as there are files in the .bin
there usually is only one file,  but several archives, such as the font container have multiple files inside.

Quote (Script Offset data)
0x30: D401 0000 0C00 0000 0000 0000 0000 0000
0x40: 6024 4577 501D 0000 0000 0000 0000 0000
0x50: 6124 4577 681D 0000 0000 0000 0000 0000
0x60: 6224 4577 841D 0000 0000 0000 0000 0000
...
...
...


0x30: Number of entries
0x34: Unknown value (doesn't need to be modified)

0x40: Script index [4-bytes] i dont know the function but it does not need to be modified. !
0x44: String start address [4-bytes] !!!

Each entry is 16 bytes long, but only uses 8 bytes per entry, the remaining 8 bytes are zeroes.
! I believe this is a pointer to reference the script to the associated graphic and configuration data of the event.

!!! This offset is misaligned by size of the BIN header
Pattern: offset + size of header.

Quote (Script data)
...
...
...
0x1D60: 834C E805 AC95 0000 0000 0000 0000 0000
0x1D70: 844C E805 F495 0000 0000 0000 0000 0000
-- last entry of Script offset data.

0x1D80: E5AB 81E3 8395 E383 A9E3 82B0 EFBC 9AE3
0x1D90: 82A8 E383 9E00 0000 E5AB 81E3 8395 E383
0x1DA0: A9E3 82B0 EFBC 9AE3 82BD E383 95E3 82A3


0x1D80: script String [n-bytes] !!!

!!! Length is not defined, script offsets only consist of start address and are being read until reaching 00(hex)

Proof of concept:

Pay no attention to bad inaccuracies, this is ran through google translator only to illustrate the functionality
of above data.

Note: i am aware that the monospaced font is rather unpleasant.
the game's font is a bitmap .fnt file which is rebuildable.
i will examine it on a later date.

Original Script // Test file.


Attachments: 9470809.png (125.6 Kb) · 5394247.png (125.7 Kb) · 2463620.png (129.9 Kb) · 6395732.png (129.8 Kb)


 
0toshigamiDate: Thursday, 2013-06-13, 8:48 PM | Message # 4

Rank: Newcomer
Messages: 5
Reputation: 0
Status: Offline
Hi there, I'm trying to translate this game to my language, and I dont know how to recompress this file (*.Bin) after I'm decompress *.TPK file, can u help me,plz? And sorry for my bad english dry
 
ムギDate: Thursday, 2013-06-13, 9:29 PM | Message # 5

Rank: Nerdy Presence
Messages: 203
Reputation: 2
Status: Offline
the compression of the tpk files is zlib, you can use simplyzip to recompress it

 
0toshigamiDate: Friday, 2013-06-14, 10:49 AM | Message # 6

Rank: Newcomer
Messages: 5
Reputation: 0
Status: Offline
Thanks for help me. But:
First, I decompress by Python, and I have the file (SAVELOAD.BIN), and I started to edit some text in this file

http://i1091.photobucket.com/albums/i391/oOooSUNooOo/help_zps3a30459f.png

And question is: How do I compress it (*.BIN to *.TPK) like that:

http://i1091.photobucket.com/albums/i391/oOooSUNooOo/help1_zpse2888129.png
wacko

And how can I use simplyzip to recompress it?

Plus, can u tell me how do u do it?
http://mce.do.am/_fr/0/s5394247.jpg

sorry for bothering you smile


Message edited by 0toshigami - Friday, 2013-06-14, 7:13 PM
 
ムギDate: Friday, 2013-06-14, 9:12 PM | Message # 7

Rank: Nerdy Presence
Messages: 203
Reputation: 2
Status: Offline
like i said, download simplyzip.

in the menu "external programs" there is zlib compression/decompression
select compression, then select your bin file, and click compress.

then rename the file back to how it originally was


 
0toshigamiDate: Saturday, 2013-06-15, 8:14 AM | Message # 8

Rank: Newcomer
Messages: 5
Reputation: 0
Status: Offline
I did just like what you said ( Used simplyzip to recompress file *.bin and renamed the file that I had just recompressed to *.TPK) but, when I put it again to my psp, I got this error "The game could not be started (80010002)"

Can you upload your file ( Example file: H_SPC_00_C00.tpk )? I want to know how did you compress it. Thanks for Replying

Originally:

http://i1091.photobucket.com/albums/i391/oOooSUNooOo/H_zpsbef469bc.png

Edited and Compressed:

http://i1091.photobucket.com/albums/i391/oOooSUNooOo/H2_zps808b6dfb.png

And Why I can not use HTML code? ( [img] [*/img] )


Message edited by 0toshigami - Saturday, 2013-06-15, 10:02 AM
 
ムギDate: Saturday, 2013-06-15, 12:44 PM | Message # 9

Rank: Nerdy Presence
Messages: 203
Reputation: 2
Status: Offline
did you change the TOC in the eboot ?

it lists all files and their sizes and if the size of the file you edit changes you need to patch the TOC in the eboot to respond to that too, othervise the game doesnt work. See post 2


 
0toshigamiDate: Saturday, 2013-06-15, 2:24 PM | Message # 10

Rank: Newcomer
Messages: 5
Reputation: 0
Status: Offline
I don't understand how to change TOC in the eboot wacko Can u help me, plz? I really really want to translate this game...
 
  • Page 1 of 2
  • 1
  • 2
  • »
Search: