SM: Полный гайд по ракетостроению (NO MODS)

Scrap Mechanic185 views9 favorites14 min readby dima73Updated 5 MarView on Steam ↗

МОДЫ КОТОРЫЕ НУЖНЫ ДЛЯ ОБЛЕГЧЕНИЯ СТРОИТЕЛЬСТВА

Вот одна из сборок модов с инструментами, где вы можете найти все необходимое:
https://steamcommunity.com/sharedfiles/filedetails/?id=3304245465&searchtext=tool

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

теперь коротко о тех блоках которые нам нужны:

Зеленый сенсор, как понятно из названия, этот сенсор предназначен для того, чтобы наглядно визуализировать точное расположение центра масс вашей ракеты. Это незаменимый инструмент, ведь без понимания точки баланса вы не сможете выставить двигатели так, чтобы конструкцию не закручивало в воздухе.
Устройство имеет два режима отображения, которые переключаются клавишей U. Чтобы активировать визуализацию и увидеть центр масс на своей постройке, достаточно нажать клавишу взаимодействия E. Используйте этот инструмент на каждом этапе сборки, чтобы контролировать стабильность вашей ракеты. Синий сенсор, визуализирует центр тяги (Center of Thrust) вашей конструкции, показывая суммарный вектор силы всех установленных двигателей.
Как и в случае с центром масс, здесь доступны два режима отображения, которые меняются клавишей U, а сама визуализация включается нажатием E. Главная задача этого инструмента — помочь вам совместить центр тяги с центром масс. Если синяя точка тяги не совпадает с точкой массы, ракету неизбежно начнет разворачивать или закручивать в штопор прямо во время взлета. Бинго Блок Эдитор (Blueprint Editor) — это, без преувеличения, один из самых мощных инструментов в арсенале опытного механика. Его возможности настолько широки, что для полного разбора всех функций понадобился бы отдельный огромный туториал. Тем не менее, в рамках нашего гайда по ракетам мы сосредоточимся только на одной, наиболее критической для нас функции.

Нам этот инструмент нужен прежде всего для того, чтобы «гличить» одни элементы в другие. Это позволяет размещать блоки, логику или двигатели в одном и том же пространстве, где при обычных условиях игра бы не позволила этого сделать из-за ограничений. Благодаря этому мы можем создавать невероятно компактные ракеты, пряча всю сложную начинку внутрь узкого корпуса, при этом сохраняя полную ванильность постройки(если вы играете в ванильное выживание у вас просто не получится делать настолько компактные ракеты).

он показывает локальные координаты конструкции если навестись на нее. Если щелкнуть левую кнопку мыши мы увидим так называемый Blueprint то есть файл который хранит информацию о конструкции например когда мы ее сохраняем. Нам достаточно только двигать предмет благодаря нижней панели где написано "Position Control". Вообще советую разобраться как работает этот инструмент для дальнейшей работы с ним

КАК ИГРА ОБРАБАТЫВАЕТ ФИЗИКУ И НЕ ТОЛЬКО

Как игра видит твою конструкцию
Scrap Mechanic воспринимает любую ракету как единое физическое тело (Body), состоящее из отдельных блоков.

Центр масс: Он динамический. Если ты отстреливаешь часть ракеты, центр масс мгновенно пересчитывается, что может резко изменить траекторию (физика обновляется каждый тик (40 тиков в 1 секунде), но тикрейт может меняться в зависимости от ФПС).

Если FPS > 40, тикрейт стабильный — 40.

Если 20 < FPS < 40, тикрейт равен значению FPS.

Если FPS < 20, тикрейт фиксируется на 20 (игра начинает «замедляться»).

Благодаря таймеру можно легко считать количество тиков.

Влияние подшипников: Каждый подшипник — это отдельное соединение, которое создает маленькую конструкцию, просто пытающуюся остаться в пределах, где она должна находиться (в зависимости от физики и веса конструкции). Также чем больше подшипников в корпусе, тем сильнее ракету будет «колбасить» на высоких скоростях, и вообще они лагают, поэтому мы будем минимизировать их количество.

Здесь видно, как белая конструкция смещена влево относительно камеры, хотя она закреплена на подшипнике. Теперь разберемся с реактивным двигателем. Его сила начинается из его геометрического центра. Каждый вид двигателя имеет свой вес и максимальную силу (далее пропишу характеристики). Также каждый двигатель имеет одинаковый расход топлива независимо от его настроек, а именно одну канистру бензина на 5 секунд. Отдельно существует так называемый "Legacy" — это двигатель из старых версий, который является самым легким и дает такую же силу, как двигатель 5 уровня, что делает его лучшим. Но пока не найдено способа получить его в выживании, из-за чего его используют только в креативе (снизу ссылка на все необходимые "Legacy" блоки).
Есть популярная ошибка, когда люди делают ракеты и ставят двигатель сзади, как здесь, из-за этого ракета не может лететь прямо или со временем начинает закручиваться.

---


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

Аэродинамика
Сейчас в игре аэродинамика работает максимально упрощенно: каждый тик конструкция теряет определенный процент скорости независимо от всех остальных параметров. Согласно моим замерам, максимальная скорость падения в воздухе составляет примерно 45 м/с. Исходя из этого, можно путем несложных расчетов определить, что конструкция теряет 0.54% скорости каждого тика.

Эта информация не является критической для ракет типа НАР (неуправляемые авиационные ракеты) или управляемых ракет, которые мало зависят от начальных условий. Тем не менее, если речь идет о высокоточных ракетах, летящих по баллистической траектории и наводящихся через математические расчеты, пренебрежение этим сопротивлением воздуха увеличивает погрешность в 100–200 раз. Это делает такую «математическую» баллистическую ракету менее точной, чем обычный двигатель с бомбой, запущенный «на глаз».

Маховики
Если честно, мне лень объяснять, как работают маховики, тем более что большинство ПТУР (ПТУР — противотанковая управляемая ракета) или других ракет наводятся просто по оси, не поворачивая корпус. Но все же в Scrap Mechanic физика довольно неплохо обрабатывает гироскопический эффект, благодаря чему его можно спокойно использовать для стабилизации.

Задержка в логике
Логика, как и всё в игре, обновляется каждый тик, поэтому в сложных конструкциях желательно учитывать задержку.
Вот, например, схема с таймером на 0 секунд (и 0 тиков). Кажется, что два спудгана выстрелят одновременно, но если посчитать, то нижний выстрелит через 3 тика после нажатия кнопки, а верхний — через 4. В результате мы имеем целый 1 тик задержки, что для чувствительных схем довольно много.

Существуют отдельные схемы, использующие этот эффект, например, «самосваренный» гейт. Это логический блок в режиме XOR, который через файл blueprint подключен сам к себе. Однако его легко сделать и без редактирования файлов: достаточно последовательно соединить три XOR гейта (входной сигнал при этом нужно подавать на все три одновременно). Такой механизм будет постоянно менять свое состояние (мигать), если подать постоянный сигнал, или просто переключит состояние, если подать импульс в 1 тик.

Бомбочки друг в друге (или ядерка):
Если взять одну бомбу и взорвать её, радиус поражения будет небольшим — даже в случае с большой взрывчаткой. Из-за этого возникла идея: почему бы не засунуть несколько бомб друг в друга? В результате, когда эти бомбы ни к чему не закреплены, они пытаются выйти друг из друга из-за конфликта хитбоксов и разлетаются (чаще всего вдоль одной оси). Здесь на фото видно, как срабатывает одна маленькая бомба, а ниже видно, как разлетаются 20 маленьких. Таким образом, бомбы проходят даже сквозь блоки, что позволяет им пробивать «3-й металл», хотя существуют способы защититься и от этого. Разные типы взрывчатки работают по-разному. Например, если маленькие бомбы не закреплены к прочному блоку, который они не могут разрушить, то при активации одной бомбы все остальные просто разлетятся в стороны.

С большими бомбами ситуация сложнее: если они не закреплены, то при детонации одной другие создадут много визуальных эффектов взрыва, но могут даже не повредить блок картона рядом. Поэтому их нужно активировать, разрушая блок, к которому они закреплены. В итоге мы имеем: маленькие бомбы — опасные и простые, и большие — сложные в детонации, но значительно эффективнее. Но все они много весят и их можно сделать только в креативе.

ХАРАКТЕРИСТИКИ И НЕМНОГО ТЕОРИИ

Вы часто могли встречать классификацию вроде «ракета типа воздух-поверхность» или «поверхность-воздух». Что же это значит? Все просто: первое слово указывает на место запуска, а второе — на тип цели, которую ракета должна поразить. Например:

Земля — цели на земле: танки, бронемашины, укрепления и т.д.
Воздух — самолеты, вертолеты или другие ракеты.
Вода — надводные цели, такие как корабли или катера.

или иногда говорят поверхность, когда говорят о земле и воде одновременно.
То есть ракета «воздух-земля» — это ракета, которую запускают с самолета по наземной цели.

Помимо классификации по месту запуска, ракеты делят по способу полета и наведения. Вот основные типы, которые можно встретить или создать в Scrap Mechanic:

  1. НАР (Неуправляемая Авиационная Ракета) — самый простой тип. У нее нет систем наведения: куда прицелился и выстрелил, туда она и полетела. Главное преимущество — дешевизна и возможность массового спама.
  2. ПТУР (Противотанковая Управляемая Ракета) — ракета, которой игрок может управлять в полете. В игре это обычно реализуется через дистанционное управление или передатчики сигнала, чтобы корректировать курс точно в уязвимое место танка.
  3. Лазерная ракета — снаряд, ориентирующийся на луч лазера (который часто создают с помощью модов или блоков нулевой толщины). Она пытается держаться на линии «лазер–цель».
  4. Баллистическая ракета — ракета, летящая по заранее рассчитанной траектории. Она включает двигатели на определенное время (по таймеру), поднимается вверх или выходит на дугу, а дальше по инерции падает точно в цель.
  5. Торпеды — фактически, это те же ракеты, но для водной среды. В Scrap Mechanic их можно считать ракетами, просто они настроены на работу с плавучестью и другим типом сопротивления среды.

ТЕПЕРЬ ХАРАКТЕРИСТИКИ:
Трастер 5-го уровня и Legacy-трастер имеют одинаковую тягу — они могут поднять по 256 кг. Однако Legacy-трастер весит всего 6.25 кг, тогда как 5-й уровень — 9.375 кг, что делает Legacy значительно эффективнее для ракет. По прочности он примерно соответствует трастеру 3-го уровня, поэтому легко разрушается при детонации — это даже плюс, ведь на месте взрыва остается меньше «мусора».

Кроме того, Legacy-версии сенсора и контроллера весят в полтора раза меньше своих современных аналогов. Я мог бы расписать характеристики каждого предмета, но это займет слишком много времени, да и они зависят от многих факторов.

В целом, если вы строите в «Креативе», я настойчиво рекомендую использовать Legacy-предметы. Вот ссылка на соответствующий пак в мастерской Steam: [https://steamcommunity.com/sharedfiles/filedetails/?id=3671547818](https://steamcommunity.com/sharedfiles/filedetails/?id=3671547818).

Для режима «Выживание» (Survival) лучше всего использовать детали 3-го уровня. Использовать 5-й уровень целесообразно только для сложных ракет с отделяющейся боеголовкой — в таких схемах основная часть ракеты может оставаться целой после отработки по цели, поэтому дорогие компоненты не будут потеряны зря.

КАК СДЕЛАТЬ НОРМАЛЬНУЮ РАКЕТУ ТИПА НАР

Перед просмотром этого раздела рекомендую посмотреть: "МОДЫ КОТОРЫЕ НУЖНЫ ДЛЯ ОБЛЕГЧЕНИЯ СТРОИТЕЛЬСТВА", "КАК ИГРА ОБРАБАТЫВАЕТ ФИЗИКУ И НЕ ТОЛЬКО"

Сейчас мы будем смотреть на мою ракету СТРЕЛА-2А и СТРЕЛА-2Б (позже я расскажу, какая в них разница)

Начнем с середины ракеты, так как она одна из самых важных:
Для того чтобы центр тяги и центр масс совпадали (чтобы ракета летела прямо), двигатель (трастер) должен быть расположен строго по центру ракеты. В ванильном выживании, где нет возможности просто «вклеить» детали друг в друга, приходится соединять заднюю и переднюю части ракеты в обход двигателя, что делает ракету больше. В сам корпус двигателя можно «засунуть» логические блоки, а если ракета детонирует через сенсор — можно поставить спудганы (картофелеметы), так как они имеют довольно большой вес, что полезно для балансировки носовой части.

На картинке показан пример, как можно соединить перед и зад ракеты, а ниже — моя ракета типа НАР, у неё логика находится сзади, спереди бомба с сенсором (хотя на самом деле бомба и спереди, и сзади, но сейчас это не важно), а посередине 2 спудгана по диагонали.

Теперь заряд ракеты (для класса воздух-поверхность):
Для ракет класса «воздух-поверхность» спереди обычно ставят взрывчатку (малую или большую канистру) в зависимости от размеров ракеты и её назначения. Большое количество бомб редко дает преимущество, разве что они загличены друг в друга. Большая бомба имеет значительно больший радиус поражения и пробивную способность, поэтому если корпус ракеты позволяет (например, 3х3 блока), рекомендую ставить именно её.

Если мы делаем ракету против наземных целей, достаточно одного сенсора, который смотрит прямо. Чтобы центр масс не смещался в сторону, по диагонали от сенсора стоит поставить объект с таким же весом. Например, в моей ракете «СТРЕЛА-2Б» (на фото справа) использован один Legacy-сенсор и один логический блок, так как они имеют одинаковую массу. Имейте в виду: обычный сенсор не подойдет для такой схемы, потому что он в 1,5 раза тяжелее старого.

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

А что там с противовоздушными ракетами?
Если ракета летит просто прямо, попасть точно в летящий объект очень сложно.
Для решения этой проблемы используют либо таймер, который подрывает ракету с задержкой (чтобы она повреждала цель радиусом взрыва), либо систему сенсоров, направленных в разные стороны (фото слева). Также можно добавить подшипник с контроллером, чтобы сенсоры вращались — это позволяет сканировать больше пространства (фото справа) и уменьшить слепые зоны.

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

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

Начнем со схемы, которая детектирует момент вылета ракеты. Существует много способов, но, как по мне, лучший — это активация ракеты сразу после её отстыковки. Наверное, вы заметили, что в задней части моей ракеты есть темный гейт. Его задача — удерживать ракету в «режиме ожидания». Пока этот гейт подключен к пусковой установке, передний сенсор и основной двигатель выключены, чтобы ракета не взорвалась раньше времени и не мешала самолету или носителю.
На схеме справа принцип простой: пока «черный» гейт присутствует, розовый гейт AND заблокирован. Как только связь разрывается (ракета отсоединяется), через один тик розовый гейт активируется благодаря паре красных гейтов, которые создают постоянный сигнал. Теперь представим, что ракета долетела до цели и сенсор сработал, но у нас есть всего один спудган. Если просто попасть в бомбу картофелиной, она взорвется с задержкой в 2 секунды. Каждая последующая попавшая картофелина забирает 1 секунду времени ожидания. То есть для мгновенного взрыва нужно либо 3 спудгана, либо ждать 2 секунды. Последний вариант нам не подходит, так как за это время ракета может просто отрикошетить и улететь прочь.

Чтобы этого избежать, сенсор подключен к «самосваренному» гейту. Как вы помните, если подать на него постоянный сигнал, он начнет мерцать, выдавая импульс каждый второй тик. Этот сигнал идет дальше к гейту AND, который нужен для того, чтобы детонатор не сработал раньше времени, пока ракета еще находится на пилоне (то есть пока розовый гейт выключен).

Детонация: основные методы
Существует два основных способа взорвать бомбу в Scrap Mechanic:

  1. Контактный (физический удар): Если ракета летит на большой скорости, бомба может сработать сама от столкновения с объектом. Однако этот способ не всегда надежен — иногда снаряд просто разбивается, оставляя на карте кучу недетонировавших бомб.
  2. Дистанционный (через сенсор): Этот метод создает чуть больше нагрузки на сервер (лагов), но он значительно надежнее. Как только сенсор замечает цель, срабатывают спудганы, которые попадают в бомбу. Даже если из-за какого-то бага картошка не попадет, можно подстраховаться таймером самоликвидации. Он подорвет ракету через определенное время, чтобы она не засоряла карту.
Именно поэтому у меня есть две версии ракеты: одна — для массированного залпа «дешевыми» снарядами, другая — для более дорогого, но гарантированного подрыва цели. Также следует учитывать, что спудганы довольно тяжелые. Для сравнения: один спудган весит 5.89 кг, тогда как Legacy-трастер — 6.25 кг, а трастер 5-го уровня — 9.375 кг.
Ракета слева (легкая версия) по массе в полтора раза меньше правой. Это значит, что самолет сможет взять на борт в полтора раза больше таких ракет, что значительно повышает огневую мощь в залпе.

В итоге у нас должна получиться простенькая ракета типа НАР (неуправляемая авиационная ракета). Для начала советую попробовать создать вариант «поверхность-поверхность», так как он самый простой, а уже потом переходить к более сложным типам. Главное для таких ракет — минимальный вес, так как чаще всего ими просто «спамят» по позициям врага (разве что вы используете варианты с загличенными внутрь бомбами).

КАК ЗАПУСКАТЬ РАКЕТЫ

Вернемся к фотографии, где ракета стоит просто на опоре («палочке»). Такую ракету можно запускать при помощи ПКМ (удалением блока). Этот тип запуска создает идеальные условия для расчетов траектории, так как мы точно знаем углы по вертикали и горизонтали, что критически важно для баллистических ракет. Если же пространство ограничено, можно использовать поршни, чтобы разделять ракеты на разные структуры, дабы они не слипались. Однако стоит учитывать, что из-за трения и особенностей физического движка игры точность при таком запуске немного теряется. Золотая середина между точностью и компактностью для установки на технику — это когда ракета держится на одном блоке. При его разрушении ракета падает и сразу активируется. Если вы решили расставлять ракеты через блоки, лучше не делать из них отдельные структуры при помощи поршней или подшипников. Из-за специфической физики игры в момент пуска такую ракету может немного «повести», и она полетит криво.

КОНЕЦЬ

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

Перевод на английский и русский языки был выполнен нейросетью Gemini AI.

This guide was created by its original author on the Steam Community. Are you the author and want it removed? Request removal.