Newest Hacks

Sonic Genesis Mega Woman Aaahh!!! Real Monsters Improvement Mod Final Fantasy VI Expanded

Newest Translations

Power Soccer Alundra The Legend of Zelda: Spirit Tracks Eternal Legend

Newest Reviews

Sonic Genesis Sonic Genesis Pokemon Patched Crystal River City Girls... of Rage

Featured Hack Images

Clipdata Hack Castlevania - Skels Revenge Sirius Mario Bros. 4 Cobra of the Sky

Featured Translation Images

U-four-ia: The Saga Galaxian Musashi no Ken: Tadaima Shugyou Chuu Yu Yu Hakusho: Tournament Tactics

Recent Updates

  • Hacks
    Updating screenshots to reflect current build.
  • Hacks
    A certain user pointed out that the graphics are garbled when applying a patch using by online patcher. I confirmed the same issue a while ago. I never used the online patcher before, so I didn't notice that. I was able to play without any problems with the file download method. I don't know the cause of the issue, but I decided to upload the IPS file again.
  • Hacks
    Small dialogue change
  • Hacks
    Resubmission of prior changes
  • Hacks
    I remove some sentences to let it describe the hack is all about and not pander to woke western political statements

Description:

Rainbow is a tool, written in C#, intended to handle different graphics formats from video games assets.

Currently, Rainbow supports almost every variant of the TIM2 format and some game specific formats (see the Feature section below).

It requires the .NET framework v3.5+ or any version of mono supporting v3.5 (tested on mono 2.10.x).

Download latest dev build from http://github.com/marco-calautti/Rainbow.

If you want to contact me: marco.calautti [at] gmail [.] com. For bug/issues reports, please use the github page.

Features

The tool currently supports TIM2, TX48 (Super Robot Wars MX P) and DAT (generic extension for textures found in The 3rd Birthday) textures

  • Can open textures in any format supported by the underlying image library.
  • Can open whole folders in search of supported texture formats. All known texture files are then displayed in a list.
  • Can export textures to an editable format (like png).
  • Can import editable formats to be then saved to the original texture format.
  • Any additional information specific to the texture is preserved when exporting/importing (like the TIM2 header data), in order to have a one-to-one correspondence with the original texture.
  • Customizable background color for transparent and semi-transparent images with chessboard like pattern.
  • Finally, Rainbow supports parameters via command line: the first parameter is the name of a texture you would like to open.

TIM2 support is almost complete. The app supports multi-layer, multi-clut, swizzled (PSP)/unswizzled TIM2 images with both linear, interleaved palettes, and segments headers eventually extended with custom user data (usually used by programmers).

How to use Rainbow

  • Use the “Open” menu to open any supported texture (currently TIM2).
  • Use the property grid on the left side to change some texture parameters (like swizzle).
  • The “Export” menu allows to save textures to a user editable format, like png.
  • The “Import” menu allows to import graphics in user editable format so that they can eventually be saved to the original format by means of the “Save” menu.
  • The “Save” menu allows to save a texture to its original format (e.g., to TIM2).

Note for multi clut TIM2 images. When importing a png obtained by a single-clut TIM2 file, Rainbow will take care of everything for you by applying quantization to the given png, in order to keep the number of used colors under the maximum allowed by the original TIM2. When a multi-clut TIM2 is exported, instead, a png file for each clut is created. When editing such pngs, make sure that the pixel “structure” of every png is preserved. Rainbow will use the first exported png as reference to construct the pixels indexes of the image and then will create the palettes from each pngs’ colors. Make also sure that the number of colors used by these pngs does not exceed the maximum allowed by the original TIM2. Because of how multi-clut TIM2s work, Rainbow cannot apply quantization to all the exported pngs.

To-do

  • Add support to mipmap TIM2 textures. They are rare and usually used just for materials.
  • Add support to GIM textures (eventually through GimSharp).
  • Add scanning of textures inside other files in order to extract and reinsert textures with one click. Actually, there is a tool from Vash that allows to achieve such a task http://www.romhacking.net/utilities/659/.
  • Improve performance of rendering and import code.

The GitHub repository at http://github.com/marco-calautti/Rainbow contains the complete source code the latest development build and more information on how to use Rainbow.

Links:

User Review Information
No User Reviews!