PalMod: Importing Sprites from Fighter Factory

Howdy! I hope you're finding PalMod useful. This is a quick (and now simpler!) guide to generating RAW or PNG files that can be used by PalMod for sprite preview display. PalMod has many sprites built in already, but importing SFF files is an easy way to expand PalMod's coverage. MUGEN enthusiasts in particular have created a ton of excellent Fighter Factory files over the years: looking into those can find you a ton of great sprites.

Tools You Need For This

Fighter Factory Studio
A MUGEN tool for sprite editing.
PalMod
PalMod itself: a tool used to modify palettes in game ROMs or files.

For this example I am using the main sprite for Midler from the game Jojo's Heritage Fight for the Future (ROM 51 / Characters), but the process works with anything. In the example here, these are contained within the MidlerPreview.SFF file.

How To

  1. Find the SFF (Sprite Sheet File for Fighter Factory) that you want to use. Many communities will already have collections available.
  2. Load the game within PalMod.
    1. Go to the palette that you want to generate a (new) preview for.
    2. Use PalMod's Tools : Mapping Palette : "Use, Step By 1" option. USE THIS NOT OTHER ACTs! Using PalMod's Mapping Palette tool is superior to other ACTs because PalMod will generate the mapping table using the color space (such as RGB555 here for Jojo's on CPS3 hardware) intended for the game. Other ACTs will contain colors not "legal" (possible) on that game hardware and will cause image data loss. The Mapping Palette tool is easy and works well.
      create the mapping palette
    3. Go to PalMod's Tools : Save Palette option and save out the current mapping palette to an ACT file.
      export the mapping palette
    4. Keep PalMod open because we're going to be using it again, but we're now ready to use Fighter Factory.
  3. Open Fighter Factory Studio.
    1. Go to the Project menu and select "Open single file...". Open up the SFF file you want to use. (Again, I am using MidlerPreview.SFF for this example, but anything works.)
    2. Advance the Sprites bar on the left so that the Sprite you want to import to PalMod is being shown. (In this example am just using Sprite 1 of 10, the main preview, so haven't changed that.)
    3. The color table / palette for that SFF should now be visible on the right: that should match the palette normally shown for that sprite in PalMod, just upside-down.
      starting point
    4. Update the palette used by going to the Palettes menu and choosing "Change...". Then load the ACT you just exported from PalMod.
      change the palette midler mapped
    5. Now go to the Sprites menu and choose "Save image...". Use this to export the image as a PNG file.
      change the palette
    6. Optional: For SFFs that contain multiple sprites on the left in the "Sprites" tab it will show "1/10" (or something like that) with an option to move a slider to change sprites. You may want to repeat these steps for every sprite within the SFF that you want to use in PalMod.
    7. You now have the SFF as an indexed PNG that uses that special PalMod color table. However, Fighter Factory imports color tables upside down because fuck you that's why. :'( We'll fix that in the next step.
  4. Go back to PalMod
    1. Go to PalMod's Preview window. In the File menu there use the "Load Texture" setting to load the PNG you just saved from Fighter Factory. Because Fighter Factory is using upside-down color tables, we need to specially load this PNG. Use the new "PNG (force as non-indexed)" option. That tells PalMod to throw out the upside-down color table and instead remap the PNG image data to the currently loaded color table.
      load texture
      replaced preview
    2. Now, presuming you have followed the steps: simply press CTRL+Z (or Edit : Undo) in PalMod! That will revert the mapped palette back to the original palette, so that the preview now uses your new preview and the normal palette:
      ta-da
      (If you didn't follow the steps, you can also just export the preview out from PalMod as an indexed PNG or RAW - once you have that it can be combined with the normal palette to produce a perfect looking preview.)
    3. You can now export the loaded preview using PalMod's Preview : File : Export Image for reuse later. Either Indexed PNG or RAW is a great storage method. Everything else is pretty bad.
  5. If everything checks out here, consider submitting the indexed PNG or RAW to the PalMod team for integration so that others can benefit from your work. We're always happy to have improved sprite preview coverage for games.