Skip to main content

PyLibMS

Python Versions LICENSE PyPI version Tests

PyLibMS is a library built in Python 3.11 and above for reading and writing of revision >=3 of the libMessageStudio (LMS) proprietary file formats from Nintendo. These include files generated for late Wii titles, Nintendo 3DS, Wii U, Mobile, Nintendo Switch and Nintendo Switch 2 games.

The following is supported:

Format Read Write Support
MSBT ✅ ✅ 1:1 Reading and writing. Support for majority of sections. Full attribute (ATR1) decoding with configurations. Tag decoding 1:1 with the official Nintendo .mstxt file format.
UMSBT ✅ ✅ 1:1 Reading and writing. Accessing, adding, inserting and deleting MSBT files within UMSBT archives.
MSBF ✅ ✅ 1:1 Reading and writing flowcharts (FLW3). Support for custom node definitions, attaching names and descriptions to nodes. Altering parameter datatypes for flexibility between games.
MSBP ✅ ❌ Viewing all MSBP relevant metadata and generating configuration files for use with MSBT files.

Documentation

PyLibMS documentation is on readthedocs. A simple preview is below:

Reading

# MSBT
from lms.message.msbtio import read_msbt_path

msbt = read_msbt_path("Text.msbt")

# UMSBT
from lms.message.umsbtio import read_umsbt_path

umsbt = read_umsbt_path("TextU.umsbt")

# MSBP
from lms.project.msbpread import read_msbp_path

msbp = read_msbp_path("Project.msbp")

# MSBF
from lms.flowchart.msbfio import read_msbf_path

msbf = read_msbf_path("Flowchart.msbf")

Writing

# MSBT
from lms.message.msbtio import write_msbt_path

write_msbt_path("Out_text.msbt")

# UMSBT
from lms.message.umsbtio import write_umsbt_path

write_umsbt_path("Out_textu.umsbt")

# MSBF
from lms.flowchart.msbfio import write_msbf_path

write_msbf_path("Out_Flowchart.msbf")

Adding/Editing Presets

To add or edit Preset, you may create an issue with the relevant yaml file and the game it is for.

Installation

Python version must be `>=3.11.

pip install PyLibMS

Pip Page

Build Instructions

Clone the repository, then run pip install.

git clone https://github.com/AbdyyEee/PylibMS.git
cd PyLibMS
pip install -e .

AI Disclaimer

PyLibMS and its code is handwritten, developed and maintained by abdyyeee.

AI was occasionally consulted for minor implementation references during the development of MSBT, USMBT and MSBF. No AI was utilized for MSBP. Any references were reviewed and tested beforehand, and no code was ever directly pasted from any generative source.

The development of unit-tests were AI assisted.

Credits & Sources

  • SS-Decomp: Referenced some parts of their MSBF decomp when adding the format to Nintendo-File-Formats and this library.
  • Nintendo-File-Formats by Kinnay: For existing information on the MSBT and MSBP file formats.
  • Trippixyz: For helping me get started general decompilation of the formats and general help.
  • AeonSake: Inspiration for UMSBT implementation and other bits of the library.

Metadata

Release files for PyLibMS 5.0.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for PyLibMS 5.0.7
File Size Uploaded
pylibms-5.0.7.tar.gz 44.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for PyLibMS 5.0.7
File Interpreter ABI Platform
pylibms-5.0.7-py3-none-any.whl Python 3 none any Details

Total release size: 106.8 kB

Release files / pylibms-5.0.7.tar.gz

Download URL pylibms-5.0.7.tar.gz
Size 44.2 kB
Tags Source
SHA-256 checksum
How to use checksums
765c506ef56af13647a8cb371b9607db28c7d0cf463f8d2c7c9bed17a380649a
BLAKE2b-256 checksum
How to use checksums
4ee37107ca687c237ebd3eba863afbdc545df1a388f6290e76c58cd667a8e46a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log

Release files / pylibms-5.0.7-py3-none-any.whl

Download URL pylibms-5.0.7-py3-none-any.whl
Size 62.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
201de6cac1f898f89021aa6b827ca8d38ae72598205436208ed52e5779c09cf3
BLAKE2b-256 checksum
How to use checksums
d70c250f6c0f46eaa8c47d681f947d3a5b2318833d384ff9fa6abfbc96f99d18
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

5.0.7 This release

2 release files

5.0.6

2 release files

5.0.5

2 release files

5.0.4

2 release files

5.0.3

2 release files

5.0.2

2 release files

5.0.1

2 release files

5.0.0

2 release files

4.3.4

2 release files

4.3.3

2 release files

4.3.2

2 release files

4.3.1

2 release files

4.3.0

2 release files

4.2.5

2 release files

4.2.4

2 release files

4.2.3

2 release files

4.2.2

2 release files

4.2.1

2 release files

4.2.0

2 release files

4.1.7

2 release files

4.1.6

2 release files

4.1.5

2 release files

4.1.4

2 release files

4.1.3

2 release files

4.1.2

2 release files

4.1.1

2 release files

4.1.0

2 release files

4.0.4

2 release files

4.0.3

2 release files

4.0.2

2 release files

4.0.1

2 release files

4.0.0

2 release files

3.3.9

2 release files

3.3.8

2 release files

3.3.7

2 release files

3.3.5

2 release files

3.3.4

2 release files

3.3.3

2 release files

3.3.2

2 release files

3.3.1

2 release files

3.3

2 release files

3.2.6

2 release files

3.2.5

2 release files

3.2.4

2 release files

3.2.3

2 release files

3.2.2

2 release files

3.2.1

2 release files

3.2.0

2 release files

3.1.8

2 release files

3.1.7

2 release files

3.1.6

2 release files

3.1.5

2 release files

3.1.4

2 release files

3.1.3

2 release files

3.1.2

2 release files

3.1.1

2 release files

3.0.9

2 release files

3.0.8

2 release files

3.0.7

2 release files

3.0.6

2 release files

3.0.5

2 release files

3.0.4

2 release files

3.0.3

2 release files

3.0.2

2 release files

3.0.1

2 release files

2.1.4

2 release files

2.1.3

2 release files

2.1.2

2 release files

2.1.1

2 release files

2.1.0

2 release files

2.0.9

2 release files

2.0.8

2 release files

2.0.7

2 release files

2.0.6

2 release files

2.0.5

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

0.7.4

1 release file

0.7.3

1 release file

0.7.2

1 release file

0.7.1

1 release file

0.7.0

1 release file

0.6.4

1 release file

0.6.3

1 release file

0.6.2

1 release file

0.6.1

1 release file

0.6

1 release file

0.5.1

1 release file

0.5

1 release file

0.4.4

1 release file

0.4.3

1 release file

0.4.2

1 release file

0.4.1

1 release file

0.4.0

1 release file

0.3.8

1 release file

0.3.7

1 release file

0.3.6

1 release file

0.3.5

1 release file

0.3.3

1 release file

0.3.2

1 release file

0.3.1

1 release file

0.3.0

1 release file

0.2.9

1 release file

0.2.8

1 release file

0.2.7

1 release file

0.2.6

1 release file

0.2.5

1 release file

0.2.4

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2.0

1 release file

0.1.9

1 release file

0.1.8

1 release file

0.1.7

1 release file

0.1.6

1 release file

0.1.5

1 release file

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page