last update: Jan 1, 2006
This mini guide intends to give newcomers some help to get started with modding KotOR. It includes links to the tools that are required to mod Kotor classified per modding category (experienced modders can also use it for reference purposes).
A complete list of tools is included at the end.
Please direct any questions you may have concerning the present thread to our general modding boards: http://www.lucasforums.com/forumdisplay.php?f=324
* Mac users may want to read this thread first
Sections of this guide:
- Getting started - KotOR Tool
- Retexturing, item making and modeling
- 2.1) practical info concerning models and textures
- 2.2) retexturing & item editing
- 2.3) modeling
- Other mods: dialog editing, module (area) editing, scripting
- 5.1) dialog editing
- 5.2) scripting
- 5.3) area editing
- Making mods compatible
- Other useful tools
- General comments
- Complete list of tools + downloads
1. Getting started - KotOR Tool
If you want to mod KotOR, you will need Fred Tetra's KotOR tool (KT)
, the KotOR "unofficial toolset'. In order to be able to run KotOR Tool, you need to install Microsoft.NET Framework
first. KotOR Tool as well as .Net can be downloaded here
It's amazing to see all what can be done with this utility and Fred continues to add new functionalities regularly.
You can extract your files with KT and edit most of them directly with this tool.
Note that until further notice, the dialogue editor in KotOR Tool does not support the KotOR 2 TSL .dlg format. If you editKotor 2 *.dlg files with the Kotor Tool .dlg editor, you will loose valuable data. You will need tk102's DLGEditor to edit KotOR 2 *.dlg files. See the Dialogue Editing section of this guide.
And don't forget to read the useful readme
that comes with KT
You can leave your feedback and suggestions concerning KotOR Tool in the KotOR Tool forums
2. Retexturing, item making and modeling
2.1) practical info concerning models and textures
To access the game models : make sure that you check the box "build model BIF node in tree" in KT> tools >options. Then go to BIFs > models.bif.
Textures are located in ERFs -> Texture Packs. Texture Packs.
The textures located in swpc_tex_gui.erf are best used for icons and portraits (for the party selection table) and the gui.
The high-res textures are located in swpc_tex A
The med-res textures are located in swpc_tex B
The low-res textures are located in swpc_tex C
Proposed GFF editors:
- You need a graphic editor that supports the .tga format (MS Paint does not support the .tga extension).
- You can use Photoshop or Paint shop pro. Both have available trial versions. Some modders use other paint programs but these are the most commonly used but they are also $$$, especially Photoshop...
But Photoshop CS2 is now available for free and legally!
There is also a freeware program for retexturing: GIMP which is pretty good.
Another free alternative could possibly be Paint .NET (it is not MS paint) - note that I have never tested paint .net that is why I wrote "possibly".
For Photoshop tutorials, see this web site and the modeling and skinning tutorials on our forums.
If you want to go a bit further and make your own items/npcs instead of replacing the original ones:
- hex editor: you'll need one if you make new textures that are not simply replacing old ones. Get a good Hex editor here ($) and another one here - note that now you can also use MDLOps instead of a hex editor.
You'll find more hex editors suggestions in this thread.
- Gff editor if you want to edit .uti files (item files) to add your new items in the game (you can edit .uti files with KT but you need a .gff editor installed in the same folder to get it running also, sometimes you may need to edit your files directly with a .gff editor .) You'll find a tutorial on how to edit items with KotOR tool Here (most of it consists in selecting the properties from drop down menus) and with the GFF editor here (it's the "hard - old school way but you'll learn a lot doing it at least once.)
For more advanced users, you can get useful technical info concerning the GFF format here.
Here are 4 GFF editors you can use. Note that if you are editing .ifo and .git files, or .are files belonging to minigame modules, you should use tk102's editor as the other editors will result in file corruption.
=>K-GFF GFF Editor
by tk102. After bribing him, tk102 made this new gff editor especially for Kotor and TSL as the other non-kotor specific GFF editors corrupt the .git and the .ifo files.
--> Roboius' Modified Bioware GFF Editor
already proposed by the Tools and mods sticky.
--> Bioware's GFF editor
(if you register your Kotor game, you can access the NWN stuff as well)
--> EwaldTheUnimaginative's GFF/Erf editor
=>NEW!GFF File Comparsion Tool
by tk102. This utility performs simple comparison of two GFF files and lists the differences in a text report.
You will find useful documentation concerning the GFF format, here
...and finally, for would be programmers, tk102 made an Activex component to help you make your own utility to manipulate GFF files here
- 2.3) Modeling
- If you want to make new models you'll need cchargins MDLOps available here or at our website, StarWarsKnights.com.
A 3d modeling program such as gmax (free] or 3ds max ($$$ but 30-day trial) is also required.
Note that at this time there are still limitations on importing models. New! 11-24-2005: animations cracked! see this thread.
Taina's replacer for Kotor2 allows you to move vertices and make some edits of npc models.
btw: don't PM me about modeling - I am a total n00b: best I could do was a set of blue balloons (which wasn't supposed to be a set of blue ballons - I must admit that I didn't really put any effort in it and I only played with it during 5 minutes )
- You will also need the tools listed in the Retexturing section just above (Kotor tool, gff editor and hex editor).
You can play the sound files located in the Streamwaves
folders with the Miles sound system
If you want to be able to listen to the files with basically any normal application such as window media player, sound recorder, etc. You can decompress the files with Miles sound tools
(same url as above) and then save in a new folder.
Once decompressed with Miles sound tools, you can also edit sounds with the sound recorder or another sound file editing application such as Goldwave http://www.goldwave.com
and implement them in the game.
You can play the sounds contained in the streamsounds
folder with GoldWave. However, it opens the files at double speed so you have to go to effect/time warp and slow the speed to 50%.
You can drop new sounds in the game in mp3 format.
: you can open the sounds located in the Streamsounds
folder with Goldwave: simply open the sound at a rate of 22050Hz and resave under the format you want.
There are also some sounds located in SWKotor/Data/sounds.bif
: you can extract those sounds with Kotor tool and listen to them with whatever you want.
Movie files are in bik format. To view them, get The RAD Video Tools
(You need Bink and Smacker but both are included in the package).
Movies can be found in the Movies folder.
If you wish to edit movies, you can download a free 30 day trial of a great movie program called Camtasia Studio 2
This program has a feature to capture screens and convert to avi (Binkit converts avi to bik) start your game and anywhere (even cut-scences) you can capure the sequences you want. If you want to modify the audio get: Dubit also free and also from www.techsmith.com
If all you want to do is capture a scene, FRAPS is the best recommendation.
5. Other mods: dialog editing, module editing, scripting
You always need Kotor tool and a GFF editor installed in the same folder as Kotor tool.
See the list of 4 editors posted above.
With this tool you can edit .dlg .utc, .utp, .utw, .utt, .git, .are, .ifo files etc.
if you want. However, Kotor Tool and tk102's bunch of utilities may save you a lot of time...
5.1) Dialog editing:
NOTICE CONCERNING KOTOR 2: the .dlg files are now located in the BIFs and the ERFs. Until further notice, Kotor Tool does not fully support the .dlg format used in Kotor 2:TSL. However, you can edit .dlg files with tk102's DLGeditor.
difference between the .tlk file and the dlg files
The tlk file contains all the text strings that the game will display in Kotor. You can modifiy existing strings in the tlk file with tk102's KotORTLK
or with TalkEd
. However, when you can avoid it, do not edit the .tlk file
because: (1) there is only 1 tlk file and it would easily cause conflicts (2) the size of the file is 5 MB (3) it would change the language of the game
for players having non English versions of the game.
If you must modify the dialog.tlk file in a mod you intend to make available to others you should use a mod installer capable of adding new entries to the existing file in order to avoid incompatibilities, rather than include the entire modified dialog.tlk file with your mod. This should only be necessary when changing
2DA files that require the text to be present in the dialog.tlk file.
If you want to edit dialogues, the .dlg files is where should go when you can (99% of the time). *.dlg files contain all the branches of dialogues during the game. The original *.dlg files can be used with any language version of the game as they refer to string numbers in the .tlk file. However, the changes you make depend on language but at least it does not change the entire game, the effects are "local", i.e limited to the modified branches of the dlg file. (the user wont see the text of a specific dlg if he has the game in another language - but the rest of the game will be functional - language parameters can be easiluy changed by the person who downloads the mod with a GFF editor).
a - DLGEditor (GUI)
my favorite utility for editing existing .dlg files and creating new dialogues: user friendly, a bunch of functions, etc.
b - Kotor tool now includes a dialogue editor as well as many other functions. KT and DLGEditor are complementary. Both of them have some functions that the other doesn't have. (note: Kotor' tools'dlg editor is not compatible with Kotor 2. If you open and save a kotor 2 .dlg file with kotor tool, you will loose a lot of essential data
c - KotorTLK:
is a useful tool to search/modify entries in the .tlk file ( Also by TK102).
d - TalkEd:
is another .tlk editor that can be used to browse, search and modify the dialog.tlk file.
e - FindRefs:
A tool that allows you to search for entries in Kotor and TSL files, including .dlg files.
f- If you like painful solutions...you can always edit dlg files with a GFFeditor
(believe it or not, this was the only available tool not long ago...ouch! - In fact all my mods have been made with this "thing" )
Release your source code please!
These forums are not simply a showroom for your mods but a place wehre people can share knowledge.
KOTOR 2 TSL : XBOX and NON-AMERICAN/CANADIAN USERS: there is a mistake in the nwscript.nss file included in the international and xbox versions of the game. If you want to be able to compile your scripts, you have to correct the error first. For more details, see this thread.
Kotor tool now has an integrated script compiler!
It is quite useful when you work on an extensive project. You can download Fred Tetra's script compiler separately here
You can also use HazardX script compiler
You need a script editor or if you don't have one, notepad
will do the job (if you have windows, you have notepad).
- To make your scripts, simply type your code in notepad and once you're done, save with a .nss extension.
- You'll need to compile your scripts with HazardX's script compiler/decompiler (once compiled you'll get a .ncs file, which is the compiled script. This is what you need for your mod. The .nss file is for reference purpose only but release it with your mod so that other modders can learn how it's done)
On how to use the compiler and troubleshooting with the compiler
, see this thread
If you place the script compiler in the same folder as Kotor tool, when you double click on the compiled scripts in the RIMs with Kotor tool, the .ncs files will be decompiled automatically but in byte code. If you want to learn to understand decompiled scripts, refer to this site
For Kotor 2 only: DeNCS
allows you to decompile scripts into .nss files - note some scripts (scripts with included scritps and random functions mostly) give strange results so double check your files - comparing them with the byte code helps -
Other useful tools for scripting:
is another of tk102's genious product: this utility will allow you to search for a script reference, a global variable, or an object Tag within the .rim files, templates.bif, and scripts.bif. It can also seach for tag fields in the .ut* files. Once your search completed, you can also extract the files to another folder to edit them.
as the title indicates, this utility "will rip all .ncs (compiled script files) out of the *_s.rim files". This one is also by TK102
After this, you can decompile them all with HazardX script compiler/decompiler.
- Global variable comparison tool
by TK102 (for Kotor1 and Kotor2): This utility allows you to compare the differences in Global Variables between two savegames. Quite useful if you want to add sidequests and stuff like that or simply check if some of your scripts that use global variables.
- Not really a tool but to test you scripts quickly, you can use my Party manager & spawning armband
: this armband has four main functions: Add/remove original party members , Recruit/remove your custom npcs, Spawn npcs/creatures objects and test your custom scripts (Read instructions before using). (Kotor 1 - Kotor 2 coming soon)
For a practical trick to use the command prompt see this thread
5.3) Area editing, merchants, new npcs, etc. :
NOTICE CONCERNING KOTOR 2: the cheat console in Kotor 2 is invisible and if you use the "whereami" cheat to get your PC coordinates, you won't see anything...I fixed this problem with an armband that allows you to get your PC coordinates. You can get the Armband here.
Kotor tool now includes an area editor but unfortunately, only a few maps have been completed. This means that you will need to use a GFFeditor unless you pick up one of the maps that have been completed for the KT editor.
You can edit most of the *.ut* (.uti, .utm. .utc., .utd, .utp, .utt) files directly with Kotor tool. Those that are not handled with Kotor tool can be opened and edited with a GFF editor.
Note that Bioware sometimes uses the same filename for two different objects in two different modules. This can sometimes lead to funny and less funny events during gameplay. Use tk102's FindRefs (see above) to search for identical tags. At other times, Bioware used the same file name, per example bandon001.utc on the Endar Spire and bandon001.utc on Manaan but with different tags and contents: this is also problematic so use KT search function to make sure there are no clones.
You can find an area creation tutorial here The tutorial was made when we had very few modding tools and the dialogue section is really outdated now. It won't show you how to use the module editor in KOtor tool either as it did not existed at that time but you'll learn a lot about game mechanics.
I wrote an updated tutorial on area creation a while back, which uses more up to date tools. It's a little outdated now, as it doesn't cover new area models, but it will show you how to set up the area files themselves. It also covers dialog and a few scripts. Basically, an updated version of Doom_Dealer's. ~Marius Fett
- Make sure to use tk102's K-GFF GFF Editor
. This new gff editor was made for Kotor and TSL as the other non-kotor specific GFF editors corrupt .git and .ifo files.
6 ) Making mods compatible
7. Other useful tools:
- Kotor Mod Manager: a practical utility made by cchargin to allow you to Keep track of your mods for Kotor 1 and Kotor 2 and avoid conflicts.
- TSLpatcher by Stoffe -mkb-. this utility edits the dialog.tlk, 2DA files and GFF format files. It can add new entries to dialog.tlk and keep track of the resulting StrRefs so they can be inserted into 2DAs or GFF files. Very helpful to make mods compatible with each other and easy to use.
Here are some additional tools that I find quite useful:
- Language Converter for Custom Dialogs and Item : this tools wll allow you to use modified .uti and .dlg files with any language version of the game. (Converts language identifiers for localized strings in .dlg and .uti files).
- TK102's Kotor Savegame Editor Simply the Best: Change your party stats, name, feats and powers, appearance, inventory, sounds, global variables, etc. Very useful to test your mods.
- Whereami armband for Kotor 2. Since the cheat console is invisible for Kotor 2, I made this armband toto extract your PC coordinates - xyz coordinates, orientation and bearing - from the game. Useful for building new areas and spawning objects. Also tk102 added the possbility to displays the tags and distances of the nearest objects and gives you the option of opening the nearest door.
- Easy warping armband for Kotor 1 (by the author of this post): this armband will allow you to easily warp to any area while playing the game and without having to use cheats and look for the area cheat codes. Useful for testing your mods (Read instructions before using). I also made a Party manager and test your scripts armband to allow you to quickly verify if your custom scripts work as expected. Nothing to see with the great tools above but I find it quite practical.
[*]Modified NWN explorer
Allows you to view some game data, including .sav files.
8. General comments:
Don't be afraid to experiment with the above utilities and looking at other people's mods. You'll learn a lot doing this (However, if you want to release a mod that uses some of their work, even partially, ask the author for permission to do so).
Remember to check for updates of these utilities from time to time.
Now what to do with these tools
is beyond the scope of this mini guide. Please check the other tutorials:
Don't forget: there is also a useful search function
on these forums… use it!