Who can hit you, and who they pick
Melee slots and attack intensity cap how many enemies swing at one player. Target selection decides who that player is, and it favours whoever is alone.
Slots around each player
Each player has a fixed ring of melee slots: 9 normal slots at 1.85 m, 8 medium slots at 2.2 m for elites like Ragers and Maulers, and 5 large slots for ogryns and monsters. Enemies without a free slot queue up further out.
Melee slots per playersettings/slot/slot_type_settings.lua:4
normal = {
count = 9,
distance = 1.85,
priority = 2,
queue_distance = 2.65,
radius = 0.5,
},
medium = {
count = 8,
distance = 2.2,
priority = 1.5,
queue_distance = 2.8,
radius = 1,
},
large = {
count = 5,
distance = 2.25,
priority = 1,
queue_distance = 3.25,
radius = 2,
},Open settings/slot/slot_type_settings.lua at line 4 on GitHubA wall at your back blocks the slots on that side. That is the mechanical reason wall-hugging works: fewer free slots means fewer enemies close enough to attack.
Attack intensity
Being in a slot does not mean an enemy may swing. Each player has an intensity budget per attack type. Every attack adds its cost (a basic melee swing 0.25, a running attack 1), and once the total passes the threshold, attacks of that type are held back until it decays.
| Threshold | Decay per second | |
|---|---|---|
| C1 melee | 3 | 1 |
| C4 melee | 16 | 8 |
| C5 melee | 20 | 12 |
Melee attack intensity by challengesettings/attack_intensity/attack_intensity_settings.lua:97
melee = {
{
attack_allowed_decay_multiplier = 0.25,
attack_intensity_clamp = 8,
decay = 1,
decay_grace = 0.5,
reset = 0.25,
threshold = 3,
ignored_movement_states = {
sprint = true,
},
},
{
attack_allowed_decay_multiplier = 0.25,
attack_intensity_clamp = 12,
decay = 2,
decay_grace = 0.25,
reset = 0.25,
threshold = 6,
ignored_movement_states = {
sprint = true,
},
},
{
attack_allowed_decay_multiplier = 0.25,
attack_intensity_clamp = 14,
decay = 3,
decay_grace = 0.25,
reset = 0.25,
threshold = 10,Open settings/attack_intensity/attack_intensity_settings.lua at line 97 on GitHubAt C5 the threshold is high enough that a full ring of enemies can keep attacking. Havoc uses C5 from rank 21, so the throttle that protects you on lower difficulties barely exists there.
Who gets targeted
Each breed weighs players differently when it picks a target: distance, threat, who it was already attacking, and how far the player is from their team. Hounds have an inverse coherency weight of 5. In plain words, they strongly prefer the player standing alone.
Hounds prefer players outside coherencysettings/minion_target_selection/minion_target_selection_weights.lua:26
minion_target_selection_weights.chaos_hound = {
disabled = -5,
distance_to_target = 3,
inverse_coherency_weight = 5,
max_distance = 50,
occupied_slots = -1,
threat_multiplier = 1.5,
}
minion_target_selection_weights.chaos_newly_infected = {
disabled = -1,Open settings/minion_target_selection/minion_target_selection_weights.lua at line 26 on GitHubThis is the case for the Ogryn’s taunt. The Ogryn does not need to kill the ring. Pulling it on to the player who can take the punishment turns a full ring around a squishy player into a full ring around the one built for it, while the others kill.