Радиус столкновения

**Размер существа** — это механика, которая определяет размерные характеристики существа в игре.

## Определение

Только размер области выбора может меняться при изменении размера модели. Другие размеры существа не связаны друг с другом.

Такие размерные характеристики существа, как радиус столкновения и радиус привязки, напрямую не устанавливаются, но являются стандартными для всех существ.

Механики | Определение | Консольная команда | Пример |
---|---|---|---|

Радиус столкновения |
|
`dota_unit_show_collision_radius 1`
|
|

Радиус привязки |
|
`dota_unit_show_bounding_radius 1`
|
|

Область выделения |
|
`dota_unit_show_selection_boxes 1`
|
|

Размер модели |
|
`ent_hitbox`
|


## Значения размеров

Радиусы столкновения и привязки существ напрямую не устанавливаются, но являются стандартными для всех существ, со следующими размерами типичных оболочек.

Название оболочки | Радиус столкновения | Радиус привязки | Примечания |
---|---|---|---|

`DOTA_HULL_SIZE_BUILDING`
|
`x`
|
`x-16`
|
|

`DOTA_HULL_SIZE_BARRACKS`
|
160 | 144 | |

`DOTA_HULL_SIZE_TOWER`
|
144 | 144 | |

`DOTA_HULL_SIZE_FILLER`
|
112 | 96 | |

`DOTA_HULL_SIZE_HUGE`
|
80 | 80 |
|

`DOTA_HULL_SIZE_BIG_HERO`
|
43 | 40 | |

`DOTA_HULL_SIZE_LARGE`
|
41 | 40 | |

`DOTA_HULL_SIZE_SIEGE`
|
40 | 16 |
|

`DOTA_HULL_SIZE_REGULAR`
|
36 | 16 | |

`DOTA_HULL_SIZE_HERO`
|
27 | 24 | |

`DOTA_HULL_SIZE_SMALL`
|
18 | 8 | |

`DOTA_HULL_SIZE_SMALLEST`
|
4 | 2 |


### Древние

Древние, как сил Света, так и сил Тьмы, используют оболочку `DOTA_HULL_SIZE_BUILDING`

. Их точные радиусы столкновения и привязки можно найти в `models/props_structures`

.

Сила | Модель | Радиус столкновения | Радиус привязки |
---|---|---|---|

Силы Света | `radiant_ancient001.vmdl_c`
|
314,73 | 298,73 |

Силы Тьмы | `dire_ancient_base001.vmdl_c`
|
389,96 | 373,96 |


### Герои

Герои | Радиус столкновения | Радиус привязки |
---|---|---|

27 | 24 | |

18 | 8 |


### Существа

Существа | Радиус столкновения | Радиус привязки |
---|---|---|

Врата владыки | 112 | 96 |

Силовая шестерня | 80 | 80 |

Воин Некрономикона, Гаргулья, Дух-элементаль, Змеиный тотем, Крип-знаменосец, Крип-мечник, Ледяной шпиль, Мегакрип-знаменосец, Мегакрип-мечник, Надгробие, Суперкрип-знаменосец, Суперкрип-мечник, Торнадо, Тотем смерти, Энт, Якорь | 36 | 16 |

Катапульта, Мегакатапульта, Суперкатапульта | 40 | 16 |

Терзатель, Чумной тотем, Ястреб | 27 | 24 |

Воин земли, Воин огня, Воин пустоты, Воин шторма, Крип-маг, Мегакрип-маг, Пси-ловушка, Скелет-лучник, Суперкрип-маг, Observer Ward, Sentry Ward | 18 | 8 |

Нетленный зомби, Королевский скелет | 4 | 2 |


## Радиус столкновения

Радиус столкновения — внутренняя характеристика существа, определяющая область вокруг него, через которую не могут пройти иные существа, кроме существ со сквозным передвижением. Область столкновения можно отобразить командой `dota_unit_show_collision_radius 1`

со включённой консолью разработчика.

Радиус столкновения существа не зависит напрямую от размера модели. Обычно, дистанция столкновения означает наименьшее возможное расстояние между двумя существами. Потому, это расстояние считается как сумма радиусов столкновения сталкивающихся существ.

Области столкновения предотвращают прохождение существ друг через друга при поиске пути. Существа, не подконтрольные игрокам (например, линейные крипы) не пытаются обойти препятствие, но продолжают свой путь, будто препятствия нет. Из-за этого они застревают, пока не сменят цель (например, при смене источника агрессии) или пока помеха не исчезнет.

Существа со сквозным передвижением игнорируют области столкновения других существ. Если несколько существ встанут в одном месте перед окончанием действия сквозного передвижения, то существо с меньшим радиусом столкновения будет отодвинуто от существа с большим радиусом столкновения.

Приоритет | Определение | Примеры |
---|---|---|

1 | Недвижимые объекты |
|

2 | Существо, первым теряющее сквозное передвижение. |
|


Радиус столкновения также влияет на источники создания иллюзий. Так как два героя (или существа) не могу находиться в одном и том же месте без сквозного передвижения, и они будут оттолкнуты при потере сквозного передвижения, иллюзия появится на некотором отдалении от цели. В следующей таблице приведён пример того, как Phantom Lancer и Chaos Knight, имеющие радиус столкновения 18 и 27 соответственно, вызывают иллюзии, и на какое расстояние будет отодвинута иллюзия:

- Пример
- Chaos Knight использует Chaos Bolt на вражескую Marci и Катапульту. Как далеко от обеих целей появится иллюзия от Phantasm?

- Радиусы столкновения:
- Chaos Knight: 27
- Marci: 27
- Катапульта: 40


- Радиусы столкновения:

- Так как радиусы столкновения обоих героев равны, иллюзия от Phantasm появится на расстоянии 58 от Marci, если у неё нет сквозного передвижения.
- Для Катапульты, иллюзия от Phantasm вместо этого появится на расстоянии 87 от неё.


### Блокировщики пути

Блокировщик пути — невидимая сущность с областью столкновения, которая физически блокирует передвижение существ. Движение через блокировщик пути схоже с движением через деревья или другое существо, не имеющее сквозного передвижения или полёта.

Полёт и беспрепятственное передвижение позволяют проходить сквозь блокировщики пути, но сквозное передвижение — нет. Линейные крипы не могут обходить блокировщики пути и пытаются пройти сквозь них, по сути полностью останавливаясь перед ними. Подчинённые игроку существа пытаются обойти блокировщик, если возможно.

Создаваемые блокировщики пути (`npc_dota_thinker`

) обычно не выбираемы.

Наименьшее расстояние между блокировщиком пути и существом зависит от радиусов привязки, а не радиусов столкновения. Например, наименьшая дистанция между Marci и центром поднятого в ураган существа, равна сумме их радиусов привязки: 48.

Изображение справа показывает, как защитные врата используют механику области столкновения как блокировщик пути.

- Clockwerk — Power Cogs
- Drow Ranger — Glacier
- Earthshaker — Fissure
- Ошибка Lua: Не найдено данных Cargo для "Постройки — Защитные врата".
- Nature's Prophet — Sprout
- Tusk — Ice Shards
- Eul's Scepter of Divinity — Cyclone
- Wind Waker — Cyclone

1Требует талант.2aТребует Aghanim's Scepter.2bТребует Aghanim's Shard.

### Деревья

Деревья — это особая часть ландшафта в Dota 2. Деревья составляют большую часть карты, разделяя её линии и границы. Деревья блокируют обзор и сквозь них нельзя пройти при обычных условиях.

Несмотря на различные вариации видов и размеров, все постоянные деревья имеют одинаковый радиус столкновения в виде квадрата 128x128.

### Игнорирование радиуса столкновения

Существует три типа движения, позволяющих игнорировать область столкновения при попытке прохождения сквозь существо.

Тип передвижения | Определение | Пример |
---|---|---|

Сквозное передвижение |
|
Phase |

Беспрепятственное передвижение |
|
Firefly |

Полёт |
|
Jetpack |


Источники беспрепятственного передвижения и полёта также дают передвижение сквозь деревья.

#### Сквозное передвижение

Следующие способности даруют сквозное передвижение, позволяющее проходить сквозь существ:

- Bounty Hunter — Shadow Walk
- Bounty Hunter — Friendly Shadow
- Clinkz — Skeleton Walk
- Dark Willow — Shadow Realm
- Faceless Void — Chronosphere
- Glimmer Cape — Glimmer
- Invoker — Ghost Walk
- Nyx Assassin — Vendetta
- Phase Boots — Phase
- Shadow Amulet — Fade
- Slardar — Guardian Sprint
- Shadow Blade — Shadow Walk
- Shadow Fiend — Requiem of Souls (На время прочтения)
- Silver Edge — Shadow Walk
- Slardar — Guardian Sprint
- Templar Assassin — Meld
- Weaver — Shukuchi
- Воин шторма — Wind Walk

1Требует талант.2aRequires Aghanim's Scepter.2bRequires Aghanim's Shard.

Следующие существа имеют постоянное сквозное передвижение:

- Anti-Mage — Иллюзия от Blink Fragment
- Spin Web — Имеет сквозное передвижение
- Beetle — Имеет сквозное передвижение
- Hawk — Имеет сквозное передвижение
- Hoodwink — Иллюзия от Decoy
- Observer Ward — Имеет сквозное передвижение
- Sentry Ward — Имеет сквозное передвижение
- Healing Ward — Имеет сквозное перемещение
- Ignis Fatuus — Имеет сквозное передвижение
- Phoenix Sun — Имеет сквозное передвижение
- Proximity Mines — Имеет сквозное передвижение
- Minefield Sign — Имеет сквозное передвижение
- Psionic Trap — Имеет сквозное передвижение
- Воин огня — Permanent Phase
- Курьер — Имеет сквозное передвижение
- Рошан — Strength of the Immortal

1Требует талант.2aТребует Aghanim's Scepter.2bТребует Aghanim's Shard.

#### Беспрепятственное передвижение

Свободное движение (также известное как беспрепятственное передвижение) позволяет затронутым существам проходить сквозь постройки, уступы и деревья, вдобавок к способности проходить сквозь существ. Их перемещению нет пределов, и только малое количество способностей может им помешать. Все источники полёта дают существам беспрепятственное передвижение. Шанс промахнуться при ударе с низины не применяется к летающим существам.

Следующие способности даруют беспрепятственное передвижение:

- Batrider — Firefly
- Broodmother — Spin Web
- Centaur Warrunner — Stampede
2a - Dragon Knight — Форма чёрного дракона
2a - Earthshaker — Fissure
2b - Giant's Ring — Giant's Foot
- Hoodwink — Иллюзия от Decoy
- Lich — Sinister Gaze
- Legion Commander — Duel
- Nyx Assassin — Vendetta
1 - Nyx Assassin — Burrow
- Spectre — Spectral Dagger
- Spectre — Иллюзия от Haunt
- Spectre — Иллюзия от Shadow Step
- Terrorblade — Иллюзия от Reflection
- Wraith King — Wraith Delay
2a

1Требует талант.2aТребует Aghanim's Scepter.2bТребует Aghanim's Shard.

#### Полёт

Состояние полёта похоже на беспрепятственное передвижение с небольшими отличиями, одними из которых являются пребывание существа на небольшом расстоянии над землёй, наличие у него летающего обзора и ещё меньший список мешающих этому эффекту способностей.

При получении существом эффекта полёта, его область выделения и модель поднимаются вверх по оси z, однако области столкновения и привязки остаются на земле. Следующие способности даруют полёт на период своего действия:

1Требует талант.2aТребует Aghanim's Scepter.2bТребует Aghanim's Shard.

## Радиус привязки

Радиус привязки устанавливает абсолютные координаты существа в игре и действует как псевдо-буфер для значений дальности атаки и дальности применения некоторых способностей. Радиус привязки существа можно отобразить при помощи команды `dota_unit_show_bounding_radius 1`

со включённой консолью разработчика.

Радиус привязки также влияет на радиус действия аур, а для направленных на область способностей радиус привязки затронутой цели фактически увеличивает дальность их применения. Однако, если область использования таких способностей центрирована на заклинателе (`↓↓ Двойное нажатие`), его радиус привязки не учитывается, и, следовательно, дальность их применения не увеличивается.

Механики | Затронутый аспект | Примеры способностей |
---|---|---|

Дальность атаки |
|
|

Дальность применения (Нацеленные на существо способности) |
|
Laguna Blade |

Радиус действия (Способности с эффектом по области) |
|
Song of the Siren |


### Уравнения

Для нормальных атак:

Реальная дальность атаки = Общая дальность атаки + Радиус привязки атакующего + Радиус привязки цели


Для способностей:

Максимальная дальность применения = Общая дальность применения способности + Радиус привязки цели

Максимальный радиус действия = Общий радиус действия способности + Радиус привязки цели

- Пример 1(а)
**Максимальная дистанция для выполнения атаки**- Первая башня атакует Marci. Без иных источников увеличения, какова максимальная дальность выполнения нормальной атаки между атакующим и целью?

- Дальность атаки Первой башни: 700
- Радиус привязки Первой башни: 144
- Радиус привязки Marci: 24


- Максимальная дальность атаки против Marci
- = 700 + 144 + 24
- = 868


- Максимальная дальность атаки Первой башни против Marci равна 868. Так как башни не могут двигаться, буфер дальности атаки, равный 250, не применяется.

- Пример 1(б)
**С буфером дальности атаки**- Muerta атакует Marci. Без иных источников увеличения, какова максимальная дальность выполнения нормальной атаки между атакующим и целью?

- Дальность атаки Muerta: 575
- Радиус привязки Muerta: 24
- Радиус привязки Marci: 24
- Дальность от буфера движения: 250


- Максимальная дальность атаки против Marci
- = 575 + 24 + 24
- = 623


- Максимальная дальность атаки Muerta против Marci равна 623, и её атака отменяется при отдалении Marci на расстояние, превышающее 873.
- Следовательно, для существ с меньшим радиусом привязки дальность, с которой они могут быть атакованы, также меньше.

- Пример 2
**Максимальный радиус действия способности для двух заклинателей**- Каков максимальный радиус действия способности Song of the Siren, действующей на Rubick?
- Если Rubick украдёт Song of the Siren при помощи Spell Steal, каков максимальный радиус украденной способности, действующей на Naga Siren?

- Максимальный радиус Song of the Siren: 1400
- Радиус привязки Rubick: 24
- Радиус привязки Naga Siren: 8


- Максимальный радиус действия против Rubick:
- = 1400 + 24
- = 1424


- Максимальный радиус действия против Naga Siren:
- = 1400 + 8
- = 1408


- Следовательно, Song of the Siren, использованная Naga Siren, имеет большую дальность действия, равную 1424, по сравнению с таковой у Rubick.
- Предполагая, что Rubick и Naga Siren находятся на расстоянии ±1400 друг от друга, Song of the Siren, полученный Rubick с помощью Spell Steal, может не подействовать на Naga Siren, если она стоит вне реального радиуса действия способности, так как радиус привязки Naga Siren меньше, что показан на изображении справа.

## Область выделения

Область выделения — область, внутри которой или при попадании которой внутрь `выделения по области` существо можно выбрать.

Большинство существ имеет как минимум две области выделения: один внешний кубоид и как минимум один внутренний. У построек внутренние кубоиды могут быть больше внешнего. Нажатие вне границ области выделения не выберет существо.

Область выделения привязана к модели существа, и её значения могут быть найдены через Инструменты Мастерской Dota 2. Размер области также изменяется пропорционально размеру модели существа. Отобразить области выделения для существа можно командой `dota_unit_show_selection_boxes 1`

при включенной консоли разработчика.

Некоторые косметические предметы могут изменять размеры области выделения в связи с изменением модели существа:

- Acolyte of the Lost Arts для Invoker.
- Сторонние Варды.

При пересечении областей выбора нескольких существ действует следующий приоритет выбора:

- Внутренние кубоиды ➤ Внешний кубоид ➤ Существо, ближайшее к камере игрока.

### Невыделяемость

Невыделяемость позволяет выбрать существо целью только в исключительных случаях. Большинство способностей/предметов считают невыделяемое существо невидимым, за исключением некоторых случаев. Некоторые источники невыделяемости могут убрать область выделения существа, даровать невосприимчивость к атакам, а также не позволить союзникам, врагам или всем сразу выбирать существо в качестве цели.

Хотя источники избегания также делают цель невыделяемой и невыбираемой, они считаются другой механикой.

## Размер модели

Размер модели существа содержится как закреплённое значение в файлах `npc_abilities.txt`

или `npc_units.txt`

. Вывести размер можно через `ent_text`

и `debug_overlay_fullposition 1`

при включённой консоли разработчика. Значение, отображаемое через `ent_text`

, равно `1.12 * Размер Модели`

из `npc_abilities.txt`

или `npc_units.txt`

.

Никак не связано с радиусами столкновения и привязки, однако увеличение размера модели увеличивает размер области выделения.

Стоит отметить, что анимации модели существ не задают текущее направление поворота существа, в том числе при воздействии на существо определённых способностей. К таким анимациям относятся и специальные анимации от насмешек и следующих способностей:

1Требует талант.2aТребует Aghanim's Scepter.2bТребует Aghanim's Shard.

### Другая модель

Следующие способности напрямую изменяют или заменяют текущую модель существа. Некоторые способности также увеличивают размер модели, детали чего указаны в примечаниях к таким способностям.

**Длительность**: 1,6**Животное**: Свинья**Скорость передвижения**: 100*Действует на существ в радиусе конуса.***Длительность**: 2/2,4/2,8/3,2**Животное**: Лягушка**Скорость передвижения**: 120**Длительность**: 4**Животное**: Свинья**Доп. скорость передвижения**: 10%*Накладывает проклятье на пользователя при применении. Дарует доп. скорость передвижения вместо того, чтобы выставлять фиксированное значение.***Длительность**: 2,8**Животное**: Свинья**Скорость передвижения**: 140**Длительность**: 10%/15%/20%/25%**Животное**: Курица**Скорость передвижения**: 100- Morphling — Morph
- Monkey King — Mischief
- Tiny — Grow

1Требует талант.2aТребует Aghanim's Scepter.2bТребует Aghanim's Shard.

### Процентные изменения

Все процентные изменения размера модели сочетаются независимо и аддитивно.

Общий размер модели = Базовый масштаб × (1 + Процентное изменение i)

- Увеличение масштаба модели от Avatar: 30 %


- 1,12 × (1 + 0.3)
- = 1.456


#### Источники процентных изменений

- Black King Bar — Avatar
- Giant's Ring — Giant's Foot
- Bristleback — Warpath
- Huskar — Berserker's Blood
- Dragon Knight — Форма чёрного дракона
2a - Muerta — Pierce the Veil
- Ogre Magi — Bloodlust
- Ursa — Earthshock
2b - Ursa — Enrage
- Tinker — Laser
2a - Lone Druid — True Form
- Undying — Decay
- Undying — Flesh Golem
- Terrorblade — Metamorphosis
- Terrorblade — Terror Wave
- Wraith King — Wraith Delay
2a

1Требует талант.2aТребует Aghanim's Scepter.2bТребует Aghanim's Shard.

### Особые случаи

В некоторых особых случаях размер модели существа влияет на игровой процесс, вызывая уникальные взаимодействия между существами и способностями.

Так как модель существа задаёт точку появления для исходящих снарядов, изменение её размера может косвенно повлиять на анимации атаки и траектории движения некоторых снарядов. Это может повлиять на следующее:

- Снаряд от Cripple вылетает из крайней передней точки оружия героя. Чем больше модель, тем ближе к цели начальная точка, и тем короче время достижения снарядом цели.
- Как показано справа, снаряды от атаки Queen of Pain при обычном масштабе её модели блокируются Arena Of Blood.
- При использовании Avatar размер модели увеличивается, отчего при определённых анимациях атаки конец лезвия её кинжала находится внутри Arena Of Blood, что позволяет некоторым её атакам достигать цели по другую сторону.
- То же касается Outworld Destroyer, некоторые атаки которого исходят из наконечника его посоха.
- Razor с экипированным Voidstorm Asylum может атаковать цели рядом с Arena Of Blood на расстоянии 150 юнитов, так как этот косметический предмет использует разные анимации атаки при разных дальностях атаки.


## Недавние изменения

<div> <div class="updatetablehead"> <div id="version">Версия</div> <div id="description">Изменения</div> </div> <div class="updatetablebody">

- ИЗМЕНЁНтип оболочки Meepo с
`DOTA_HULL_SIZE_HERO`

на`DOTA_HULL_SIZE_HERO_SMALL`

.- Уменьшен радиус столкновения с 27 до 18.
- Уменьшен радиус привязки с 24 до 8.


- НИЗМЕНЁНтип оболочки Королевских скелетов с
`DOTA_HULL_SIZE_HERO`

на`DOTA_HULL_SIZE_SMALL`

.- Уменьшен радиус столкновения с 27 до 18.
- Уменьшен радиус привязки с 24 до 8.


- ИЗМЕНЁНтип оболочки всех героев ближнего боя с
`DOTA_HULL_SIZE_HERO_SMALL`

на`DOTA_HULL_SIZE_HERO`

.- Увеличен радиус столкновения с 18 до 27.
- Увеличен радиус привязки с 12 до 24.


</div> </div>