<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://station14.ru/history/%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Dngcher/%D0%9F%D0%B5%D1%81%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D0%B0?feed=atom</id>
	<title>Участник:Dngcher/Песочница - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://station14.ru/history/%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Dngcher/%D0%9F%D0%B5%D1%81%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D0%B0?feed=atom"/>
	<link rel="alternate" type="text/html" href="https://station14.ru/history/%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Dngcher/%D0%9F%D0%B5%D1%81%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D0%B0"/>
	<updated>2026-10-05T16:49:56Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://station14.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Dngcher/%D0%9F%D0%B5%D1%81%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D0%B0&amp;diff=752323&amp;oldid=prev</id>
		<title>Dngcher: Новая страница: «== Система взрывов ==  &#039;&#039;&#039;Система взрывов&#039;&#039;&#039; это стандартная механика, отвечающая за расчёт урона, разрушение плиток, физические эффекты (броски объектов), воспламенение, звук и визуализацию взрывов. Всё управляется через &#039;&#039;&#039;прототипы взрывов&#039;&#039;&#039; (&lt;code&gt;ExplosionPrototyp...»</title>
		<link rel="alternate" type="text/html" href="https://station14.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Dngcher/%D0%9F%D0%B5%D1%81%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D0%B0&amp;diff=752323&amp;oldid=prev"/>
		<updated>2026-10-05T14:22:07Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «== Система взрывов ==  &amp;#039;&amp;#039;&amp;#039;Система взрывов&amp;#039;&amp;#039;&amp;#039; это стандартная механика, отвечающая за расчёт урона, разрушение плиток, физические эффекты (броски объектов), воспламенение, звук и визуализацию взрывов. Всё управляется через &amp;#039;&amp;#039;&amp;#039;прототипы взрывов&amp;#039;&amp;#039;&amp;#039; (&amp;lt;code&amp;gt;ExplosionPrototyp...»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Система взрывов ==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Система взрывов&amp;#039;&amp;#039;&amp;#039; это стандартная механика, отвечающая за расчёт урона, разрушение плиток, физические эффекты (броски объектов), воспламенение, звук и визуализацию взрывов. Всё управляется через &amp;#039;&amp;#039;&amp;#039;прототипы взрывов&amp;#039;&amp;#039;&amp;#039; (&amp;lt;code&amp;gt;ExplosionPrototype&amp;lt;/code&amp;gt;), &amp;#039;&amp;#039;&amp;#039;компоненты-триггеры&amp;#039;&amp;#039;&amp;#039; (&amp;lt;code&amp;gt;ExplosiveComponent&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;ScatteringGrenadeComponent&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;ProjectileGrenadeComponent&amp;lt;/code&amp;gt;) и &amp;#039;&amp;#039;&amp;#039;системы&amp;#039;&amp;#039;&amp;#039; (&amp;lt;code&amp;gt;ExplosionSystem&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== Прототип взрыва (&amp;lt;code&amp;gt;ExplosionPrototype&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
&lt;br /&gt;
Это YAML-описание типа взрыва. Все поля определяют, как взрыв наносит урон, разрушает плитки, выглядит и звучит.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Поле !! Тип !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;damagePerIntensity&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;DamageSpecifier&amp;lt;/code&amp;gt; || &amp;#039;&amp;#039;&amp;#039;Базовый урон&amp;#039;&amp;#039;&amp;#039; за единицу интенсивности. На каждом тайле итоговый урон это &amp;lt;code&amp;gt;damagePerIntensity * интенсивность_на_плитке&amp;lt;/code&amp;gt;. Виды урона: &amp;lt;code&amp;gt;Heat&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Blunt&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Piercing&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Structural&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Cold&amp;lt;/code&amp;gt; и другие.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;fireStacks&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;float?&amp;lt;/code&amp;gt; || Количество &amp;lt;code&amp;gt;Stacks&amp;lt;/code&amp;gt; огня, добавляемых загоревшимся сущностям (если есть &amp;lt;code&amp;gt;FlammableComponent&amp;lt;/code&amp;gt;).&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;temperature&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;float?&amp;lt;/code&amp;gt; || Температура, до которой нагревается атмосфера в затронутых тайлах.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;tileBreakChance&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;tileBreakIntensity&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;float[]&amp;lt;/code&amp;gt; || Два массива одинаковой длины, задающие &amp;#039;&amp;#039;&amp;#039;функцию зависимости шанса разрушения плитки&amp;#039;&amp;#039;&amp;#039; от интенсивности. Шанс интерполируется линейно между точками (&amp;lt;code&amp;gt;intensity -&amp;gt; chance&amp;lt;/code&amp;gt;).&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;tileBreakRerollReduction&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;float&amp;lt;/code&amp;gt; || После успешного разрушения плитки интенсивность &amp;#039;&amp;#039;&amp;#039;уменьшается&amp;#039;&amp;#039;&amp;#039; на это значение, и делается повторная попытка разрушить следующий слой (например, чтобы пробить покрытие). Это позволяет сильным взрывам создавать разгерметизации.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;lightColor&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;Color&amp;lt;/code&amp;gt; || Цвет точечного света в эпицентре взрыва.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;fireColor&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;Color?&amp;lt;/code&amp;gt; || Цвет, которым модулируется текстура огня на плитках. Если не задан то, используется стандартный.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;texturePath&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;ResPath&amp;lt;/code&amp;gt; || Путь к RSI-файлу с текстурами огня.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;fireStates&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;int&amp;lt;/code&amp;gt; || Количество состояний (градаций) текстуры огня.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;intensityPerState&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;float&amp;lt;/code&amp;gt; || Порог интенсивности для перехода к следующему состоянию огня.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;smallSoundIterationThreshold&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;int&amp;lt;/code&amp;gt; || Если количество итераций (колец) взрыва меньше этого числа то, взрыв считается маленьким и проигрывается тихий звук.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;sound&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;smallSound&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;soundFar&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;smallSoundFar&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;SoundSpecifier&amp;lt;/code&amp;gt; || Звуки для обычного и маленького взрыва (ближний и дальний).&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;maxCombineDistance&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;float&amp;lt;/code&amp;gt; || Если два взрыва одного прототипа происходят в одном тике и эпицентры ближе этого расстояния то, их интенсивность суммируется (они объединяются в один взрыв).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Интенсивность и её распределение ==&lt;br /&gt;
&lt;br /&gt;
Главное значение это &amp;#039;&amp;#039;&amp;#039;интенсивность взрыва&amp;#039;&amp;#039;&amp;#039;. Она определяется в момент вызова взрыва (через &amp;lt;code&amp;gt;QueueExplosion&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;TriggerExplosive&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
=== Основные параметры распространения ===&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;totalIntensity&amp;lt;/code&amp;gt; — суммарная энергия взрыва. Она распределяется по плиткам.&lt;br /&gt;
* &amp;lt;code&amp;gt;slope&amp;lt;/code&amp;gt; — скорость падения интенсивности с расстоянием (на каждую плитку). Чем больше &amp;lt;code&amp;gt;slope&amp;lt;/code&amp;gt;, тем быстрее затухает взрыв.&lt;br /&gt;
* &amp;lt;code&amp;gt;maxTileIntensity&amp;lt;/code&amp;gt; — максимальная интенсивность, которая может быть на одной плитке. Это ограничивает локальный урон и шанс разрушения.&lt;br /&gt;
&lt;br /&gt;
Радиус взрыва определяется косвенно: общая интенсивность примерно равна объёму конуса взрыва (интенсивность как высота). Чем больше &amp;lt;code&amp;gt;totalIntensity&amp;lt;/code&amp;gt;, тем больше площадь.&lt;br /&gt;
&lt;br /&gt;
=== Алгоритм заливки ===&lt;br /&gt;
&lt;br /&gt;
# Начинается с заданных координат эпицентра взрыва (плитка или точка в космосе).&lt;br /&gt;
# На каждой итерации добавляет соседние плитки (сначала ортогональные, затем диагональные).&lt;br /&gt;
# Интенсивность каждой новой итерации определяется по формуле &amp;lt;code&amp;gt;stepSize = slope / 2&amp;lt;/code&amp;gt; (или меньше, если осталось мало интенсивности).&lt;br /&gt;
# Процесс продолжается, пока не кончится &amp;lt;code&amp;gt;totalIntensity&amp;lt;/code&amp;gt; или не будет достигнут лимит итераций/площади.&lt;br /&gt;
&lt;br /&gt;
Таким образом, плитки на разных расстояниях получают разные значения интенсивности.&lt;br /&gt;
&lt;br /&gt;
== Расчёт урона и сопротивление ==&lt;br /&gt;
&lt;br /&gt;
Урон по сущностям вычисляется для каждой затронутой плитки отдельно.&lt;br /&gt;
&lt;br /&gt;
# Базовый урон это &amp;lt;code&amp;gt;damagePerIntensity * интенсивность_на_плитке&amp;lt;/code&amp;gt;.&lt;br /&gt;
# Учитываются глобальные модификаторы урона от взрывов (через &amp;lt;code&amp;gt;DamageableSystem&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Для каждой сущности на плитке вызывается событие &amp;lt;code&amp;gt;GetExplosionResistanceEvent&amp;lt;/code&amp;gt; (передаётся ID прототипа). Это позволяет модифицировать коэффициент урона (например, броня, скафандры).&lt;br /&gt;
# Если сущность имеет &amp;lt;code&amp;gt;ExplosionResistanceComponent&amp;lt;/code&amp;gt;, коэффициент защиты применяется перед нанесением урона.&lt;br /&gt;
# После всех модификаций урон наносится через &amp;lt;code&amp;gt;DamageableSystem.TryChangeDamage&amp;lt;/code&amp;gt; (игнорируя обычные резисты, т.к. резисты ко взрывам уже учтены).&lt;br /&gt;
&lt;br /&gt;
=== Вложенные контейнеры и экипировка ===&lt;br /&gt;
&lt;br /&gt;
Событие &amp;lt;code&amp;gt;BeforeExplodeEvent&amp;lt;/code&amp;gt; позволяет рекурсивно пробрасывать урон на содержимое контейнеров (рюкзаки, карманы). Это позволяет, например, взрывать предметы внутри сумки игрока, если сам игрок получил урон. Коэффициент урона для содержимого также может быть изменён.&lt;br /&gt;
&lt;br /&gt;
== Разрушение плиток ==&lt;br /&gt;
&lt;br /&gt;
Взрыв может разрушать плитки (стены, полы). Этот процесс идёт параллельно с нанесением урона сущностям.&lt;br /&gt;
&lt;br /&gt;
* Шанс разрушения определяется функцией &amp;lt;code&amp;gt;TileBreakChance(intensity)&amp;lt;/code&amp;gt; - линейная интерполяция между точками из &amp;lt;code&amp;gt;tileBreakChance&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;tileBreakIntensity&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Если плитка разрушена то, она &amp;#039;&amp;#039;&amp;#039;меняется на покрытие&amp;#039;&amp;#039;&amp;#039; (или на следующий слой из истории плиток, если есть &amp;lt;code&amp;gt;TileHistoryComponent&amp;lt;/code&amp;gt;).&lt;br /&gt;
* После каждого успешного разрушения интенсивность уменьшается на &amp;lt;code&amp;gt;tileBreakRerollReduction&amp;lt;/code&amp;gt;, и шанс пересчитывается для следующего слоя. Это позволяет сильным взрывам пробивать несколько слоёв стен.&lt;br /&gt;
* Если новая плитка помечена как &amp;lt;code&amp;gt;MapAtmosphere = true&amp;lt;/code&amp;gt;, это означает создание вакуума - но только если взрыву разрешено создавать вакуум (&amp;lt;code&amp;gt;canCreateVacuum&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ограничения:&amp;#039;&amp;#039;&amp;#039; &amp;lt;code&amp;gt;maxTileBreak&amp;lt;/code&amp;gt; - сколько раз может разрушиться один тайл (обычно бесконечно), &amp;lt;code&amp;gt;tileBreakScale&amp;lt;/code&amp;gt; это множитель интенсивности для расчёта разрушения (можно сделать взрыв сильнее по урону, но слабее по пробитию).&lt;br /&gt;
&lt;br /&gt;
== Визуализация и звук ==&lt;br /&gt;
&lt;br /&gt;
Визуал отрисовывается на клиенте через &amp;lt;code&amp;gt;ExplosionOverlay&amp;lt;/code&amp;gt;. Сервер создаёт специальную сущность с компонентом &amp;lt;code&amp;gt;ExplosionVisualsComponent&amp;lt;/code&amp;gt;, которая передаёт клиенту:&lt;br /&gt;
&lt;br /&gt;
* координаты эпицентра,&lt;br /&gt;
* наборы плиток по итерациям,&lt;br /&gt;
* список интенсивностей,&lt;br /&gt;
* матрицу трансформации для космоса.&lt;br /&gt;
&lt;br /&gt;
Клиент подгружает текстуры из прототипа и рисует их с соответствующим цветом и прозрачностью, в зависимости от текущей интенсивности и прогресса взрыва (номер итерации).&lt;br /&gt;
&lt;br /&gt;
Звук воспроизводится сразу в момент создания взрыва (сервер отправляет звуковые события игрокам в радиусе). Есть два набора звуков — для близкого и дальнего расстояния.&lt;br /&gt;
&lt;br /&gt;
== Компоненты-триггеры взрывов ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;code&amp;gt;ExplosiveComponent&amp;lt;/code&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Самый простой - содержит ссылку на прототип и параметры:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;ExplosionType&amp;lt;/code&amp;gt; - ID прототипа.&lt;br /&gt;
* &amp;lt;code&amp;gt;TotalIntensity&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;IntensitySlope&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;MaxIntensity&amp;lt;/code&amp;gt; - могут переопределять значения по умолчанию.&lt;br /&gt;
* &amp;lt;code&amp;gt;TileBreakScale&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;MaxTileBreak&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;CanCreateVacuum&amp;lt;/code&amp;gt; - управляют разрушением тайлов.&lt;br /&gt;
* &amp;lt;code&amp;gt;Repeatable&amp;lt;/code&amp;gt; - может ли взрываться несколько раз.&lt;br /&gt;
* &amp;lt;code&amp;gt;DeleteAfterExplosion&amp;lt;/code&amp;gt; — удалять ли сущность после взрыва.&lt;br /&gt;
&lt;br /&gt;
Система вызывает &amp;lt;code&amp;gt;TriggerExplosive&amp;lt;/code&amp;gt;, который ставит взрыв в очередь.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;code&amp;gt;ScatteringGrenadeComponent&amp;lt;/code&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Используется для гранат, которые разлетаются на множество мелких взрывающихся объектов. При срабатывании (триггер по ключу) содержимое контейнера (и неразмноженные экземпляры) разбрасываются в стороны с заданной скоростью и случайными углами. Затем у каждого выброшенного объекта может быть активирован таймер (Trigger) через заданные задержки.&lt;br /&gt;
&lt;br /&gt;
Параметры:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;FillPrototype&amp;lt;/code&amp;gt; - прототип для заполнения, если контейнер пуст.&lt;br /&gt;
* &amp;lt;code&amp;gt;Capacity&amp;lt;/code&amp;gt; - максимальное количество вылетающих entity (можно добавить любую entity, которая будет вылетать при активации этой гранаты).&lt;br /&gt;
* &amp;lt;code&amp;gt;Velocity&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Distance&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;RandomAngle&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;RandomDistance&amp;lt;/code&amp;gt; - параметры разлёта.&lt;br /&gt;
* &amp;lt;code&amp;gt;DelayBeforeTriggerContents&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;IntervalBetweenTriggers&amp;lt;/code&amp;gt; — задержки активации.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;code&amp;gt;ProjectileGrenadeComponent&amp;lt;/code&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Похож на &amp;lt;code&amp;gt;ScatteringGrenade&amp;lt;/code&amp;gt;, но выбрасывает не взрывающиеся объекты, а снаряды (&amp;lt;code&amp;gt;projectiles&amp;lt;/code&amp;gt;), которые летят с заданной скоростью и наносят урон при попадании (через систему стрельбы).&lt;br /&gt;
&lt;br /&gt;
== Сопротивление взрывам (&amp;lt;code&amp;gt;ExplosionResistanceComponent&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
&lt;br /&gt;
Этот компонент можно добавить предмету (например, сумке) или на саму сущность. Он уменьшает или увеличивает получаемый урон от взрывов в зависимости от коэффициента.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;DamageCoefficient&amp;lt;/code&amp;gt; - множитель (2 - урон в два раза больше, 1 - нет защиты, 0 - полная неуязвимость).&lt;br /&gt;
* &amp;lt;code&amp;gt;Modifiers&amp;lt;/code&amp;gt; - словарь, где ключ - ID прототипа взрыва, значение - дополнительный множитель именно для этого типа. Это позволяет иметь разную защиту от разных взрывов.&lt;br /&gt;
* &amp;lt;code&amp;gt;Worn&amp;lt;/code&amp;gt; - если &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt;, то действует только когда предмет надет (через &amp;lt;code&amp;gt;InventoryRelayedEvent&amp;lt;/code&amp;gt;).&lt;br /&gt;
* &amp;lt;code&amp;gt;Examine&amp;lt;/code&amp;gt; - строка локализации для отображения в осмотре.&lt;br /&gt;
&lt;br /&gt;
== Пример из &amp;lt;code&amp;gt;explosion.yml&amp;lt;/code&amp;gt; ==&lt;br /&gt;
&lt;br /&gt;
 - type: explosion&lt;br /&gt;
   id: Default&lt;br /&gt;
   damagePerIntensity:&lt;br /&gt;
     types:&lt;br /&gt;
       Heat: 5&lt;br /&gt;
       Blunt: 5&lt;br /&gt;
       Piercing: 5&lt;br /&gt;
   tileBreakChance: [0, 0.5, 1]&lt;br /&gt;
   tileBreakIntensity: [0, 10, 30]&lt;br /&gt;
   tileBreakRerollReduction: 20&lt;br /&gt;
   lightColor: Orange&lt;br /&gt;
   texturePath: /Textures/Effects/fire.rsi&lt;br /&gt;
   fireStates: 3&lt;br /&gt;
   temperature: 800&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;Default&amp;lt;/code&amp;gt; - ID прототипа.&lt;br /&gt;
* &amp;lt;code&amp;gt;damagePerIntensity&amp;lt;/code&amp;gt; - количество урона за одну единицу интенсивности на всём тайле.&lt;br /&gt;
* &amp;lt;code&amp;gt;tileBreakChance&amp;lt;/code&amp;gt; и &amp;lt;code&amp;gt;tileBreakIntensity&amp;lt;/code&amp;gt; - шанс разрушения плитки: при интенсивности 0 -&amp;gt; 0%, при 10 -&amp;gt; 50%, при 30 -&amp;gt; 100%.&lt;br /&gt;
* &amp;lt;code&amp;gt;tileBreakRerollReduction&amp;lt;/code&amp;gt; - после разрушения интенсивность уменьшается на 20, и проверяется следующий слой.&lt;br /&gt;
* &amp;lt;code&amp;gt;lightColor&amp;lt;/code&amp;gt; - цвет вспышки в эпицентре взрыва.&lt;br /&gt;
* &amp;lt;code&amp;gt;texturePath&amp;lt;/code&amp;gt; - путь к текстуре взрыва.&lt;br /&gt;
* &amp;lt;code&amp;gt;fireStates&amp;lt;/code&amp;gt; - то, какой &amp;lt;code&amp;gt;State&amp;lt;/code&amp;gt; (написанный в &amp;lt;code&amp;gt;meta.json&amp;lt;/code&amp;gt;) используется при взрыве&lt;br /&gt;
* &amp;lt;code&amp;gt;temperature&amp;lt;/code&amp;gt; - температура атмосферы после взрыва&lt;br /&gt;
&lt;br /&gt;
== Очередь и объединение взрывов ==&lt;br /&gt;
&lt;br /&gt;
Взрывы ставятся в очередь (&amp;lt;code&amp;gt;_explosionQueue&amp;lt;/code&amp;gt;) и обрабатываются понемногу за тик, чтобы не нагружать сервер. Если два взрыва одного прототипа происходят в одном тике и их эпицентры ближе &amp;lt;code&amp;gt;maxCombineDistance&amp;lt;/code&amp;gt;, их интенсивности суммируются. Это позволяет, например, детонировать одновременно несколько бомб, создавая один мощный взрыв вместо нескольких маленьких.&lt;/div&gt;</summary>
		<author><name>Dngcher</name></author>
	</entry>
</feed>