3dstools

From Pikmin Technical Knowledge Base
Jump to navigation Jump to search

3dstools is a suite of tools that convert or extract common Nintendo 3DS files. It can operate on some of Hey! Pikmin's files.

They are Python tools, and there are 4 of them in total:

  • bffnt.py: Extracts, edits and re-creates fonts. Can export them to PNG. Does not work with Hey! Pikmin's fonts.
  • bflim.py: Converts BFLIM textures to and from PNG format. Works with Hey! Pikmin.
  • msbt.py: Converts string files into a JSON format. Untested with Hey! Pikmin.
  • sarc.py: Extracts and compresses ARC files. Works with Hey! Pikmin, but does not understand file types, so EveryFileExplorer is recommended.

Download[edit]

Use[edit]

You will need Python to run these tools. You will also need pypng to run bffnt and bflim, which you can either obtain here, or install through pip. Other dependencies can be found in the GBAtemp thread.

Each tool has its own way to run, so run the tool you want without parameters to get information on how to run it properly.

An example on how to convert a BFLIM image into a PNG:

python C:\Users\A\3dstools\bflim.py -x "C:\Users\A\Hey! Pikmin files\Extracted stuff\0xB76849F7.bflim"

Scripts[edit]

Main article: General instructions#Scripts

BFLIM to PNG[edit]

Linux
full_file_name=$(realpath "$1")
cd "$(dirname "$full_file_name")"
python <path to bflim.py> -x "$full_file_name"

Extract Hey! Pikmin ARC[edit]

Linux
full_file_name=$(realpath "$1")
cd "$(dirname "$full_file_name")"
python <path to sarc.py> -xf "$full_file_name"