This tutorial is also available in Microsoft Word format below...
PLEASE NOTE: This does not eliminate the usefulness of scripts as this method will not work for many placeables. If you want to use the non script method proposed in the present thread, make sure that your placeable is unique or you'll end up adding your items in half of the in game containers.
Edited By d333:For the script method, please see this thread: http://lucasforums.com/showthread.php?t=143536
Non-Script Method for Adding Player Made Items to Placeables
Resources that you will need to add items to placeables:
• KotOR Tool – Used to locate and extract templates, models, and skins
• GFF Editor – Program used to edit template files.
• A file reference – used for identifying files in KT. I like to use http://www.goldensun-syndicate.net/kotor/codeFAQ.txt
- Starwarsknights.com also has a list of items with complete descriptions for both Kotor 1
and Kotor 2
It is important to note that not all placeables can be utilized using this method. Footlockers, corpses, and other placeables that are not uniquely labeled or not normally used by the game may require the use of scripting to store custom items. Also ensure that the tag is unique.
edited by Darth333: you can easily verify if your placeable is unique with FindRefs available at StarWarsKnights.com
Uniquely Labeled Placeables:
This method will only work with Uniquely Labeled Placeables (ULPs). Examples of ULPs include:
• dan13_nemobody – Nemo’s Corpse
• kas22aa_cont_07 – A footlocker on Kashyyyk
• czerkastore – The Czerka merchant on Korriban
You’ll notice that each of these placeables begin with a truncated reference to the module in which they are found. This is a sure sign that you’ve found an ULP.
The reason that ULP are important is that non-ULPs can be found many places throughout the game. For instance, the placeable “footlocker001.utp” can be found all over KotOR. When the game sees footlocker001.utp in the Override folder, it automatically replaces the instance in the game with the modified version. So, if you were to use footlocker001.utp to store a unique item, the game would place your specified inventory in every instance of footlocker001.utp found in the game.
Step 1: Locate the file that you want to edit.
Open KotOR Tool (KT) and locate the file that you want to add your item to.
Due to the fact that we are looking for ULP’s, the placeables provided in BIFs>templates.bif>Blueprint, Item and BIFs>templates.bif>Blueprint, Characters are not going to be of much use to you.
In order to find ULPs, you will have search for them in the modules. Game modules can be found in RIMs>Modules. Hopefully the file names here are quasi self-explanatory, but just in case they are not, you can find a reference at http://www.goldensun-syndicate.net/kotor/codeFAQ.txt
or at Starwarsknights.com:Kotor 1
and Kotor 2
There are three types of ULPs that you can use to place your item in-game: NPC inventories, merchants, and placeables.
NPC inventories can be used when you want to have to kill something or someone in order to get your item. A good example of this is the Mandalorian, Sherruk, on Dantooine. If you place your item in his inventory, it will be part of his loot once you’ve beaten him.
To use an NPC inventory, find the module in which your character combats the NPC. Using the previous example, to find Sherruk, you would need to locate the appropriate Dantooine module. Using our reference, we find that the correct module is danm14ac.
Looking in KT, we see there are two trees with this label: danm14ac.rim and danm14ac_s.rim. The first tree contains the environmental information for the area and is not much use to us within the scope of this tutorial. The second tree contains information for all the characters, dialogs, scripts, placeables, etc for the module. This is the tree that we want.
Expand danm14ac_s.rim. Notice we see several blueprint files. Since, Sherruk is alive when we find him (but not when we leave him), you will find his template under Blueprint, Characters. Looking down the list we see that most of the characters here are ULPs. Take a picture because it probably won’t be this easy ever again.
Merchant files are used when you want to have to buy your item from someone. To use a merchant to place your item in-game, follow the same steps outlined in the section above. Keep in mind that this time, you will be looking for Blueprint, Merchants. Only the modules that have merchants in them will have this tree available. Merchants will always be ULPs.
Placeable file are used when you want to recover your item from a locker, a rubble pike, a corpse, etc. These will be found under Blueprint, Placeables using the same methods described above. Placeables are usually the trickiest placeable type to locate, due to the fact that a disproportionate number of them are non-ULPs. If the placeable that you want to use is an ULP, GREAT! Otherwise, you may have to consider using scripts to place your item or placing your item somewhere else.
Step 2: Extract the file
Select the file that you want to extract for your mod and the click the Extract button.
Step 3: Open the file with GFF Editor
Open GFF Editor, then select File>Open. Locate the extracted file and open it.
Step 4: Edit the file
You will usually have the option to either replace a current item or create a new one. This will differ slightly based on type of placeable you are using (character, merchant, etc), however it is all pretty much the same.
Either the NPC can have the item equipped or he/she can have it in their inventory.
To equip the item, expand Equip_ItemList and then locate the appropriate node for your item. Once you have found the correct node, select the EquippedRes entry and replace the reference in the Basic Field Data window with your own (ex: remove g_w_lghtsbr01 and replace it with g_w_mysaber).
If the node does not already contain a Dropable flag, you will need to add one by right-clicking on the node and selecting Add [BYTE]. Once you have added the new entry, you will need to select the new entry, enter Dropable into the Field ID window, and enter a 1 in the Basic Field Data window. This will tell the game that the NPC is using the item but can be scavenged from his or her corpse when dead.
To place the item in the NPC’s inventory, simply expand item list and either replace a current node or create a new one. To replace, select the InventoryRes entry and replace the reference, just as outlined above. To create a new node, select one of the existing nodes (0, 1, 2, 3, etc) and use Ctrl+C to copy it. Now select ItemList and use Ctrl+V to paste. Go to the new node and change the InventoryRes to reference your new item.
Merchant inventories are exactly like NPC inventories. To add an item to a merchant’s inventory follow the instructions regarding adding inventory items in the section above.
These steps are exactly the same as those outlined for Merchants and NPC Inventories (not equipped items).
Step 5: Save
Click on another node in the file so that GFF Editor will acknowledge your edit, then click on File>Save to save your changes.
Step 6: Place the new file in your Override folder along with your mod files
FINISHED!! Your mod has now been placed in the game. Congratulations!
This tutorial available in .rtf format here