This controls several variable damage amounts in item properties, and also the values for EffectDamageIncrease / EffectDamageDecrease which act similarly to the item properties, and EffectDamageShield.

Usage

The 2da determines static and randomised damage values.

Constants related to this 2da:

This section needs a few more notes on how this typically stacks, for instance if you have a damage bonus +3 and a damage bonus +4 which applies, why, etc.

This applies to:

  • ITEM_PROPERTY_DAMAGE_BONUS
  • ITEM_PROPERTY_DAMAGE_BONUS_VS_ALIGNMENT_GROUP
  • ITEM_PROPERTY_DAMAGE_BONUS_VS_RACIAL_GROUP
  • ITEM_PROPERTY_DAMAGE_BONUS_VS_SPECIFIC_ALIGNMENT
  • ITEM_PROPERTY_MASSIVE_CRITICALS
  • EffectDamageIncrease - can be altered to be vs. Alignment, and/or vs. Race and acts like the item damage propertis
  • EffectDamageDecrease - can be altered to be vs. Alignment, and/or vs. Race and acts like the item damage propertis
  • EffectDamageShield - Determines the feedback damage when hit.

Note it seems that it could be that ITEM_PROPERTY_DECREASED_DAMAGE also can work with this 2da but it is set to use iprp_neg5cost instead, but using values that go higher (while not showing on the character sheet correctly) do work.

Additional Values

More can be added but when 129 entries are reached in the 2da then it "overflows" on the client end (Character sheet) when showing things, but does work fine on the server end. Restricting NPC-only values to above 128 lines seem sensible.

See this nwn-issues bug.

Otherwise the limits of NumDice, Die and Rank are unknown but should be high enough for practical purposes.

Line 0 is reserved as essentially "invalid" so shouldn't be used.

2da Columns

Column LabelExample

Valid Values

Description and Notes
Name1044Dialog.tlk string reference

1044 is "2d6 Damage". This is used in the toolset

Label2d6Human readable stringUnused by the game
Cost0.85FloatSee parent page on how costs are calculated
NumDice2

0 - No dice/randomness

Or positive Integer

Amount of dice to roll, eg: 2d6, the value would be 2. If you want static damage use 0 here, eg: +40 damage you'd put 0 here and 40 in Die.
Die6Positive Integer

Amount of sides on the dice to roll, eg: 2d6, the value would be 6. If you have 0 in NumDice then the full amount is applied, eg +40 damage you'd put 40 here, and 0 in NumDice.

Rank14Positive Integer

Ranks determine which takes precedence for the VFX and stacking rules, the highest being applied.

EG: Having +2d6 Fire versus Elves, rank 14, outranks a basic +1d12 Fire, rank 12.

Need to test further regarding same damage types, different damage types, and situational (Vs. Race/Alignment) checks

GameString58318Dialog.tlk string reference58318 is "2d6" and is the human readable name when looking
VFX1

0 - no VFX

1 - VFX

The VFX is applied for the bonus damage types:

  • Acid (acid)
  • Cold (frost)
  • Electrical (elect)
  • Fire (fire)
  • Sonic (sonic)

Other damage types do not get a bonus VFX.

Bioware has it set to 1 on values that average 4 or higher bonus damage.

This VFX applied is similar to what is in iprp_visualfx.2da - as in the naming convention and how it loads for different items. It's hardcoded to the word in bracket above as a reference. You can use the Visual Effect item property to override this one and the default hardcoded ones.

You can also get VFX for Attack/Damage/Enchantment bonus vs. Evil and vs. Good automatically but these don't seem to take into account this column value. This column does override it however if the VFX here is valid.

2da Contents

2DA V2.0                                                  
                                                          
           Name   Label    Cost   NumDice   Die    Rank   GameString    VFX
0          ****   Random   0      ****      ****   ****   ****          0
1          1035   1        0.15   0         1      1      ****          0
2          1036   2        0.25   0         2      2      ****          0
3          1037   3        0.5    0         3      4      ****          0
4          1038   4        0.75   0         4      6      ****          1
5          1039   5        1      0         5      8      ****          1
6          1040   1d4      0.25   1         4      3      58314         0
7          1041   1d6      0.4    1         6      5      58315         1
8          1042   1d8      0.65   1         8      7      58316         1
9          1043   1d10     0.75   1         10     9      58317         1
10         1044   2d6      0.85   2         6      14     58318         1
11         83572  2d8      0.95   2         8      17     83571         1
12         83592  2d4      0.75   2         4      10     83595         1
13         83590  2d10     1.75   2         10     19     83594         1
14         83591  1d12     1.5    1         12     12     83596         1
15         83598  2d12     2      2         12     20     83597         1
16         83585  6        1.25   0         6      11     84297         1
17         83586  7        1.50   0         7      13     84298         1
18         83587  8        1.75   0         8      15     84299         1
19         83588  9        2      0         9      16     84300         1
20         83589  10       2.25   0         10     18     84301         1
21         84251  11       2.50   0         11     20     84302         1
22         84252  12       2.75   0         12     21     84303         1
23         84253  13       3.00   0         13     22     84304         1
24         84254  14       3.25   0         14     23     84305         1
25         84255  15       3.50   0         15     24     84306         1
26         84256  16       3.75   0         16     25     84307         1
27         84257  17       4.00   0         17     26     84308         1
28         84258  18       4.25   0         18     27     84309         1
29         84259  19       4.50   0         19     28     84310         1
30         84260  20       4.75   0         20     29     84311         1



  • No labels