Just Dance 2015-2017 (.IPK)

Extraction and unpacking of game archives and compression, encryption, obfuscation, decoding of unknown files
vladik4kides
Posts: 7
Joined: Wed Mar 01, 2017 4:53 pm

Just Dance 2015-2017 (.IPK)

Post by vladik4kides »

Hi
Recently I was extracting Just Dance 2014's and 2015's files and I noticed that files naming scheme is absolutely different, although archives use the same format (.ipk). Files from Just Dance 2014 are placed accurately, are sorted to folders and have their original names. But files from 2015 (and until Just Dance 2017) are just a mess, there is a folder for each file and files use .dat extension (which is generated by quickbms), no matter if its a texture or a video, and also those files are named like 0000004e (which, again, quickbms gave to them while extracting), BUT in hex editor I can see naming scheme like the one from JD2014, so I guess the script works incorrectly for JD2015-2017 (tho no files are corrupted, just the naming scheme is incorrect). I used script by aluigi, which I got from his site.
So I'm asking if someone could fix it, I'll leave link to both JD2014 and JD2017 .ipk's below. Here's the original script:

Code: Select all

# Just Dance 2014 (script 0.1a)
#   same format used also by Rayman Legends
# script for QuickBMS http://quickbms.aluigi.org

endian big
idstring "\x50\xec\x12\xba"
get VERSION long
get DUMMY long
get BASE_OFF long
get FILES long
goto 0x30
for i = 0 < FILES
    get DUMMY1 long # 1
    get SIZE long
    get ZSIZE long
    get TSTAMP longlong
    get OFFSET longlong
    if DUMMY1 == 2
        get DUMMY long
        get DUMMY long
    endif
    get PATHSZ long
    getdstring PATH PATHSZ
    get NAMESZ long
    getdstring NAME NAMESZ
    get CRC long
    get DUMMY2 long # 0 or 2

    set FNAME string PATH
    string FNAME += NAME
    math OFFSET += BASE_OFF

    if ZSIZE == 0
        log FNAME OFFSET SIZE
    else
        clog FNAME OFFSET ZSIZE SIZE
    endif
next i


Files: GDrive
vladik4kides
Posts: 7
Joined: Wed Mar 01, 2017 4:53 pm

Re: Just Dance 2015-2017 (.IPK)

Post by vladik4kides »

Nevermind, I figured it out myself. Thanks :D
RauanBatyr
Posts: 10
Joined: Thu Jul 19, 2018 7:34 am

Re: Just Dance 2015-2017 (.IPK)

Post by RauanBatyr »

vladik4kides wrote:Nevermind, I figured it out myself. Thanks :D


Ahh, how?
Acewell
Posts: 706
Joined: Fri Aug 08, 2014 1:06 am

Re: Just Dance 2015-2017 (.IPK)

Post by Acewell »

try this :D

Code: Select all

get FOLDER basename
endian big
idstring "\x50\xec\x12\xba"
get VERSION long
get DUMMY long
get BASE_OFF long
get FILES long
goto 0x30
for i = 0 < FILES
    get DUMMY1 long # 1
    get SIZE long
    get ZSIZE long
    get TSTAMP longlong
    get OFFSET longlong
    if DUMMY1 == 2
        get DUMMY long
        get DUMMY long
    endif
    get NAME_SZ long
    getdstring NAME NAME_SZ
    get PATH_SZ long
    getdstring PATH PATH_SZ
    get CRC long
    get DUMMY2 long # 0 or 2
    string NAME p "%s\%s\%s" FOLDER PATH NAME
    math OFFSET + BASE_OFF
    if ZSIZE == 0
        log NAME OFFSET SIZE
    else
        clog NAME OFFSET ZSIZE SIZE
    endif
next i
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Just Dance 2015-2017 (.IPK)

Post by aluigi »

There is absolutely no problem in my script:
http://aluigi.org/bms/just_dance_2014.bms

I don't know where you got that old version of the script but for sure it's not (no longer) on my homepage from many months.
RauanBatyr
Posts: 10
Joined: Thu Jul 19, 2018 7:34 am

Re: Just Dance 2015-2017 (.IPK)

Post by RauanBatyr »

aluigi wrote:There is absolutely no problem in my script:
http://aluigi.org/bms/just_dance_2014.bms

I don't know where you got that old version of the script but for sure it's not (no longer) on my homepage from many months.

I used it and again got the .DAT files ;-;
RauanBatyr
Posts: 10
Joined: Thu Jul 19, 2018 7:34 am

Re: Just Dance 2015-2017 (.IPK)

Post by RauanBatyr »

Acewell wrote:try this :D

Code: Select all

get FOLDER basename
endian big
idstring "\x50\xec\x12\xba"
get VERSION long
get DUMMY long
get BASE_OFF long
get FILES long
goto 0x30
for i = 0 < FILES
    get DUMMY1 long # 1
    get SIZE long
    get ZSIZE long
    get TSTAMP longlong
    get OFFSET longlong
    if DUMMY1 == 2
        get DUMMY long
        get DUMMY long
    endif
    get NAME_SZ long
    getdstring NAME NAME_SZ
    get PATH_SZ long
    getdstring PATH PATH_SZ
    get CRC long
    get DUMMY2 long # 0 or 2
    string NAME p "%s\%s\%s" FOLDER PATH NAME
    math OFFSET + BASE_OFF
    if ZSIZE == 0
        log NAME OFFSET SIZE
    else
        clog NAME OFFSET ZSIZE SIZE
    endif
next i

Thanks! But why I don't see any DDS in hex editor?
I saw only SDD.. It's dds in backwards..
Just dance 2016 wii
GHOST DEAD
Posts: 218
Joined: Wed Jul 19, 2017 5:04 am

Re: Just Dance 2015-2017 (.IPK)

Post by GHOST DEAD »

RauanBatyr wrote:
Acewell wrote:try this :D

Code: Select all

get FOLDER basename
endian big
idstring "\x50\xec\x12\xba"
get VERSION long
get DUMMY long
get BASE_OFF long
get FILES long
goto 0x30
for i = 0 < FILES
    get DUMMY1 long # 1
    get SIZE long
    get ZSIZE long
    get TSTAMP longlong
    get OFFSET longlong
    if DUMMY1 == 2
        get DUMMY long
        get DUMMY long
    endif
    get NAME_SZ long
    getdstring NAME NAME_SZ
    get PATH_SZ long
    getdstring PATH PATH_SZ
    get CRC long
    get DUMMY2 long # 0 or 2
    string NAME p "%s\%s\%s" FOLDER PATH NAME
    math OFFSET + BASE_OFF
    if ZSIZE == 0
        log NAME OFFSET SIZE
    else
        clog NAME OFFSET ZSIZE SIZE
    endif
next i

Thanks! But why I don't see any DDS in hex editor?
I saw only SDD.. It's dds in backwards..
Just dance 2016 wii


Upload a sample File To Me...
RauanBatyr
Posts: 10
Joined: Thu Jul 19, 2018 7:34 am

Re: Just Dance 2015-2017 (.IPK)

Post by RauanBatyr »

GHOST DEAD wrote:
RauanBatyr wrote:
Acewell wrote:try this :D

Code: Select all

get FOLDER basename
endian big
idstring "\x50\xec\x12\xba"
get VERSION long
get DUMMY long
get BASE_OFF long
get FILES long
goto 0x30
for i = 0 < FILES
    get DUMMY1 long # 1
    get SIZE long
    get ZSIZE long
    get TSTAMP longlong
    get OFFSET longlong
    if DUMMY1 == 2
        get DUMMY long
        get DUMMY long
    endif
    get NAME_SZ long
    getdstring NAME NAME_SZ
    get PATH_SZ long
    getdstring PATH PATH_SZ
    get CRC long
    get DUMMY2 long # 0 or 2
    string NAME p "%s\%s\%s" FOLDER PATH NAME
    math OFFSET + BASE_OFF
    if ZSIZE == 0
        log NAME OFFSET SIZE
    else
        clog NAME OFFSET ZSIZE SIZE
    endif
next i

Thanks! But why I don't see any DDS in hex editor?
I saw only SDD.. It's dds in backwards..
Just dance 2016 wii


Upload a sample File To Me...


https://drive.google.com/open?id=1Jefbd ... fIHXYAqw_P
RauanBatyr
Posts: 10
Joined: Thu Jul 19, 2018 7:34 am

Re: Just Dance 2015-2017 (.IPK)

Post by RauanBatyr »

RauanBatyr wrote:
GHOST DEAD wrote:
RauanBatyr wrote:Thanks! But why I don't see any DDS in hex editor?
I saw only SDD.. It's dds in backwards..
Just dance 2016 wii


Upload a sample File To Me...


https://drive.google.com/open?id=1Jefbd ... fIHXYAqw_P


I got it. My computer is little endian :(
RauanBatyr
Posts: 10
Joined: Thu Jul 19, 2018 7:34 am

Re: Just Dance 2015-2017 (.IPK)

Post by RauanBatyr »

aluigi wrote:There is absolutely no problem in my script:
http://aluigi.org/bms/just_dance_2014.bms

I don't know where you got that old version of the script but for sure it's not (no longer) on my homepage from many months.


I need little endian bms... Do you have?
jonyluke
Posts: 3
Joined: Sun Oct 28, 2018 4:55 pm

Re: Just Dance 2015-2017 (.IPK)

Post by jonyluke »

How do you get it back to .ipk?
jonyluke
Posts: 3
Joined: Sun Oct 28, 2018 4:55 pm

Pack to ipk

Post by jonyluke »

I have used this script http://aluigi.org/bms/just_dance_2014.bms
but now i want to pack it again to ipk, how i do that?
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Just Dance 2015-2017 (.IPK)

Post by aluigi »

@jonyluke
Please don't open new topics about the same game.
jonyluke
Posts: 3
Joined: Sun Oct 28, 2018 4:55 pm

Re: Just Dance 2015-2017 (.IPK)

Post by jonyluke »

aluigi wrote:@jonyluke
Please don't open new topics about the same game.



. Okay sorry, do you know how to pack the files in ipk?
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Just Dance 2015-2017 (.IPK)

Post by aluigi »

The script is valid for reimporting so that's what you should try.
If the game refuses to run with the edited archive (maybe there is some CRC check), I have no other solutions.
n97t7f7b57f
Posts: 27
Joined: Tue Apr 21, 2015 2:15 pm

Re: Just Dance 2015-2017 (.IPK)

Post by n97t7f7b57f »

Some info about autodance videos in Just Dance 2018
Should be same for previous versions

Video saves in webm format in dev_hdd0/home/<userid>/savedata/<GAMEID>-JDSAVE-1/SYS-DATA
i.e. dev_hdd0/home/000000001/savedata/BLUS31613-JDSAVE-1/SYS-DATA

All saves on PS3 are encrypted.
Use Bruteforece Save Data from ps3tools by Aldo Vargas to decrypt SYS-DATA file

header - 256 byte
song title - string 128 byte
song artist - string 128 byte
UBI
? - long
? - long
Then comes array of jpeg pictures for preview
Starts with magic "FF D8 FF"
A lot off zeros
then comes video (magic is "1A45DFA3") till end of file
Save block from here to .mkv file
Done

ps. if you have no sound during playback try to remux file
(i.e. with avidemux with copy option for video and audio)