...
Some possibly interesting reviews of deleted lines; see also Cut Items for more details.
- Line 23: Probably another Was "Misc" item due to the small box" - a type of container. The only remaining information being is EquippableSlots (set to the same as other misc/inventory only items) sized 2x1 - it_sbox
- Line 30: Looks to be a Was the Repeater Crossbow - models WBwXr - still are in the game files, and look like your "classic" repeater crossbow. However additional ranged items can't be added apparently.
- Line 43: Probably another Was "Misc" item due to the , Tall". The only remaining information being was EquippableSlots (set to the same as other misc/inventory only items). Unknown size.
- Line 48: Looks to be a Was the Nunchaku - models WSpNn - still are in the game files, and look like one (chain connecting two end points). No idea if there are any animations left engine references / animations remain however.
- Line 54: Was "Divine Spell Scroll". iit_spscroll000.tga and iit_spscroll001.tga exists (a green scroll, BG style) which in a referenced TLK line is for divine spell scrolls. Presumably they did this before scroll icons were dynamic based on what was cast.
- This actually is reusable (like, the use animation is "reading", the description is the spell being cast, etc.) but has some quirks - ie it acts like a scroll where in some cases just assumes 1 castable property and the item's icon is used without the spell appearing in the background as with misc items. There are other issues like Learn Scroll isn't present (may be a good thing) and the last use of the item - even if it is 1 use/day - removes it from the inventory unless it's plot.
- This actually is reusable (like, the use animation is "reading", the description is the spell being cast, etc.) but has some quirks - ie it acts like a scroll where in some cases just assumes 1 castable property and the item's icon is used without the spell appearing in the background as with misc items. There are other issues like Learn Scroll isn't present (may be a good thing) and the last use of the item - even if it is 1 use/day - removes it from the inventory unless it's plot.
- Line 67: A Was "Bag". "it_bag" - so an old container bag perhaps. it_bag.mdl is one of the more common default droppable item models/loot bags and even has an icon iit_bag.tga (1x1 icon)
- Line 68: Probably another "Misc" item due to the only remaining information being EquippableSlots (set to the same as other misc/inventory only items). Unknown size.
There's a number of dummied/padding/"XP2SpecReq" which presumably are just unused for XP1 and XP2 item types.
Not sure if any of these have any hardcoded relevance, probably not but sometime it might be worth testingThe only one with any remaining engine coding is line 54 as noted above, the others can be reused freely without issues.
2DA Columns
Column | Example Contents | Valid Values | Description and Notes | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Name | 106 | String reference | Odd it's first but it's the base game item name (eg; unidentified items, in toolset, etc.) string reference point to rows in dialog.tlk / custom .tlk file. | ||||||||||||||||||||
label | shortsword | Anything | Human readable name of the item | ||||||||||||||||||||
InvSlotWidth | 1 | 1 - 10* | The number of horizontal squares occupied by this item's icon in the inventory panel.
| ||||||||||||||||||||
InvSlotHeight | 2 | 1 - 6* | The number of vertical squares occupied by this item's icon in the inventory panel.
| ||||||||||||||||||||
EquipableSlots | 0x1C030 | Bitflag of slots | A bit flag indicating the inventory slots into which this item can be placed. See the Equippable Slots notes at the bottom for more information. | ||||||||||||||||||||
CanRotateIcon | 1 - rotated in quickbbar (eg; swords) 0 - not rotated in quickbar (eg; potions) | 1 if inventory icon for this item may be rotated 90 degrees clockwise, such as when placed on a player's quickbar. 0 if the icon may not be rotated. | |||||||||||||||||||||
ModelType | 0 = a simple item (can only select an icon/model pair); 1 = a colored item, e.g. cloaks and helms (can additionally select colors); 2 = a configurable item, e.g. weapons (select three item parts instead of an overall model); 3 = armor. | A code indicating how much the look of this item can be customized. Given some of the ModelType values are tied to specific lines due to the hardcoded of armor and so forth only a few are really usable for new lines.
| |||||||||||||||||||||
ItemClass | WSwSs | Model resref | Resref of the item's model, or the base part of the resref Due to the above ModelType, MinRage and MaxRange this will end up being:
This is used to prefix the visual effects you can apply using iprp_visualfx.2da so don't make it too long. 5 characters is the recommended maximum. | ||||||||||||||||||||
GenderSpecific | 0 | 0 if icons and models identical for all genders of players 1 if the icons and models differ | Indicates if the item changes appearance based on the gender of the possessor. Only works for non-composite items, ie; simple, layered and armor Needs further testing since the only two instances of this are armor and cloaks which are special and weird, and for some reason arrows which as above it will ignore it for since it's composite. It changes the naming convention adding a gender into it - eg: ItemClass_gender_modelnumber.mdl - miscgen_m_001.plt / dds / mdl for a "miscgen" item, male (m), ID 001. At least cloaks are named this way, although since the cloaks only have icloak_m_001.plt preusmably it'll just default to loading the "m" variant if the "f" isn't found? | ||||||||||||||||||||
Part1EnvMap | 1 | 1 to use environment mapping 0 to not use environment mapping (transparency instead) | Indicates how the alpha channel for model part 1 is used. | ||||||||||||||||||||
Part2EnvMap | 1 | 1 to use environment mapping 0 to not use environment mapping (transparency instead) | Indicates how the alpha channel for model part 2 is used. Only used for model type "2" items. | ||||||||||||||||||||
Part3EnvMap | 1 | 1 to use environment mapping 0 to not use environment mapping (transparency instead) | Indicates how the alpha channel for model part 3 is used. Only used for model type "2" items. | ||||||||||||||||||||
DefaultModel | it_bag | Resref of MDL file | Items can have a model named after their ItemClass identifier - eg: it_midmisc_151.mdl - which is a gem model - and that is loaded. All weapons need this setting up properly (with different numbers for different parts, and sometimes top, middle and bottom references). See existing items for examples. If a model is not found then this is the default model used, usually when the item is lying on the ground. Armor and cloaks get a seemingly hardcoded ground item (at least a replacement for this value, not sure if it can be changed) see Items for more info on what they are. This makes this not work for those particular hardcoded entries. | ||||||||||||||||||||
DefaultIcon | invalid_1x1 | Resref of a texture inventory Icon file | The default icon used when the item's icon doesn't exist. | ||||||||||||||||||||
Container | 0 if this item is not a container 1 if this item is a container and can contain other items | Indicates if this item can contain other items, like a bag. | |||||||||||||||||||||
WeaponWield | **** = standard one-handed weapon (although may be two handed if small creature is wielding it) 1 = not wieldable; 4 = two-handed weapon (polearm) 5 = bow 6 = crossbow 7 = shield 8 = double-sided weapon 9 = creature weapon 10 = sling 11 = throwing weapon (dart, shuriken or throwing axe) | This defines the base kind of weapon it is (or if it isn't a weapon as such, such as if you added equippable wands) This affects:
Note that since you can't add more ranged weapons (See notes at the top) 5 and 6, 10 and 11 are pretty much hardcoded to their respective lines. | |||||||||||||||||||||
WeaponType | 1 = Piercing 2 = Bludgeoning 3 = Slashing 4 = Slashing and Piercing 5 = Piercing and Bludgeoning | The type of damage inflicted by this weapon (item). If it is of two types, the game tests both types and takes the better one to do damage. | |||||||||||||||||||||
WeaponSize | 1 - tiny 2 - small 3 - medium 4 - large 5 - huge | The size of the weapon item. These numbers correspond to the rows in creaturesize.2da - and is relative to them (eg; what weapons are considered "2 handed" for Small creatures like Halflings for instance, and which weapons are too large or small for certain sized creatures to wield). Note while the Bioware documentation suggests just 1- 5 (with 5 not being used by the game by default) there's no reason to suggest it couldn't go a bit higher (although no lower presumably). If you test this add a note here. Should be blank **** for non-weapons. | |||||||||||||||||||||
RangedWeapon | 1 or more if ranged weapon **** or 0 if not ranged | Bioware set this to an index to the row in Baseitems.2da specifying the type of ammunition used by a ranged weapon. Projectile weapons point to either row 20, 25, or 27. Thrown weapons point to themselves (i.e. they are their own ammunition) but the exact number does not make a difference as long as it is not 0. Note: it does not appear to be possible to create a new ranged weapon, although it is possible to replace an existing one with a new ranged weapon. | |||||||||||||||||||||
PrefAttackDist | **** if not a weapon Float values if a melee weapon | **** if not a weapon. Otherwise the preferred distance for attacking with this weapon. The distance is selected so that attack animations look their best in the most commonly anticipated situations. Interacts with creature size values in appearance.2da for each creature, and their WeaponScale value (eg; Half Orcs are bigger so can stand slightly further away and swing). Ranged weapons tend to just use the value "30". | |||||||||||||||||||||
MinRange | 0 through 255, although logically 0 is fine to have as a default (see notes) | The minimum number of models of this type. The actual value to put in here is the range you want x 10. For Multi-Part Items (Weapons): A value of 10 here indicates that your model numbering starts at 011, incrementing by one to 019, before indexing by 10 (e.g. 019 >> 021-029 >> 031 etc. | |||||||||||||||||||||
MaxRange | 0 through 255, although logically 255 is fine to have as a default (see notes) | The maximum allowed number of models of this type. Only used in the toolset. The actual value to put in here is the range you want x 10 but setting it to the maximum possible value of 255 is fine (although the Bioware docs suggest 999) due to network limitations (any higher than 255 it loops back to 0). For Multi-Part Items (e.g. Weapons): The MaxRange should be set no higher than 249, as the hard-limit is 255, capping the range for model 25 below 9. When reading model numbers, the first two digits correspond to the Model field of the drop down menus under "Item Properties>>Appearance" in the Toolset. The last digit of the MDL filename corresponds to the Color field in the drop down menus. The range of colors available for higher Model numbers is solely dependent upon the number of colors available in the lowest range. For example, if you only have models numbered 011-014, higher level Model numbers will only display a range of 4 Colors. Thus, continuing the example, if you added models 015-019, you would enable colors 5-9 in the Color drop down menu. In the toolset the icon of the bottom part actually determines what is available, oddly. For instance iashto_091 would enable model line "9" for all the colours available (in this case tower shields go colours 1 - 4 by default). The MDL file may not even be present for some variants (it'll just be blank). You can see this on the Bioware staffs where one model has just one available colour variant, and conversely they included more longsword weapon model variants but no icons thus they're not used. Note, model numbers ending as "0" (e.g. 010, 020, 030, etc.) appear as Color 0 in the Color drop down menu. This might work in game - needs testing - but the script functions suggest only colours 1-9 are valid. For simple single-part and PLT items (shields, helms, slings, bullets, books, etc.): The full range of numbers is available starting at the MinRange value and ending at the MaxRange value. Again the icon determines availability. | |||||||||||||||||||||
NumDice | **** for non-weapon, else positive Integer | The number of dice rolled for this weapon's (item's) damage. | |||||||||||||||||||||
DieToRoll | **** for non-weapon, else positive Integer | The number of sides of the dice rolled for this weapon's (item's) damage. | |||||||||||||||||||||
CritThreat | **** for non-weapon, else positive Integer | The chance (out of 20) that this weapon (item) will threaten a critical hit. For example, "2" would mean two chances out of 20, for a threat range of 19-20. | |||||||||||||||||||||
CritHitMult | **** for non-weapon, else positive Integer | The critical multiplier for this weapon (item). | |||||||||||||||||||||
Category | 0 - none 1 - melee 2 - ranged 3 - shield 4 - armor 5 - helmet 6 - ammo 7 - thrown 8 - staves 9 - potion 10 - scroll 11 - thieves' tools 12 - misc 13 - wands 14 - rods 15 - traps 16 - misc unequippable 17 - container 19 - healers 20 - torches? | This seems to not be used by the engine much or if at all. It might be mostly a holdover and intended for the toolset but the ItemProps column is what the toolset uses to decide what item properties are valid for what item. The categories to the left are from the Bioware documentation/from baseitems.2da. | |||||||||||||||||||||
BaseCost | Float value probably (since Darts are 0.1) | The base value (in gold pieces) of an unenchanted item of this type. Note that darts use the value "0.1" for this so need to determine the real properties of this column. The game UTC files use a DWORD to store the value for later use. Likely used in the cost calculation of magical items as well, see itemprops.2da, itempropdef.2da, iprp_costtable.2da and iprp_paramtable.2da. | |||||||||||||||||||||
Stacking | 0 - 65535 (but setting it to over 57600 won't work in the toolset properly). | The maximum number of this item type that can be combined (stacked) in one inventory icon. For example, most items have this set to 1, while arrows have this set to 99. Realistically don't set this too high, you'll encounter pain. The toolset sets the maximum to be 57600 regardless of this value, so really should stick to this as a maximum. Absolute maximum is pretty much 65535 as defined by the UTC file WORD stored value - which means if a save game (or BIC is exported) with a stack over this number it will not work correctly. Having tried much higher values in this field it sort of works but it'll likely break things badly. | |||||||||||||||||||||
ItemMultiplier | Float value | Used in the cost calculation of magical items, see itemprops.2da, itempropdef.2da, iprp_costtable.2da and iprp_paramtable.2da. | |||||||||||||||||||||
Description | StringRef | A StringRef that indicates the default description for this item type. This will be used in the game for items that lack specific descriptions. It is also displayed as part of an item's properties (above the unidentified and identified descriptions) in the Toolset. | |||||||||||||||||||||
InvSoundType | inventorysnds.2da line index | An index into inventorysnds.2da indicating the sound used when this item is placed (or moved) in a character's inventory. For reference these are the default values:
| |||||||||||||||||||||
MaxProps | 0 - ? | The maximum number of "cast spell" properties items of this type can be given when designed in the Toolset. The maximum appears to be 8, since setting it to 10 just changes the error message - it says "More than 10" when at 11 or more, but "More than 8" when at 9 or 10. Whether or not the game loads all of the spell cast properties if edited by script commands or GFF edits separately, I'm not sure - edit here if someone knows. But 8 spell cast properties per item should be sufficient! | |||||||||||||||||||||
MinProps | 0 or 1 | The minimum number of "cast spell" properties items of this type must be given when designed in the Toolset. Need to test: Does this realistically do anything other than affect the item wizard? Likely not. The game won't check for this. | |||||||||||||||||||||
PropColumn | itemprops.2da column ID | This actually links to itemprops.2da, itempropdef.2da, iprp_costtable.2da and iprp_paramtable.2da. The main file it links to is itemprops.2da. In the toolset itemprops.2da lists what item property lines are valid for which item types, the game then validates scripted added item properties using this value too. You can technically add new ones - for instance if you put in column number 22 you'd need to add a new column to itemprops.2da after the "21_Gloves" column, then set corresponding item properties that are valid. In most cases however it is much easier to reuse an existing appropriate Bioware one. It is doubtful that item properties GFF edited into an item will be checked by the game but this is untested. | |||||||||||||||||||||
StorePanel | 0 = armor and clothing 1 = weapons 2 = potions and scrolls 3 = wands and magic items 4 = miscellaneous. | A number indicating where this item can be found in a store. | |||||||||||||||||||||
ReqFeat0 | **** or feat.2da line index | An index into feat.2da indicating a feat that grants proficiency with this item. A character must be proficient with an item in order to equip it. If this column is "****" then either all characters are automatically proficient with this item or this item is armor. (The default proficiencies are 32 = shield; 44 = exotic; 45 = martial; 46 = simple; 48 = druid; 49 = monk; 50 = rogue; and 51 = wizard. However, any feat can be used as a proficiency, if desired.) | |||||||||||||||||||||
ReqFeat1 | **** or feat.2da line index | An index into feat.2da indicating a feat that grants proficiency with this item. If not "****", this is an alternate to that in the preceding column. | |||||||||||||||||||||
ReqFeat2 | **** or feat.2da line index | An index into feat.2da indicating a feat that grants proficiency with this item. If not "****", this is an alternate to those in the preceding columns. | |||||||||||||||||||||
ReqFeat3 | **** or feat.2da line index | An index into feat.2da indicating a feat that grants proficiency with this item. If not "****", this is an alternate to those in the preceding columns. | |||||||||||||||||||||
ReqFeat4 | **** or feat.2da line index | An index into feat.2da indicating a feat that grants proficiency with this item. If not "****", this is an alternate to those in the preceding columns. | |||||||||||||||||||||
AC_Enchant | 0 = dodge 1 = natural 2 = armor 3 = shield 4 = deflection | The type of armor class bonus granted, if this item grants one. | |||||||||||||||||||||
BaseAC | Used but only for 3 shield lines. | The armor class value of this shield (before enchantments). Not used for armor. NWN:EE has made it so this column now works, but only for lines 14, 56 and 57. No new shield can be added currently. | |||||||||||||||||||||
ArmorCheckPen | Integer | The armor check penalty inherent to this item. Not used for armor which uses armor.2da. (By default, this column is only set for shields.) This is used by the game. | |||||||||||||||||||||
BaseItemStatRef | StringRef | A StringRef that indicates the basic statistics of this item. This is displayed under the description when an item is examined in the game. | |||||||||||||||||||||
ChargesStarting | Integer | The starting number of charges this item has by default in the toolset. Usually 50. | |||||||||||||||||||||
RotateOnGround | 0 - no rotation 1 - rotate 90 degrees around positive y-axis 2 - rotate 90 degrees around positive x-axis | Rotation of the item model when laid on the ground. Helps potions stay upright! | |||||||||||||||||||||
TenthLBS | Integer | Ten times the weight of this item in pounds. (Prior to version 1.69, this value was divided by 256, and the remainder was used as ten times the item's weight.) | |||||||||||||||||||||
WeaponMatType | An index into weaponsounds.2da indicating what sounds this weapon (item) makes when it hits an opponent. For reference default weaponsounds.2da entries are:
| ||||||||||||||||||||||
AmmunitionType | 1 = arrow 2 = bolt 3 = bullet 4 = dart 5 = shuriken 6 = throwing axe | The index+1 into ammunitiontypes.2da that indicates the type of ammunition used by this weapon (item). This determines the models and sounds used during ranged attacks. This is pretty much hardcoded according to the Bioware documentation (although admittedly the slots for ammo is hardcoded anyway, as it were, so no new ranged ammo types). | |||||||||||||||||||||
QBBehaviour | **** or 0- default 1 - select spell, targets normally 2 - select spell, always targets self | Determines the behaviour when this property appears on the player's quick bar. If set to 2, any cast spell item properties on an item of this type will always target the item's possessor (c.f. potions). | |||||||||||||||||||||
ArcaneSpellFailure | **** or Integer | The percentage this item adds to the chance for arcane spell failure. Not used for armor which uses armor.2da. (By default, this column is only set for shields.) | |||||||||||||||||||||
%AnimSlashL | **** for non-weapon Or Integer, see right | The chance (expressed as a percentage) that a character wielding this weapon (item) will be animated as making a slash from the left during an attack. % chance to use the left-slash, right-slash, or stab animation when using this weapon. **** if the item is not a melee weapon. Left-Slash and Stab should add up to 100, and Right-Slash and Stab should add up to 100. The Left and Right slash percentages are the chances of doing that move if the wielder is in the already proper stance. For example, a creature in the right-ready combat animation can only left-slash or stab, and after a left-slash, it enters the left-ready stance | |||||||||||||||||||||
%AnimSlashR | **** for non-weapon Or Integer, see right | The chance (expressed as a percentage) that a character wielding this weapon (item) will be animated as making a slash from the right during an attack. | |||||||||||||||||||||
%AnimSlashS | **** for non-weapon Or Integer, see right | The chance (expressed as a percentage) that a character wielding this weapon (item) will be animated as making a straight slash (from the center) during an attack. | |||||||||||||||||||||
StorePanelSort | Integer | A number indicating the order in which this item will be listed in a store (within the panel indicated by the "StorePanel" column). Since Bioware uses identical numbers for some rows (possibly for weapons of identical inventory sizes? maybe?) presumably those with matching values will just be sorted as they come in sale-wise. Bioware uses 0 - 99 for this, but it could be set higher most likely. | |||||||||||||||||||||
ILRStackSize | Integer | The stack size used when calculating this item's value in regards to item level restrictions. Bioware only used this for ammunition - presumably because the "value" of the item in those cases are more important when stacked, and stops a someone just splitting 99 arrows into size-1 stacks to get around Item Level Restrictions. Not sure if it has any effect on Use Magical Device. | |||||||||||||||||||||
WeaponFocusFeat | **** or feat.2da line index | NWN:EE. An index into feat.2da indicating which feat provides weapon focus for this item. | |||||||||||||||||||||
EpicWeaponFocusFeat | **** or feat.2da line index | NWN:EE. An index into feat.2da indicating which feat provides epic weapon focus for this item. | |||||||||||||||||||||
WeaponSpecializationFeat | **** or feat.2da line index | NWN:EE. An index into feat.2da indicating which feat provides weapon specialization for this item. | |||||||||||||||||||||
EpicWeaponSpecializationFeat | **** or feat.2da line index | NWN:EE. An index into feat.2da indicating which feat provides epic weapon specialization for this item. | |||||||||||||||||||||
WeaponImprovedCriticalFeat | **** or feat.2da line index | NWN:EE. An index into feat.2da indicating which feat allows improved criticals to be performed with this item. | |||||||||||||||||||||
EpicWeaponOverwhelmingCriticalFeat | **** or feat.2da line index | NWN:EE. An index into feat.2da indicating which feat allows overwhelming criticals to be performed with this item. | |||||||||||||||||||||
EpicWeaponDevastatingCriticalFeat | **** or feat.2da line index | NWN:EE. An index into feat.2da indicating which feat allows devastating criticals to be performed with this item. | |||||||||||||||||||||
WeaponOfChoiceFeat | **** or feat.2da line index | NWN:EE. An index into feat.2da indicating which feat identifies this item as a weapon of choice. | |||||||||||||||||||||
IsMonkWeapon | **** / 0 or 1 | NWN:EE. If set to 1 it will be considered a Monk weapon, and have Flurry of Blows available plus the Unarmed Base attack Bonus progression. Can even be applied to ranged weapons like Shurikens. If set to 0 or left blank will not be considered a Monk weapon. Note the fist-only aspects (eg Stunning Fist) are not affected, and for dual weapons you'd need both hands to have one in to allow the bonuses (Eg; 2 Kamas, not 1 Kama and 1 Shortsword). | |||||||||||||||||||||
WeaponFinesseMinimumCreatureSize | **** / 0 or a creaturesize.2da value | NWN:EE. If set to 1 or higher, a creaturesize.2da size ID, it will be considered to be a finesse weapon. If the FEAT_FINESSE_WEAPON is taken then dexterity may be used for the attack roll instead of strength. This unhardcodes the feat. |
...