This is used to define the models fired from Bows, Crossbows and Slings, and for thrown weapons Shurikens, Throwing Axes and Darts.

Hardcoded Notes

The games ammo types are hardcoded - ie the AmmunitionType column in this 2da.

The other rows can be reordered or changed as needed - the main thing is that there should be always a matching pair of AmmunitionType and DamageRangedProjectile combination.

The 2da is read top to bottom so in the case of duplicates where AmmunitionType and DamageRangedProjectile match on more than one line the first is taken.

Adding New Damage Projectiles

See Creating Custom Damage Types for notes on this.

The gist is make 6 new rows and have a new DamageRangedProjectile entry, which links to the same column in damagetypes.2da

Do not use values 6 or 7 which are reserved for spell projectiles.

Note on client versions earlier than 1.88.8193.36 it will default back to the non-elemental lines (0 through 5) when a new row is specified, since the 2da can't be used. They also make assumptions that rows 0 through 35 are as-is in regards to the type of projectile and damage type (eg row 23 is always an electric throwing axe).

2da Columns

Column NameExampleValid ValuesDescription
LabelacidarrowTextHuman readable label. Not used by the engine.
ModelWAmAr_fxacidResRef of MDLMDL to fire from the shooter to the enemy
ShotSoundcb_sh_prjtlacidResRef of soundSound to play from the shooters position
ImpactSoundscm_hitacidResRef of soundSound to play when the projectile hits the enemy
AmmunitionType1baseitems.2da AmmunitionType column IDIE: Arrows are 1, Bolts are 2. etc. This is hardcoded.
DamageRangedProjectile1damagetypes.2da DamageRangedProjectile column reference

These map and so you can have new ones.

Note: use values 8 and up for custom damage types to get them recognised. 6 and 7 are special cases used for spell projectiles.

2da Contents

da2DA V2.0

           label              Model           ShotSound         ImpactSound        AmmunitionType    DamageRangedProjectile
0          arrow              wamar_001       ****              cb_ht_arrow1       1                 0
1          bolt               wambo_001       ****              cb_ht_arrow1       2                 0
2          bullet             wambu_001       ****              cb_ht_bullet1      3                 0
3          dart               wthdt_001       ****              cb_ht_dart1        4                 0
4          shuriken           wthsh_001       ****              cb_ht_dart1        5                 0
5          throwingaxe        wthax_001       ****              cb_ht_throwaxe1    6                 0
6          acidarrow          WAmAr_fxacid    cb_sh_prjtlacid   scm_hitacid        1                 1
7          acidbolt           WAmBo_fxacid    cb_sh_prjtlacid   scm_hitacid        2                 1
8          acidbullet         WAmBu_fxacid    cb_sh_prjtlacid   scm_hitacid        3                 1
9          aciddart           WThDt_fxacid    cb_sh_prjtlacid   scm_hitacid        4                 1
10         acidshuriken       WThSh_fxacid    cb_sh_prjtlacid   scm_hitacid        5                 1
11         acidthrowingaxe    WThAx_fxacid    cb_sh_prjtlacid   scm_hitacid        6                 1
12         coldarrow          WAmAr_fxfrost   cb_sh_prjtlcold   scm_hitcold        1                 2
13         coldbolt           WAmBo_fxfrost   cb_sh_prjtlcold   scm_hitcold        2                 2
14         coldbullet         WAmBu_fxfrost   cb_sh_prjtlcold   scm_hitcold        3                 2
15         colddart           WThDt_fxfrost   cb_sh_prjtlcold   scm_hitcold        4                 2
16         coldshuriken       WThSh_fxfrost   cb_sh_prjtlcold   scm_hitcold        5                 2
17         coldthrowingaxe    WThAx_fxfrost   cb_sh_prjtlcold   scm_hitcold        6                 2
18         elecarrow          WAmAr_fxelect   cb_sh_prjtlelec   scm_elec           1                 3
19         elecbolt           WAmBo_fxelect   cb_sh_prjtlelec   scm_elec           2                 3
20         elecbullet         WAmBu_fxelect   cb_sh_prjtlelec   scm_elec           3                 3
21         elecdart           WThDt_fxelect   cb_sh_prjtlelec   scm_elec           4                 3
22         elecshuriken       WThSh_fxelect   cb_sh_prjtlelec   scm_elec           5                 3
23         electhrowingaxe    WThAx_fxelect   cb_sh_prjtlelec   scm_elec           6                 3
24         firearrow          WAmAr_fxfire    cb_sh_prjtlfire   scm_fire           1                 4
25         firebolt           WAmBo_fxfire    cb_sh_prjtlfire   scm_fire           2                 4
26         firebullet         WAmBu_fxfire    cb_sh_prjtlfire   scm_fire           3                 4
27         firedart           WThDt_fxfire    cb_sh_prjtlfire   scm_fire           4                 4
28         fireshuriken       WThSh_fxfire    cb_sh_prjtlfire   scm_fire           5                 4
29         firethrowingaxe    WThAx_fxfire    cb_sh_prjtlfire   scm_fire           6                 4
30         sonicarrow         WAmAr_fxsonic   cb_sh_prjtlsonc   scm_sonc           1                 5
31         sonicbolt          WAmBo_fxsonic   cb_sh_prjtlsonc   scm_sonc           2                 5
32         sonicbullet        WAmBu_fxsonic   cb_sh_prjtlsonc   scm_sonc           3                 5
33         sonicdart          WThDt_fxsonic   cb_sh_prjtlsonc   scm_sonc           4                 5
34         sonicshuriken      WThSh_fxsonic   cb_sh_prjtlsonc   scm_sonc           5                 5
35         sonicthrowingaxe   WThAx_fxsonic   cb_sh_prjtlsonc   scm_sonc           6                 5

  • No labels