Bloodthirster

Nomad or What

Wayfarer
Supporter
Joined
Nov 25, 2012
Messages
713
Location
Wherever the winds take me
Bloodthirster Civ IV conversion from the FFH and WH40K mods. I do not know the original artist so if anyone does please let me know so I can give them proper credit.

Uses 13 custom animations as-is, but 19 total were converted and added to the mod in the event you wish to customize the .fxsxml file. The unit has been converted with proper scale conversion so any custom effects used will scale properly. I may make a more advanced version with better effects and sounds later; for now, it is just a custom unit with basic warrior sounds and effects.

EDIT 10/29/15: Added 3 new anims and corrected the death animations. Also added an effect where he spews fire out of his mouth when attacking a city.







EDIT 02/13/16: Imp version added, weaponless and uses the mech railgun effect instead of fire.



 
Last edited:
Hoooooly crap how did you get it to work???
This is amazing Nomad!

Well I don't have time for a tutorial, but since you will completely understand every step that I am performing without references I will give you the outline of how I (finally) got the anims to work since I recorded it for future use:

STEP I: Cleaning up the mesh
1. Import original .nif file (no anims) at scale 1.0 in a blank .blend file
2. Clean the mesh and vertex group assignments in a .blend (every vertex is assigned to a group, no more than 32 groups per mesh, etc.)
3. Delete the bones and all modifiers (nothing left but mesh and materials)
4. Save mesh data as a .blend file to import later

STEP II: Cleaning up the bones and exporting a clean .nif
1. Import original .nif file (no anims) at scale 1.0 in a blank .blend file (again)
2. Delete all mesh
3. Delete all non-object bones (effects, sound, cameras, etc. that are commonly used in other games, but are useless in CiV because they are defined elsewhere)
4. Object copy/paste clean mesh (should already have correct vertex group assignments from previous cleanup)
5. CTRL+A | Apply Scale and Rotation to object data for all objects
6. CTRL+P | Parent Armature to bones for all mesh objects
7. Save file as .nif to be used as a clean import

STEP III: Create the base files at proper scale correction (CiV human scale)
1. Create a new .blend file and stretch the default cube so that it's roughly the same size as a human warrior (approximately 120h x 60w x 40d, it doesn't need to be very precise as it is solely for reference)
2. Import newly-cleaned .nif file (no anims) at 1.0 into your existing .blend file with cube
3. Scale the .nif in object mode until it is the same size as the cube (particularly in height) and record the value that the .nif needed to be scaled in order to match the size of the cube
4. Once you have recorded the scale, close the .blend file
5. Import newly-cleaned .nif file (no anims) in a blank .blend file at a scale correction that is INVERSE of your recorded scale value (so if you had to scale the .nif 20x to match the cube you will now use a scale correction of 1/20 or 0.05 when importing the .nif). The imported .nif should be roughly 120 units high (base human scale)

IMPORTANT!!!: ALL .nifs should be imported to a scale correction matching base human scale (even monstrous units) because CiV effects scale based upon human scale, which is roughly 0.14 in the ArtDefines. If you make your final unit larger than 0.14 in the ArtDefines (like 0.20 for the Bloodthirster unit) then your effects will still scale properly if imported at base human scale originally. Effects in the game are scaled in the ArtDefines, not here!

6. Save the file as a .blend and export to .br2, .fbx. and .nif to be used for all animations
7. Create .gr2 from .fbx w/ .br2 overwrite and ensure that it appears properly in Granny Viewer

STEP IV: Creating the animations
1. In a blank .blend file, import the newly-scaled .nif file with the desired KeyFrame animation at the proper scale correction you just used to create the .nif (e.g., 0.05 or whatever)
2. Once imported, ensure that it is at proper scale and play the animation to ensure it moves properly. If it doesn't then the .nif probably has other issues that I will not discuss here
3. If it does, try to export it as an .fbx with the -90 rotation enabled
4. Create the .gr2 animation and apply it to the base .gr2 you just created. If it rotates back 90 (Blue "Z" axis horizontal and Green "Y" axis vertical) and animates properly then repeat for all animations
5. If the .gr2 animation DOESN'T animate properly or rotate back as it should, you will need to perform manual rotations for every animation before exporting. Repeat steps 1+2 then proceed to the following step
6. If your animation is correct in Blender but didn't export to .fbx properly you will need to manually rotate the animation before exporting
7. Ensure that your 3D Cursor is set to the origin point (0,0,0) and that your Rot/Scale Pivot is set to 3D Cursor
8. Go to View (NumPad) 3 (green "Y" axis visibly horizontal and blue "Z" axis vertical)
9. Select the bone object and switch to EDIT mode
10. Select all and rotate the bones in EDIT mode -90 degrees (Quick Keys: A, R, X, -90, Enter) and return to OBJECT mode. The mesh will most likely be wickedly deformed; that is OK
11. For each mesh object, select it, go to EDIT mode, select all and rotate -90 degrees just as you did with the bones
12. Once complete, your objects should all appear rotated in OBJECT mode 90 degrees backwards so that they appear to be lying on their back
13. Test the animation and ensure that it still animates properly. If it doesn't then the .nif has problems that I will not discuss here
14. If it does, export the animation to .fbx WITHOUT -90 Rotation enabled
15. Create the .gr2 animation and apply it to the base .gr2. It should now rotate back 90 (Blue "Z" axis horizontal and Green "Y" axis vertical) and animate properly. If so, then repeat for all animations as usual.

Hope this helps.
 
Per request from Bane in the Unit Request Thread, a light blue weaponless version that uses the mech railgun effects instead of fire. Define it as a ranged unit in the XML for this effect. Added to the .zip file in the "imp" folder from the link in the OP.

Spoiler :
 
Last edited:
Top Bottom