Skip to main content

PyLibMS

Python Versions PyPI version

PyLibMS is a library built in Python 3.10 and above for reading and writing of libMessageStudio (LMS) proprietary file formats from Nintendo.

The following is supported

Format Read Write Configuration Support
MSBT Support for full attribute (ATR1) decoding. Tag decoding 1:1 with the official Nintendo .mstxt file format.
MSBF Support for custom node definitions, attaching names and descriptions to nodes. Altering parameter datatypes for flexibility between games.
MSBP Generating configuration files for use with MSBT files.

This library is designed to support LMS revision >=3.0. These include files generated for late Wii titles, Nintendo 3DS, Wii U, Mobile, Nintendo Switch and Nintendo Switch 2 games.

Features and Usage

Simple preview of the library is below. See the wiki for more explanations and examples.

Reading

MSBT

from lms.message.msbtio import read_msbt_path

msbt = read_msbt_path("Text.msbt")

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

There is no writing for MSBP files as most of the time it acts as leftover metadata and not actually loaded by games.

MSBT

from lms.message.msbtio import write_msbt_path

write_msbt_path("Out_text.msbt")

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

pip install PyLibMS

Pip Page

Build Instructions

Python version must be 3.10 or higher.

Clone the repository, then run pip install (venv recommended)

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

Credits & Sources

  • 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 some the implementation of the library and a bit of general help.

Release files for PyLibMS 4.2.1

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 4.2.1
File Size Uploaded
pylibms-4.2.1.tar.gz 66.0 kB Details

Built distribution (wheel)

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

Total release size: 152.8 kB

Release files / pylibms-4.2.1.tar.gz

Download URL pylibms-4.2.1.tar.gz
Size 66.0 kB
Tags Source
SHA-256 checksum
How to use checksums
c082dbaab0b109e19e86b98e57a2ec7127ac9af185c4bfebf2a01d552f0b428e
BLAKE2b-256 checksum
How to use checksums
96c76b6ea97725830f7964dfa7a7b394097c3f89e1610a3ef0b6ffb29959e550
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

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

Download URL pylibms-4.2.1-py3-none-any.whl
Size 86.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
301869bc3b7bed1fa5b3b5e97eca4d474258b87390a7ae82929f1276cf0e01a9
BLAKE2b-256 checksum
How to use checksums
c4966a1903e114c52c88ab1962141e6e721e7fe1a5a8db7975db89a4d6e3e265
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release history Release notifications | RSS feed

4.2.2

2 release files

This release

4.2.1 This release

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