Skip to content
View in the app

A better way to browse. Learn more.

ResHax

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Help us keep the site running.

[Xbox 360] Lost Odyssey .fpd

Featured Replies

  • Author
  • Localization

chrrox, posted Wed Aug 22, 2018 3:56 pm (37778)


LO.fpi contains the tables for all the archives.
at 0x20 in the file is the offsets to the different tables.
40 00 00 00
E0 02 00 00
90 5C 05 00
B0 02 00 00

the offsets need to be multiplied by 0x800 and you need to add 0x08 00 00 00 to the result.
  • Author
  • Localization

AnonBaiter, posted Wed Aug 22, 2018 7:23 pm (37782)


this one also kinda works
Code:
offset value << 11
  • Author
  • Localization

chrrox, posted Wed Aug 22, 2018 11:43 pm (37787)


xenon_loc.fpd - contains language text.

the first table at 0x40 is 0x30 in size for each entry.
the 2nd and 3rd int are offsets into the other tables that is based off the start of the 0x30 section.
the 2nd int has 0x18 per entry and contains the offsets to the files.

here is LO.fpd entries

unkown stuff
AE 40 00 10 E3 CC DB 0F 00 00 00 00 00 00 02 00 00 00 00 00 01 00 00 00
60 65 00 10 F8 6B 8A 0F 00 00 00 00 01 00 01 00 00 00 00 00 03 00 00 00
6A 65 00 10 B3 A2 DB 0F 00 00 00 00 01 00 06 00 00 00 00 00 06 00 00 00
35 00 00 10 F8 6B 8A 0F 00 00 00 00 02 00 01 00 00 00 00 00 04 00 00 00
63 65 00 10 F8 6B 8A 0F 00 00 00 00 04 00 01 00 00 00 00 00 05 00 00 00

file offsets and size 3rd and 5th int.
66 65 80 07 D1 D9 DA 0F 00 00 00 08 05 00 10 00 5B 32 03 00 00 00 00 00
66 65 80 08 D1 D9 DA 0F 67 00 00 08 03 00 10 00 5F E2 04 00 00 00 00 00
66 65 00 09 D1 D9 DA 0F 04 01 00 08 03 00 10 00 A9 E5 04 00 00 00 00 00
66 65 80 09 D1 D9 DA 0F A1 01 00 08 03 00 10 00 41 E0 04 00 00 00 00 00
66 65 00 0A D1 D9 DA 0F 3E 02 00 08 03 00 10 00 65 E4 04 00 00 00 00 00
66 65 80 0A D1 D9 DA 0F DB 02 00 08 03 00 10 00 E6 59 04 00 00 00 00 00
66 65 00 0C D1 D9 DA 0F 67 03 00 08 03 00 10 00 AD E3 04 00 00 00 00 00

Code:
01 00 01 00 A0 02 00 00 50 5C 05 00 70 02 00 00 00 00 00 00 00 00 00 00 32 00 00 10 E0 CC DB 0F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 LO.fpd
01 00 0C 00 90 03 00 00 20 5C 05 00 40 02 00 00 00 00 00 00 37 00 00 10 3C 00 00 10 27 AE DB 0F 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 xenon_chr.fpd
01 00 69 00 58 56 00 00 F0 5B 05 00 10 02 00 00 00 00 00 00 5F 08 00 10 65 08 00 10 D2 B8 D2 0F 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 xenon_event.fpd
01 00 64 00 48 53 01 00 C0 5B 05 00 E0 01 00 00 00 00 00 00 BA 1F 00 10 C0 1F 00 10 56 AE DB 0F 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 xenon_field.fpd
01 00 08 00 A8 B9 01 00 90 5B 05 00 B0 01 00 00 00 00 00 00 05 21 00 10 0A 21 00 10 E3 AE DB 0F 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 xenon_obj.fpd
01 00 03 00 40 00 02 00 60 5B 05 00 80 01 00 00 00 00 00 00 B7 2E 00 10 BC 2E 00 10 6B BB D2 0F 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 xenon_scr.fpd
01 00 26 00 40 08 03 00 30 5B 05 00 50 01 00 00 00 00 00 00 B8 3F 00 10 BD 3F 00 10 67 3A 4F 0F 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 xenon_sys.fpd
01 00 06 00 88 14 03 00 00 5B 05 00 20 01 00 00 00 00 00 00 C2 41 00 10 C7 41 00 10 87 BD D2 0F 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 xenon_vfx.fpd
01 00 04 02 E0 A0 03 00 D0 5A 05 00 F0 00 00 00 00 00 00 00 05 5F 00 10 0B 5F 00 10 1B AF DB 0F 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 xenon_world.fpd
01 01 71 00 10 D1 03 00 A0 5A 05 00 C0 00 00 00 00 00 00 00 6F 65 00 10 75 65 00 10 22 AD DB 0F 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 xenon_battle.fpd
01 01 07 00 C8 06 04 00 70 5A 05 00 90 00 00 00 00 00 00 00 C5 66 00 10 CA 66 00 10 05 BB D2 0F 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 xenon_loc.fpd
01 01 0E 00 B8 5B 04 00 40 5A 05 00 60 00 00 00 00 00 00 00 4E 6C 00 10 53 6C 00 10 D8 CB DB 0F 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 xenon_mov.fpd
01 01 07 00 D8 5C 04 00 10 5A 05 00 30 00 00 00 00 00 00 00 82 6C 00 10 87 6C 00 10 9A BC D2 0F 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 xenon_snd.fpd
  • Author
  • Localization

aluigi, posted Thu Aug 23, 2018 2:03 am (37794)


In the meantime just some "skeletal" bms script for reading the fields (I'm not working on this):
Code:
goto 0x1a
get ENTRIES1 short
get ENTRIES2 long
get OFFSET1 long
get OFFSET2 long

goto OFFSET1
for i = 0 < ENTRIES1
    getdstring DUMMY 0x30
next i

goto OFFSET2
for i = 0 < ENTRIES2
    get DUMMY1 long
    get DUMMY2 long
    get DUMMY3 long
    get DUMMY4 long
    get DUMMY5 long
    get DUMMY6 long
next i
  • Author
  • Localization

chrrox, posted Thu Aug 23, 2018 3:02 am (37796)


Here is a script for disc1 not sure if it works on anything else.

Code:
set memory_file2 binary "\x4C\x4F\x2E\x66\x70\x64\x00\x78\x65\x6E\x6F\x6E\x5F\x63\x68\x72\x2E\x66\x70\x64\x00\x78\x65\x6E\x6F\x6E\x5F\x65\x76\x65\x6E\x74\x2E\x66\x70\x64\x00\x78\x65\x6E\x6F\x6E\x5F\x66\x69\x65\x6C\x64\x2E\x66\x70\x64\x00\x78\x65\x6E\x6F\x6E\x5F\x6F\x62\x6A\x2E\x66\x70\x64\x00\x78\x65\x6E\x6F\x6E\x5F\x73\x63\x72\x2E\x66\x70\x64\x00\x78\x65\x6E\x6F\x6E\x5F\x73\x79\x73\x2E\x66\x70\x64\x00\x78\x65\x6E\x6F\x6E\x5F\x76\x66\x78\x2E\x66\x70\x64\x00\x78\x65\x6E\x6F\x6E\x5F\x77\x6F\x72\x6C\x64\x2E\x66\x70\x64\x00\x78\x65\x6E\x6F\x6E\x5F\x62\x61\x74\x74\x6C\x65\x2E\x66\x70\x64\x00\x78\x65\x6E\x6F\x6E\x5F\x6C\x6F\x63\x2E\x66\x70\x64\x00\x78\x65\x6E\x6F\x6E\x5F\x6D\x6F\x76\x2E\x66\x70\x64\x00\x78\x65\x6E\x6F\x6E\x5F\x73\x6E\x64\x2E\x66\x70\x64\x00"
open fdse "LO.fpi"

goto 0x1a
get ENTRIES1 short
get ENTRIES2 long
get OFFSET1 long
get OFFSET2 long
get OFFSET3 long
get OFFSET4 long

goto OFFSET1
for i = 0 < ENTRIES1
    getdstring DUMMY 0x4
    get TBLOFF1 long
    get TBLOFF2 long
    getdstring DUMMY 0x24
    putarray 0 i TBLOFF1
    putarray 1 i TBLOFF2
next i
    math OFFSET3 - OFFSET4
    putarray 0 13 OFFSET3

goto OFFSET2
for i = 0 < ENTRIES1
set j i
math j = 1
getarray FILES 0 j
getarray SUB 0 i
math FILES = 0x30
math FILES - SUB
math FILES / 0x18
print "%FILES%"
get PAIR string memory_file2
open fdse PAIR 1
set NAME PAIR
string NAME \
for j = 0 < FILES
    get DUMMY1 long
    get DUMMY2 long
    get OFFSET long
    get DUMMY4 long
    get SIZE   long
    get DUMMY6 long
    math OFFSET & 0xFFFFFF
    math OFFSET * 0x800
    SET BNAME NAME
    STRING BNAME j
    if SIZE > 0
    log BNAME OFFSET SIZE 1
    endif
next j
next i
  • Author
  • Localization

makc_ar, posted Thu Aug 23, 2018 2:06 pm (37802)


Thank chrrox! This script error or...?
Image

Example xenon_snd.fpd:
xenon_snd.part1 https://www3.zippyshare.com/v/ckz4Y2En/file.html
xenon_snd.part2 https://www26.zippyshare.com/v/exhlHViP/file.html
xenon_snd.part3 https://www1.zippyshare.com/v/nBbm6Tvx/file.html

P.S. Support decompressed to compressed blocks https://www26.zippyshare.com/v/A9oH8jSs/file.html?
cpx header
Image
  • Author
  • Localization

chrrox, posted Thu Aug 23, 2018 2:20 pm (37803)


2121 is the correct file count for the archive so you got all the files.
I forgot to subtract from the last entry so that is why you got that error.
you can ignore the error.

i fixed the script to not give that error now.
  • Author
  • Localization

einherjar007, posted Sun Oct 03, 2021 1:51 am (66825)


Can someone re-upload the cpx script?
Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.