SMTVV ‐ From Game to Blender to Game - mugenrei/mugenrei.github.io GitHub Wiki

Step 0: Programs you need


Step 1: Locating game's files

PC

  • On Steam:
  1. Right click the game on your Steam Library > Manage > Browse Local Files.
  2. The game folder, SMT5V will open, keep it open and jump to step 2.

Emulators

  • On Ryujinx:
  1. Add a game folder with SMTV's .NSP inside.
  2. Right click the game > Extract Data > RomFS.
  3. Select the folder, click OK and wait.
  • On Yuzu:
  1. Add a game folder with SMTV's .NSP inside.
  2. Right click the game > Dump RomFS.
  3. Select Program, click OK.
  4. Full, click OK.
  5. It will should extract the game to %APPDATA%/Yuzu/dump/010063B012DC6000/romfs.

Step 2: Export Character

From UModel

  1. Extract UModel.
  2. (PC) Download oo2core_5_win32.dll
  3. (PC) Copy and paste oo2core_5_win32.dll alongside the UModel executable.
  4. Open UModel.
  5. In Path to game files, click ... and browse:
    • (PC) Path/to/SteamLibrary/common/SMT5V.
    • (NX) Path/to/SMTVV/ExtractedRomFS.
  6. Tick Override game detection.
  7. On the First dropdown: Select Unreal engine 4, Second Dropdown:
    • Select Unreal Engine 4.27.
  8. (NX) Platform: Select Nintendo Switch.
  9. Click OK.
  • Alternatively:
    1. On the UModel folder right-click on any blank space, then New > Text Document.
    2. Name it Start.bat.
    3. Open it and paste the following:
      • (PC) "umodel.exe" "Path/to/SMT5V/Folder" -game="ue4.27"
      • (NX) "umodel.exe" "Path/to/SMTVV/Folder" -game="ue4.27" -nsw
    4. Open it, it's a nice shortcut!
  1. Go to the character folder:
  • For Chadhobino, the protagonist as Nahobino, go to Game/Design/Character/Player/pla603_hero_union/Mesh.
  1. Single click SK_Pla603.uasset and click Export on the program's footer.
  2. Set an output folder, then in Skeletal Mesh, under Mesh Export, select ActorX (psk) then click OK.
  3. Again, single click SK_Pla603.uasset and click Export on the program's footer.
  4. Set an output folder, then in Skeletal Mesh, under Mesh Export, select glTF 2.0 then click OK.
  5. Close UModel.

From FModel

  1. Extract UModel.

  2. Open FModel.

  3. Click Directory > Selector.

  4. Click the arrows icon under ADD UNDETECTED GAME.

  5. On Directory, select:

    • (PC) Path/to/SteamLibrary/common/SMT5V.
    • (NX) Path/to/SMTVV/ExtractedRomFS.
  6. Click the + button.

  7. On the Top Section change UE Versions to GAME_UE4_27.

  8. Click OK.

  9. (NX) On the Top Bar click on Settings.

  10. (NX) In Texture Platform select Nintendo Switch.

  11. Go to the character folder:

    • For Chadhobino, the protagonist as Nahobino, go to Game/Design/Character/Player/pla603_hero_union/Mesh.
  12. Right click pla603_hero_union folder, then:

    • Save Folder's Packages Textures (.png).
    • Save Folder's Packages Models.
    • Save Folder's Packages Animations.
  13. (NX) On the Top Bar click on Settings.

  14. In the Side Bar change Mesh Format to glTF 2.0 (binary)

  15. Right click pla603_hero_union folder, then:

    • Save Folder's Packages Models.
  16. Output will be on FModel Folder/Output/Exports/Project.

  17. Close FModel.


Step 3: Install Blender Addon

  1. Download this fork of blender3d_import_psk_psa.
  2. Open Blender, go to File > Preferences > Add-ons.
  3. Install the addon on Blender and enable it by ticking it's box.
  4. You should see the PSK addon in the CTRL+N sidebar on Blender's viewport.
  5. Open it.

Step 4: Import and Combine Files in Blender

  1. Click import PSK.
  2. Go to File > Import > GLTF.
    • If the glTF skeleton gets upside down, ignore it, follow the steps.
  3. Click on the Armature Object (imported PSK) then CTRL click the GLTF imported Object.
  4. Click on Combine PSK and GLTF in the PSK addon.
    • Why do this?: PSK usually don't preserve smoothing groups, making the mesh not be preserved, so you use the glTF mesh with the PSK Armature.
  5. Delete the glTF Armature. Combine Objects

Step 5: Editing Mesh in Blender

  1. Select the mesh inside the armature and enter edit mode.
  2. Do some edits, you can just move some vertexes.

Dummy Edit

  1. Or you can enter Blender's sculpt mode tab and give that a go.
  2. Enter Sculpting tab[1], then expand your Armature Object[2], select the Mesh[3] and enter Sculpt Mode[4].

Sculpt Mode

  1. After that you can enable symmetry mirror to aid you[1], then you can change your brush options[2] or select a different mode[3].

Sculpt Settings

  1. Then brush your model! You can use this to maybe improve that female model, or to do Giga Chadhobino!

Brushing


Step 6: Export from Blender

  1. Enter object mode and save the project.
  2. Select the Armature object.
  3. Make sure it is named Armature.
  4. Click export as FBX.

Exporting


Step 7: Import to Unreal Engine 4.27

  1. Open Unreal Engine 4.27 and create a blank project called Project, optional name.
  2. Create the character's "Mesh" folder structure.
    • For Chadhobino it is /Content/Design/Character/Player/pla603_hero_union/Mesh.
  3. Rename the FBX you exported from Blender to match the character's uasset name (e.g., SK_pla603.fbx).
  4. Drag and drop it into the UE4's "Mesh" folder.

Importing

  1. You won't need Textures for this tutorial.

Step 8: Set Import Settings

  1. Tick these import settings: Use T0 As Ref Pose, Import Normals and Tangents.

Import Settings


Step 9: Prepare for Cooking

  1. Rename SK_pla603_PhysicsAsset to SK_pla603_PhAT
  2. Create the Material folder:
    • Again, for Chadhobino it is /Content/Design/Character/Player/pla603_hero_union/Material.
  3. Move the materials created by UE4 to the Material folder.

Cooking

Step 9.1: Creating PostAnimBP (Pla601 or Pla603 only)

  1. On the Mesh Folder right click SK_pla603 > Create > Anim Blueprint.

  2. Name it Pla603_PostAnimBP.

  3. Create the The following folder:

    • /Content/Blueprints/Character/Player/Pla603/.
  4. Move Pla603_PostAnimBP to the Pla603 folder.

  5. On the Mesh Folder double click SK_pla603.

  6. In the Asset Details side bar, scroll down to the Skeletal Mesh section.

  7. Find Pla603_PostAnimBP in the Post Process Anim Blueprint dropdown.

  8. Close the SK_pla603 window.

Step 9.2: Setting up the Physics Asset (Fix camera jamming into the body)

  1. On the Mesh Folder rename SK_pla603_PhysicsAsset to SK_pla603_PhAT and double click it.

  2. In the Skeleton Tree side bar, select any bone, press CTRL + A and unselect the b_pelvis bone.

  3. Right click the selection and select Delete.

  4. Select the b_pelvis bone and in the Details Tab on the right side bar:

    • Under Collision change Collision Response to Disabled.
    • Under Physics change Physics Type to Kinematic.
    • Under Body Setup expand Primitives, Capsules and 0:
      • Set the X on Center to -10
      • Set the Y on Center to 90
      • Set the Radius to 70
      • Set the Length to 70
  5. Close the SK_pla603_PhAT window.

  6. Go to File > Cook Content for Windows.


Step 10: Create Mod Folder

  1. Create the mod's working folder, in this case the example folder.
  2. Inside this folder you:
    • Extract the UnrealPak.exe and the BAT file accompanying it.
    • Create a folder for the pak, in this example the exahero folder.
  3. Create the mod's folder structure from UE4 inside the exahero folder.
    • exahero/Project/Content/Design/Character/Player/pla603_hero_union/Mesh.
    • No need for the Material or Blueprints folder.
  4. Move the mesh and physics asset files from the cooked's Mesh folder to the mod's Mesh folder.
    • Should be inside D:\Documents\Unreal Projects\ProjectName\Saved\Cooked\WindowsNoEditor\ProjectName\Content\Design\Character\Player\pla603_hero_union\Mesh
    • Don't move the Skeleton uasset, otherwise it will break the game.

Mod Folder


Step 11: Package and Install Mod

  1. Drag the mod's exahero folder to unrealpak's BAT.

Paking mod

  1. Copy the mod.pak to the game's ~mods folder.
    • Refer to my Mod installation guide if you have inexperience installing mods.
  2. Fire up the game.

Open the game

- You should notice the changes you did!

Fire the Game


Enjoy your modding!