FSMatbinBD is a utility designed to parse and create a searchable index of material definition files (MTD/MATBIN) used in FromSoftware games, including Elden Ring, Dark Souls 3, Sekiro, and Nightreign.
It unpacks material archives into a local SQLite database, allowing users to query material properties, find compatible assets for model porting, and batch-edit texture paths without manually editing XML files.
-
Material Library Import
- Parses
.mtdbnd.dcxand.matbinbnd.dcxfiles. - Indexes metadata including shader paths, parameter values, and texture slots.
- Supports switching between multiple game databases.
- Parses
-
Search & Filtering
- Keyword search by material name, filename, or shader source.
- Structured filtering by internal properties (e.g., shader type, sampler count, alpha blend mode).
-
Material Similarity Matching
- Calculates similarity scores between materials based on texture slots, parameters, and naming patterns.
- Assists in identifying compatible materials when porting meshes between games (e.g., DS3 to ER).
-
Editing & Batch Processing
- View and edit material parameters.
- Batch replace texture paths using string replacement or regex patterns.
- Integrated repacking via WitchyBND to generate valid DCX files.
Includes a pre-built database for recent games.
- Download
FSMatbinBD_vX.X.X_Windows_x64_Full.zipfrom Releases. - Extract and run
FSMatbinBD.exe.
Contains only the executable. Users can import their own game files.
- Download
FSMatbinBD_vX.X.X_Windows_x64_Lite.zip. - Extract and run
FSMatbinBD.exe. - Database Setup:
- Import: Click
Library Manager→Import DCXand select a material archive (e.g.,allmaterialbnd.mtdbnd.dcx) from your game dump. - Or: Download a separate
materials.dband place it ininternal/data/databases/.
- Import: Click
Example workflow for porting a mesh from Elden Ring to Nightreign:
- Import Config: Export the material JSON from the source model (via FLVER Editor) and import it into the Material Replacement module.
- Match Materials: Use the Material Matching function to identify compatible materials in the target game library based on mesh paths or names.
- Batch Replace: In Material Replacement → Texture Edit → Batch Replace, input the matched material name and execute.
- Note: If texture paths are empty, the tool automatically retrieves standard textures from the database and maps them to the correct sampler slots.
Requires Python 3.11+.
git clone https://github.com/ccccxp/FSmatbinBD.git
cd FSmatbinBD
pip install -r requirements.txt
python qt_main.py- WitchyBND: Used for unpacking and repacking FromSoftware asset containers.
- SoulsMods Community: For documentation on file formats.
MIT License. See LICENSE for details.

