Modding Tool: Soulstruct for Blender

Hey all! Slightly old news, as I’ve neglected to post updates on my own website for quite a while (rather than Twitter and Patreon), but that all changes for 2024!

A couple of months ago, I released Soulstruct for Blender, a Blender add-on that uses my Soulstruct Python library (plus a more experimental ‘Soulstruct Havok’ library I haven’t yet made public) to allow easy importing and exporting of 3D assets in FromSoftware games — starting with Dark Souls 1 — including:

  • All FLVER model files: characters, objects, equipment, map pieces.
  • (DS1:R only) HKX map collision files.
  • (DS1:R only) HKX animation files.
  • (DS1 only) NVM navmesh files and MCG/MCP navigation graphs.

The add-on now offers a proper project-based file management system, so you can manage your modified exported files without modifying the original game files unless you want to, preferentially import from project files rather than game files if both exist, and so on. There are also a bunch of extra tools to streamline modifications and inspection in Blender, like floating FLVER dummy IDs, nodes and edges in MCG graphs, importing/export map piece FLVERs with reference to their MSB entries, and automatic parenting of assets by MSB.

You can find the add-on on GitHub here: https://github.com/Grimrukh/soulstruct-blender.git

Note that it’s not (yet) a published Blender add-on and still requires manual installation in your local Blender scripts folder. See the README for details. As of this post, Blender 4.0 is not supported for FLVER import/export, due to changes in Blender’s material shader nodes. You can find the latest zipped release in the repo’s Releases section. Note that these releases include the appropriate versions of Soulstruct and Soulstruct Havok as well, under a folder called io_soulstruct_lib that must be installed with the io_soulstruct add-on.

This add-on is very large and complicated and took years to make, and while it’s feeling quite polished now, please do post any issues or suggested features you have on GitHub! FLVER and HKX animation support for other games will come, starting with Bloodborne (almost done), then Elden Ring, then others. HKX animation support for other games may lag a bit behind FLVER support. HKX map collision support for Bloodborne and later games may never come, unfortunately, as Havok switched to a new collision system (hkcd) that involves the generation of a proprietary detection tree.

~ Grim

Leave a comment