SerenKit is a Blender add-on that automates body variant FBX export and MDL conversion for FFXIV mods. Instead of manually exporting dozens of shape key combinations, SerenKit reads your body profile, generates every valid variant combo automatically, and calls TexTools to convert each one to MDL - all in a single click.
Github Page:
https://github.com/Rei-sen/SerenKitReleases:
https://github.com/Rei-sen/SerenKit/releasesVideo of my workflow/Low budget tutorial:
https://youtu.be/NYqNKQJXXvU[Features]
- Automated variant export - Define shape key groups (exclusive or optional) in a body profile and SerenKit exports every valid combination without manual repetition.
- Body profile system - Built-in profiles for Bibo, Citrus, Muse, Neolithe, Rosaline, Rox, SBTL, Tre and YAB. Profiles are created based on each body mod's official devkit where one exists, so shape key groups and variants match what the author ships. Custom profiles can be added as simple TOML files without touching Python.
- TexTools MDL conversion - Integrated pipeline calls TexTools automatically after FBX export.
- Penumbra modpack output - Updates live or packed modpacks directly from the export results.
- Per-collection and per-object settings - configure output path, profile, material paths, and preprocessing rules inside Blender's Properties panels.
- Shape key toggle UI - quickly enable or disable individual shape keys during export without deleting them.
[How to use]
1. Select your collection in the Outliner, then open the Collection Properties tab (the collection icon) in the Properties window.
2. In the Exporters panel, click + (Add Exporter) and select FFXIV Mod. Configure the output path, body profile, and material paths here. (Remember to either copy or link (shift-m) body models and armature to the exported collection)
3. Per-mesh attribute overrides and export preprocessing options are available in the Data Properties tab (the mesh icon) for each object.
4. Each size variant is implemented as a separate shapekey on each mesh. You can quickly generate empty shapekeys on selected mesh by clicking Generate Shapekeys button in Batch Shape Export panel
5. When ready, export via File → Export → Export All Collections. SerenKit will generate all variant combos, export FBX, and run TexTools conversion automatically. Remember that by default exports don't apply shapekeys, you'll need to add a triangulate modifier to meshes that have them.
For live updates you need to select the directory of the installed mod, created by Penumbra
[Requirements]
- Blender 4.2 or newer (Earlier versions might work but i haven't tested)
- TexTools (required for MDL conversion; path set in add-on preferences)
- Robust Weight Transfer Addon (
https://jinxxy.com/SentFromSpaceVR/robust-weight-transfer) if you want to use the weight transfer preprocessing option.
[Known issues]
- SerenKit does not currently verify whether the Robust Weight Transfer add-on is installed before using related preprocessing options. If Robust Weight Transfer is not installed and that option is enabled, export preprocessing may fail, throw errors, or silently do nothing depending on the context.
- The unwrap preprocessing option does not pin UV boundaries automatically. If you use that setting, boundary pinning still needs to be done manually beforehand.
- Devkits where body variants are toggled with a modifier and devkits where variants/mannequins use separate meshes/topology are not currently supported
- There's currently no support for devkits where shapekey names aren't consistent between mannequin and body models. You might need to rename the shapekey names yourself and/or edit the profile file
- For highly automated devkits (like yab) you might have to disable the devkit in their settings (or download older version).
[Permissions]
Do what you want, I don't really care. Just don't create hateful or illegal content.
Feel free to open an issue on github or contact me on discord (@seren.kai) if you run into any other issues or if you want to leave feedback (or just ask for help)
[DISCLAIMER]
Unit tests, which are not included in the addon, were generated with AI.
I would appreciate if you dm'd me directly instead of trying to create drama over this.
If it was vibe coded I wouldn't be working on it since january. I didn't finish my CS degree to vibe code.
If this is a deal-breaker for you, I'm sorry but I made this addon for myself. I'm lazy and I don't like writing unit tests, sorry.