Adventuring in the Nif- Re-learning Nif for Skyrim, part deux

Still installing the tools…

I hold my breath eagerly as Python’s GUI loads, a small pop up informing me that Windows is configuring Python…

And there it is. The flash of light, the screen now displaying the simple window, cheerfully proclaiming I have 2.7.4 32 bit. With Python firmly installed now, I look forward to, you know, actually being able to open up a damn nif file.

Lucky me that I didn’t choose Python 3 to update to. Unlucky me, it is still going to take a bit more set up.

PyFFI is the next thing on the list, which has the ridiculously narrow margin of 2.1.9 and above but not 2.2.0 and above. What is wrong with these people. I chose 2.1.11.

Naturally, during install, I get this message:
wtfno

Are you kidding me.

Then I realize the problem was, somehow, someway, the fileserver gave me 2.2.2 instead of 2.1.11. I’m 100% certain I was in the correct folder, because I clicked the damn file from here! The internet itself! Rising up to place blocks in my way.

It has now been two hours since I started installing my necessary tools. Obviously the forces of the Enemy are strong today… requiring me to watch carefully my moves from now on. I grip my mouse fearfully, stepping into the next room, fully expecting to be jumped on by draugr at any moment…

PyFFI installs properly and recognizes that I have both Python 2.7x and Blender 2.4x. Whew.

Finally, I come to Nifscripts, download and select the EXE… and all too cheerfully it informs me I need Python 2.6.6 and that clicking OK will take me to the Python download and to rerun Nifscripts installation.

My reaction is even less stellar. By this time, I’ve settled in for the long haul and turn on a Star Trek staple episode.

Uninstall 2.7.4. Install 2.6.6. Check the version… and Nifscripts finally works!

So, what did I learn from this all? Even reading installation instructions is misleading. Don’t trust them.

What you actually need:
Blender 2.49b
Python 2.6.6
PyFFI 1.1.11
Nifscripts 2.5.9

Despite assurances of other tutorials that you can use other versions of Python and PyFFI, you have to bow down to Nifscript’s highly picky installation. As of May 2013 this is the best set up I could get.

Extracting the NIF files

To actually use nif files, I have to extract them from the Skyrim – Meshes.bsa. This shouldn’t be too much of a problem. I used to do this all the time with Oblivion, and it was pretty easy back then. Despite other tutorials that tell you to use some Fallout extractor, there’s more general BSA extractors that will detect what game you’re using. Back in Oblivion, I used BSArchive to extract things, but I lost it long ago. I already have an BSA extractor from when I needed textures to start from for my Starry sky replacer, so I used it to extract the meshes I need.

If you need one, however, go to the Skyrim Nexus and looking for BSA  extractors gave me TESArchive, BSAUnpack, and BSAopt. Of the three, BSAopt works best for me and allows me to unpack the textures without a bunch of confusion.

Creating your project folders

I created a working folder called “de-boobified steel plate armor” to store my working files in, and a folder called “female body assets” to store the files from the female body, which I’ll need during the process to make my steel plate armor. Extracted meshes and textures get their own folder in case at any point I need untouched copies.

In the BSA archive, you’ll find them under actors>character>character assets. For armors, the one I want is listed under armor>nordplate. I needed nordcuirassf_0 and nordcuirassf_1 for my project. These are the files I’m going to edit.

A note about bodies and armors

The reason why you need femalebody_0 and femalebody_1, and nordcuirassf_0 and nordcuirassf_1 is because of the body slider. Skyrim introduced the “weight” concept, although in some cases of body replacers, cup and butt size. The game engine only needs two models to work this amazing magic: the skinny version, _0, and the heavy version, _1. Anything else on the slider, Skyrim will combine the data from the two and come out with all values in between. Kind of clever, if you ask me. When I worked with the Sims 2 models, when sims got fat or skinny there was no middle ground- suddenly they would look down and a gut would appear.

Anyway, it is much easier to design something for the smaller body and then adjust it to fit the larger one, so the best way to start is using the _0. When you import the _1, you can move the individual pixels until you fill out the armor. This is, of course, the COMPLETE opposite of making a real life outfit where you go larger and take things in to fit.

Editing with Nifskope

Finally getting into Nifskope, it appears that there needs to be some changes to the nif file before I import it to Blender.

Under NiHeader the user version must be changed from 12 to 11, and user version 2 must be reduced from 83 to 34. And all NiTriShape nodes must have their BSLightingShaderProperty branches removed. A slight inconvenience during this phase was, while you look for NiHeader’s User Version and User Version 2 in the panel below, you need to use the upper panel next to the 3d display to expand NiTriShape. Otherwise, the BSLightingShaderProperty will appear grayed out.

In the upper panel, I had to expand NiNode before I saw the NiTriShape nodes to edit. One of the files I am planning to use is femalebody_0.nif, so there were two NiTriShape nodes and therefore two BSLightingShaderProperty branches I had to remove. I did this by expanding each NiTriShape node, and right clicking BSLightingShaderProperty and selecting Block>Remove Branch. I did the same for nordcuirassf_0.Saving the nif under the name femalebody_0_blenderready.nif and nordcuirassf_0_blenderready. I opened up Blender and imported the file.

Five hours after I started my adventure, I was ready to edit. Then I realized this version of Blender was as alien looking as a horker’s backside.

Watch for Part 3.

Adventuring in the Nif – Re-learning Nif for Skyrim

Oh, boy, am I mad this morning. I woke up only to find that my new TV/Monitor wouldn’t turn on. I’ve been having this issue with it for a few weeks now, but usually a hard reset would work. Not today. So of course they want me to send it in, being under warranty. In the mean time, I’m back on the two itty bitty monitors. Blergh. Already missing my 1900×1080. Knowing my luck it will likely be two months before I get it back.

Putting that aside, it’s a new day for learning something. Back in the Oblivion days I had made some small models for things like swords, bows, and books. It had been a long complicated process to do, well, pretty much anything with Bethesda’s beloved NIFs. It still is.

It has been long enough that I don’t even remember how to do it, and hey, it’s been five years. So, it’s about time to break out the tutorials. This post is mostly going to just be my notes on it, for my own personal use, but if other people can benefit from it, why not.

From my initial observations, you need Blender, Nifscripts for Blender, Nifscope, and GIMP.

“Why the hell would anyone want to use GIMP?” That’s my question. GIMP is lame. I already have it, but if it’s for the DDS editing, I far prefer Paint.NET*. I’m holding my breath on this one. If the tutorial needs it for some specific task only it can do, then maybe.

Blender’s a bit out of date by now. So I fix that and update to 2.6.7. Then I realize that even the more recent tutorials say that Blender’s nifscripts only work for 2.49b. Flipping-… Well, easy enough to install a second version of Blender into my Tools Folder.

…and this version of Blender requires Python. I have Python. Oh- you wanted an UPDATED Python, that’s dif- what do you mean Python doesn’t have 2.6 up on the website anymore? I guess I’ll take 2.7.4 then. Hurrah! It works. Then I realized I had 2.7.2 in the first place.

I install 2.7.4 anyway just because it’s good having latest versions of everything, right?… only to read in Nifscripts installation that it has to be 32 bit because 64 bit lacks xml parsing.

Flipping eggs.

Now for Blender Nifscripts. You really need to be careful here about what tutorial you’re using and where to get the nifscripts. Some otherwise updated tutorials linked me to an older version of nifscripts, which confused me for a moment because my downloaded file (the correct, latest version) and the file they wanted downloaded did not have matching filenames. Make sure they’re definitely the latest version. As a good rule of thumb, this NifTools page may be the best place to check.

Then I realize there’s a note on that page.

So here’s the divvy. You need:

Blender 2.49b
to work with:
Python 2.6 and above but NOT the 64bit version
and the latest:
Nifscripts for Blender, which doesn’t support Skyrim.

Flipping flying freaking eggs.

Why does this have to be so hard. I just wanted to de-boobify the steel plate armor….

 

*As for why I prefer Paint.NET: You don’t have to install plugins to get it to open dds files, because it does it natively, and also generates mipmaps if you don’t feel like doing it yourself. I’ve had some pretty good success with my O Starry Night mod where GIMP and Photoshop both had issues even displaying DDS for me. The stars texture is heavily transparent, and neither program displayed the transparencies very well reading from a dds file. The one thing I find is a drawback to Paint.NET is it lacks some useful brush tools and a lot of the functions that are in Photoshop. Transferring the image is the major difficulty with that drawback, as there is no file format that you can save to that supports both layers and transparencies either Photoshop or Paint Shop Pro can open. I generally solve that by saving all layers in transparent lossless PNG formats and reassembling it in Photoshop or Paint.Net. Creates some clutter, but it works to import and export, and you get backups of each layer in case you need to import a fresh copy of layer X but not of layer Y.

Oblivion’s OBSE and Avast FAV

I discovered a nasty surprise when I went to play Oblivion to check on a reference in game today. I haven’t opened the thing up in a couple years, since before we installed the new graphics card actually. I was sort of curious how it was running now that it was an old game and no longer the Horker of resources that it was when it came out (and for some years after.)

Welp, it came back with that time worn old error “Couldn’t inject dll!”

This error has all sorts of causes, from Vista, to UAC, to firewall settings, to administrator access. With some fuddling around including turning off my firewall and making sure my exes were running as administrator, which really shouldn’t have been an issue in the first place since it ran while under the Vista dynasty and I’d installed it in the no-no zone of \Program Files, I discovered it was the antivirus. Well, that wasn’t all that surprising… the surprise came later.

Good old Avast Free has been keeping my computer (somewhat) secure for a while now. It does a good job usually at letting me know what it’s doing and why it thinks x program is misbehaving. It shouldn’t have been an issue including Oblivion into the exclusions, right? Wrong. Right now, I have all the files in the freaking folder set into the exclusions. The only thing that keeps Avast from stopping the dll injection is going into Behavior Shield options and unchecking “Scan for malware like behavior.” Nothing else works for me so far, including doing the unthinkable “allow always” option. The strange thing is, SKSE on Skyrim works just fine in the non-default folder I set it to. I haven’t fully checked into why, possibly because it is that Oblivion is installed in the default Program Files, but after all the work I did to install FCOM, MMM and OOO on Oblivion, there’s no way I’m uninstalling now to check. At least I know what to turn off when I want to play Oblivion these days.

Sure, Oblivion’s an old game, but one I think is still lasting, and the more info to deal with these things as we move away from old software, the better.

Goodbye, Posterous

Well, with the closing of Posterous, the last bastion of interesting blogging platforms that I like to use is now at an end. So here’s to the grand opening of “Arrow to the Knee,” because seriously, some days I feel like I took an arrow to the knee.

Anyway, unlike my previous blog, I figure I’ll just talk about whatever I have on my mind at the time, with the exception of Politics. I think there’s quite enough mudslinging in that arena to drown out anyone yelling “Use your damn brains!”

So, first order of business. Why are there not more tutorials for Nexus Mod Manager? Not how to use it, god knows there’s plenty of those out there, but actually making the scripting for a mod. I had to dig into the forums. When I have to dig into forums to answer any question… yeah, there’s that look. It’s not documented well enough. It seems these days that more and more websites are relying on forums like this, and to me that’s really annoying. Half the time, they require you to register in order to see it. Then there’s the routine purging of forums, losing whatever link you had relied on.

And with that I sound off the race.

Modding mishaps and gaming gagfests of epic proportions in pursuit of that one perfect experience.