Hi SaibotLieh!
Are there a lot of changes to do to give another LH this war paint model?
Maybe you could describe - maybe in catchwords with bullets - what I would have to do with blender and/or nifscope to change another native LH?
Kind regards
Schmiddie
Okay, so the first thing to do is create the war paint with Blender. The important thing is that the paint has to be a seperate mesh than the rest of the leaderhead and that it is on top of the leaderhead mesh and does not overlap with it. For me the easiest thing was to
duplicate all verticles of one extremity (head, arms or torso),
scale it up a little bit (a factor of 1.005 for example) and then
seperate the verticles from the mesh (with pressing "p"). This way the new mesh moves the same way the original mesh does and the war paint will hover a little bit over the original mesh without being to far away.
Next the
war paint texture has to be applied to this new mesh. Using transparency (alpha channel) to create the shape of the single strokes helps quite a bit, since this way all verticles can stay at their place and will move like the original ones. Once all strokes are created, a good idea is to
delete all faces that are completely transparent in order to reduce the size of the leaderhead. Now
export the leaderhead and open it with NifSkope.
Now
the war paint has to be nifswapped into the original leaderhead nif. For this, open the original leaderhead as well with NifSkope and create a copy of the leaderheads mesh block at the same place as the original block (Block->Copy, then Block->Paste). Replace the
NiSkinInstance and the
NiTriShapeData of this copy with the ones from the war paint mesh of the Blender export. Furthermore the war paint block will need some Skin Partition (Mesh->Make Skin Partition). Set the
Number of Bones per Partition to 4, all other settings should work as they are. Now the leaderhead should be covered with the war paint.
Next some modifications are necessary to make it possible to make the war paint disappear. For some reasons, it seems to be impossible to use NiVisController with leaderheads, so I choose to shrink the war paint so a very small value to make it disappear. Problem with this solution is that
the mesh has to be a child (or any kind of grandchild) of the d_hatshepsut_MASTER node. So this is the next thing to do. But for certain reasons it is a good idea to
create a Dummy node inbetween first and
change the Flags Value of this node to 22. Once the war paint mesh is a child of this Dummy node it should not fit as well to the original leaderhead mesh anymore. And in fact it will not do so anymore in NifSkope from now one. But to make both meshes fit ingame again, the
rotation values of the Dummy node will have to be changes to Y = -90 and R = 90 (Transform->Edit). There might be further changes necessary if the original mesh is modified by nodes in any way. For the Cockacoeske leaderhead it gets even more complicated, since I added a node in front of the the
d_hatshepsut_MASTER to change stuff as well. But if you look at this screenshot, you will see that the Y value on the left side equals the sum of X on the right side (in negative), the Z equals the sum of Y and the X equals the sum of Z.
Now
the dummy node has to be added to the Extra Targets list of the NiMultiTargetTransformController node. Once this has happened, the leaderhead nif should be finished. Now finally an entry in the greeting kf file has to be done.
For this,
open the greeting kf file with NifSkope first. Then
copy&paste one of the already existing NiTransformInterpolator nodes that has a NiTransformData node as child. In this copy,
change the Num Rotation Keys and the Translations Num Keys to zero and the Scales Num Keys to 2 (don't forget refreshing with the green arrows). Next
change the Scales Interpolation to LINEAR_KEY. Then
change the first key's Time to 0.0000 and its Value to 0.0001 and the second key's Time to the same as the length of the greeting animation and its Value to 0.0001. Then
add a new Controlled Block to the NiControllerSequence node. Of this new block change
- the Interpolator to the new NiTransformInterpolator number
- the String Palette to the String Palette node number
- the Node Name Offset to the Dummy node name
- the Controller Type Offset to NiTransformController
Then save the kf file, and you should be done.
Quite a lot to swallow for starters I guess, but hopefully this is already somewhat useful. Just try to identify these changes in the Cockacoeske leaderhead for comparison and, of course, ask if you run in some problems.