Please login or register.

Login with username, password and session length
Advanced search  

News:

Use of ePSXe before 2.0 is highly discouraged. Mednafen/RetroArch is recommended for playing/testing, pSX is recommended for debugging.

Managing sprite file size...  (Read 215 times)
Pages: [1]
Modding: PSX & WotL
Ildon [Posts: 11]
  • View Profile
  • share
  • [September 26, 2017, 12:44:45 PM]
Managing sprite file size...
« on: September 26, 2017, 12:44:45 PM »
What are the best methods for cutting down on the file size of sprites? 

Currently all that is left for my mod is to do two sprite replacements, one unit.bin/wldface.bin edit and finish beta testing. 


P.S. Thank you for your time.

    • Modding version: PSX & WotL
  • Yeap...
    Nyzer [Posts: 679]
    • View Profile
    • share
    • [September 26, 2017, 03:42:53 PM]
    Re: Managing sprite file size...
    « Reply #1 on: September 26, 2017, 03:42:53 PM »
    This is why you should be setting your profile to show your modding preference - sprite size isn't an issue in the PSX version, which is the version most people are familiar with and most tools work best with. As a general rule of thumb, if you want WotL help you should specify that you're modding WotL.

    • Modding version: PSX & WotL
  • Modding: PSX & WotL
    Ildon [Posts: 11]
    • View Profile
    • share
    • [September 27, 2017, 02:11:23 AM]
    Re: Managing sprite file size...
    « Reply #2 on: September 27, 2017, 02:11:23 AM »
    I actually did set which version I am modding.  It's both Wotl and the PSX versions.  I am not certain why it did not display that information at the end of my post.  It has displayed it in the past. 

    For the PSX version obviously you just expand the ISO and then you wont run into size issues. 

    For Wotl you can use shishi v.352 and bypass the size limit and then cause all sorts of graphical errors.  Which of course defeats the purpose of bypassing the limit because the end result is garbage.  So until the pipe dream of expanding the limits for Wotl comes true the only option is to manage the file sizes of sprite sheets. 

    The only things that I've found as viable means to manage file size so far are is altering the number of palette sets and how much of the sprite sheet is used/empty.  If there are three different palettes for the battle sprite/portrait then the file size will be greater than if there was only one for each.  Also, to To cut down on how much of the sprite sheet is used can really only be accomplished by strategically trimming down the battle sprites to avoid creating a hideous mess.  Was mistaken this does essentially nothing.  I should probably stop trying to figure this out when half asleep.

    Edit: I just double checked and my profile shows that I have PSX and WotL checked.  If you have something checked in your profile it did not display on your post.  I guess I'll just add something to personal text. 
    « Last Edit: September 27, 2017, 03:54:55 AM by Ildon »
    • Modding version: PSX & WotL
  • Yeap...
    French Maid
    Xifanie (Webmistress) [Posts: 4248]
    • View Profile
    • Final Fantasy Hacktics
    • http://steamcommunity.com/id/Xifanie
    • share
    • [September 27, 2017, 03:07:52 AM]
    Re: Managing sprite file size...
    « Reply #3 on: September 27, 2017, 03:07:52 AM »
    See, that doesn't make any sense because the palette and the first 256x256 of a sprite are not compressed. Only rows 257 to 488 are.

    • Modding version: PSX
  • <R999> My target market is not FFT mod players
    <Raijinili> remember that? it was awful
    Modding: PSX & WotL
    Ildon [Posts: 11]
    • View Profile
    • share
    • [September 27, 2017, 03:34:42 AM]
    Re: Managing sprite file size...
    « Reply #4 on: September 27, 2017, 03:34:42 AM »
    Well maybe more information is better than less... 

    Currently my goal is to finish minor sprite replacements in WotL.  Specifically replace 13 - Simon, max spr size of 47104 bytes, with a White Chocobo sprite, current size of 49572 bytes. 

    I'd like to copy the sprite for Simon over an unused sprite, but for the time being I copied him over a sprite that is only used once. 

    So this leads me back to the subject of this thread...  What are my options for managing the size of character sprite sheets in .bmp format?

    • Modding version: PSX & WotL
  • Yeap...
    French Maid
    Xifanie (Webmistress) [Posts: 4248]
    • View Profile
    • Final Fantasy Hacktics
    • http://steamcommunity.com/id/Xifanie
    • share
    • [September 27, 2017, 02:27:10 PM]
    Re: Managing sprite file size...
    « Reply #5 on: September 27, 2017, 02:27:10 PM »
    Well, you could cut out a substantial amount of the lower section of the spritesheet (less to compress = smaller filesize), or if you're going with a white chocobo, you could just create a job with the chocobo sprite ID with the 4th palette. Of course I don't know how that would look for the UNIT.BIN sprite and WLDFACE.BIN portrait other than ugly glitchy looking palettes at least. This might only work with another generic monster job though, which would cause issues with the whole breeding monsters thing unless you replaced like, archaic/ultima demon I guess.

    • Modding version: PSX
  • <R999> My target market is not FFT mod players
    <Raijinili> remember that? it was awful
    Nyzer [Posts: 679]
    • View Profile
    • share
    • [September 27, 2017, 03:20:41 PM]
    Re: Managing sprite file size...
    « Reply #6 on: September 27, 2017, 03:20:41 PM »
    Looks like it will show if you have a signature or edit your post. That's... an odd way for it to go.  :|

    • Modding version: PSX & WotL
  • Modding: PSX & WotL
    Ildon [Posts: 11]
    • View Profile
    • share
    • [September 27, 2017, 03:49:58 PM]
    Re: Managing sprite file size...
    « Reply #7 on: September 27, 2017, 03:49:58 PM »
    If I add a fourth palette to the chocobo sprite sheet it will import fine with shishi.  If I set elder to
    M. Portrait: 86
    M. Palette : 4
    M. Graphic : 1
    Then the unit looks fine in combat so long as I set the sprite set to generic monster.  If I set the sprite set to 13 (Simon) then they'll look like Simon, which means I wouldn't have to do any ENTD edits to prevent Simon from appearing wonky in game (at least in theory)... 

    Since I am replacing the elder job class with a unique white chocobo class it should not function as a mount or breed.  If it somehow magically breeds I will be befuddled tbh. 

    However, the UNIT.BIN sprite and WLDFACE.BIN portrait are essentially a glitchy red chocobo sprite and a blank portrait. 

    I am uncertain if there is a way to add a fourth palette set to fix the UNIT.BIN sprite and WLDFACE.BIN portrait.  Since both of the images only had one palette when I extracted the images to edit them. 

    At this point I'll likely just have to trim down a chocobo and try not to make it appear as though it is suffering from serious mange or FF VII style inbreeding.  After that It will be move the Simon sprite over something else and make appropriate ENTD edits.  I'm not certain what will happen in Ch. 3 when the he shows up after the Wiegraf scene.  The ENTD entry for that should be 129 from what I can tell, but there is no entry for Simon there. 

    Edit: Well it would appear that each pixel removed from rows 257 to 488 reduces file size by 1 byte.  Now to somehow remove approx. 2,468 pixels without destroying the sprite completely...

    Edit 2: Approx. 500 pixels could be removed before destroying the sprite...  So bad solution it is until the pipe dream of expanding the file size limits comes true or I learn of a way to fix the UNIT.BIN sprite and WLDFACE.BIN portrait when setting the class to use palette four of the chocobo battle sprite. 
    « Last Edit: September 28, 2017, 02:36:04 PM by Ildon »
    • Modding version: PSX & WotL
  • Yeap...
    Modding: PSX & WotL
    Ildon [Posts: 11]
    • View Profile
    • share
    • [October 03, 2017, 08:22:44 PM]
    Re: Managing sprite file size...
    « Reply #8 on: October 03, 2017, 08:22:44 PM »
    Well on the bright side I believe that I figured out a work around that creates a properly functioning unique white chocobo class with correct formation portrait and sprite as well as battle sprite/portrait.  So unless something comes up in future beta testing that ordeal is behind me. 

    • Modding version: PSX & WotL
  • Yeap...
    Nyzer [Posts: 679]
    • View Profile
    • share
    • [October 04, 2017, 01:20:19 AM]
    Re: Managing sprite file size...
    « Reply #9 on: October 04, 2017, 01:20:19 AM »
    For the sake of anyone who might come searching with a similar problem later, mind explaining what the workaround was?

    • Modding version: PSX & WotL
  • Modding: PSX & WotL
    Ildon [Posts: 11]
    • View Profile
    • share
    • [October 04, 2017, 11:45:29 AM]
    Re: Managing sprite file size...
    « Reply #10 on: October 04, 2017, 11:45:29 AM »
    Sure. 

    So essentially the chocobo sprite sheet has the largest file size of all the character sprite sheets.  As such without being able to expand the file size limits for the psp version you have two options for creating a recruitable unique chocobo. 

    Option 1:  Cut down on the number of used pixels in rows 257 to 488 to reduce file size.  You can somewhat easily remove 500-700 without butchering the sprites horribly which gets you nowhere near where you need to be to substitute in the new chocobo sprite sheet unless you choose to overwrite one of the larger Lucavi sprite sheets. 

    Then you will be forced to modify said Lucavi sprite sheet so that it can replace something like the funeral priest.  This of course causes a Lucavi cameo unless you modify events that use the replaced sprite.  You will also have to modify the ENTD and jobs sections So that the chosen Lucavi will use the modified sprite that you swapped in. 

    Option 2:  Essentially... you gut the red chocobo.  You replace the palettes for the red chocobo with the ones for a white chocobo.  This of course means that you will want to modify the job name for the red chocobo since it is no longer red.  Then you set your unique monster class to have the same M. Portait, M. Palette, and M. Graphic info as the red chocobo class. 



    In either case you will have to modify at least one UNIT.BIN sprite and WLDFACE.BIN portrait. 


    Extra info:
    For non-recruitable chocobos simply use palettes beyond the third since you will not have to worry about formation sprites or portraits. 

    From my experience if you want to create a functional/unique/recruitable monster class for the psp version it is easiest to replace a Lucavi class that has a formation sprite/portrait then clone the Lucavi class over one of the unused classes.  As always make sure to update the ENTD, UNIT.BIN, and WLDFACE.BIN accordingly. 


    • Modding version: PSX & WotL
  • Yeap...
    Pages: [1]