News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: Utilities: Visual SAK: Visual Swiss Army Knife  (Read 1828 times)

RHDNBot

  • Guest
Utilities: Visual SAK: Visual Swiss Army Knife
« on: April 20, 2018, 10:40:11 pm »

Update By: Squall_FF8

Visual SAK: Visual Swiss Army Knife

A new tool developed that will be more like the real Swiss Army Knife - a toolbox in one package, easy to use, does few things but do them with precision!
The toolbox will is focusing on ripping of visuals from different ROM - Sprites, Graphics, Palettes, Tiles, ... but not casual ripping rather - finding, documenting, exporting and importing.

Main Features:
- Mapping of graphics
- Naming of graphic objects
- Saving all findings as a document/project for easy reuse
- Multiple BPP format
- Multiple compression formats
- Exporting of graphic objects in PNG
- easy to manipulate attributes to find out desired graphic (Width, Height, Offset)
- customizable palette for displaying a graphic with the correct colors

Highlights:
- Many, many BPP formats and constantly increasing. 1/2/3/4/8 BPP in the specific for SNES interwoven bit-planes format. Mode 7 specific format. Even normal bitmap format that every contemporary PC uses. GBA formats. The list may increase on request from users.
- Different compression methods. Currently implemented are Final Fantasy V/VI and Chrono Trigger compression methods for SNES. Popular GBA LZ77 with tag 10 (aka LZ77-10)
- Flexible palette manipulation. Options to read it from ROM address, from ZSNES save-state file, manipulating individual entries, fast access to predefined monochrome palettes.
- Maximum precision in interpolating ROM's colors to contemporary hardware. For example many tools even editors (like YY-CHR) loose precision in color mapping. For example pure White 31,31,31 is usually mapped to 248, 248, 248. This tool will map it to 255,255,255.

RHDN Project Page

Relevant Link

bogaabogaa

  • Jr. Member
  • **
  • Posts: 71
    • View Profile
Re: Utilities: Visual SAK: Visual Swiss Army Knife
« Reply #1 on: April 23, 2018, 06:42:38 pm »
I do like your tool so far. Do you plan to add more functions in the future? I think it is missing something to scroll through a ROM like yy-chr,tilemolester,tilelayer pro.. have. It is also hard to tell what tool does what right/different. I also like how you are able to save your work and sharing it to others wish other tools had it done as well as you did here. Makes me wish there would be import from PNG function too. I know easier said then done. Guess it is not as easy to interpret from a PNG to different bpp formats and there are some tool that do that very well.

Thanks for your work

Squall_FF8

  • Full Member
  • ***
  • Posts: 198
    • View Profile
Re: Utilities: Visual SAK: Visual Swiss Army Knife
« Reply #2 on: April 24, 2018, 01:17:01 pm »
Thank you bogaabogaa, for trying the tool and taking time to share your experience!

In a sense it is a new tool, and I have plans to add many features, include features asked by community. So if you have ideas, please share, I listen well and most likely will be implemented. Very soon I will realize version 3.2 with main focus on Palette operations - there will be import/export to Photoshop .aco, .act. I'm also think about GIMP's .gpl ... I want to have import/export to at least one commercial software and at least one made by the community (ZSNES save state).

I think it is missing something to scroll through a ROM like yy-chr,tilemolester,tilelayer pro.. have. It is also hard to tell what tool does what right/different.
Yes that is another feature I will do. Initially I thought its not necessary but the more I'm using the tool the more I need it :laugh:
Pretty much each button has a hint. I tried to get icons that easily associate with the action, but I'm not an artist, so every suggestion to change is very welcome  :thumbsup:

Quote
I also like how you are able to save your work and sharing it to others wish other tools had it done as well as you did here.
Thank you! Saving your work for easy reuse/share/continuation and naming graphics object were the must feature from the start.

Quote
Makes me wish there would be import from PNG function too. I know easier said then done. Guess it is not as easy to interpret from a PNG to different bpp formats and there are some tool that do that very well.
Converting to different BPP is not a problem. The problem is that the new content that come from the PNG can exceed the amount of replaced graphics has. And that is where things get rough. You must have specific knowledge for the game. There must be free space in the ROM. You must re-index the tables that point to it.

SleepyFist

  • Hero Member
  • *****
  • Posts: 770
    • View Profile
Re: Utilities: Visual SAK: Visual Swiss Army Knife
« Reply #3 on: April 28, 2018, 03:20:39 pm »
Nice, looks like exactly what I need,
just a question? Can this automatically recognize 1bpp images(pre-extracted)?

I'm using Tile Molester right now and it is a royal pain in the ass to go through and repeatedly toggle 1bpp interleaved every single time I go to mess around with my font graphics.
Sleepy's Album of the week|| High Pulp - Bad Juice|| https://youtu.be/6V-BtwkGoaY

Squall_FF8

  • Full Member
  • ***
  • Posts: 198
    • View Profile
Re: Utilities: Visual SAK: Visual Swiss Army Knife
« Reply #4 on: April 30, 2018, 03:28:48 am »
Hi @SleepyFist, I'm glad you like the tool.

Quote
just a question? Can this automatically recognize 1bpp images(pre-extracted)?
I'm not sure what you imply with 'automatically'. You need to provide an address and choose 1bpp format. But it cannot recognize that the date at the provided address is 1bpp.

I'm still experimenting but if I get stable results in 3.2 there will be no need to select the bpp with every new image. It will work similar with the others attributes - for every new image it will apply the last used. Also there will be a new feature to add 'Next' image without any input (address or bpp) - a feature that many people requested and will be close to 'automatic' :)