Index#

Overview#

scfile is a utility and library for converting proprietary Stalcraft assets formats to standard ones.

This is an unofficial project and is not affiliated with EXBO.

โœจ Supported Formats#

Type

Game formats

Standard formats

๐ŸงŠ Model

.mcsb .mcsa .mcvd

.obj .glb .dae .ms3d

๐Ÿงฑ Texture

.ol

.dds

๐Ÿ–ผ๏ธ Image

.mic

.png

๐Ÿ“ฆ Archive

.texarr

.zip

โš™๏ธ Data

NBT*

.json

* NBT refers to specific files (itemnames.dat, prefs, sd0, etc.)

Important

Reverse conversion (standard โ†’ game) is not available.

๐Ÿš€ Quick Start#

Three ways to get started: download, install, or compile.

1. ๐Ÿ’ป Download executable#

Standalone scfile.exe available on Releases page
No Python required.

Usage:

2. ๐Ÿ Install Python package#

Install:

pip install sc-file

Usage:

  • ๐Ÿ“– Python library: See Library section

  • ๐Ÿ“Ÿ CLI via package: scfile --help

3. ๐Ÿ”ง Compile from source#

Build from source code using the compile guide.
For developers, contributors, or custom builds.

๐Ÿ“– Library#

Install latest version:

pip install sc-file -U
Usage example#
from scfile import convert, formats, UserOptions

# Simple conversion (auto detect format by file suffix)
# User options to control parsing and export settings
convert.auto("model.mcsb", options=UserOptions(parse_skeleton=True))

# Advanced control (manual decoding and data inspection)
# Context manager ensures proper resource cleanup
with formats.mcsb.McsbDecoder("model.mcsb") as mcsb:
  # Access parsed scene data: meshes, bones
  scene = mcsb.decode().scene
  print(f"Model total vertices: {sum(m.count.vertices for m in scene.meshes)}")

  # Export to a specific standard format
  mcsb.to_obj().save("output.obj")

๐Ÿค Acknowledgments#

kommunist2021 ยท Art3mLapa ยท n1kodim
IExploitableMan ยท Sarioga ยท Hazart

Thanks to everyone who reported issues, shared findings, or contributed ideas.