Skip to main content

soulstruct

Python tools for inspecting and modding FromSoftware games.

YouTube channel with some tutorials: https://youtube.com/grimrukh

Like my stuff? Consider supporting me on Patreon <3 https://patreon.com/Grimrukh

Game abbreviations used below and in package:

  • DS1PTDE: Dark Souls: Prepare to Die Edition
  • DS1R: Dark Souls Remastered
  • DS2: Dark Souls II (either version)
  • BB: Bloodborne
  • DS3: Dark Souls III
  • SEK: Sekiro: Shadows Die Twice
  • ER: Elden Ring

Related libraries:

  • soulstruct-havok: Havok classes and tools for Soulstruct, supporting map collision, character collision, animation, ragdolls, and more.
  • soulstruct-vanilla: Vanilla event scripts (.evs.py) and other vanilla dumps from Soulstruct.
  • soulstruct-gui: Graphical interface for Soulstruct-based modding projects, including tabs for Maps, Events, Params, Lighting, Text, AI, and Talk scripts (plus some Runtime utilities for supported games).
  • Firelink: My FromSoftware modding framework written in C++, which is MUCH faster than Soulstruct for core classes such as FLVERs and Binders. Also includes memory-hooking implementations for supported games and an Elden Ring MSB class (Python is generally too slow for these).

Features

  • Unified graphical application for modifying maps, events, parameters, text, AI, and talk scripts in Dark Souls (both versions) and Bloodborne. Game data is imported as a project, edited in the window (or in Python if you prefer), and exported back to game-ready files whenever you want. Keep track of map entities, quickly navigate between data types, and view custom syntax highlighting for event scripts and AI scripts.

    • Supported games: DS1PTDE, DS1R, BB
  • Event scripts (EMEVD) and EzState state machines (ESD) can be translated to and from valid Python-based languages with high-level programming features.

    • Supported games: DS1PTDE, DS1R, DS2 (ESD only), BB, DS3
  • Map data (MSB), game parameters (GameParam), lighting parameters (DrawParam), text data (FMG) can be loaded into Python structures, edited, and repacked.

    • Supported games: DS1PTDE, DS1R, BB (map, game parameters, and text only), DS3 (map and text only)
  • AI scripts in can be decompiled, edited, and recompiled.

    • Supported games: DS1PTDE (no decompiling), DS1R
  • Unpack/repack BND archives and automatically manage DCX compression.

    • Supported games: all

Download files

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

Source Distribution

soulstruct-2.4.3.tar.gz (8.2 MB view details)

Uploaded Source

Built Distribution

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

soulstruct-2.4.3-py3-none-any.whl (8.7 MB view details)

Uploaded Python 3

File details

Details for the file soulstruct-2.4.3.tar.gz.

File metadata

  • Download URL: soulstruct-2.4.3.tar.gz
  • Upload date:
  • Size: 8.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for soulstruct-2.4.3.tar.gz
Algorithm Hash digest
SHA256 da3499e112c4f4daf639cabeef8e2baa133efb23a94d29fc948acb153a79bd44
MD5 65f7edf7c7d10056179ee0975a37c599
BLAKE2b-256 9c24fe193522ca7e4a57147cbfc0997049eb89a24504eb5fece361153c9946c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for soulstruct-2.4.3.tar.gz:

Publisher: publish.yml on Grimrukh/soulstruct

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file soulstruct-2.4.3-py3-none-any.whl.

File metadata

  • Download URL: soulstruct-2.4.3-py3-none-any.whl
  • Upload date:
  • Size: 8.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for soulstruct-2.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f30118ddbb448a00efa2dd7acfa37eb73b50afb68a2a7bbfaf76792ae099b805
MD5 4f41e004a54ff3661cbe39d51d5b875e
BLAKE2b-256 bfae6b782b24238f8d530e97c792c5e9e7246f648b285e15959da45a6bdf656d

See more details on using hashes here.

Provenance

The following attestation bundles were made for soulstruct-2.4.3-py3-none-any.whl:

Publisher: publish.yml on Grimrukh/soulstruct

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

2.4.3 This release

2 files

2.4.2

2 files

2.4.1

2 files

2.4.0

2 files

2.3.2

2 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