Help with Custom Objects

Briefly, I’m trying to get my local school to introduce elements of NWN Toolset to their Computing course and would appreciate any help with the topics below where my knowledge is drastically short of barely adequate. . . They are keen on the Toolset but would also like the pupils to be able to fulfil another aspect of their course by creating an asset.

  1. What is the easiest item to create which could then be placed in a Module ? A picture? A shield? Even a snowman !!?? I’m guessing that you’d need more than one drawing? photo? of the item from different angles to be used so where would you suggest starting?

  2. What is the easiest program to use for this? The school has educational copies of Blender so no cost involved there and I’ve seen that mentioned here but anything I’ve looked at looks like it’s considerably beyond my pay grade.

  3. What are the simplest tutorials available for this - and we’re talking as simple as possible ?

  4. What is the mechanism for getting them into the Toolset? I know about haks and getting them in but I think I’ve heard erfs and other things mentioned regarding custom objects ?

Thanks in advance for any help you can offer. Even if it’s only another thread where this is discussed I’d have a look but please keep in mind my understanding of these things is deeply flawed.

I think I’d say that the absolute easiest type of 3d model to create is probably a floor decal, as the mesh is just a flat square and a walkmesh is not required.

The steps are as follows:

  • Install Blender
  • Install Neverblender
  • Choose a texture (such as from a site with CC0 pictures, like Pixabay)
  • Create mesh
  • UV map mesh
  • Set up mesh for export (naming, settings, etc)
  • Export mesh as .mdl
  • Add 2da line to up-to-date version of relevant 2da (placeables.2da, in this case)
  • Create custom hak via nwhak.exe
  • Place model, texture, and edited 2da into the custom hak
  • Add the custom hak to modules’ hak list
  • Reload the module

These are some currently-existing 3d modeling tutorials that were specifically written for Blender, but a good lot of them are relatively advanced or otherwise skim over the absolute-basics steps:

I think you should check out DrA’s placeable creation one (first link). The Aribethorial is a fairly newbie-friendly read, too, but it doesn’t cover asset creation from scratch and I’ve learned a few new tricks since that result in higher-quality work, so it wouldn’t be my first choice for teaching the next generation. Chances of spreading blatant misinformation are too high.

How soon do you need to get this done? :open_mouth: If there’s enough time, @DrA ( ::casts ‘Summon to Relevant Topic!’:: ) or I or, heck, some other possibly interested parties I do not currently know about, could probably write up a new tutorial.


Thanks Barbarian. A wealth of info there. My pal at the school knows a little ( lot?) about Blender so I’ll pass this onto him. We were talking today about possibly trying a shield with the school crest but a floor decal would be just as good if not better. You lost me round about the 2da line but then as we both know that’s not hard !

Not looking for you to do this but there is absolutely no hurry for it anyway. It would be next session we tried to embed this into courses ( around August). For this year we are just trying out stuff on the Games Design class which finishes around Easter. Really just looking to see what works with youngsters and what doesn’t and get our timeframes right. If we had something we’d try it out; if not we’d like to have something in place for August.

1 Like

Blender is free software for use for any purpose (GPL). It doesn’t have any other special license versions.

You’ll be right, NWShacker. Just shows how little I know. I assumed when he said they had them that they were educational licences. :grinning:

The absolute simplest tool for working with ASCII model files is a plain text editor. As @TheBarbarian says the simplest models to work with are floor decals. Take the following model -

# model: plc_change_me
filedependancy plc_change_me.max
newmodel plc_change_me
setsupermodel plc_change_me NULL
classification character
setanimationscale 1
beginmodelgeom plc_change_me
node dummy plc_change_me
  parent NULL
  #part-number 0
node trimesh Plane01
  parent plc_change_me
  #part-number 1
  ambient 1 1 1
  diffuse 1 1 1
  specular 0 0 0
  shininess 1
  bitmap change_me
  verts 4
    -0.5 0.5 0
    -0.5 -0.5 0
    0.5 0.5 0
    0.5 -0.5 0
  tverts 4
    0 1 0
    0 0 0
    1 1 0
    1 0 0
  faces 2
    0 1 2 1 0 1 2 1
    3 2 1 1 3 2 1 1
  position 0 0 0.02
  orientation 0 0 0 0
  scale 1
  selfillumcolor 0 0 0
  alpha 1
endmodelgeom plc_change_me

donemodel plc_change_me

That is for a one metre square floor design.

Before you make use of it you really need to make your texture. So for this little exercise launch your favourite image editing program. I’ll assume that is the gimp which is available for Mac OS. Create a new image 128 pixels square with a white background. Use the brush tool to draw a simple design in your new image (such as a cross). From the menu across the top choose layer/transparency/add alpha channel. Next from the menu across the top select colors/color to alpha. Click OK in the dialogue box that appears. You should now have your design showing on a transparent background.

Now we save it. From the top menu select file/export. This will open a file save dialogue box. So we give it a name and a .tga extension (e.g. “cross.tga”). Choose a location to save it to (on Windows I always use the desktop) and press the export button. This will open a very small dialogue box. In this box there will be a check box that is probably pre-checked for rle-compression. You must make sure that to uncheck that box. Once that is done press the export button in this tiny dialogue box. Your image should now save in the correct format to the location that you chose.

Turning to the model. Copy and paste the model that I have presented above into a new text document. Assuming that you called your texture “cross.tga” save your model as “plc_cross.mdl” in the same location as your texture. Don’t close your text editor yet because we need to edit the text of your model. We are going to do a search replace. Search for “change_me” and replace all occurrences with “cross”. Save the updated model and now you can close your text editor. This leaves just one thing to do in order to get the new model into the game- edit the placeables.2da file.

Probably the easiest way to get the placeables.2da file is to download this collection of all the 1.69 2da files (the download is less than 1 meg). Open the archive and extract the placeables.2da file. Open this 2da file in a plain text editor and go all the way way to the bottom of the file. Now copy this line -

10000   My_Cross   ****    plc_cross    ****    ****    ****    ****    ****    ****    ****    ****    ****    1

and paste it into the 2da file after all the other entries. Lastly edit the number at the extreme left of this line so that it is actually just one greater than the preceding line in the 2da file. Save the 2da file to the same location as the model and texture.

To test the fruits of your labour, copy these three files into your override folder (sorry, I’m on windows so don’t know where that is on an apple computer). Open the toolset and create a new module with single area with a flat floor (such as castle interior). Now open the the placeables blueprints on the right of the screen (the icon is a wooden table). Choose any placeble and right click on it. This opens a menu. Choose edit copy. This open the item properties window for the copy you are about to edit. If you want, you can change the name and tag while you are here. The third option, Appearance Type, is the one you want . it is a dropdown box. Open it and scroll down until you find “My_Cross”. Select it. You should now be able to find your model of a cross floor design in the custom placeables and be able to use it like any of the built-in models.

Hope that helps (sorry ran out of time, will explain why you need to do certain things later).



Thanks, Tarot. That looks terrific. Unfortunately after a few glasses of wine I’ll need to leave understanding anything till the morning!

Will have a look then.

That’s fine. I’m a scotch person myself, but whatever floats etc. As an alternative you could give [warning, warning - shameless self-promotion plug approaching] try this package I made with help from @GunnersaurusRex (they made the original model that I duplicated for it). I’ve always thought it had teaching potential.


1 Like

Tarot, I’m trying out your suggestion and have reached the bit where you suggest downloading “this collection” of 2da files but it isn’t a link so I don’t know where to get them.

Sorry about that. I did mention that I was a bit time limited when I wrote that. I just managed to forget to make that into a link. Here is what it should have looked like (link inserted) -


1 Like

Hmm, close but no cigar, I think. All went well until I selected My Cross in the menu and it gave me the message “The selected model does not exist”.

Files in my Override folder

The line pasted into the 2da text editor.

Any thoughts? Do I have to tab the columns so they sit under the correct columns?

Your 2da file looks OK. NwN needs the columns to be separated by whitespace - that is any non-printable characters. On the PC my experience is that NwN really prefers those characters to be spaces but I don’t know about on apple or linux based computers.

OK let’s go through a few things. My intent is not to be insulting but to cover all bases. First off, you did remember to save the 2da file after editing it didn’t you? Did you have NwN open at the time you copied those 3 files into your override folder? If so have you tried closing NwN, reopening it and trying again.

If neither of those are the problem, I can take a look at your files if you’ve got some way of getting them to me such as dropbox.

For the time being I’ll go through those steps at my end to double check that what I posted actually works.


1 Like

I just went through and did as I told you. The only thing I had to do that I didn’t mention was to change the resref of the blueprint. Here is the result -

If you look NE of the PC start location you will see the model in the toolset.


pm’d you with a link to download my files which work for me so that you can compare with yours.


1 Like

I’ve PM’d you.

I can’t think what the difference could be. The files are in the override. “My Cross” shows up in the appearance drop down and its only after editing when I try to click OK it tells me the model is missing.

Does it matter which placeable I chose ?
The thought also occurred that it might be something to do with the Resref you mentioned. I changed the tag of the cross to
" it_floorcross" and then changed the resref to the same. Is that okay?

Downloaded your files and I think I know what is wrong. Your text editor automatically added a .txt extension “plc_cross.mdl.txt”. If you edit the file name so that it reads “plc_cross.mdl”, I’m guessing it should work.



Confirming that the .txt extension is probably the problem. Once I removed that so that the proper extension of .mdl (as described in my previous post) was used, your files work perfectly -

As you can see from this screenshot of the toolset with your model selected (green rectangle).


1 Like

Thanks. I’m starting to feel the nearness of treasure !

That was a big help and now my placeable is working. However, when I actually place it I don’t get a cross, I get this. . . Doesn’t show up when I test it either. Inside red box. I’m gonna take a wild stab and say I’ve done something wrong with the transparency?


Have you changed anything? Because the files you sent to me work perfectly with that extension edited. See what happens using the image I sent you. Also if you move it entirely out of that shadow, is it the same. Try opening your image in an image viewer program. Does it look the same?


Ok. Will do.

Still the same.