DT1
The DT1 lump stores the data for all enemies in the game. It has no header, and the length of each record is stored in BINSIZE.BIN (currently 744 bytes)
Formal Specs[edit]
Offset | Data | Meaning |
---|---|---|
Record start | ||
0-16 | FVSTR (1i+16i=17i) | Name of Enemy |
17 | INT | Thievability of Enemy:
-1 = Is not thievable |
18 | INT | Stealable item |
19 | INT | Item Steal Chance % |
20 | INT | Rare stealable item |
21 | INT | Rare Item Steal Chance % (if regular steal failed) |
22 | INT | Dissolve animation 0=Use default in gen(genEnemyDissolve) |
23 | INT | Dissolve animation length in ticks (0=default: Squash,Vapourise,Phase out use sprite width/5, others use sprite width/2) |
24 | INT | Death sound effect ID + 1 (0 for default, -1 for none) |
25 | INT | Battle targeting cursor X offset (relative to top-center) |
26 | INT | Battle targeting cursor Y offset (relative to top-center) |
27-52 | INT (26) | Unused |
53 | INT | Picture |
54 | INT | Palette, or -1 for default |
55 | INT | Picture Size:
0 = Small (From PT1) |
56 | INT | Gold reward |
57 | INT | Experience reward |
58 | INT | Item reward |
59 | INT | Item drop % |
60 | INT | Rare item |
61 | INT | Rare item drop % (If a regular item is not dropped) |
62 | INT | HP |
63 | INT | MP |
64 | INT | Strength |
65 | INT | Accuracy |
66 | INT | Defense |
67 | INT | Dodge |
68 | INT | Magic |
69 | INT | Will |
70 | INT | Speed |
71 | INT | Counter |
72 | INT | MP~ |
73 | INT | Extra Hits |
74-78 Enemy Bitsets | BIT (8) | 0 - 7: Weak to Elemental 1 - 8 (Obsolete, see #Note 1) |
BIT (8) | 8 - 15: Strong to Elemental 1 - 8 (Obsolete, see #Note 1) | |
BIT (8) | 16 - 23: Absorbs Elemental 1 - 8 (Obsolete, see #Note 1) | |
BIT (8) | 24 - 31: Is Enemytype 1 - 8 (Obsolete, see #Note 1) | |
BIT (22) | 32 - 53: Unused | |
BIT | 54: Harmed by Cure | |
BIT | 55: MP Idiot | |
BIT | 56: Boss | |
BIT | 57: Unescapable | |
BIT | 58: Die Without Boss | |
BIT | 59: Flee instead of Die | |
BIT | 60: Untargetable by Enemies | |
BIT | 61: Untargetable by Heros | |
BIT | 62: Win battle even if left alive | |
BIT | 63: Never flinch when hit | |
BIT | 64: Ignored for "Alone" AI | |
BIT | 65: Give rewards even if left alive | |
BIT | 66: Controlled by the player | |
BIT | 67: Turncoat, attacks its allies | |
BIT | 68: Defector, grouped with heroes | |
BIT (12) | 69 - 79: Unused | |
79 | INT | Enemy to Spawn on death + 1 |
80 | INT | Enemy to Spawn on Non-Elemental Death + 1 |
81 | INT | Enemy to Spawn when alone + 1 |
82 | INT | Enemy to Spawn on Non-Elemental Hit + 1 |
83-90 | INT (8) | Enemy to Spawn on Elemental 1 - 8 Hit + 1 |
91 | INT | Number of enemy copies to spawn on spawn trigger |
92-96 | INT (5) | Regular attacks + 1, 0 if unused |
97-101 | INT (5) | Desperation attacks + 1, 0 if unused |
102-106 | INT (5) | Alone attacks + 1, 0 if unused |
107-114 | INT (8) | Counter attack to elementals 0-7. atk_id + 1, 0=none |
115-126 | INT (12) | Counter attack damage to stats. atk_id + 1, 0=none |
127-182 | INT (56) | Counter attack to elementals 8-63. atk_id + 1, 0=none |
183-238 | INT (56) | Enemy to Spawn on Elemental 9-64 Hit + 1 |
239-366 | FLOAT32 (64) | Damage taken from elemental 1-64 (1.0 is 100%) #Note 1 |
367 | INT | On-death bequest attack. Attack ID+1 or 0 for none. |
368 | INT | Counter attack to non-elemental attack. atk_id + 1, 0=none |
369 | INT | Dissolve-in animation at battle start, or when spawned 0=No dissolve, appear instantly |
370 | INT | Dissolve-in animation length in ticks (0=default: Squash,Vapourise,Phase out use sprite width/5, others use sprite width/2) |
371 | INT | On a multi-element hit: 0: only use first matching spawn condition 1: process all conditions |
Note 1[edit]
The old elemental and enemytype bits should only be used to load the enemy's elemental resists if fixEnemyElementals is OFF. (Default to 1.0. For elements 1 to 8: multiply by -1.0 for absorb, 2.0 for weak, 0.12 for strong. For elements 9 to 16: Set to 1.8 if the 'is enemytype i-8' is set.)
If fixEnemyElementals is ON, load elemental resists from the new data; the old bits contain garbage.
Note 2[edit]
Before 2002, offsets 17-52 used to be an FVSTR containing a death message, which was never implemented, but which could be edited in Custom, and a number of people did. It is blanked out by the engine if attack.bin does not exist.
References to other lumps[edit]
Field | Indicating record in lump: |
---|---|
Stealable/Rare Stealable item | ITM |
Death sound effect | (sound file) |
Picture | PT1,PT2 or PT3, according to Picture Size field |
Palette | PAL |
Enemy to spawn on/when * | DT1 (this lump) |
*attack* | DT6 |
ARCHINYM.LMP
. ATTACK.BIN
. BINSIZE.BIN
. BROWSE.TXT
. DEFPAL#.BIN
. DEFPASS.BIN
. distrib.reld
. FIXBITS.BIN
. general.reld
. heroes.reld
. heroform.reld
. LOOKUP1.BIN
. MENUITEM.BIN
. MENUS.BIN
. PALETTES.BIN
. PLOTSCR.LST
. SFXDATA.BIN
. SLICELOOKUP.TXT
. slicetree_#_#.reld
. SONGDATA.BIN
. UICOLORS.BIN
Map Format :
E
. D
. L
. N
. P
. T
. Z
BAM
. DOR
. DOX
. DT0
. DT1
. DT6
. EFS
. FNT
. FOR
. GEN
. HSP
. HSZ
. ITM
. MAP
. MAS
. MN
. MXS
. PAL
. PT0 ... PT8
. RGFX
. SAY
. SHO
. SNG
. STF
. STT
. TAP
. TIL
. TMN
. VEH