Вы находитесь на странице: 1из 43

Neverwinter Nights

Toolset Guide

A step by step guide to using the Aurora Toolset provided with Neverwinter Nights
By: Bret Wardle

Neverwinter Nights

Toolset Guide

Table of Contents
Preface................................................................................................................................. 3
Playing the Game ................................................................................................................ 4
Install and Setup .............................................................................................................. 4
Launch and Play.............................................................................................................. 4
Conclusion ...................................................................................................................... 5
Creating, saving, storing modules ....................................................................................... 6
Starting a project ............................................................................................................. 6
Area Wizard .................................................................................................................... 6
Saving and Storing your mod ......................................................................................... 7
Conclusion ...................................................................................................................... 8
Basic Functions of the Toolset ............................................................................................ 9
Terrain Editing ................................................................................................................ 9
Linking Areas................................................................................................................ 10
Conclusion .................................................................................................................... 11
Plantables .......................................................................................................................... 12
Using Plantables............................................................................................................ 12
Painting Doors .............................................................................................................. 14
Conclusion .................................................................................................................... 15
People and Dialog ............................................................................................................. 16
NPCs ............................................................................................................................ 16
Conversation Editor ...................................................................................................... 17
Conclusion .................................................................................................................... 18
Blueprints and Triggers..................................................................................................... 19
Blueprint Basics ............................................................................................................ 19
Enemy Blueprints and Encounters ................................................................................ 20
Triggers ......................................................................................................................... 22
Conclusion .................................................................................................................... 24
Scripting ............................................................................................................................ 25
Script Placement ........................................................................................................... 25

________________________________________________________________________
www.BretWardle.com
1

Neverwinter Nights

Toolset Guide

Scripting Primer ............................................................................................................ 26


Script Writing................................................................................................................ 28
Conclusion .................................................................................................................... 29
Dialog Trees ...................................................................................................................... 30
Dialog Editor ................................................................................................................. 30
Dialog Scripting ............................................................................................................ 32
Conclusion .................................................................................................................... 33
Cutscenes .......................................................................................................................... 34
What is Cutscene Mode ................................................................................................ 34
Using Cutscene Mode ................................................................................................... 34
Conclusion .................................................................................................................... 35
Mod Management and Distribution .................................................................................. 36
Combining Multiple Levels .......................................................................................... 36
Distributing your Mod .................................................................................................. 37
Conclusion .................................................................................................................... 38
Appendix ........................................................................................................................... 39
NWN Printable Scripting Cheat Sheet .......................................................................... 39
Resources ...................................................................................................................... 42

________________________________________________________________________
www.BretWardle.com
2

Neverwinter Nights

Toolset Guide

Preface
Neverwinter Nights is an RPG game released by Bioware in 2002. It was shipped
with a very rich editor called the Aurora Toolset. Since release this editor has
undergone many updates and additions. The community of modders for Neverwinter
Nights is as large as any other modding community, with thousands of Mods
available for download and play all over the internet.
This guide was written for the most current patch of the Aurora Toolset, version 1.69.
Instructions on installing this patch are located in the guide. This Guide takes you
from game installation to Mod distribution, with each chapter adding to the last. You
will continue each chapter where you left off utilizing the skills from the chapter
before. When it is all done you will have the skills to start your very own mod from
scratch.
I, Bret Wardle, am a game designer in the Salt Lake City area. I am also an instructor
with ITT Technical Institute on their Murray Utah campus. I instruct many classes
there, of which my favorite is Level Design. For that class the students learn the
Aurora Toolset, and I would like to pass that knowledge onto anyone else who desires
it. I have greatly enjoyed using this toolset, and have made a few Mods myself in the
editor. You can find them on my website: www.BretWardle.com.
I hope you enjoy the toolset as much as I have, and feel free to send me any Mods
you create, as Id love to play them!
Enjoy!

________________________________________________________________________
www.BretWardle.com
3

Neverwinter Nights

Toolset Guide

Playing the Game


Install and Setup
1.
2.
3.
4.
5.

6.
7.
8.
9.

Insert the NWN Install Disk.


Open the disk up in Explorer and double click the autorun.exe file.
On the pop up window click Install.
Follow all the on screen instructions and fill in information where necessary.
While the game installs go to the Bioware Support page and download the
1.69 Patch The address can be found in the appendix of this guide.
a. This patch not only makes the game run without a CD, but it adds a
ton of tilesets, creatures, costumes, sounds, and more to the Aurora
Toolset!
After Install completes run the Neverwinter Nights game.
The first time you run the game it will configure your system, this should be
done before installing the patch.
After this configuration completes run the Hot Update you downloaded.
Your NWN Game should be all ready to Play and make Mods!

Launch and Play


1. Launch the NWN
Game using the
Windows Start
Menu.
2. On the Splash page
you will see many
options, the top two
are what we want to
focus on: Play and
Toolset.
3. For now we just
want to play the
game, so click Play.
4. After making it
through the Splash
Screens you find
your way to the game menu.
5. We want to start a new game so click New.
a. From here you could also load a saved game, or set up multiplayer
configurations.
6. You can then decide what type of game you want to play, since we are going
to focus on making Mods lets play a Mod (as opposed to the standard
NWN campaign). Select Other Modules.

________________________________________________________________________
www.BretWardle.com
4

Neverwinter Nights

Toolset Guide

7. Look through the list, read the descriptions, choose a Mod that sounds
interesting to you.
8. Select it, then select Play.
9. Choose Create Character, follow the steps.
a. Character Creation is a huge part of NWN The players of these
mods enjoy making a character and keeping him/her for the long haul.
You need to know what goes into this process.
10. After the long process of character creation you will start the Mod.
11. One thing I like to do right after creating a new character is save the character
out so that I can choose it to play any other Mod I want, to do this press ESC
and along the top row select Save Character.
a. Here you can also save the progress in the game if you have to leave
for whatever reason.
b. By saving the character, you can now select them as a pre-made
character when starting any other Mod You can also resave the
character after they have earned a bit of experience. Many players do
this so that they can play hundreds of mods with their own personal
character.
12. Now play through the Mod, Pay specific attention to the game play and notice
what does and doesnt work well for this style of game. Some things to pay
attention to are:
a. Dialog Structure
b. Gameplay Pace
c. Character Development
d. Quest Tracking
e. Map Layout
f. Enemy Placement
g. Ambient Creatures/People/Objects

Conclusion
Before you start any game project you need to understand limitations. By playing
Neverwinter Nights you can start to see what may or may not be possible. You can
also see what the game/engine strong and weak points are. The things that really
make this toolset shine are the Dialog trees, and strong storytelling elements.
Incorporating these into a Mod will fit both the engine, and the demographic of the
NWN Mod playing community.

________________________________________________________________________
www.BretWardle.com
5

Neverwinter Nights

Toolset Guide

Creating, saving, storing modules


Starting a project
1. Open the Neverwinter Nights
Game via the Windows Start
Menu.
2. On the Splash Screen choose
Toolset (as opposed to Play, like
before).
3. Select Start Normally from the
initial pop-up On the bottom.
a. That initial pop-up
allows you to open an
existing Mod, start a new
mod or just open the
toolset
4. Once open click File > New
This opens the Module Wizard
for creating a new Mod.
5. Click Next, and then name your module.
a. This name appears throughout the game so make it aesthetically
pleasing (i.e. not CastleDungeon5556B).
6. Click Next This takes you to the area wizard to create your first area, click
Area Wizard.
a. Every Mod needs one area to exist, thus the Area Wizard is brought
up.

Area Wizard
1. The name you give your area right now will be used as the ResRef for the
area, and cannot be changed once entered!
a. If doing projects that involve importing and exporting areas all of these
will need a unique name. I suggest establishing a naming convention to
avoid overwriting areas (ie BW_SolomonsTomb).
b. You can later change the Name of the area as it appears in game, but
this ResRef that is created now cannot We will discuss what a ResRef
is when we talk about Scripting.
2. After typing a name, select a tile set you would like to use for this area and
click next.
c. These tile sets all have different terrain and prop features Areas are limited
to one tile set choice, but the Module can contain different tile sets for
different areas You do not have to stick to one tile set throughout.

________________________________________________________________________
www.BretWardle.com
6

Neverwinter Nights

Toolset Guide

3. Select the size of your area and click next,


this can be from 2 units to 32 units.
d. 2x2 is good for an interior like a house,
16x16 is the largest I would
recommend going, this creates a huge
area that you are going to have to fill in
or else it creates a boring 5 minute
walk from one end to another.
4. Once the size is established it cannot be
changed, but you can place walls and
blockers to utilize only part of the land.
5. Click finish to wrap up your area creation,
this takes you back to the module wizard,
you can now press Next and then Finish to wrap up the Module wizard.
6. If you want to add more areas to your module you can easily do so by clicking
Wizards > Area Wizard in the toolset.
7. You now have a Mod with a single area GREAT!
8. Save your Mod (File > Save).
9. But before we start going crazy with this Mod, let us first examine where the
files are stored

Saving and Storing your mod


1. Exit the toolset if you havent already.
2. Using Windows explorer navigate to your Neverwinter Nights installation
folder.
3. Inside of that folder there is a folder called modules Open it.
4. You will notice your Mod, and all the other Mods in that folder.
5. NWN requires that all modules be stored in this folder the toolset cannot
open, nor can the game play any Mod that is not in here.
6. Notice the file size of your Mod it should be relatively small since you
dont have much in there.
a. A NWN Mod file is simply a collection of pointers, and text files
(Scripts and Conversations) The bigger they are, the more pointers
they contain obviously.
b. Because they are just pointer files they compress extremely well
(about 20% of the size), We will discuss this more when we talk about
distribution.

________________________________________________________________________
www.BretWardle.com
7

Neverwinter Nights

Toolset Guide

Conclusion
Creating a Mod in the Aurora Toolset is pretty straight forward it is the filling in
that Mod that makes it great. The important thing to remember is where these Mods
are stored You can only Open, Edit, and Play your Module if it is in the Modules
folder. Remember this for distribution, and you need to make sure that if you are
transporting it between multiple computers for editing you are grabbing the latest
iteration each time or else you risk losing your work.

________________________________________________________________________
www.BretWardle.com
8

Neverwinter Nights

Toolset Guide

Basic Functions of the Toolset


Module and Area Properties
1. Open the Neverwinter Nights Game via
the Windows Start Menu.
2. On the Splash Screen choose Toolset.
3. Now that you have a module created, you
can select it from the list of available
modules.
4. Once open, You can now enter even more
module properties, click Edit > Module
Properties.
5. Here you can change the modules name,
supposed date of occurrence, Starting
movie, time and XP scales, all kinds of
stuff. Browse through the various tabs
and change anything youd like.
6. These properties are kind of the backbone
for how your Mod works, If you want a
fast pace onslaught you would ramp up
the XP scale to level up faster, or you
could change dates and time to reflect a futuristic Mod
7. Right click on the area name you created in the left panel and select
Properties this is the Area Properties window. It is similar to the Module
properties, but is specific to this area (as opposed to the global mod).
8. Here is where you can change the name the area displays as in game (which is
shown more often than you might think).
9. You can also change lighting, sound/music, Tag, and scripts for the area
feel free to play around with these settings.

Terrain Editing
1. Once you have your area open you can begin editing the terrain for the area
each tile set has different options for editing terrain but the Paint Terrain is the
green Cliff icon on the top of the right panel.
2. This tool will bring up three sections in the toolset panel list (Features,
Groups, Terrain), each of these sections have different elements you can
place.
3. You can move around your area with the mouse and Ctrl button. It takes a
second to get used to, but once accustom to it you can move around quickly.

________________________________________________________________________
www.BretWardle.com
9

Neverwinter Nights

Toolset Guide

4. Browse through
your possibilities
and place a few
objects or
boundaries. In the
toolset, if the icon is
red you cannot
place the selected
object, if it is green
you can the size
of the icon also
reflects the size of
the item you wish to
place.
5. You can right click
in the area to rotate
the direction of the
item you wish to place; this allows you to change direction of doors, rooms,
stairs, etc.
6. Continue editing terrain until you like the feel of your area.
7. To mark the starting location for your Module click the Blue Circle/Red
Arrow icon toward the top of the right panel, and click where you want the
start to be.
8. There can only be one starting location for a Module.
9. After saving, you can now quickly enter the game and begin playing by
pressing F9 Do so.
10. This will open the Neverwinter Nights game, Walk around your newly created
world and enjoy the surroundings, when finished press ESC and exit the
game.
11. Back in the Toolset, create a second area using the Area Wizard, your module
will now have two areas.
12. You can switch between the two areas by double clicking them in the left
panel of the toolset.

Linking Areas
1. On the edge of both of your areas use the Paint Terrain tool to create exits.
2. The name of these vary per tile set, but it should be something like Corridor
Stairs or Exit.
3. You will know it is an exit because it creates a blue wall, and an arrow, this
symbolizes an exit in the Aurora Toolset. These are how you link two areas
together.
4. Once created deselect the Paint Terrain tool, and you can right click the blue
wall. Do so, and select Properties.
5. The important tabs in this window are: Basic and Area Transition.

________________________________________________________________________
www.BretWardle.com
10

Neverwinter Nights

Toolset Guide

6. In the basic tab you need to set the Tag of the door you are editing, it must
be unique to the project or you will get an error when you play the game and
try to use it.
7. I suggest using a naming convention similar to KingsRoom2Courtyard and
then the other door you will link to would in turn be tagged
Courtyard2KingsRoom these tags ARE case sensitive.
a. Basically, a Tag is the way Neverwinter Nights knows what any
item is. All the items in your mod need to have a unique tag, and you
need to know that tag to be able to reference it in scripts or anything
else. Start your own tagging convention early, and use it for everything
you create. This will keep the Mod neat and organized.
b. Tags are the foundation of EVERYTHING in Neverwinter Nights, it
is the basis for calling items in scripts, setting up transitions, calling
blueprinted creatures, etc. You need to have a firm grasp on the
concept of tags to do anything in the toolset.
8. After setting this tag,
go to the Area
Transition tab, this is
where you determine
where this door will
lead to. In the radio
buttons select Door,
and in the Destination
Tag box type the Tag
of the door you want it
to lead to.
9. Now open the other
area you created an exit in and edit the properties of that door.
10. You will basically just swap the Tags you typed in the first one.
11. Place a starting location near one of the doors, save your progress, and press
F9 to test it.
12. You should now be able to navigate back and forth between your two areas in
game.

Conclusion
You now have the basic building blocks for a module, you can start to create your
maps, and link them together. Start to think about the scope of your final project and
how large you would like it to be. Just remember that for each area you link together
you need at least one objective to happen or else it is just a boring walk around.
All good Mods start with this step. You can then fill in all of the areas with the
people, triggers, enemies, and Stuff that make them come alive. Before you do that
make sure you can walk from the beginning of your mod to the end (and all places in
between), and all the way back again. Only after you have completed that should you
move on.

________________________________________________________________________
www.BretWardle.com
11

Neverwinter Nights

Toolset Guide

Plantables
Using Plantables
1. Open the Aurora Toolset and your module in particular. Load any of the areas
of your project you plan on filling in with NPCs or plantable items (weapon
racks, treasure, dead bodies, etc.).
2. The right panel of the toolset is the key to
placing items in your level, Scroll over
the row of icons at the top and notice
what they read (from left to right):
a. Paint Creature: Just as you would
expect, this is for placing people and creatures into your area.
b. Paint Doors: Placing doors in your level, more on that later.
c. Paint Encounters: This is for placing scripted encounters of enemies, we
will discuss it in another chapter.
d. Paint Items: Placing things like weapons, armor, and general "stuff" in the
level, more on this later.
e. Paint Merchants: This is used very little by most designers, there is a much
easier way to set up a merchant than this button that we will discuss later.
f. Paint Placeable Objects: This is for ambiance items like bodies, signs,
switches, etc. It is also for placing treasure chests, and other containers.
g. Paint Sounds: self explanatory, we wont discuss this in detail but play
with them and you can create some pretty neat effects.
h. Paint Triggers: These are used to call events, we will discuss them in
another chapter.
i. Paint Waypoints: These are basically placeholder location markers. They
are used for NPC paths, and scripting (i.e. - Make a secret chest appear at
Waypoint001).
3. First lets try painting some generic items into our level, click the Paint
Creatures button, and open a few of the lists that appear below.
4. Now select a creature or NPC from the list that you would like to place in the
level, any one will do for now.
5. Simply click in the area to place that item.
a. If you shift click you can place multiple copies of the same item without
having to re-select it in the list.
6. Placing things is as simple as that; these rules apply for creatures, items,
placeable objects, sounds, and waypoints (doors, encounters, merchants, and
triggers function a little different).
7. Select the Paint Items button, pull down the lists, and lay down a couple of
these things in your level.
8. Now do the same with the Paint Placeable Objects button.

________________________________________________________________________
www.BretWardle.com
12

Neverwinter Nights

Toolset Guide

9. Once you have these items placed, notice the buttons toward the bottom of the
toolset, the collection of arrows... These can be used to rotate the orientation
of any of the placed objects from above.
10. The last three buttons on this set are used for that purpose; try them now by
selecting an item and pressing a rotate button (the other arrows are for
navigation around the area, which really is much easier using the mouse and
CTRL button).
11. You can also delete an item by selecting it and pressing the delete key.
12. The next thing to realize with plantables is the ability to edit their properties...
this is the key to making them act the way you want.
13. Try right clicking one of the Painted Items (armor, weapons, etc) and select
properties.
14. Here you can edit all kinds of stuff about the object including its name (how it
displays in game), tag (what the game knows it as), appearance, traits,
properties, etc.
15. Mess with this properties window and get a feel for what can be done.
16. If you didnt already, place a treasure chest in your area (Under Placeable
Objects > Treasure).
17. Now right click it and select properties. You will notice that right under its
picture is an "Inventory..." button. Click it.
18. This is where you can edit what the player will find in the chest when they
open it; this applies to all things under that "Treasure" category.
a. Many other things have the same inventory button. Including people and
creatures.
19. The chests have a built in script attached to them than generates random other
treasure as well, the level of the goods found is based on the High, Low,
Medium, Unique groups within the Treasure section.
a. You can remove this script if you want to manually control everything that
is in the chest.
b. You could also create your own custom script for determining what is
inside.
20. You are going to create a new custom item for this exercise; we will learn a
bit more about this in another chapter, but for now click the "New..." button
towards the bottom.
21. In the list of Item Types select "Key" and click Next. Now name the new
key whatever you want and click "Next".
22. In the palette selection choose Special > Custom 1 and click "Next".
23. In the finish window check the "Launch Item Properties" box and select
finish; this will automatically take you to the Item Properties for that item.
24. In the item properties you can change appearance and many other things, but
the one thing you need to change in particular is the tag... change the key's tag
to: TestKey.
25. After you select "OK" to exit the properties window you go back to the chests
inventory window.

________________________________________________________________________
www.BretWardle.com
13

Neverwinter Nights

Toolset Guide

26. Now navigate to the newly created key in the right panel (Custom 1) and drag
it into the contents of the chest and then select "OK".
27. Now select "OK" again to close out of the chests Item Properties. Now the
chest you created contains a key that we will use in a second but first we
need something for that key to open.

Painting Doors
1. Painting doors is a little different than the other plantable objects. Doors can
only be placed in specific spots. These spots include entrances to buildings or
rooms, and inside of the "Doorway" designation in the terrain editor. If you do
not have either of these objects in your current area make one of them using
the terrain editing functions.
2. Now select the Paint Door tool, and select any one of the doors (preferably
one that matches the area aesthetically). You will see that in the area editor it
is spinning around. When the door is spinning it cannot be placed at the
current location, if it stops then it may be placed (It will snap to the object it
can be attached to).
3. Place your door somewhere in your level and then open its properties window
(right click).
4. Doors have some properties that other objects do not, for instance the ability
to be locked/unlocked and open/shut.
5. In the "Basic" tab mark your door as a "Plot" Item... this means that a player
cannot bash it down with force... they must open it with a key (or you can
open it via scripting).
6. In the Lock tab
check the "Locked"
button, and the "Key
required..." button.
In the "Key Tag"
field type the name
of the key we made
earlier (TestKey).
7. This makes the door
remain locked until
the user has obtained
the key we created
earlier.
8. If you want, you can set up the "Area Transition" tab just like you did last
chapter, this will make your door actually lead somewhere once opened.
9. Now save and press F9 to play the level.
10. Without getting the key, walk over to your locked door and try opening it, you
should not be able to... also try right clicking and using the radial menu to
"Bash" and "Unlock" the door... Neither of these should work either.
11. Now, go open the chest you created and get your magical key... go back to the
door and it should now open for you!

________________________________________________________________________
www.BretWardle.com
14

Neverwinter Nights

Toolset Guide

Conclusion
Although a level can be built with the default settings for items, the true modification
within this system is the use of the properties windows for these items. This allows you to
change the items to fit your particular purpose. It also allows for the creation of puzzles
and many other inventory based events. These add to your story be creating interactive
fiction elements.
Giving your items these details, back-story, and thought make your world seem alive and
inhabited by people like you and me.

________________________________________________________________________
www.BretWardle.com
15

Neverwinter Nights

Toolset Guide

People and Dialog


NPCs
1. Open the Aurora Toolset and your Mod in particular.
2. Open an area that you might want to place some people the player can have
conversations with.
3. Just like the other plantables, items placed using the Paint Creatures tool can
be right clicked and their properties edited Open your module and place a
few creatures using the Paint Creatures button now.
4. Now right click one of those creatures and select properties.
5. You will notice that there is quite a bit of information to be edited here
including stats, tag, appearance, scripts, etc. Look around the properties menu
and change any settings that you so choose.

6. After editing whichever properties you would like, click the "OK" button to
exit back to the area.
a. Just like we mentioned giving the items in your Mod character, the
NPCs and creatures need the same. The more attention you give this
aspect of your Mod the more immersive it will be.
7. A very quick way to give the NPCs a little life in your level is to give them
path nodes to walk around when they are not doing anything (as opposed to
standing still).

________________________________________________________________________
www.BretWardle.com
16

Neverwinter Nights

Toolset Guide

8. To do this simply click the character you want to walk around and with them
highlighted right click anywhere in the area to add a waypoint. These
Waypoints are automatically named in order to create a walking path for the
NPC.
a. The NPC will walk these waypoints in a circle, basically going from 1
to 2 to 3 etc. once the last one is reached they will head directly to
the first.
9. This can create a lot of life with very little effort, and is recommended for any
NPC that does not need to stay completely stationary.
10. If you have an NPC created that you would like to make a merchant it can be
easily done by right clicking again and selecting "Setup Store"... This brings
up the Merchant Wizard.
11. The first window is for setting up the base conversation that happens when the
player clicks the NPC... You will notice that there are also spots for you to
name the Conversation file and Script that will be automatically created
(Remember to use a logical naming convention or else import/export will be
impossible).
12. After filling in the fields press "Next".
13. This is where you choose the base store to use for the shop, these templates
have pricing and wares already setup and are a great way to provide the player
with a basic way to stock up on items before a quest... Select a template and
click "Next".
14. The next window is for editing the creatures faction. Factions are what
Neverwinter Nights uses to determine whether a person/creature is a friend or
a foe. For the time being just make the merchant you are editing part of the
"Merchant" faction and click finish.
15. Save your Mod and press F9 to test your new merchant.
16. Go back into your mod and notice that the Merchant Wizard created a little
flag icon where your NPC is standing... this is the actual Merchant item. By
right clicking this you can select Properties and then edit what wares the
merchant is actually holding (Use the "Inventory..." button just like chests).
You can also edit many of the stores other properties.
17. Make any adjustments you would like and exit out of the Merchant Properties
window.
18. You will also notice that on your left panel you now have both Conversation
and a Script file (as opposed to just the areas that were there before). The
Script will be discussed in another chapter, but if you double click the
conversation you will bring up the Conversation Editor

Conversation Editor
1. In the Conversation Editor you will see the dialog you created earlier. You can
expand and collapse the conversation by using the plus/minus button next to
each line.

________________________________________________________________________
www.BretWardle.com
17

Neverwinter Nights

2.

3.

4.
5.

6.
7.

Toolset Guide

a. The Conversation editor is a very complex tool, and is much more


thoroughly covered in the Dialog Trees chapter, but this is a very brief
overview.
We are going to
add a small branch
to the already
present
conversation. To do
so highlight the
NPC's first
welcome line and
click the "Add"
button on the left
side of the window.
This "Add" button
will add a response
to the highlighted
line; you need to be
careful to make
sure you are
selecting the right sentence to create a response to.
In the window that pops up type something else you would like the player to
have the option of saying, make it something that the shopkeeper would
respond to (i.e. - "Where am I right now") and then click OK.
You will see this line added to the possible responses... now highlight it, and
click the "Add" button again. This will allow you to enter the shopkeepers
response (i.e. - "You are safely in the castle gates of the Queen Victoria
Empire").
Click OK, and you will again see the response appear in the window.
Highlight the merchants new response and once again click "Add". Now add
the final line for your player to say and click OK.
Conversations must always end with a player string or else the dialog window
in game will close before the player can read the response... for this reason
designer will often use the string "[Continue]" in their player response if they
want the conversation to seemingly end with the NPC's dialog.

Conclusion
Giving each NPC in your mod a path, a conversation, and a sense of belonging in the
world is imperative to making a player buy into your story. Without these things the
world will seem full of lifeless robots that have no purpose but to be filler to a town.
Dialog trees can become really complex, really fast. The key to keeping track of the
responses is to map it out on paper first. You can copy/paste whole branches in the
Conversation editor, but if you do not properly plan for it, you can easily make more of a
mess than good.

________________________________________________________________________
www.BretWardle.com
18

Neverwinter Nights

Toolset Guide

Blueprints and Triggers


Blueprint Basics
8. Open the Aurora toolset and your Mod in particular.
9. Select an area in which you would like to create enemy encounters and/or
triggered events (i.e. If the player walks here an NPC conversation starts).
10. First we will focus on creating blueprints of items/creatures this is the key
to efficiently working in the Aurora Toolset.
11. The concept behind this is that you can create and edit an object and then
make fast copies of this object all over the level. Then if you edit the objects
blueprint (i.e. make an enemy more difficult) you can quickly update the
instances of this object rather than having to edit each one youve placed
(which in some cases could be hundreds).
12. Select the Paint Items tool, and select an object from the Miscellaneous >
Gems set, place one in your level.
13. Right click the item you just placed and select Properties Edit the
properties like you have done in the past to reflect how you would want that
item to behave in game.
a. Some examples for items include changing costs, changing their
appearance to match the aesthetics, changing names and tags,
descriptions, etc.
14. Click OK, and go back to the Area Editor.
15. Now right click the item in the Area Editor and select Add to Palette. This
will bring up an item properties window in which you can change the objects
Blueprint ResRef.
a. This is the ONLY
time you can edit
that property, and
it must be unique
to be able to be
called in scripts.
16. The other item properties remain the same as the edited version before. Click
OK to create a blueprint of this object.
17. Now, if you still have the Paint Items tool selected click the Custom tab
under the paint tools. This makes the dropdown lists contain only your custom
items pull down the Miscellaneous > Gems selection and you will now see
your custom item in the list. Select it, and place a few more in the level.
18. Right click on the newly created items and select Properties, you will see
that the new items have all the properties of the blueprint as opposed to the
old defaults.
19. Now right click the item in the pull down list and select Edit. Change the
items Additional Cost, and then press the Update Instances button at the
bottom of the window.
________________________________________________________________________
www.BretWardle.com
19

Neverwinter Nights

Toolset Guide

20. A series of popup windows appear asking various questions along the lines of
This area, or all areas? and Inside of containers or not? Read each of
these windows carefully to make sure you understand what they are asking
and click the appropriate answer.
21. You can now check the properties window for the placed items and see that
they have updated.
22. That is the basics to creating blueprints; this can be done with items, placeable
objects, sounds, creatures, encounters, and pretty much everything else in the
Aurora Toolset.

Enemy Blueprints and Encounters


1. Now select the Paint Creatures tool, and in the list select a type of enemy you
plan on using multiple times in the level. Place one of them in your level.
2. Right click the enemy and select Properties.
3. Edit the properties like you have done in the past to reflect how you would
want your enemy to behave in game.
4. Some examples here include changing statistics to reflect the difficulty of the
level, removing/adding droppable items from their inventory, changing their
appearance to match the aesthetics, adding/removing skills or spells, changing
names and tags, portraits, etc.
5. Specifically go into the creatures inventory.
6. When you create a blueprint of a creature that has items in its inventory those
items will in turn be added as separate blueprints, so to keep the project
organized it is a good idea to remove any unnecessary items from the
inventory of the blueprinted creature.
7. After cleaning up the creatures inventory select OK, and then OK again to get
back to the Area Editor.
8. Again you can right click the creature and select Add to Palette just like
before and it will be added to the custom creatures palette (remember to
change the ResRef).
9. You can now add multiple copies of this creature to the level, which behave
the same as the blueprint (you can quickly update instances in the same
fashion as well).
10. Now create another creature blueprint in the same fashion, so that you have a
total of two creature blueprints in your custom palette.
11. You can place each enemy in a level individually, but the smart and efficient
way to create battles in the Toolset is with the Paint Encounter tool! And even
more specifically making blueprints of these encounters!
12. Select the Paint Encounters tool, and click the Custom tab right below it.
13. Right click on any of the sections in the list and select New.
a. Blueprints for items and creatures can be created in the same way you
are about to use for encounters, as opposed to placing them in game
first I just wanted to show you both methods.

________________________________________________________________________
www.BretWardle.com
20

Neverwinter Nights

Toolset Guide

14. In the Palette selection screen you are just choosing which category you want
the custom item to appear in this choice is all yours and depends on how
you would like to organize your blueprints. After you select one click Next.
15. The next window (Creature List) is where you are choosing which possible
creatures can be spawned by walking through the trigger you are about to
create.

16. In this list switch over to the Custom tab and add both of your custom
creatures to this list.
17. In the list you will see the objects Challenge Rating, Name, Tag, ResRef, and
a Unique flag. This Unique flag tells the encounter whether only one of these
objects can be spawned per encounter.
a. An example would be if you want to create a goblin encounter, but you
only want the possibility of there being one goblin shaman in that
group, you would make your shaman Unique in this list.
18. Make one of your creatures Unique and click Next, select a name for your
new blueprint (make it descriptive like HardSpiders or GoblinRangers). Also
check the Launch Properties button.
19. In the properties window that comes up you can tweak the way your new
encounter functions. The most important sections of this window are as
follows:
a. Min/Max creatures determines how many creatures will be spawned
this will be within the range you set, but the players level will increase
the likelihood of more creatures
b. Spawn Option determines whether the trigger created will fire once, or
continue to fire multiple times
c. On the Creature List tab you can modify the creatures available to
spawn

________________________________________________________________________
www.BretWardle.com
21

Neverwinter Nights

Toolset Guide

d. On the Advanced tab there is an Update Instances button for you to


update all the instances of this encounter in your mod, just like you did
before.
20. After editing what you would like select OK. You are now ready to place an
encounter trigger.
21. To paint triggers you place vertices on the map, and a polygon is created from
these vertices. When the player walks through this polygon the encounter is
then triggered in the location you specify (in just a bit).
22. Select your blueprint in the list and click where you want the first vertex of
your polygon. You will then click once for the other vertices you would like,
and on the last vertex you want to place you will double click to close the
polygon.
23. Your polygon should
remain fully attached to
the floor, if it does not,
you have placed a vertex
on an elevated height
delete the trigger and
start again. When a
trigger is wacky like that
there is a high likelihood
that your player will not
trigger the event when
they walk through it.
24. Once your trigger is
placed select it in the
Area Editor, then right
click in the location you want the enemies to actually spawn and select Add
Spawn Point.
a. Each encounter can unfortunately only have one working spawn point.
b. You want this point to be out of view or else the enemies will
magically appear on the screen and look out of place.
25. Thats really all there is to encounters; you can now change your blueprint and
update instances just like all the other items weve discussed. This makes
changing the games difficulty very very manageable, as opposed to having to
change the properties of hundreds of little goblins you have placed.

Triggers
1. Now we are going to look at another kind of trigger event triggers. These
are used to call a scripted event, in the same fashion as calling an enemy
encounter.
2. These are used for all kinds of things like: Making an NPC walk over and talk
to you when you enter, playing a sound or effect upon entering, Make a door
swing shut upon entering, etc. The possibilities are endless (by endless I mean
within the limits of the toolset ) .

________________________________________________________________________
www.BretWardle.com
22

Neverwinter Nights

Toolset Guide

3. Select the Paint Triggers tool, and in the drop down list select Generic > New
Generic. You can now paint the trigger just like you did for the encounter, do
so now.
4. After placing it right click on the trigger and select Properties. In this
window change the name and the tag so that you can easily select it later.
5. The important part of these trigger properties is the Scripts tab, here is where
you attach what these triggers actually do. The names of the events are pretty
self explanatory (See the Scripting Cheat Sheet in the appendix for an
explanation), we are going to use the onEnter event for this example.
a. The onEnter event triggers the desired script when the player walks
into the trigger
6. Click the Edit button next to the onEnter event, this will open the Script
Editor.
7. We will learn more about scripting in the next chapter, but for now you are
going to create a basic debug script to make sure your trigger is firing
properly it will simply display simple text above the players head.
8. Your script will contain the following:
void main()
{
object oPC=GetFirstPC();
FloatingTextStringOnCreature("Test Trigger 1", oPC);
}
9. We will cover more fully next chapter how this script breaks down, but for
now look at it this way:
a. The object statement is simply setting a variable type of object, and
setting it to the players character.
b. The FloatingText statement just tells the system what to display,
and over whose head to display it.
10. After typing in the commands above save and compile your script (Top Left
of the scripting window remember to name it efficiently). You will see a
message in the bottom window telling you whether or not your script
compiled properly.
11. You can then click the Exit button to go back to the trigger properties
window, you will see that your script has been automatically attached.
12. That is the basics of event triggers you will now see the script you created
in your assets list and can edit it from there when you want to make it do what
you originally intended.
13. Save your Mod, and press F9.
14. Walk around your world and make your way through the encounter trigger
you created. Also walk through the debug trigger you made also (You should
see the text appear).

________________________________________________________________________
www.BretWardle.com
23

Neverwinter Nights

Toolset Guide

Conclusion
Blueprints are the key to saving tons of
time and headaches in the Aurora
Toolset. By using these early and often
you can make your work down the road
very very easy. Imagine if once you get
to balance testing your mod you realize
that the goblins are a bit too easy
(happens ALL the time). Now imagine
changing the spells, stats, armor, etc on
every one of the 150 goblins
individually Now drop that thought
because you were smart and made the
goblins a Blueprint, you only have to
change it once!
Debug scripts, like the one you just made, are good for determining whether your
trigger is working properly in the first place in your Mods. It is also great to use as a
place holder Script. You can make a whole bunch of these with different Text,
place them all where they need to be linked, and then when you are ready simply edit
the script file and you are set! Building your Mod in iterative chunks like this is by far
the most effective and cleanest way to go.

________________________________________________________________________
www.BretWardle.com
24

Neverwinter Nights

Toolset Guide

Scripting
Script Placement
15. Open the Aurora toolset and open your Mod in particular.
16. You should still have your test script from the last chapter in your mod (The
one that places Test Trigger 1 above the player); we are going to start by
attaching that script to a couple of different calls to see how else it could
work.
17. First, place a starting location near one of the area transitions in your level.
18. Then open the area properties for that area and go to the Events tab.
19. Here you will see all the different ways you can attach a script to an area in
your level (See the Scripting Cheat Sheet in the Appendix for explanations).
20. Attach your test script to
the onEnter call of the
area by typing in the
name of the script; press
OK to exit back to the
editor Save and press
F9 to play.
21. Exit the door you should be nearby, and then re-enter the area as you enter
the area you should see the pop-up text appear.
22. Exit the game and go back to the editor.
23. Remove the script from the onEnter call, and add it to the onHeartbeat call.
a. This call will run whatever script is placed here every 6 seconds. Most
scriptable items in the game have this call.
24. Save the mod and press F9 to
play You should see the text
pop-up every six seconds. This
persists wherever you go in the
mod.
a. For this reason you need
to be very careful when
using onHeartbeat
scripts. They will run
every six seconds,
whether you are near the
item/area or not. This can
become very taxing on
lower line computers.
25. Exit the game and go back to the
tool set. Remove the test script
from the onHeartbeat call.

________________________________________________________________________
www.BretWardle.com
25

Neverwinter Nights

Toolset Guide

26. Now open up your module properties window and go to the Events Tab this
is a much larger list. Place the test script in the onAquireItem call.
a. This call fires each time you pick up an item in game as you will soon
see.
27. Move your starting location next to an item you have on the ground
somewhere in your level (if you do not have one, simply place a temporary
item on the ground).
28. Save the Mod and press F9 to test it. When in game pick up the item by the
player you will see the text appear. Now open your inventory (Press I)
and try dropping and picking up items. Each time you pick up an item you
will see the text.
29. Exit the game and go back to the toolset. Open the Module properties again
and add the script to the onPlayerEquipItem, onUnAquireItem, and
onPlayerUnEquipItem calls Go back into game and you will see that this
does just what you would expect (the text appears whenever to acquire, drop,
equip, or un-equip an item).
30. Go back to the toolset and remove all the calls to the test script.
31. Place a temporary enemy near the starting location you have, and open the
enemies properties go to the Scripts tab and admire the many many choices
you have (again, see the Scripting Cheat Sheet in the Appendix).
32. Place the test script on the onPhysicalAttack call. Now save and go back into
the game and you will see that as you attack the enemy the text will pop-up.
33. Exit the game and go back to the tool set.
34. As you can see, there are many places to attach a script in the Aurora
toolset But we want to do more than just show a text string over the players
head, right?

Scripting Primer
1. Before you can really start scripting you need to know some basics with the
Aurora Script syntax. For this guide I have assumed that you have a very basic
knowledge of some basic programming concepts including: variables,
operators, and functions If you do not understand these concepts search
them out on the Internet or on NWN Lexicon. The scripting Cheat Sheet in the
Appendix of this guide is also very helpful.
2. The language the Aurora Toolset uses is called NW Script, it is similar to C
based languages or Java.
3. NW Script can store 5 types of variables:
a. Objects: These are actual objects in the game stored as a variable
(Very handy!).
b. Location: These are location coordinates stored as its own variable
(Again, very handy).
c. Int: Your standard Integer variable any whole number.
d. Float: your standard floating decimal number variable any number
using a decimal point.

________________________________________________________________________
www.BretWardle.com
26

Neverwinter Nights

4.
5.
6.

7.

Toolset Guide

e. String: Your standard string variable, used for storing a sentence,


word, name, etc.
To get anything in NW Script to do anything you have to be able to find it in
the game. This is most commonly done by calling its Tag.
Every item in NWN has this tag, and creating and using a naming convention
for the tags in your mod is extremely important to writing clean bug free
scripts.
The most efficient way to script in NWN is to use the tag to set your object or
location to an object or location variable.
a. By doing this you can refer to that object throughput the entire script
as its variable name, instead of searching the tag over and over.
Setting these variables is fairly easy at its core, for instance the following
script would set an integer variable called intHealth to a value of 50.

void main()
{
int intHealth = 50;
}
8. As it stands however, that value does nothing since there is nothing else in our
script And even more so, It can only be referenced in THAT script, no
others within our Mod.
9. To use variables throughout different scripts, and to put these variable to use
we have to use function calls.
10. NW Script has thousands of built in functions, these calls are what actually do
stuff in NWN. There are a couple of great resources to check out to see a list
of what all of these are, and how to use them:
a. www.NWNLexicon.com: This online guide has searchable and sorting
functions to find what you need regarding any of the functions in NW
Script. It is the go to place
for any information on NW
Script.
b. The Aurora Toolset Scripting
tool itself has a built in
search function on the right
side. This allows you to
search for functions. It will
then give you the syntax for
the function (bottom of the
window), and you can also
double click it to add it to
your current script at the
cursor location.
11. There are so many functions to use, and we do not have the time to go over
them all that research is up to you!

________________________________________________________________________
www.BretWardle.com
27

Neverwinter Nights

Toolset Guide

12. One concept we want to look at is storing variables locally so that they may be
used across multiple scripts.
13. To do this we need to use the SetLocal and GetLocal functions these
functions exist for all five variable types. Take the following script for
example:
void main()
{
SetLocalInt(GetFirstPC(), intHealth, 50);
}
14. This script sets the same intHealth variable as before, but it stores it on the
Player Character, thus we can retrieve it in any other script we see fit.
15. We can then retrieve the value using a GetLocalInt call in the same fashion.
Say for instance we wanted to get its current value, and subtract 5:
void main()
{
int intHealth = GetLocalInt(GetFirstPC(), intHealth);
intHealth = intHealth - 5;
SetLocalInt(GetFirstPC(), intHealth, intHealth);
}
16. If we retrieve the variable and edit it in some way all we need to do is use the
SetLocalInt variable again to reestablish the changed value again as shown
above.
17. You now understand the basic building blocks of scripting, as well as all the
various places you can attach scripts. Unfortunately there are just way to
many possibilities to cover in this guide. The next section will look a little
more into script writing using some very simple examples.
18. Another great tool for NW Scripting is the Script Generator by Lilac Soul. It
uses a very simple interface of buttons and drop downs to write scripts for
you. If you are new to programming or just need some help with syntax it is a
fantastic tool. The download link can be found in the appendix of this guide.

Script Writing
1. In the Aurora Toolset, create a new script by right clicking the Script section
in the left column of the toolset.
2. Re-create the following script in the toolset:
void main()
{
object oTarget = GetObjectByTag("TestNPC");
object oPC = GetFirstPC();
AssignCommand(oTarget, ActionMoveAwayFromObject(oPC, TRUE, 100.0));
________________________________________________________________________
www.BretWardle.com
28

Neverwinter Nights

Toolset Guide

}
3. This script simply makes an NPC run from the player when called.
a. The first line and bracket on line two simply opens the script, you can
see the script is then closed on the last line.
b. The two object calls simply set two variables of type object one is
set to the player character (oPC), and the other is set to the NPC
(oTarget).
c. The Assign Command line will assign the Action Move Away From
Object command to the NPC it also indicates that the object to
move away from is the PC.
4. Delete the temporary enemy from the level and replace it with a generic NPC,
open that NPCs properties and change its tag to TestNPC (as was used in
the script above).
5. Now attach the new script to that NPCs onHeartbeat call, thus making the
NPC run from the player constantly.
6. Save the Mod and go into game to test this out.
7. Exit the game and go back to the toolset, open the new script and change the
object call in the AssignCommand line from oTarget to OBJECT_SELF.
8. This is a built in variable call in the Aurora Toolset that automatically selects
the object the script is tied to. For this reason you would now only be able to
attach this script to a creature.
9. Now quickly create a blueprint of the NPC you created and place 10 or so of
them right by the other (by creating this blueprint they should all have the
script attached to them automatically, and by changing the call to
OBJECT_SELF the script will automatically force the action to the object its
attached to).
10. After placing the NPCs save the Mod and press F9 to play it. Walk toward
the crowd of people and watch them flee in the terror of your ominous glory.

Conclusion
Scripting is the lifeblood of the Aurora Toolset It is how you make anything in
game behave the way you want. Great Mods have great scripting. It is what makes a
mod unique. If all you do is make the engine take over every little thing in the World
it will feel very pre packaged and boring. Using scripts you can customize the
behavior and actions of almost anything in your game world.

________________________________________________________________________
www.BretWardle.com
29

Neverwinter Nights

Toolset Guide

Dialog Trees
Dialog Editor
1. Open the Aurora toolset and open your Mod in particular.
2. You are going to create journal entries, tie them to a dialog, create dialog
scripts, and ultimately design a simple fetch and return quest with dynamic
conversations and a compelling battle Seems like a lot, but with the Aurora
toolset, it is fairly easy.
3. To begin this, lets take a look at the Journal editor. Select Tools > Journal
Editor. This editor works somewhat similar to the Conversation Editor in the
fact that you add nodes to a root, and then add branches to that node. Basically
what the system does is adds these lines to the players Quest Journal in game
so that they can track what quests they have accepted and/or completed.
4. Add a new Node by highlighting the Root and clicking the Add button on
the left side. This is your base node and will be displayed as the topic in the
journal.
5. Change the Name to Retrieve the Gem.
6. Change the Tag to RetGem.
7. The other
information is not
important to this
exercise.
8. With your base node
selected, click the
Add button three
times to add three
entries to your
journal.
9. Make Entry001s
Text read: I have
accepted the task of
retrieving a gem for a civilian, a beast down the trail apparently stole the
gem.
10. Make Entry002s Text read: I have killed the beast and retrieved the gem. I
must now return to the civilian.
11. Make Entry003s Text read: I have returned the gem to the civilian and
received my reward.
12. Also make Entry003 have the Finish Category box checked this is what
makes the quest go from Accepted to Completed in game.
13. That is the basic idea of creating journal entries in game this is the key way
to convey information regarding tasks and information to your players (this
transcends most game genres, and is a useful system in some form in almost
all games).
________________________________________________________________________
www.BretWardle.com
30

Neverwinter Nights

Toolset Guide

14. Make sure you click the Apply button in the Journal Editor OR YOUR
WORK WILL BE LOST then click OK.
15. Place a generic NPC near your starting point, and change its properties how
you see fit make sure that your Faction is set to Commoner and change the
tag to GemQuestGiver make the Name something that looks interesting
because it will show up in the game.
16. If you have been following along in the chapters you should have already
created a blueprint for a Gem Make another one! Make the Tag read
QuestGem and make the ResRef read questgem.
17. Now open the Conversation Editor. Since you know how to use this tool I will
not explain it, but make the speaker tag for the conversation read
GemQuestGiver (the generic NPC you created), and then re-create the
following conversation:

18. You will notice the use of tokens (the <Class> calls). What these do is
dynamically change to make them fit the player of your game. You can place
these in any conversation by simply right clicking in the text box and selecting
the desired token from the list.
19. Now we are going to tie some aspects of the Journal to this conversation.
Because it is used so often there is a distinct tab for doing this in the
Conversation Editor.
20. Select the You may call me line and go to the Other Actions tab in the
conversation editor. Here can control the Journal Entries given by various

________________________________________________________________________
www.BretWardle.com
31

Neverwinter Nights

Toolset Guide

dialog. Select Retrieve the Gem from the Journal drop down list and make
sure it reads 1 in the entry value.
21. Now go to the Yes, I have line and do the same thing, but make the
journal entry read 3 (this will make these lines give, and complete the
journal respectively).

Dialog Scripting
1. You may have
noticed that
this dialog has
two starting
points
How does
the game
determine
which one to
use? you
may be asking
yourselves.
Well, you are about to utilize the Text Appears When tab.
2. Highlight the Hello Again line and go to this tab, and press the Edit
button. You only want this text sequence to appear if the player has accepted
the quest. Therefore you are going to write a simple script that makes this
check. It will read as follows:
int StartingConditional()
{
object oPC = GetPCSpeaker();
int nInt;
nInt=GetLocalInt(oPC, "NW_JOURNAL_ENTRYRetGem");
if (nInt < 1)
return FALSE;
return TRUE;
}
3. This script just checks if the player has gotten to a certain point in the quest
and will display the text if this evaluates to true.
4. Now highlight the Yes, I have line and click the fancy Wizard Hat icon.
Select the Item in Inventory checkbox and click next then enter the
QuestGem tag and add it to the list. Then click next and name your script.
5. This makes the Yes, I have line only appear if they actually have the gem in
their inventory (which we will script to happen shortly).
6. Now highlight the Here is your reward and select the Actions Taken
tab you are going to create a script that gives the player some gold and
XP To do this click the Magical Wizard hat again.

________________________________________________________________________
www.BretWardle.com
32

Neverwinter Nights

Toolset Guide

7. Select the Give Rewards check box and press next, and then enter 500 in the
gold text box and 1000 in the XP text box. Click next and name your script.
8. That is all that needs to be done with the Journal and Conversation editor
Open up your NPC properties, and make sure the conversation you just made
is the default conversation. Now lets script the dangerous beast you have read
so much about.
9. Navigate a ways down from the NPC you created and place some sort of
enemy. Open the properties window and adjust the statistics, name, etc as you
wish. The major thing we are going to deal with here is the onDeath script
go to the scripts tab and click the Edit button next to this script.
10. You need to add the following chunk to the end of this script (before the close
brackets:
object oPC = GetFirstPC( );
// This simple while statement makes the script reflect on the PC if the creature is
// killed by any party members
while (GetIsObjectValid(GetMaster(oPC)))
{
oPC=GetMaster(oPC);
}
if (!GetIsPC(oPC)) return;
AddJournalQuestEntry("RetGem", 2, oPC, TRUE, FALSE);
CreateItemOnObject("questgem", oPC);
11. This script updates the players journal, as well as places the gem in their
inventory automatically.
12. Save the Mod and press F9 to play.
13. Test your new scenario, paying special attention to your Journal (Press the J
Button). Also try the dynamic dialog tree. If it does not work try debugging it.

Conclusion
As you can see it doesnt take much to create a fairly simple side quest (or even a
main quest for that matter). Using the power of Conversations, Journal Entries, and
Scripting in conjunction with one another is the true power of the Aurora Toolset.
Little details like this make a good Mod, great! Filling the world with people who are
alive and talk, and maybe even have these kinds of favors to ask of you make the
world believable, and enjoyable.

________________________________________________________________________
www.BretWardle.com
33

Neverwinter Nights

Toolset Guide

Cutscenes
What is Cutscene Mode
1. Cutscene Mode in the Aurora toolset is a way for you to turn off the Heads Up
Display (HUD), and controls in the game.
2. This allows you to control everything via scripting and tell a story without the
player possibly missing or breaking it.
3. This mode is turned on and off via scripting, but because there is a full loss of
control in game you have to script every single thing that will happen.
4. Also, If your call to turn the Cutscene Mode off never gets reached (script
error, or bad syntax) then the user will be stuck without controls and needs to
quit the game via CTRL+ALT+DEL (very very bad).
5. This mode also has built in calls for fading to black, and other neat camera
controls which we will look at right now

Using Cutscene Mode


1. Open the Aurora toolset and open your Mod in particular.
2. We are going to create a very simple cut scene in our mod just to show you a
few of the functions you can use.
3. To begin, add an NPC somewhere in your starting area and make sure their
faction is set to commoner, and change its tag to Sleeper.
4. We now want to create a very simple conversation for this character.
5. Create a root line that reads: You really shouldnt have talked to me Now
it is time to go to sleep
6. Follow that up with a response choice of What?!? Are you crazy?!?
7. We are then going to create a script that fades the game to black, turns on
cutscene mode, fades it back in, runs some functions, and then gives back
control and such.
8. With the response line chosen, go to the Actions Taken Tab and click the Edit
button for the script to create a new script. Recreate the following:
void main()
{
object oTarget = GetObjectByTag("Sleeper");
object oPC = GetFirstPC();
int nInt=GetGold(oPC);
FadeToBlack(oPC, FADE_SPEED_MEDIUM);
AssignCommand(oPC, TakeGoldFromCreature(nInt, oPC, TRUE));
AssignCommand(oTarget, ActionMoveAwayFromObject(oPC));
DelayCommand(3.0, SetCutsceneMode(oPC, TRUE));
DelayCommand(3.0, FadeFromBlack(oPC, FADE_SPEED_MEDIUM));

________________________________________________________________________
www.BretWardle.com
34

Neverwinter Nights

Toolset Guide

DelayCommand(10.0, FadeToBlack(oPC, FADE_SPEED_MEDIUM));


DelayCommand(15.0, FadeFromBlack(oPC, FADE_SPEED_MEDIUM));
DelayCommand(15.0, SetCutsceneMode(oPC, FALSE));
DelayCommand(20.0, DestroyObject(oTarget, 0.0));
}
9. Save the script and the Mod.
10. Now run the Mod.
11. Walk up to the NPC and start the conversation You will see that the cut
scene starts, and then the player is robbed of all their gold. The cut scene then
ends and gives back control.
a. This is not something you would normally want to do in your game,
but it makes a good example for understanding the cut scene mode.
12. The possibilities are nearly endless in Cut scene Mode Anything that you
could normally script is possible. Using the ActionDelay function and other
movement functions are the key.
13. To make this a little cleaner we could also use some camera controls to
properly show the player what is going on, and also play some animations to
make the stealing of the gold more believable.

Conclusion
Adding cut scenes to your Mod can add depth, and allow you to tell a story without
player control. By doing this you can focus on said storytelling and not be bothered
with HUD or the player simply walking away from the story. This power is a very
fine line however, players want to play they do not want to be stuck watching a
movie. Use cut scenes for imperative information only, dont get in the habit of
making long scenes with tons of information.

________________________________________________________________________
www.BretWardle.com
35

Neverwinter Nights

Toolset Guide

Mod Management and Distribution


Combining Multiple Levels
1. Open the Aurora toolset and open your Mod
in particular.
2. When you are working on a Mod that has
multiple team members you will need a way
to combine all of the sections of the Mod you
have worked on. This is where Importing and
Exporting come into play.
3. Click File > Export
4. This brings up a list of files you are going to
export, which is empty right now. Click Add
Resources.
5. This is where you select what to export
The key here is that you can only select one
type of file at a time (ie Scripts, Cionversations, Areas, etc). To choose
which one you want to view change the Resource of Type drop down on the
bottom.
6. Change said drop down to Comnversation Files, and select all the items in the
list.
7. Click Export.
8. This will add those files to the previous list, and allow you to add more
resources.
9. Continue this procedure until you have gone through all of the resource types,
and all of the files in your mod.
10. Now once back to the export list with all of your resources present, click OK.
11. Now you will name the exported .erf file (adhere to naming conventions).
12. The next screen will allow you to make comments to the file (version numbers
fit nicely in here or an export date).

________________________________________________________________________
www.BretWardle.com
36

Neverwinter Nights

Toolset Guide

13. Create a new Mod.


14. Go to File > Import and import the .erf you just created.
15. Here you can select which items in particular you might want to import
Click the Select All button, and then OK.
16. Now it will allow you to view the comments on the .erf, click OK.
a. For things to import properly they must all have a unique ResRef
All conversations and scripts must also be named uniquely. This is
why using a naming convention is so important. If you are making a
Mod with multiple team members and people dont name this uniquely
when you try and import the various pieces you will overwrite each
others items and the Mod wont work.
17. After importing you can now edit all the imported items in the new mod
18. This will combine all the team members work into the single Mod which you
can then distribute on the web.

Distributing your Mod


1. Distributing your Mod for others to play and enjoy (hopefully) is really what
the Aurora Toolset is about. There is not much to it, but I do want to cover a
few things here.
2. In the toolset open your Module Properties and navigate to the Description tag
3. This is what people will see when viewing your Mod in the list in game
These descriptions have a somewhat standardized format, and following that
format is fairly important. Use the template below for your mod description:
Mod Name
by Your Name
Brief paragraph telling about what the Mod is make it Sell the idea of the
Mod
Recommended Level: (The recommended starting level of the player)
Number of Players: (The number of players intended usually 1)
4. By filling this in properly, once the player is in game they can quickly view
what your mod is about as opposed to others they may have downloaded.

________________________________________________________________________
www.BretWardle.com
37

Neverwinter Nights

Toolset Guide

5. The next step is saving your Final Version of the Mod and then compressing it
to a .zip file.
a. Because Mod files are just a bunch of references they actually zip up
really well They end up around 25% of the total size after zipping.
This is important because when you distribute on the web, size
matters.
6. Some people like to include a ReadMe.txt file in their zip this is your call. I
have seen some that advertise other Mods, or ask for donations Some
people just duplicate the Mod Description we talked about early. Whether or
not you include this file is up to you.
7. After you have this file it is time to upload it to the web where you do this
and how you advertise it is totally up to you.
8. I would start in the Bioware forums for suggestions and discussion channels,
but there is not too much more insight I can give.

Conclusion
Congratulations on creating a Mod in Neverwinter Nights! The community around
this game is large, and finding people to play your game is easy if you look in the
right places. After you have gone through this guide, take some extra time on your
next mod an plan everything out. Now that you more wholly understand what the
toolset is capable of, it will allow you to brainstorm and work more efficiently.
Building Mods takes practice, and the more you work with the toolset the easier it
will become. Keep making Mods and they will increase in quality with each one!

________________________________________________________________________
www.BretWardle.com
38

Neverwinter Nights

Toolset Guide

Appendix
NWN Printable Scripting Cheat Sheet

________________________________________________________________________
www.BretWardle.com
39

Neverwinter Nights

Toolset Guide

Module Property Scripts


onAquireItem

This script runs every time the player puts an item in their inventory. Usually uses an evaluation statement to
determine what item was acquired

onClientEnter

This is ran when the player selects the Mod to load

onClientLeave

This is when the player exits the Mod

onCutsceneAbort

This runs when the player skips a cut scene

onHeartbeat

Runs every 6 seconds (Be very careful with using these in excess)

onModuleLoad

Ran when the module first loads

onPlayerDeath

Ran when the player dies

onPlayerLevelUp

Ran when the player levels up

onPlayerRespawn

Ran when the player respawns after dying (as opposed to reload from save point)

onPlayerRest

Ran when the player rests in game

Area Property Scripts


onEnter

Ran when the player enters the area (will run every time unless otherwise specified)

onExit

Ran when the player clicks to exit the area

onHeartbeat

Runs every 6 seconds (Be very careful with using these in excess)

Trigger Scripts
onClick

Ran when the user clicks on the trigger (the trigger must be marked as clickable in its properties)

onEnter

Ran when the player walks into the trigger

onExit

Ran when the player walks out of the trigger

onHeartbeat

Runs every 6 seconds (Be very careful with using these in excess)

Dialog Editor Scripts


Text Appears

This is a unique type of script that is ran before a dialogue line is displayed if it evaluates to TRUE then
the line is displayed, if FALSE the line is not displayed

Actions Taken

This script is ran when the line of dialogue it is attached to is ran (In the case of a response from the player, it
is when the text is selected, not displayed as a choice)

Creature Property Scripts


onCombatRoundEnd

Ran each time a combat round ends (This works a lot like onHeartbeat, but only in combat scenarios)

onConversation

Ran when the default conversation is triggered

onDamage

Ran when the creature takes any damage

onDeath

Ran when the creature extinguishes its health points

onDisturbed

Ran when an NPC is targeted for an attack, conversation, or any other obtrusive behavior

onHeartbeat

Runs every 6 seconds (Be very careful with using these in excess)

onPerception

Ran when the player enters the creatures perception range (this range is set in the properties)

onPhysicalAttacked

Ran when the creature is attacked by physical means (not status effects like poison)

onRested

Ran when the creature has finished resting

onSpawn

Ran when the creature is first spawned (this never happens if the creature is pre-placed in the level)

onSpellCastAt

Ran when the creature is the target of a spell

________________________________________________________________________
www.BretWardle.com
40

Neverwinter Nights

Toolset Guide

Variable Declaration
object, location, int, float,

When creating a variable that will be used in the current script alone you can declare it with this

string

statement, a name, and a value:


object oPC = GetFirstPC()

SetLocalInt( )

or

int iHealth = 50

or

string sNames = Karl

To set a variable that will be accessed from another script, and possibly even another area you must
store it on an object (usually the player character). To do this you declare it with this script and
pass it the object to store it on:
SetLocalInt(oPC, DeathCount, 0)
In the above example oPC is the object where the Integer is stored, DeathCount is the variable
name and 0 is the initial value. This functions for variables of all types, just change the call

GetLocalInt ( )

To retrieve a variable stored on an object you can used this call in conjunction with the object on
which the variable is stored, as well as its name:
GetLocalInt(oPC, DeathCount)
I can then utilize/manipulate the variable as needed within the current script. to save it back to the
object I must then use the SetLocalInt( ) call. This functions for variables of all types, just change
the call.

Common Script Calls


AssignCommand( )

When calling an action from a trigger or conversation (rather than a creature itself), you must put
the action inside of this call or else it will try to run the action on the trigger

ActionPlayAnimation( ) and

These will play a specific animation on the specified item. By adding the Action to the start of

PlayAnimation( )

the call you will add it to the cue otherwise it will force the animation right then.

ActionLockObject( ) and

Used to lock/unlock doors and chests. Usually paired with the GetObjectByTag( ) call:

ActionUnlockObject( )

ActionLockObject(GetObjectByTag(TestDoor))

ActionStartConversation( )

This forces the start of a conversation by passing it a person to talk TO, and a conversation file
this will almost always need an AssignCommand():
AssignCommand(oTalker, ActionStartConversation(oTalkee, Conversation1))

ActionMoveToObject( ) and

Moves a target object to or away from an object by an integer range:

ActionMoveAwayFromObject()

AssignCommand(oRunner, ActionMoveToObject(oTarget, 100.0)

ClearAllActions(TRUE)

This is needed when calling any action after a battle; otherwise your cool down will prevent you
from doing the action required If your Mod displays You are too excited to talk it means you
need to make this call beforehand

ChangeToStandardFaction( )

This changes the target creature to one of the four standard factions upon call the four standard
factions are as follows: 1:Hostile, 2:Commoner, 3:Merchant, 4:Defender

CreateObject( )

This spawns an object by passing a ResRef, a location, and a new tag for the object:
CreateObject(ResRefString, oLocationVariable, NewObjectsTag)

FloatingTextOnCreature( )

Good debugging tool to simple place a text string above oPC

GetItemActivatedTarget( )

Returns which enemy a wand or ranged weapon is currently pointing at

GiveXPToCreature( ) and

Simply gives XP or gold to the creature, you just pass it the creature and the amount:

GiveGoldToCreature( )

GiveXPToCreature(oPC, 1000)

GetObjectByTag( ) and

Returns an object value or location value for whichever item has the tag specified:

GetWaypointByTag( )

GetObjectByTag(TestTag)

AddHenchman( ) or

Adds an NPC to the players party by passing the master and the henchman:

RemoveHenchman( )

AddHenchman(oMaster, OBJECT_SELF)

________________________________________________________________________
www.BretWardle.com
41

Neverwinter Nights

Toolset Guide

Resources
www.NWNLexicon.com The go to source for all things scripting in the Aurora
toolset. Includes the syntax and examples for every function in the toolset.
nwn.Bioware.com/forums The Bioware Neverwinter Nights forums. Great place
to advertise your Mod, as well as ask for help with any issue you may be having.
nwvault.ign.com/fms/Download.php?id=68700 This is a handy script writing
tool I use fairly often. It takes care of some of the syntax issues you may be having.
http://files.bioware.com/neverwinternights/updates/windows/english/NWNEnglis
h1.69HotUUpdate.exe This is the address for the 1.69 Update to the NWN Game.
There are a lot of great additions to the toolset with this update Highly
recommended!

________________________________________________________________________
www.BretWardle.com
42