Intro
This guide is for porting NWN2 creatures to NWN EE. The original guide was written by Discord Zetamog and was placed as a comment to a blank page. The original comment has been brought up and edited here.
Scope
This guide will cover porting NWN2 creatures to NWN EE with the scope of (a) using NWN2 animations and (b) upscaling the original textures to NWN EE's PBR texture maps.
The tools required are:
Blender (https://www.blender.org/download/)
NWN2 Blender Addon (https://github.com/Arbos/nwn2mdk/releases)
NWN EE Blender Addon "Neverblender" (https://neverwintervault.org/project/nwn1/other/tool/neverblender-28)
Cupscale (https://github.com/n00mkrad/cupscale)
A PBR map generation tool of your choice, such as ShaderMap (https://shadermap.com/home/).
Overview
One thing to note before starting out is that NWN2 models might have more complicated animations but appear to have fewer than NWN EE ones, at least for creatures. Overall however all of the key NWN1 animations can be fulfilled, with some adaptation. In general, NWN2 animations tend to be longer than NWNEE and in some cases the animation will be speed up for NWN EE. However the end results are generally reasonable.
NWN2 models are accompanied with GR2 (Granny) animations. When starting you will need to have the base NWN2 game and be able to search through the files and grab them.
You should do some background reading first, including:
For reference check out these pages:
https://forum.neverwintervault.org/t/mdb-gr2-to-fbx-fbx-to-mdb-gr2-tools/348
https://neverwintervault.org/project/nwn1/other/tool/neverblender-28
https://nwn.wiki/display/NWN1/Animations
https://nwn.wiki/display/NWN1/NeverBlender
https://nwn.wiki/display/NWN1/NeverBlender-Old
http://www.neverwinternights.info/cc_creatureanimation.htm
- Get blender + neverblender + nw2mdk from NWNVault
- You could animate the NWN2 model/MDB yourself or hook up some vertex groups to a NWN1 model and take the anims from that, but it’s probably easier to take the GR2 animation files from NWN2 and just animate the model with those. NWN2 base game models will already be animated obviously, and if you download MDBs that have no animations you should find they have super models in NWN2 they’re supposed to inherit their anims from, which are basically just base game models anyway.
- So you need to locate and extract those NWN2 anims. You can either find where NWN2 is installed and extract out all the zip files so you can go through them like usual or do this with nw2mdk. On Windows you use that through the command line. Type ‘cd [file path]’ into cmd to navigate to the folder it’s extracted into, then ‘start nw2fbx.exe [name of creature you want to take anims from]’ to run that program, creating a file in its folder called log.txt that has the filepath to the folder in your NWN2 install containing the model you want, and its GR2 animation files. You can just copy that lot out. You do want all the GR2 files.
- Put the GR2 anim files into the same folder as the MDB.
- Head to blender and import all the GR2s, and the MDB, in one go. That makes sure your MDB ends up with a usable skeleton. You’ll notice though that you only get one anim on the skeleton. More on this very shortly. Also, there might be a bunch of spheres named 'COLS'. Just right click these on the right hand list and click delete hierarchy. So far as I know they do nothing.
- The skeleton is the thing that animates the MDB skin. When you select all the GR2s and the MDB for import, one of the files you’re getting has 'skel.GR2' at the end of its name. That’s the skeleton the anims should end up copied onto when you import them. Only one can be imported at once though for some reason. To import a particular anim, go back to the import menu and select both the .skel file and that particular GR2 animation file then hit import. A new skeleton model, separate from the creature mesh/skin model, should show up in blender with that animation on it.
- First though, you should probably list the animations you’re going to use in Neverblenders aurora animation panel. That way you will know what order to import them in. Importing a nwn1 creature of simlar type that has a complete animation set already is a good way to show you how this bit is done. You also get a good idea of the right animation timing to put in the animation list this way. The order animations appear in the list/on the timeline isn’t compulsory but things can end up looking weird in game if you put two wildly different anims next to each other. I believe the model actually uses the transition between the state it’s in at the end of one animation and the beginning of the next to set up for a given animation when in game. That means if you have an animation that ends with the creature upright and one where it starts out lying on the floor right after that, in game the creature will bop up and down when the second animation plays in a weird fashion. So best to stick to the conventional order.
- Once this is done, to get the animations off the animated skeletons you import and onto the one attached to the creature mesh, simply select the skeleton, select it’s animations, and copy in the usual fashion. You can now left click the skeleton attached to the creature, put the timeline cursor bar wherever you want the animation to turn up on the animation timeline, and paste in the usual fashion. Voila. You’ve got the imported animation off it’s imported skeleton and onto the creature one.
- Rinse and repeat for each animation you want. Don’t forget to reposition the timeline cursor or you’ll end up overwriting anims after the first time.
- Once all the animations are sorted and you’re ready to export the model, you need to use neverblender to create pseudo-bones. That’s because NWN1 doesn’t recognise actual skeletons, unless there’s a pseudo-skeleton there to do the exact same thing. One day I’ll go read how the anims jump from the skeleton to the pseudo-bones when you export/import.
- Anyways, all you need to do is select the skeleton with all the animations on it and hit ‘generate pseudo-bones’ from the bone menu. Voila, pseudo-skelly. Select this and make the base object all the NWN2 model/skeleton stuff is parented to, it’s parent. Might be easiest to shift + left click it and drag it onto said base object.
- Almost there. The NWN2 mesh/skin object isn’t the right type by default. You just need to head to the Neverblender aurora mesh panel in the object menu while you have that mesh selected, then change it’s type to ‘skinmesh’.
- Finally, add an empty and parent everything to that, then name it whatever you want to put in the 2da. NWN1 wants an empty at the top of it’s hierarchy when it looks at a model, or something.
- You can now export to MDL via the export menu. Unfortunately, there is one more step if you want the textures to work right. Open the new MDL in nwnexplorer and export the ASCII version of it, then open that in Notepad++ or a similar editor and search for the word 'bitmap'. You need to check that the main texture files for the creature - not the strange lighting map ones you sometimes get but the tga with the creature texture as it should show up in game - is the file named after 'bitmap'. Look through the file and you'll find several instances of it to change. It might be actually that there's several textures you need to change in this way for some models that use multiple base textures but I haven't encountered this yet. Either way, once you've done this, just save the text file as MDL once again and...
- Import the MDL into NWN1 in the usual fashion! Everything should now be functioning as intended. Let me know on Discord/here if you have any questions, and good luck!