Sunday, September 3, 2017

Custom exterior textures in nwn2

A few notes to clarify things a bit.

It wasn't clear in step four since there are a lot of mask choices, but you want to add a black (full transparency) mask just like in step 2.
Once you have your files working the way you want, save them as .dds files, this will reduce file size to roughly 1/4 of the tgs file size. DDS is also the format of the stock game exterior textures, so it's possible there is some optimization hardcoded we don't know about. works fine for converting to dds using the stock settings of conversion when you select save as.
Textures that are not square work fine.


Resources Manuals and Guides
Thursday, 07 April 2011 15:28
This tutorial describes one method of creating terrain textures for NWN2. It may not be the best or most complete way, but it works quite nicely. This method also removes the glossy shine from textures for a more realistic appearance. You will need to download the NormalMap plug-in for GIMP and install it in order to use this tutorial.
For each texture, there needs to be three .TGA files:
  1. Primary Diffuse + Layer Mask (TT_MyTexture)
    Diffuse used with Terrain Normal Mapping turned OFF in game/toolset, Alpha used to control strength and location of 'fake' specular highlights
  2. Secondary Diffuse + Layer Mask (TT_MyTexture_c)
    Diffuse used when Normal Mapping is turned ON in game/toolset, Alpha channel does nothing
  3. Normal Map WITHOUT Alpha Channel (TT_MyTexture_n)
    Alpha channel used to control Strength of Normal Map specular Highlights only, Normal Map Highlight and Shadow location and Shadows Strength are unaffected


Select a .BMP image scaled to 64x64 pixels in size. Make a copy of the texture you're working with, then resize the image in GIMP to 64x64 pixels. In GIMP, go to "Image" then go to "Scale Image". To resize the image, click the small button behind the number field (looks sort of like a broken chain link). Type in the new size, then hit "ok". Put the 64x64 .BMP image into your Program Files/Neverwinter Nights 2/NWN2Toolset/Terrain folder.


Make another copy of the original image. Scale this texture image to a multiple of 8; 512x512 is the standard texture size in NWN2, but you can use 1024x1024 if you require a crisper texture.
A larger texture will consumer more memory, and in the case of 1024x1024, it will use the space of FOUR 512x512 textures, so choose wisely.
Click on "Layer", then "Mask". Select "Add Layer Mask...". Now, click on "Black (full transparency). Click the "Add" button. Next, go to "Layer", then "Mask", and click "Apply Layer Mask". Now, save the image as .TGA (example: TT_MyTexture).


Open the image file that has the layer mask that we were just working with. Save it as, for example, TT_MyTexture_c. This file must have the "_c" at the end of it to work properly.


Open the image that you first scaled to multiples of 8 (the picture with the actual terrain image). Next, go to "Filters" tab, go down to "Map", then "Normalmap...". Where it says "Filter" in the Normalmap box, choose your filter type (ie 5x5), then hit "Ok". Now, click "Layer", then "Mask", then "Add Layer Mask". Now click "Layer", "Mask", then "Apply Layer Mask". Save this file as, for example, TT_MyTexture_n. This file must have the "_n" at the end of it to work properly.


Edit terrainmaterials.2da. Find a blank row at the end of the .2da file and input the basic name of your texture. Example: TT_MyTexture. Set each to a value of 255, then select for the last entry, the terrain type that most resembles the new texture. If you have a grassy texture, type in "Grass".


Put the terrainmaterials.2da and the three .TGA files into your My Documents/Neverwinter Nights 2/Override folder or your Campaign folder. Fire up the toolset, then start painting the textures down.


The textures should be as close to square as possible. If they are not, dark lines will appear around the texture when painted down. And if you prefer to have shiny textures, just don't add the masks described in the tutorial.

Saturday, January 14, 2017

Bedine released

If you've ever wanted to be (my version of) a Bedine tribesman in (my version of ) the Anauroch, now you can be. :-)
NWVault or at the Nexus

A campaign for first level players. Note: You will have all your equipment destroyed on entry, and will have the opportunity to pick up Bedine appropriate equipment. 

Bedine characters do not get any feats automatically, but can select among all feats available to the class as if they are bonus feats, allowing for more flexibility in builds. Thus, fighters do not get any armor or weapon proficiencies automatically at level 1, but can select those feats from their feat pools. In the archetype system, characters get the same number of feats as they would otherwise have. Remember to select at least one weapon feat or you're going to be stuck hitting things with your hands.

Bedine has Storm of Zehir style party generation options, as well as lore appropriate cohorts being available.

Monday, October 17, 2016

Closing in on release

With the exception of some minor bugs I'm aware of, Bedine is all tested ingame.

There's still some conversations to write as they are placeholders, some of the OM location objects and a quest boss for instance. And I'd like to include some bard type npcs to let the player hear stories and music tracks similar to how I did it in Crimmor.

Then I need to do some file trimming, as otherwise the download is going to be bigger than I'd like. There's a lot of custom content, but I didn't keep good track of just what I actually used versus what's in the folders but doesn't actually get used.

Sunday, September 18, 2016

Hand placing custom items is time consuming

Make all the custom items, given them some backstory/lore bits the players can read. Place them ingame in areas/positions where they make sense.

Some of the official expansions had trouble with this, as the game includes specifically named items that when examined have no backstory, just 'item does not bear the marks of any particular maker'. Umm, it's a item given an individual name, not just dagger +1 or even a 'sword of parrying'. My guess is the dev ran out of time and dev zots before release.

The backstory of a unique item is an extra bonus to the player though. Mechanically it doesn't do anything, but it gives the player connection with the gameworld and feeds the player who is interested in lore, discovery, and exploration. It helps roleplay, the player and thus the character can become invested in the item.

In Bedine I made four custom magic items for each of the Bedine traditional gear (armor and weapons), two each of +1 and two of +2, there are two of each so a player can have some item choice at each + level. Some of them are basic +1 with a story, others have other powers in addition to their + level. But all have associate lore. For example the scimitar Tawahhaj, it's not particularly powerful, a +1 scimitar with unlimited use of the Flare spell (which is near useless in default nwn2), but here is it's description:

Tawahhaj is the name given to this scimitar, but it is really the name of the tiny scarab wasa-ey that lives in a hole in the pommel. Tawahhaj the scimitar itself is unremarkable other than the hole in the pommel, Tawahhaj the wasa-ey transfers it's power to the scimitar. Tawahhaj the wasa-ey does not speak or otherwise communicate with the person carrying the scimitar. The wielder of the scimitar does generally offer bits of food to Tawahhaj out of recognition of it's power, but it is not clear if Tawahhaj eats them or not, or even needs to.

 Hopefully that sounds cool. It tries to invest a simple +1 weapon with a very minor extra ability with a reward for the player of coolness and gameworld lore.

Sunday, August 14, 2016

Bedine Update

Since that last post I fixed almost all of the bugs identified in the last playthrough, and have just finished up another test playthrough. This time I got almost to the end and got stopped by a walkmesh issue (transitioning to an area with a complicated walkmesh), so I made it maybe 90% of the way through the main path. I'd guess about 20 hours of gameplay if you do everything I think.

[counts up screenshots I took of bugs...] About 50 bugs or so from this playthrough. Some are basic things like typos, some are stopping some sidequests or are related to the custom class/feat work. This test was more focused on the main plot though, so four larger sidequest areas didn't get any testing as I wanted to check how combat balance would be if the player was main quest focused. Combat balance was somewhat improved with this playthrough, needs further tweaking, I ran into a couple of spots where I needed to break out the testers dagger of doom.

Saturday, July 2, 2016

Bedine Progress Update

There hasn't been a tremendous amount of work done on Bedine as I've started a new job in real life and it has a time and brain power consuming. There is some other real life stuff as well. That does not mean there is no news however, there is good news. I have completed a full playthrough (in sections, testing and fixing as I went) of Bedine through the ending dialog. So the campaign is now runnable from beginning to end without running into a gamebreaking bug.

That doesn't necessarily mean there aren't any gamebreakers hiding in there, just that the game is complete-able. Also, the final showdown with the big bad isn't written beyond "placeholder", but the confrontation starts properly and the epilogue begins properly when you defeat the big bad.

So that's really good. And since I've been fixing bugs along the way as I played through various sections, things are in pretty good shape. Playing through I see where some things need to be more fleshed out, but that work is going to be just in adding conversation and other bits to expand the players immersion in the gameworld and make things more coherent. Some potential companions require some "systems" work to get working ingame, but if that's too much I can just not make them available as companions, and I have the systems working in a test module for testing that specific thing.

I've reached a point where I want to shove Bedine out the door because new ideas are always shinier than old ones (cough, thinking about Crimmor when trying to finish Path of Evil for instance, cough). I know I should take the time to get it properly fleshed out.

Friday, May 27, 2016

Bedine Progress Report

I've got my testing completed up to the pont where you go to the "endgame" areas. The testing was slowed down by my discovering and needing to fix some issues with a tileset. Some of the things that worked in my test module did not work in the real module, and some of the things like module transitioning could only be tested in the real module. I tested the sidequests long enough ago I need to test them again to mark them off on my checklist in case something broke between then and now. At least I do expect them to work right.

As I've gone I've cleaned up various placeholding things like journal entries that just identified the journal state as opposed to providing proper journal entries. I've also smoothed out a number of conversations so they flow much better than they did.

My testing has identified a number of spots that I need to add some content to. Finding that sort of thing is something I expected based on my previous campaigns, so it's not really a surprise. An example would be something like a town where the only thing of interest was the local priest. It needs some more life to it, otherwise it winds up like the various towns of Storm of Zehir that exist only as taverns.