Skip to main content

boon/
modifiers.rs

1//! Auto-generated by scripts/generate-name-tables from modifiers.vdata
2//! Maps MurmurHash2(name, seed=0x31415926) → name string.
3//!
4//! Last updated: 2026-05-30
5
6/// All known (hash, name) pairs sorted by hash.
7const ENTRIES: &[(u32, &str)] = &[
8    (26927483, "modifier_combat_status_bullet_hit"),
9    (187100448, "modifier_life_steal_watcher"),
10    (249741857, "modifier_citadel_in_shop"),
11    (263365076, "modifier_citadel_in_friendly_base"),
12    (314782158, "citadel_modifier_teleport"),
13    (333314679, "citadel_modifier_hideout_teleport"),
14    (349072833, "modifier_inside_interior_medium"),
15    (463654992, "modifier_streetbrawl_buyphase_finished"),
16    (468341383, "modifier_citadel_in_enemy_base"),
17    (493390899, "modifier_inside_interior_small"),
18    (577763337, "modifier_citadel_catapult_damage_stun"),
19    (703763413, "modifier_streetbrawl_buyphase_drafting"),
20    (716053107, "modifier_citadel_in_shoptunnel_amber"),
21    (755818049, "modifier_trigger_push"),
22    (898342393, "modifier_citadel_catapult_damage_watcher"),
23    (907240048, "modifier_citadel_pulldown_to_ground"),
24    (1053818083, "modifier_control_point_capturer_aura"),
25    (1123720754, "modifier_citadel_cheater_curse"),
26    (1164189067, "modifier_citadel_trooper_in_enemy_base_resist"),
27    (1201131818, "modifier_citadel_knockdown"),
28    (1352410816, "modifier_citadel_hideout_intro"),
29    (1383541918, "modifier_in_tunnel"),
30    (1398909042, "modifier_citadel_stunned"),
31    (1438793537, "modifier_tier3_damage_pulse"),
32    (1443635676, "midboss_modifier_damage_resistance"),
33    (1510865637, "modifier_citadel_delayed_catapult_launch"),
34    (1537481987, "modifier_citadel_in_fountain"),
35    (1591258939, "modifier_citadel_halloween_mask"),
36    (1603106661, "modifier_nearby_ally_resist"),
37    (1635198563, "modifier_life_steal"),
38    (1640201412, "modifier_citadel_in_hideout_zone"),
39    (1705979192, "modifier_crowd_control_diminish_watcher"),
40    (1774223509, "modifier_boss_invuln"),
41    (1777455211, "modifier_hero_upgrade_bonuses"),
42    (1873864326, "modifier_rejuv_pickup_aura"),
43    (1954913723, "modifier_streetbrawl_trooper"),
44    (
45        2017094508,
46        "modifier_street_brawl_round_start_zipline_boost",
47    ),
48    (2040761217, "modifier_force_duck"),
49    (2050972778, "modifier_zipline_speed_trooper_first_wave"),
50    (2059539911, "timer"),
51    (2153080917, "modifier_zipline_speed_player_generator_kill"),
52    (2153779323, "modifier_cinematic_intro_player"),
53    (2162074139, "modifier_citadel_power_generator"),
54    (2271820901, "modifier_tier2boss_laser_charge"),
55    (2302920250, "modifier_citadel_stunned_no_cc_diminish"),
56    (2331907665, "modifier_citadel_hideout_in_menu"),
57    (2399992957, "modifier_citadel_unstick"),
58    (2450912777, "modifier_delayed_apply"),
59    (2485509559, "modifier_idol_pickup_aura"),
60    (2691904787, "bonus_speed"),
61    (2692055534, "modifier_citadel_hideout_intro_exit"),
62    (2752619923, "modifier_citadel_in_mid_boss_temple"),
63    (2759914938, "modifier_control_point_blocker_aura"),
64    (2764898868, "modifier_control_point_capturer_aura_target"),
65    (2786441271, "modifier_cinematic_intro_shrine"),
66    (2805810496, "modifier_player_disconnected"),
67    (2811191959, "modifier_bodygroup_choice"),
68    (2874342196, "modifier_early_gold_pickup_aura"),
69    (2886663832, "modifier_citadel_can_damage_tier3phase2_boss"),
70    (3002355871, "modifier_low_health_glow"),
71    (3139486147, "modifier_obscured_by_steam"),
72    (3148362537, "modifier_hide_health"),
73    (3158425058, "modifier_hero_testing_damage_aura"),
74    (3164155771, "modifier_escalating_exposure_tech_armor_debuff"),
75    (3201350425, "modifier_speed_boost"),
76    (3258874729, "modifier_citadel_idol_walkback"),
77    (3386602042, "modifier_neutral_gold_pickup_aura"),
78    (3388042050, "modifier_tier3_boss_invuln"),
79    (3388847715, "modifier_citadel_idol_return"),
80    (3420861902, "modifier_t3boss_phase1"),
81    (3475378696, "modifier_combat_status"),
82    (3624783346, "modifier_citadel_in_hideout_map"),
83    (3655055294, "modifier_tier2boss_electric_beam"),
84    (3671936441, "modifier_citadel_catapult_damage_slow"),
85    (3721859888, "modifier_zipline_speed_trooper_reinforcement"),
86    (3808516958, "modifier_near_climbable_rope"),
87    (3893350139, "modifier_citadel_disarmed"),
88    (3950761869, "aura_target"),
89    (3951357260, "modifier_cinematic_intro_npc"),
90    (3967300088, "modifier_street_brawl_intro_player"),
91    (3993162252, "modifier_debug_is_visible_to_enemy_team"),
92    (3993435644, "modifier_citadel_in_shoptunnel_sapphire"),
93    (4095551474, "modifier_no_teleport"),
94    (4095968964, "modifier_control_point_blocker_aura_target"),
95    (4158507401, "modifier_citadel_no_catapult"),
96    (4267845006, "modifier_barrier_tracker"),
97];
98
99/// Look up a name by its MurmurHash2 ID.
100pub fn modifier_name(id: u32) -> &'static str {
101    match id {
102        26927483 => "modifier_combat_status_bullet_hit",
103        187100448 => "modifier_life_steal_watcher",
104        249741857 => "modifier_citadel_in_shop",
105        263365076 => "modifier_citadel_in_friendly_base",
106        314782158 => "citadel_modifier_teleport",
107        333314679 => "citadel_modifier_hideout_teleport",
108        349072833 => "modifier_inside_interior_medium",
109        463654992 => "modifier_streetbrawl_buyphase_finished",
110        468341383 => "modifier_citadel_in_enemy_base",
111        493390899 => "modifier_inside_interior_small",
112        577763337 => "modifier_citadel_catapult_damage_stun",
113        703763413 => "modifier_streetbrawl_buyphase_drafting",
114        716053107 => "modifier_citadel_in_shoptunnel_amber",
115        755818049 => "modifier_trigger_push",
116        898342393 => "modifier_citadel_catapult_damage_watcher",
117        907240048 => "modifier_citadel_pulldown_to_ground",
118        1053818083 => "modifier_control_point_capturer_aura",
119        1123720754 => "modifier_citadel_cheater_curse",
120        1164189067 => "modifier_citadel_trooper_in_enemy_base_resist",
121        1201131818 => "modifier_citadel_knockdown",
122        1352410816 => "modifier_citadel_hideout_intro",
123        1383541918 => "modifier_in_tunnel",
124        1398909042 => "modifier_citadel_stunned",
125        1438793537 => "modifier_tier3_damage_pulse",
126        1443635676 => "midboss_modifier_damage_resistance",
127        1510865637 => "modifier_citadel_delayed_catapult_launch",
128        1537481987 => "modifier_citadel_in_fountain",
129        1591258939 => "modifier_citadel_halloween_mask",
130        1603106661 => "modifier_nearby_ally_resist",
131        1635198563 => "modifier_life_steal",
132        1640201412 => "modifier_citadel_in_hideout_zone",
133        1705979192 => "modifier_crowd_control_diminish_watcher",
134        1774223509 => "modifier_boss_invuln",
135        1777455211 => "modifier_hero_upgrade_bonuses",
136        1873864326 => "modifier_rejuv_pickup_aura",
137        1954913723 => "modifier_streetbrawl_trooper",
138        2017094508 => "modifier_street_brawl_round_start_zipline_boost",
139        2040761217 => "modifier_force_duck",
140        2050972778 => "modifier_zipline_speed_trooper_first_wave",
141        2059539911 => "timer",
142        2153080917 => "modifier_zipline_speed_player_generator_kill",
143        2153779323 => "modifier_cinematic_intro_player",
144        2162074139 => "modifier_citadel_power_generator",
145        2271820901 => "modifier_tier2boss_laser_charge",
146        2302920250 => "modifier_citadel_stunned_no_cc_diminish",
147        2331907665 => "modifier_citadel_hideout_in_menu",
148        2399992957 => "modifier_citadel_unstick",
149        2450912777 => "modifier_delayed_apply",
150        2485509559 => "modifier_idol_pickup_aura",
151        2691904787 => "bonus_speed",
152        2692055534 => "modifier_citadel_hideout_intro_exit",
153        2752619923 => "modifier_citadel_in_mid_boss_temple",
154        2759914938 => "modifier_control_point_blocker_aura",
155        2764898868 => "modifier_control_point_capturer_aura_target",
156        2786441271 => "modifier_cinematic_intro_shrine",
157        2805810496 => "modifier_player_disconnected",
158        2811191959 => "modifier_bodygroup_choice",
159        2874342196 => "modifier_early_gold_pickup_aura",
160        2886663832 => "modifier_citadel_can_damage_tier3phase2_boss",
161        3002355871 => "modifier_low_health_glow",
162        3139486147 => "modifier_obscured_by_steam",
163        3148362537 => "modifier_hide_health",
164        3158425058 => "modifier_hero_testing_damage_aura",
165        3164155771 => "modifier_escalating_exposure_tech_armor_debuff",
166        3201350425 => "modifier_speed_boost",
167        3258874729 => "modifier_citadel_idol_walkback",
168        3386602042 => "modifier_neutral_gold_pickup_aura",
169        3388042050 => "modifier_tier3_boss_invuln",
170        3388847715 => "modifier_citadel_idol_return",
171        3420861902 => "modifier_t3boss_phase1",
172        3475378696 => "modifier_combat_status",
173        3624783346 => "modifier_citadel_in_hideout_map",
174        3655055294 => "modifier_tier2boss_electric_beam",
175        3671936441 => "modifier_citadel_catapult_damage_slow",
176        3721859888 => "modifier_zipline_speed_trooper_reinforcement",
177        3808516958 => "modifier_near_climbable_rope",
178        3893350139 => "modifier_citadel_disarmed",
179        3950761869 => "aura_target",
180        3951357260 => "modifier_cinematic_intro_npc",
181        3967300088 => "modifier_street_brawl_intro_player",
182        3993162252 => "modifier_debug_is_visible_to_enemy_team",
183        3993435644 => "modifier_citadel_in_shoptunnel_sapphire",
184        4095551474 => "modifier_no_teleport",
185        4095968964 => "modifier_control_point_blocker_aura_target",
186        4158507401 => "modifier_citadel_no_catapult",
187        4267845006 => "modifier_barrier_tracker",
188        _ => "MODIFIER_NOT_FOUND",
189    }
190}
191
192/// Return all known (hash, name) pairs.
193pub fn all_modifiers() -> &'static [(u32, &'static str)] {
194    ENTRIES
195}
196
197#[cfg(test)]
198mod tests {
199    use super::*;
200
201    #[test]
202    fn known_first_entry() {
203        assert_eq!(modifier_name(26927483), "modifier_combat_status_bullet_hit");
204    }
205
206    #[test]
207    fn known_mid_entry() {
208        assert_eq!(modifier_name(2271820901), "modifier_tier2boss_laser_charge");
209    }
210
211    #[test]
212    fn unknown_id_zero() {
213        assert_eq!(modifier_name(0), "MODIFIER_NOT_FOUND");
214    }
215
216    #[test]
217    fn unknown_id_max() {
218        assert_eq!(modifier_name(u32::MAX), "MODIFIER_NOT_FOUND");
219    }
220
221    #[test]
222    fn all_modifiers_not_empty() {
223        assert!(!all_modifiers().is_empty());
224    }
225}