Here I will note down the detailed process of various aspects for a total conversion mod of Kenshi.
Step 1: Obtaining game assets
Morrowind.bsa, etc. -> BSAUnpacker -> meshes.nif, textures.dds
For this conversion mod, I will be using the original meshes and textures from the Morrowind game files. These are stored in the three .bsa files the game has:
Under Windows, use BSAUnpacker to unpack these files.
Under Linux, use WINE to run BSAUnpacker.
Note: I had missing meshes (cuirass and gloves), so make sure your files are complete!
You now have the meshes (.nif) and textures (.dds) of Morrowind’s game assets.
Step 2: Converting game assets
weaponmesh.nif -> NifSkope 2.0 -> weaponmesh.obj -> blender
In order to work on them further, we convert the meshes from .nif to .obj using NifSkope 2.0 – using WINE in Linux works. Simply drag the .nif mesh file into the window and export to .obj and you’re done. Then go into blender and import .obj – et voilá, there is your Morrowind game asset!
weapontexture1.dds, weapontexture2.dds, etc. -> GIMP -> weapontextures.dds
As for the textures, here it gets tricky: Morrowind game assets use a number of materials with textures attached. You can see those materials in blender and might encounter an issue where the textures appear pink (when in material/rendered mode). You can fix this by manually going into the material tab of the selected asset (ball shape bottom right) and remove the link to the current texture, then choosing Image texture and choosing its respective texture .dds file. It will then appear correctly within blender.
Kenshi however does not work with those materials and requires a single .dds texture map for its game assets. Thus, attaching each of those individually does not do us any good here.
To get the Morrowind textures into Kenshi, we will open up a template texture map from Kenshi (you can create this by copying an existing one) and add all the individual texture files for our game asset into there. So open up the template, do not load mipmaps, go to “Layer” > “Transparency” > “Threshold Alpha” and set it to zero. You will not see the texture.
Now go to “File” > “Open As Layers” and select your Morrowind texture .dds files. They will appear as separate layers. Move them into a neat position and right click in the bottom right on the layer and select “merge down”. Once you have one layer only, set the opacity above it to 10%, so you end up with the transparent state of the image you saw when opening up the template.
Now export this texture map as a .dds by going to “File” > “Export As”, put in a name and press export. It will then ask you for parameters, here choose “Compression: DXT5” (I am not sure which one is the best, there are several) and “generate mipmaps” (I think; they are used to display lower resolutions of your texture for further away objects, saving resources when running the game).
Step 3: Texturing game assets
Note: the locations for UI elements refers to blender 2.80+, in 2.79 and earlier, which we also use, these were different. I’m not making a blender tutorial here, just noting down the steps!
We do now have the meshes and the textures. We can even stick them together in blender and they match up perfectly. But as said earlier, Kenshi wants one single texture.dds, not several. We thus created our own texture.dds file with all necessary textures in one file.
Now we have to tell the game what texture goes where for our new texture. We select each material of the game object and remove the existing link, keeping in mind which .dds it wants and replace it with our custom texture.dds file. Then we tell the asset where that texture lies on our own custom texture map.
The way I do this (and I hope there’s a simpler way) is by:
– opening up the mesh.obj file in blender, go to UV map and load the textures.dds we created into the left
– go to editing mode (top left) in the right window and while in solid mode (press Z) and face-select mode (top left)
– press B and drag over the visible part that you want to select, turn around and to it from the other side(s) as well
– press Z and go into wireframe mode, you can now see through the models surface
– shift-left click your way to select and de-select all the faces of the part you want to map out
– in the UV window to the right you will see your selected faces in orange when they are selected and grey when not selected
– take your selected UV map and rotate (R), scale (S) and move (M) it until it fits onto the respective part of the texture
This is a tedious manual task and I hope there exists a way to transfer the original UV map from the game assets in Morrowind onto our new texture without having to manually scale and align everything!
In any case, once you are done doing this for all parts of the model, you now have a completely textured .obj mesh with .dds textures. One last step and we are ready to import this file into the FSC!
Note: There are more maps than just the texture map! Normal maps, diffuse maps, etc. tell the game how to reflect light off of surfaces and give the optical illusion of depth, metal reflection, etc. to 2D surfaces – I will add those later.
Step 4: Exporting and importing finished assets
mesh.obj -> .nif to .ogre by oi__io -> mesh.mesh, mesh.xml
Now that our mesh is textured with a single texture.dds, we need to get it into a format that Kenshi likes. We download the “Kenshi OGRE/XML” addon by oi__io and install it in blender.
Under Windows, this works. Under Linux, you will face issues with the .exe used in the addon, I didn’t get it to run with WINE.
Now we just take our textured mesh and go to “Export” > “Kenshi OGRE mesh” and export. Check “Export tangents”, “Export Binormals” and “Apply Transforms”.
We do the same with XML, but this did throw out a “no rigid body” warning to me. Rigid bodies are added in the Physics section of blender and give an object physical properties such as mass.
For now we just export the textured mesh as .mesh file.
mesh.mesh, texture.dds -> Forgotten Construction Set (FCS) -> custom weapon
Next we take our custom weaponmesh.mesh file and weapontexture.dds file and add them to a new item inside the Kenshi FSC editor.
The way Kenshi deals with those is a bit counter-intuitive at first. Weapons don’t exist as standalone items, but there are weapon types and there are manufacturers and materials. The textures are determined by the manufacturers or materials. The model (mesh) is determined by the weapon type.
In short (will expand this later) we put in the files for our weaponmesh.mesh and weapontexture.dds into the respective fields, creating a new weapon, manufacturer and material. We also add a new character, a new squad and everything related to that (again, will expand later in detail) and create a new start scenario. In there, we add the weapon as a starting weapon. This way we can go into the game with our mod enabled and test what we did.
This is all about Kenshi – Morroshi Notes – Weapons & Assets Guide; I hope you enjoy reading the Guide! If you feel like we should add more information or we forget/mistake, please let us know via commenting below, and thanks! See you soon!
- All Kenshi Posts List