Skip to main content

Utility & Library for decoding stalcraft assets

Project description

sc-file

icon

Pypi License Docs Tests Build Issues

🇬🇧 English | 🇷🇺 Русский

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 .glb .obj .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 (standardgame) is not available.
📚 See FAQ for details →


[!TIP]
📚 Detailed formats support →

🚀 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:

3. 🔧 Compile from source

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


[!TIP]
📚 Usage guide and CLI options →

📖 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")

[!TIP]
📚 Complete Library API reference →

🔗 Links

🤝 Acknowledgments

kommunist2021 · Art3mLapa · n1kodim
IExploitableMan · Sarioga · Hazart

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sc_file-4.2.0.tar.gz (37.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sc_file-4.2.0-py3-none-any.whl (57.9 kB view details)

Uploaded Python 3

File details

Details for the file sc_file-4.2.0.tar.gz.

File metadata

  • Download URL: sc_file-4.2.0.tar.gz
  • Upload date:
  • Size: 37.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for sc_file-4.2.0.tar.gz
Algorithm Hash digest
SHA256 1057fe2875f2692d780424212c766dd66a7adc7bee0a31a8e396f23b26d72bc1
MD5 762befbfbad01dca9391817b2be9c103
BLAKE2b-256 17332370c7033ff3cbb44c8a802368370ccca776b7948415b3cdba4c3bca1619

See more details on using hashes here.

File details

Details for the file sc_file-4.2.0-py3-none-any.whl.

File metadata

  • Download URL: sc_file-4.2.0-py3-none-any.whl
  • Upload date:
  • Size: 57.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for sc_file-4.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5a00bd53b7919992a7eca4c44e5892a024631f125f5214a0a87701b8f40e8636
MD5 22ebea17903a5236aa4469d69ab92c84
BLAKE2b-256 aa6c96f5b35e0b299a406108a7b93a5b854ded6528c299c491964c25af375f71

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page