PS3 RCOMAGE Mod 1.9 - Proper & Automated GIM to PNG conversion, Dump & Compile Files.

Discussion in 'Developer Tools' started by RandomDude, Mar 6, 2019.

  1. 377
    203
    72
    RandomDude

    RandomDude Member

    Joined:
    Dec 24, 2018
    Messages:
    377
    Likes Received:
    203
    Trophy Points:
    72
    Gender:
    Male
    @sandungas seems like still there are weird settings for these files.

    I've extracted all rco's and these are the only gim files remaining with unknown Gim settings.

    Capture123.PNG

    (You can see which rco they belong to under details settings)

    These are the only remaining files that wont match these 6 settings -ps3rgba8888, -ps3rgba8888 --update_fileinfo on, ps3dxt5, ps3dxt3, ps3dxt1, gimconvc -ps3rgba8888 --update_fileinfo on.
    (Rest all rco's gims are fine all 122 rco's and almost 3000 gims of them :grin:)

    After this I can finally make the database lol.
     
    Last edited: Mar 16, 2019
    n00b and sandungas like this.
  2. 377
    203
    72
    RandomDude

    RandomDude Member

    Joined:
    Dec 24, 2018
    Messages:
    377
    Likes Received:
    203
    Trophy Points:
    72
    Gender:
    Male
    Finally spent the whole day trying to extract all gims and gather the database.

    1.7 is out!, Hopefully it servers better than before.

    Changelog:

    -Added custom Database Which allows extremely fast dumps and compile rate.
    -Trimmed code as much as I possibly could.
    -Small UI changes

    Also dumping should be much, much, much more faster than before.
    Please report any bugs you find right here.
     
    n00b and sandungas like this.
  3. 5,456
    5,007
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    5,456
    Likes Received:
    5,007
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    But you still need to identify the GIM files you posted in the previous post ?
    Are a few, im going to post some, the first thing i noticed is some are made with GimConvD.exe
    So... to identify them you need to do:
    Code:
    GimConvD.exe original.gim -o rebuilt.gim -ps3rgba8888 --update_fileinfo on
    I will post others in some minutes, lets see if we can complete them today :)

    Edit:
    It seems all them are made with GimConvD.exe
     
    Last edited: Mar 16, 2019
    RandomDude likes this.
  4. 377
    203
    72
    RandomDude

    RandomDude Member

    Joined:
    Dec 24, 2018
    Messages:
    377
    Likes Received:
    203
    Trophy Points:
    72
    Gender:
    Male
    I can just add it to the database rn.

    Thanks a LOT btw,
     
    Last edited: Mar 16, 2019
    n00b likes this.
  5. 377
    203
    72
    RandomDude

    RandomDude Member

    Joined:
    Dec 24, 2018
    Messages:
    377
    Likes Received:
    203
    Trophy Points:
    72
    Gender:
    Male
    Wait but shouldn't it be rebuilt with this syntax:
    GimConvD.exe original.gim -o rebuilt.gim -ps3rgba8888

    Instead of:
    gimconvd.exe original.gim -o rebuilt.gim -ps3rgba8888 --update_fileinfo on?
     
  6. 5,456
    5,007
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    5,456
    Likes Received:
    5,007
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    Yes, lets make a recap, i been mentioning before that this GIM-to-GIM process we are using to identify the original GIM settings is like a "bruteforce" where we use a "dictionary"... so our dictionary is composed by 7 entries:
    Code:
    GimConvH.exe original.gim -o try1.gim -ps3rgba8888
    GimConvE.exe original.gim -o try2.gim -ps3rgba8888 --update_fileinfo on
    GimConvD.exe original.gim -o try3.gim -ps3rgba8888 --update_fileinfo on
    GimConvC.exe original.gim -o try4.gim -ps3rgba8888 --update_fileinfo on
    GimConvH.exe original.gim -o try5.gim -ps3dxt5
    GimConvH.exe original.gim -o try6.gim -ps3dxt3
    GimConvH.exe original.gim -o try7.gim -ps3dxt1
    
    *GimConvH.exe is the original version 1.20h released by sony (without any patch applyed to the .exe)
    *GimConvC.exe, GimConvD.exe, and GimConvE.exe are the versions i patched (to allow a perfect match for identification purposes when doing a GIM-to-GIM conversion), are only needed to be used if the original GIM contains the "fileinfo" area, and are only needed for the GIM-to-GIM identification

    To make this in a more efficient way it could be handy to calculate with how much frequency (in percentage) is used every GIM format... im pretty sure the "try1" is the most common (and is going to be over 85%), but right now i dont know how many of the "try1" are inside 4.84 OFW

    Is needed to use a math formula, but you have not mentioned the total number of GIM files inside 4.84 (some thousands, yeah around 3000 or so, but we need to know that exact number to make this calculations)... so instead of using that number im going to write "gim_amount_total" in the formula
    Where...
    *100 is a percentage
    *x is the percentage of usage of "try1" (in this example, this formula needs to be calculated for the others too)

    gim_amount_total = 100%
    try1_number = x%

    So...
    gim_amount_total * x = try1_number * 100

    So...
    x = (try1_number * 100) / gim_amount_total


    --------------
    The point is... to make the "bruteforce" identitification in a more efficient way is better to "try" with the biggest percentages first
     
    Last edited: Mar 16, 2019
    RandomDude likes this.
  7. 5,456
    5,007
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    5,456
    Likes Received:
    5,007
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    Sorry, i guess it confused you because i used the word "rebuilt", but what i meant is you need to try this to identify this GIM type:
    Code:
    GimConvD.exe original.gim -o trythis.gim -ps3rgba8888 --update_fileinfo on
    For rebuilding it you should use this:
    Code:
    GimConvD.exe custom.png -o mod.gim -ps3rgba8888
    Or this (note the only change is the gimconv version c,d,e,f,g,h. For rebuilding purposes the gimconv.exe version doesnt matters because we are not adding the "fileinfo" area:
    Code:
    GimConvE.exe custom.png -o mod.gim -ps3rgba8888
    Otherway, if you use the command below, gimconv.exe is going to add the "fileinfo" area at the bottom of the GIM with the original filename (custom.png in this example), your username in your microsoft operating system (lol, probably nobody wants to do this), and a timestamp of 2019
    Adding all that "fileinfo" about the original filename, your name, and the actual timestamp... it just makes the GIM bigger
    And is pointless because it seems the PS3 ignores it
    Code:
    GimConvD.exe custom.png -o mod.gim -ps3rgba8888 --update_fileinfo on
     
    Last edited: Mar 16, 2019
    RandomDude likes this.
  8. 377
    203
    72
    RandomDude

    RandomDude Member

    Joined:
    Dec 24, 2018
    Messages:
    377
    Likes Received:
    203
    Trophy Points:
    72
    Gender:
    Male
    I've Updated the tool & replaced the download link also.

    Thanks a lot btw. I did it in a bit of hurry for today, Tomorrow I'm going to be retesting it by extracting all the rco's and checking if any gim is remaining.
    I think we built a complete database.
     
    n00b and sandungas like this.
  9. 377
    203
    72
    RandomDude

    RandomDude Member

    Joined:
    Dec 24, 2018
    Messages:
    377
    Likes Received:
    203
    Trophy Points:
    72
    Gender:
    Male
    n00b, Cypher_CG89 and sandungas like this.
  10. 5,456
    5,007
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    5,456
    Likes Received:
    5,007
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    If you want to make an "stress test" (to see if the dictionary of 7 entries is good enought) you can download some old firmwares from this link and see if your tool identifyes all GIM files https://www.psdevwiki.com/ps3/System_Firmware
    Best candidates for the stress test are the firmwares:
    1.02 (because 1.00 is not available in PUP format, it came preinstalled in the first PS3 models only in japan and for a very small amount of PS3 units)
    1.97 (the inmediatly previous to 2.00.... because in 2.00 they made some important changes)
    2.80 (the inmediatly previous to 3.00.... same than above)
    3.74 (the inmediatly previous to 4.00.... same than above)
     
    RandomDude likes this.
  11. 6,718
    7,891
    797
    DeViL303

    DeViL303 Developer PSX-Place Supporter

    Joined:
    Jan 23, 2016
    Messages:
    6,718
    Likes Received:
    7,891
    Trophy Points:
    797
    Occupation:
    Part-Time XMB Modder
    Location:
    Ireland
    Hey, really loving this. if you looking for new features to add.

    How about something like this for drag and drop, create a "dumped" folder and "compiled" folder built in next to the exe, and if you drag a rco to dump button it extracts to "dumped", and drag a rco xml to compile button it compiles to "compiled". Same check box in gui decides if gim to png conversion happens or not.
     
    n00b and RandomDude like this.
  12. 377
    203
    72
    RandomDude

    RandomDude Member

    Joined:
    Dec 24, 2018
    Messages:
    377
    Likes Received:
    203
    Trophy Points:
    72
    Gender:
    Male
    I think an earlier version had that feature. Not sure if it still there or not, will check the source code & update when I possibly can. Thank you for your suggestion.

    Also I think GIM > PNG conversion can be forced as it really is not time consuming after the database update.
    So here's how it's planned, Drag Rco To executable. *Dumps rco content & converts GIM > PNG,* Drag XML to executable, *Converts PNG > GIM first and then compiles the xml.*
     
    DeViL303 likes this.
  13. 6,718
    7,891
    797
    DeViL303

    DeViL303 Developer PSX-Place Supporter

    Joined:
    Jan 23, 2016
    Messages:
    6,718
    Likes Received:
    7,891
    Trophy Points:
    797
    Occupation:
    Part-Time XMB Modder
    Location:
    Ireland
    Nice one. The GUI does not seem to accept any drag and drops now. I can not drag rco into the rco input box, or drag xml into xml input box. This would be handy, to save having to browse to the file.

    And yeah, If its flawless I suppose gim to png could be forced, Im just worried about things outside of the normal, for example, if I have custom rco , with custom images, then they wont be in database, also old rcos from pre-retail will have different images also not in database etc. So I think it would be good to have an option to disable gim>png.
     
    RandomDude likes this.
  14. 377
    203
    72
    RandomDude

    RandomDude Member

    Joined:
    Dec 24, 2018
    Messages:
    377
    Likes Received:
    203
    Trophy Points:
    72
    Gender:
    Male
    I'll work on that, seems like you're doing some heavy mods huh?,

    Also Instead of the gui accepting drag and drops how about just dragging and dropping the rco's in the rcomagemod.exe?, that would be much more convenient right?

    Options would be selected automatically. For ex sounds, Images & resource folder would be selected automatically.

    OR If you just want the dir drag and drop for the GUI I could probably make that today itself. So which one do you choose?
     
    n00b likes this.
  15. 6,718
    7,891
    797
    DeViL303

    DeViL303 Developer PSX-Place Supporter

    Joined:
    Jan 23, 2016
    Messages:
    6,718
    Likes Received:
    7,891
    Trophy Points:
    797
    Occupation:
    Part-Time XMB Modder
    Location:
    Ireland
    Well I do a bit. The drag to exe idea sounds nice, and would be fine alot of the time, but i would rather have control over gim>png.. maybe 2 exes? See my edit above, I dont know. Its just i do add my own images to rcos sometimes, like the impose mod with the ps3 image, and those images wont be in your database, or if i was to add loads of my own images, not from any firmware, then those will lose their settings.
     
    n00b and RandomDude like this.
  16. 377
    203
    72
    RandomDude

    RandomDude Member

    Joined:
    Dec 24, 2018
    Messages:
    377
    Likes Received:
    203
    Trophy Points:
    72
    Gender:
    Male
    I'm not an expert in xml, but I think I can figure out what you're talking about. Like for ex you add a custom image to the xml like
    image src="devil303.png"

    & that would be impossible for the database to read & convert right?. Well the solution is simple. If your custom png setting is -ps3dxt5 or -ps3dxt3,
    Open Up database folder & then open the rco's database which you want to edit and create a new txt file with the same gim name for ex: devil303.txt

    Then open up the database.txt and add the gim name for ex: last line = devil303'sbatteryicon.gim

    Screenshots would provide you a clue.
    (ADDING THE GIM FILE TO DATABASE.TXT)
    Capture123.PNG
    (CREATING THE SETTINGS CATEGORY)
    Capture1234.PNG
    (ADDING THE SETTING)
    Capture12345.PNG

    After doing all this you can convert your rco's with custom Images from png>gim option.
     
    Last edited: Mar 23, 2019
    n00b and DeViL303 like this.
  17. 6,718
    7,891
    797
    DeViL303

    DeViL303 Developer PSX-Place Supporter

    Joined:
    Jan 23, 2016
    Messages:
    6,718
    Likes Received:
    7,891
    Trophy Points:
    797
    Occupation:
    Part-Time XMB Modder
    Location:
    Ireland
    Yes, i already figured out how to do that for my impose mod, but its not very user friendly is all. I can and dont mind doing that though.
     
    n00b and RandomDude like this.
  18. 377
    203
    72
    RandomDude

    RandomDude Member

    Joined:
    Dec 24, 2018
    Messages:
    377
    Likes Received:
    203
    Trophy Points:
    72
    Gender:
    Male
    I realized that, it would also conflict if using some other rco file (ex: original one)
    Currently making the drag and drop update
     
    Last edited: Mar 23, 2019
    n00b and DeViL303 like this.
  19. 6,718
    7,891
    797
    DeViL303

    DeViL303 Developer PSX-Place Supporter

    Joined:
    Jan 23, 2016
    Messages:
    6,718
    Likes Received:
    7,891
    Trophy Points:
    797
    Occupation:
    Part-Time XMB Modder
    Location:
    Ireland
    Nice one on the drag and drop.


    I am planning to add about 240 icons to explore full rco soon for my new project. So anything this can do to make that easier is cool.

    How about making it so i can just drag the pngs onto the rco, and it will automatically convert them, and add them to xml and repack rco (jk) :-p
     
    n00b likes this.
  20. 377
    203
    72
    RandomDude

    RandomDude Member

    Joined:
    Dec 24, 2018
    Messages:
    377
    Likes Received:
    203
    Trophy Points:
    72
    Gender:
    Male
    I mean that is 100% possible if it didn't match the database for ex a custom gim one not equals to any of the rco gim then automatically convert it with a specific setting (ex: -ps3dxt5)

    Do all your custom png's use the same setting? if so that's definitely possible & without any error/white boxes.
     
    n00b and DeViL303 like this.

Share This Page