Skip to content

File formats

pumpkin edited this page Sep 17, 2024 · 2 revisions

Each format's official name is unknown, guessed based on the file extension or contents and subject to speculation. They are only here to give a better understanding of what each file format does.

BP: BeXide Package

BP is a proprietary archive format used in many PSP/PS3 games developed by BeXide, Inc. A BP file usually contains many BPM files, and within them most of the game's assets such as GIM textures, KSC scripts and DVS models. BP files do not use any compression or encryption and files can easily be searched or replaced with little complexity.

Doko Demo Issyo PSP contains one .BP file at /USRDIR/data/DATA.BP with most of the game's data inside it. Files can be extracted or inserted using bpar (Unix) or bextract (Python).

BPM: BeXide Package Module

BPMs are smaller archives inside of a BP file that actually contain the game's assets, like a .zip file inside of a bigger .zip file. BPM files are named and separated based on the content they contain, and can contain multiple folders or directories.

You can usually extract these the same way as a BP using bpar or bextract, and the bpm-extract.sh script automatically does this for you so you don't even have to think about BPMs unless you only want to extract certain files.

KSC: K Script Compiled

Binary pointer information (not figured out yet) and most of the dialogue appearing in Pokepi speech bubbles. NEKO.KSC for Toro, USAGI.KSC for Jun, ROBO.KSC for R. Suzuki, INU.KSC for Pierre and KAERU.KSC for Ricky.

Text can be extracted using ksctool (Perl), Cartographer (Windows), or --mode bin2text in abcde, but these tools may dump text incorrectly and most text extraction is done by manually searching for text in a Hex Editor. The recommended Hex Editor is Hexinator set to Shift-JIS encoding - most other Hex Editors I've tried do not support this encoding properly and will display garbage text.

Text can be re-inserted by creating an Atlas script and running it with Atlas or abcde set to --mode text2bin.

DIC: Word Dictionary

A hard-coded list of words used to fill in a variable in the KSC text when a Pokepi does not know enough custom words taught by the player. May also be used for the word suggestion box above the word input keypad (all in Japanese though). Edited with Atlas, abcde or a Hex Editor like KSC files.

GIM: Generic Image

Common image format used in PlayStation games. Can be converted to and from other common formats like .png using GimConv.

GimConv.exe FILE.GIM -o FILE.png

DVS: 3D Model

It is not known how to open these outside of the game.

DAK: 3D Animation

Mostly used by Pokepi character models. It is not known how to open these outside of the game.

SGD: Sound Game Data

Contents of the /USRDIR/data/sound/ folders. It is not known how to open these outside of the game.

PRX: PlayStation Runtime Library

Contents of the /USRDIR/prx/ folder are binary code files probably used in other PlayStation games. They are referenced in BOOT.BIN and mostly contain code for the audio engine and ad-hoc networking.