GithubHelp home page GithubHelp logo

isabella232 / spioptw Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gocha/spioptw

0.0 0.0 0.0 23 KB

Susie plugin for OPTWORKS games

License: GNU Lesser General Public License v3.0

C 100.00%

spioptw's Introduction

Susie plugin for OPTWORKS games (spioptw)

AppVeyor Build Status

spioptw is a Susie plugin package for OPTWORKS games (NC-17).

  • ifhmp.spi: Decoder plugin for HMP image format (16-bit color image)
  • ifpmp.spi: Decoder plugin for PMP image format (24-bit color image)

I'm not sure whether the plugins support all available OPTWORKS games, since I don't know about the game itself too much. I analyzed the format just by request.

What is Susie plugin?

Susie is an old-school picture viewer for Windows, which can load additional formats by adding Susie plugins (*.spi). In Japan, Susie plugin is often used for decoding custom image formats inside a game.

There are several picture viewers that supports Susie plugin. For example:

My favorite is Linar for browsing, and AtoB Converter for batch conversion.

Note

  • Any use of the software is entirely at your own risk.

File Format

There are two formats as you know, HMP and PMP. HMP is a 16-bit color image, and PMP is a 24-bit color image. Both they are similar to Windows Bitmap format, but they have a small compression mechanism.

The image formats are constituted by a file header, a compressed bitmap, and a flagmap which indicates how to decompress the bitmap. File header structure is very simple. See the Susie plugin's header file for details.

The bitmap of HMP is compressed by RLE. The flagmap indicates the data length and what color to use for decompression.

PMP image has three bitmaps which correspond to each RGB element. Also, there are three flagmaps which correspond to each bitmaps. The bitmap/flagmap can be separated into two areas. The first part is for upper 4 bits of RGB, and the second one is for lower 4 bits. I think the compression is a sort of delta encoding.

It was a good tutorial for me, a newbie researcher.

spioptw's People

Contributors

gocha avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.