mirror of
https://gitlab.com/hashborgir/d2tweaks-rnd2k.git
synced 2024-12-02 13:45:58 +00:00
235 lines
6.6 KiB
C++
235 lines
6.6 KiB
C++
#pragma once
|
|
|
|
#include <cstdint>
|
|
|
|
namespace diablo2 {
|
|
namespace structures {
|
|
struct monstats_line {
|
|
uint16_t id; //0x00
|
|
uint16_t base_id; //0x02
|
|
uint16_t next_in_class; //0x04
|
|
uint16_t name_str; //0x06
|
|
uint16_t desc_str; //0x08
|
|
uint16_t unk0_x0_a; //0x0A
|
|
uint32_t mon_stats_flags; //0x0C
|
|
uint32_t code; //0x10
|
|
uint16_t mon_sound; //0x14
|
|
uint16_t u_mon_sound; //0x16
|
|
uint16_t mon_stats_ex; //0x18
|
|
uint16_t mon_prop; //0x1A
|
|
uint16_t mon_type; //0x1C
|
|
uint16_t ai; //0x1E
|
|
uint16_t spawn; //0x20
|
|
uint8_t spawn_x; //0x22
|
|
uint8_t spawn_y; //0x23
|
|
uint16_t spawn_mode; //0x24
|
|
uint16_t minion1; //0x26
|
|
uint16_t minion2; //0x28
|
|
uint16_t unk0_x2_a; //0x2A
|
|
uint8_t party_min; //0x2C
|
|
uint8_t party_max; //0x2D
|
|
uint8_t rarity; //0x2E
|
|
uint8_t min_grp; //0x2F
|
|
uint8_t max_grp; //0x30
|
|
uint8_t sparse_populate; //0x31
|
|
uint16_t velocity; //0x32
|
|
uint16_t run; //0x34
|
|
uint16_t unk0_x36; //0x36
|
|
uint16_t unk0_x38; //0x38
|
|
uint16_t miss_a1; //0x3A
|
|
uint16_t miss_a2; //0x3C
|
|
uint16_t miss_s1; //0x3E
|
|
uint16_t miss_s2; //0x40
|
|
uint16_t miss_s3; //0x42
|
|
uint16_t miss_s4; //0x44
|
|
uint16_t miss_c; //0x46
|
|
uint16_t miss_sq; //0x48
|
|
uint16_t unk0_x4_a; //0x4A
|
|
uint8_t align; //0x4C
|
|
uint8_t trans_lvl; //0x4D
|
|
uint8_t threat; //0x4E
|
|
uint8_t ai_del; //0x4F
|
|
uint8_t ai_del_n; //0x50
|
|
uint8_t ai_del_h; //0x51
|
|
uint8_t ai_dist; //0x52
|
|
uint8_t ai_dist_n; //0x53
|
|
uint16_t ai_dist_h; //0x54
|
|
uint16_t ai_p1; //0x56
|
|
uint16_t ai_p1_n; //0x58
|
|
uint16_t ai_p1_h; //0x5A
|
|
uint16_t ai_p2; //0x5C
|
|
uint16_t ai_p2_n; //0x5E
|
|
uint16_t ai_p2_h; //0x60
|
|
uint16_t ai_p3; //0x62
|
|
uint16_t ai_p3_n; //0x64
|
|
uint16_t ai_p3_h; //0x66
|
|
uint16_t ai_p4; //0x68
|
|
uint16_t ai_p4_n; //0x6A
|
|
uint16_t ai_p4_h; //0x6C
|
|
uint16_t ai_p5; //0x6E
|
|
uint16_t ai_p5_n; //0x70
|
|
uint16_t ai_p5_h; //0x72
|
|
uint16_t ai_p6; //0x74
|
|
uint16_t ai_p6_n; //0x76
|
|
uint16_t ai_p6_h; //0x78
|
|
uint16_t ai_p7; //0x7A
|
|
uint16_t ai_p7_n; //0x7C
|
|
uint16_t ai_p7_h; //0x7E
|
|
uint16_t ai_p8; //0x80
|
|
uint16_t ai_p8_n; //0x82
|
|
uint16_t ai_p8_h; //0x84
|
|
uint16_t treasure_class1; //0x86
|
|
uint16_t treasure_class2; //0x88
|
|
uint16_t treasure_class3; //0x8A
|
|
uint16_t treasure_class4; //0x8C
|
|
uint16_t treasure_class1_n; //0x8E
|
|
uint16_t treasure_class2_n; //0x90
|
|
uint16_t treasure_class3_n; //0x92
|
|
uint16_t treasure_class4_n; //0x94
|
|
uint16_t treasure_class1_h; //0x96
|
|
uint16_t treasure_class2_h; //0x98
|
|
uint16_t treasure_class3_h; //0x9A
|
|
uint16_t treasure_class4_h; //0x9C
|
|
uint8_t tc_quest_id; //0x9E
|
|
uint8_t tc_quest_cp; //0x9F
|
|
uint8_t drain; //0xA0
|
|
uint8_t drain_n; //0xA1
|
|
uint8_t drain_h; //0xA2
|
|
uint8_t to_block; //0xA3
|
|
uint8_t b_to_block_n; //0xA4
|
|
uint8_t to_block_h; //0xA5
|
|
uint16_t crit; //0xA6
|
|
uint16_t skill_damage; //0xA8
|
|
uint16_t level; //0xAA
|
|
uint16_t level_n; //0xAC
|
|
uint16_t level_h; //0xAE
|
|
uint16_t min_hp; //0xB0
|
|
uint16_t min_hp_n; //0xB2
|
|
uint16_t min_hp_h; //0xB4
|
|
uint16_t max_hp; //0xB6
|
|
uint16_t max_hp_n; //0xB8
|
|
uint16_t max_hp_h; //0xBA
|
|
uint16_t ac; //0xBC
|
|
uint16_t ac_n; //0xBE
|
|
uint16_t ac_h; //0xC0
|
|
uint16_t a1_th; //0xC2
|
|
uint16_t a1_th_n; //0xC4
|
|
uint16_t a1_th_h; //0xC6
|
|
uint16_t a2_th; //0xC8
|
|
uint16_t a2_th_n; //0xCA
|
|
uint16_t a2_th_h; //0xCC
|
|
uint16_t s1_th; //0xCE
|
|
uint16_t s1_th_n; //0xD0
|
|
uint16_t s1_th_h; //0xD2
|
|
uint16_t exp; //0xD4
|
|
uint16_t exp_n; //0xD6
|
|
uint16_t exp_h; //0xD8
|
|
uint16_t a1_min_d; //0xDA
|
|
uint16_t a1_min_d_n; //0xDC
|
|
uint16_t a1_min_d_h; //0xDE
|
|
uint16_t a1_max_d; //0xE0
|
|
uint16_t a1_max_d_n; //0xE2
|
|
uint16_t a1_max_d_h; //0xE4
|
|
uint16_t a2_min_d; //0xE6
|
|
uint16_t a2_min_d_n; //0xE8
|
|
uint16_t a2_min_d_h; //0xEA
|
|
uint16_t a2_max_d; //0xEC
|
|
uint16_t a2_max_d_n; //0xEE
|
|
uint16_t a2_max_d_h; //0xF0
|
|
uint16_t s1_min_d; //0xF2
|
|
uint16_t s1_min_d_n; //0xF4
|
|
uint16_t s1_min_d_h; //0xF6
|
|
uint16_t s1_max_d; //0xF8
|
|
uint16_t s1_max_d_n; //0xFA
|
|
uint16_t s1_max_d_h; //0xFC
|
|
uint8_t el1_mode; //0xFE
|
|
uint8_t el2_mode; //0xFF
|
|
uint8_t el3_mode; //0x100
|
|
uint8_t el1_type; //0x101
|
|
uint8_t el2_type; //0x102
|
|
uint8_t el3_type; //0x103
|
|
uint8_t el1_pct; //0x104
|
|
uint8_t el1_pct_n; //0x105
|
|
uint8_t el1_pct_h; //0x106
|
|
uint8_t el2_pct; //0x107
|
|
uint8_t el2_pct_n; //0x108
|
|
uint8_t el2_pct_h; //0x109
|
|
uint8_t el3_pct; //0x10A
|
|
uint8_t el3_pct_n; //0x10B
|
|
uint8_t el3_pct_h; //0x10C
|
|
uint8_t unk0_x_10d; //0x10D
|
|
uint16_t el1_min_d; //0x10E
|
|
uint16_t el1_min_d_n; //0x110
|
|
uint16_t el1_min_d_h; //0x112
|
|
uint16_t el2_min_d; //0x114
|
|
uint16_t el2_min_d_n; //0x116
|
|
uint16_t el2_min_d_h; //0x118
|
|
uint16_t el3_min_d; //0x11A
|
|
uint16_t el3_min_d_n; //0x11C
|
|
uint16_t el3_min_d_h; //0x11E
|
|
uint16_t el1_max_d; //0x120
|
|
uint16_t el1_max_d_n; //0x122
|
|
uint16_t el1_max_d_h; //0x124
|
|
uint16_t el2_max_d; //0x126
|
|
uint16_t el2_max_d_n; //0x128
|
|
uint16_t el2_max_d_h; //0x12A
|
|
uint16_t el3_max_d; //0x12C
|
|
uint16_t el3_max_d_n; //0x12E
|
|
uint16_t el3_max_d_h; //0x130
|
|
uint16_t el_1dur; //0x132
|
|
uint16_t el_1dur_n; //0x134
|
|
uint16_t el_1dur_h; //0x136
|
|
uint16_t el_2dur; //0x138
|
|
uint16_t el_2dur_n; //0x13A
|
|
uint16_t el_2dur_h; //0x13C
|
|
uint16_t el_3dur; //0x13E
|
|
uint16_t el_3dur_n; //0x140
|
|
uint16_t el_3dur_h; //0x142
|
|
uint16_t res_dmg; //0x144
|
|
uint16_t res_dmg_n; //0x146
|
|
uint16_t res_dmg_h; //0x148
|
|
uint16_t res_magic; //0x14A
|
|
uint16_t res_magic_n; //0x14C
|
|
uint16_t res_magic_h; //0x14E
|
|
uint16_t res_fire; //0x150
|
|
uint16_t res_fire_n; //0x152
|
|
uint16_t res_fire_h; //0x154
|
|
uint16_t res_light; //0x156
|
|
uint16_t res_light_n; //0x158
|
|
uint16_t res_light_h; //0x15A
|
|
uint16_t res_cold; //0x15C
|
|
uint16_t res_cold_n; //0x15E
|
|
uint16_t res_cold_h; //0x160
|
|
uint16_t res_poison; //0x162
|
|
uint16_t res_poison_n; //0x164
|
|
uint16_t res_poiosn_h; //0x166
|
|
uint8_t cold_effect; //0x168
|
|
uint8_t cold_effect_n; //0x169
|
|
uint16_t cold_effect_h; //0x16A
|
|
uint32_t send_skills; //0x16C
|
|
uint16_t skill1; //0x170
|
|
uint16_t skill2; //0x172
|
|
uint16_t skill3; //0x174
|
|
uint16_t skill4; //0x176
|
|
uint16_t skill5; //0x178
|
|
uint16_t skill6; //0x17A
|
|
uint16_t skill7; //0x17C
|
|
uint16_t skill8; //0x17E
|
|
uint32_t unk0_x180[6]; //0x180
|
|
uint8_t sk1_lvl; //0x198
|
|
uint8_t sk2_lvl; //0x199
|
|
uint8_t sk3_lvl; //0x19A
|
|
uint8_t sk4_lvl; //0x19B
|
|
uint8_t sk5_lvl; //0x19C
|
|
uint8_t sk6_lvl; //0x19D
|
|
uint8_t sk7_lvl; //0x19E
|
|
uint8_t sk8_lvl; //0x19F
|
|
uint32_t damage_regen; //0x1A0
|
|
uint8_t spl_end_death; //0x1A4
|
|
uint8_t spl_get_mode_chart; //0x1A5
|
|
uint8_t spl_end_generic; //0x1A6
|
|
uint8_t spl_client_end; //0x1A7
|
|
};
|
|
}
|
|
}
|