---
navigation:
  parent: items-blocks-machines/items-blocks-machines-index.md
  title: Поставщик шаблонов
  icon: pattern_provider
  position: 210
categories:
- devices
item_ids:
- ae2:pattern_provider
- ae2:cable_pattern_provider
---

# Поставщик шаблонов

<Row gap="20">
<BlockImage id="pattern_provider" scale="8" />
<BlockImage id="pattern_provider" p:push_direction="up" scale="8" />
<GameScene zoom="8" background="transparent">
  <ImportStructure src="../assets/blocks/cable_pattern_provider.snbt" />
</GameScene>
</Row>

Поставщики шаблонов — это основной способ, с помощью которого ваша система [автоматического создания](../ae2-mechanics/autocrafting.md) взаимодействует с миром. Они помещают ингредиенты из своих [шаблонов](patterns.md) в смежные инвентари, и предметы можно вставлять в них, чтобы вставить их в сеть. Часто канал можно сэкономить, подавая выход машины обратно в ближайший поставщик шаблонов (часто тот, который поместил ингредиенты), вместо использования <ItemLink id="import_bus" />, чтобы вытащить выход машины в сеть.


Примечательно, что, поскольку они помещают ингредиенты непосредственно из [хранилища для изготовления](crafting_cpu_multiblock.md#crafting-storage) в ЦП изготовления, они никогда не содержат ингредиенты в своём инвентаре, поэтому вы не можете выталкивать их оттуда. Вам нужно, чтобы поставщик помещал в другой инвентарь (например, бочку), а затем выталкивать оттуда.


Также примечательно, что поставщик должен помещать ВСЕ ингредиенты сразу, он не может помещать полу-партии. Это полезно для эксплуатации.


Поставщики шаблонов имеют специальное взаимодействие с интерфейсами в [подсетях](../ae2-mechanics/subnetworks.md): если интерфейс не изменён (ничего в слотах запроса), поставщик полностью пропустит интерфейс и поместит напрямую в [хранилище](../ae2-mechanics/import-export-storage.md) этой подсети, пропуская интерфейс и не заполняя его пакетами рецептов, и, что более важно, не вставляя следующую партию, пока в машине нет места. Это работает правильно с блокирующим режимом: поставщик будет отслеживать слоты в машине на предмет ингредиентов, вместо слотов в интерфейсе.


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


<GameScene zoom="6" background="transparent">
  <ImportStructure src="../assets/assemblies/furnace_automation.snbt" />

<BoxAnnotation color="#dddddd" min="1 0 0" max="2 1 1">
        (1) Поставщик шаблонов: Направленный вариант, с помощью гаечного ключа из истинного кварца, с соответствующими шаблонами обработки.
        ![Шаблон железа](../assets/diagrams/furnace_pattern_small.png)
  </BoxAnnotation>

<BoxAnnotation color="#dddddd" min="1 1 0" max="2 1.3 1">
        (2) Интерфейс: В конфигурации по умолчанию.
  </BoxAnnotation>

<BoxAnnotation color="#dddddd" min="1 1 0" max="1.3 2 1">
        (3) Шина хранения №1: Отфильтрована на уголь.
        <ItemImage id="minecraft:coal" scale="2" />
  </BoxAnnotation>

<BoxAnnotation color="#dddddd" min="0 2 0" max="1 2.3 1">
        (4) Шина хранения №2: Отфильтрована на чёрный список угля, с помощью карты-инвертера.
        <Row><ItemImage id="minecraft:coal" scale="2" /><ItemImage id="inverter_card" scale="2" /></Row>
  </BoxAnnotation>

<DiamondAnnotation pos="4 0.5 0.5" color="#00ff00">
        В основную сеть
    </DiamondAnnotation>

  <IsometricCamera yaw="195" pitch="30" />
</GameScene>


Это общая иллюстрация предоставления нескольким машинам

<GameScene zoom="6" background="transparent">
<ImportStructure src="../assets/assemblies/provider_interface_storage.snbt" />

<BoxAnnotation color="#dddddd" min="2.7 0 1" max="3 1 2">
        Интерфейс (должен быть плоским, не полным блоком)
  </BoxAnnotation>

<BoxAnnotation color="#dddddd" min="1 0 0" max="1.3 1 4">
        Шины хранения
  </BoxAnnotation>

<BoxAnnotation color="#dddddd" min="0 0 0" max="1 1 4">
        Места, куда вы хотите предоставлять шаблон
  </BoxAnnotation>

<IsometricCamera yaw="185" pitch="30" />
</GameScene>


Поддерживаются несколько поставщиков шаблонов с одинаковыми шаблонами, и они работают параллельно.

Поставщики шаблонов будут пытаться распределять свои партии по всем своим граням, таким образом используя все прикреплённые машины параллельно.


## Варианты

Поставщики шаблонов бывают трёх разных вариантов: обычные, направленные и плоские/[подчасти](../ae2-mechanics/cable-subparts.md). Это влияет на то, на какие конкретные стороны они помещают ингредиенты, с каких сторон получают входы и предоставляют сетевое подключение.


* Обычные поставщики шаблонов помещают ингредиенты на все стороны, получают входы со всех сторон и, как и большинство машин AE2, действуют как кабель, предоставляющий [сетевые подключения](../ae2-mechanics/me-network-connections.md) ко всем сторонам.

* Направленные поставщики шаблонов создаются с помощью <ItemLink id="certus_quartz_wrench" /> на обычном поставщике шаблонов для изменения его направления. Они помещают ингредиенты только на выбранную сторону, получают входы со всех сторон и специально не предоставляют [сетевое подключение](../ae2-mechanics/me-network-connections.md) на выбранной стороне. Это позволяет им помещать в машины AE2, не соединяя сети, если вы хотите создать подсеть.

* Плоские поставщики шаблонов являются [подчастями кабеля](../ae2-mechanics/cable-subparts.md), поэтому несколько из них можно разместить на одном кабеле, что позволяет создавать компактные установки. Они действуют подобно выбранной стороне направленного поставщика шаблонов, предоставляя шаблоны, получая входы и **не** предоставляя [сетевое подключение](../ae2-mechanics/me-network-connections.md) на своей лицевой стороне.


Поставщики шаблонов можно переключать между обычными и плоскими в сетке крафта.


## Настройки

У поставщиков шаблонов есть различные режимы:


*   **Блокирующий режим** останавливает поставщика от помещения новой партии ингредиентов, если в машине уже есть ингредиенты.
*   **Блокировка создания** может заблокировать поставщика при различных условиях красного камня или до тех пор, пока результат предыдущего создания не будет вставлен в этого конкретного поставщика шаблонов.
*   Поставщик может быть показан или скрыт в <ItemLink id="pattern_access_terminal" />.


## Приоритет

Приоритеты можно установить, щёлкнув по гаечному ключу в правом верхнем углу графического интерфейса. В случае нескольких [шаблонов](patterns.md) для одного и того же предмета, шаблоны в поставщиках с более высоким приоритетом будут использоваться вместо шаблонов в поставщиках с более низким приоритетом, если только в сети нет ингредиентов для шаблона с более высоким приоритетом.


## Распространённое заблуждение

По какой-то причине люди продолжают делать это, я не понимаю почему, но я помещаю это сюда, чтобы, возможно, помочь. (Возможно, люди ошибаются, думая, что <ItemLink id="export_bus" /> — единственный способ, при котором вещи выходят из сети, не зная, что поставщики шаблонов также экспортируют вещи)


Это не сделает то, что вы хотите. Как упоминалось в [кабелях](cables.md), кабели не являются трубами для предметов, у них нет внутреннего инвентаря, поставщики не будут помещать в них.


<GameScene zoom="8" background="transparent">
  <ImportStructure src="../assets/assemblies/provider_misconception_1.snbt" />

  <BoxAnnotation color="#dddddd" min="1 0 3" max="2 1 4">
        Не печь-плавильня
  </BoxAnnotation>

  <IsometricCamera yaw="95" pitch="5" />
</GameScene>


Поскольку поставщик не имеет ничего, во что можно поместить, он не сможет функционировать. Всё, что он здесь делает, — это действует как кабель, соединяющий <ItemLink id="export_bus" /> с сетью.


Поставщик также не будет каким-либо образом говорить <ItemLink id="export_bus" />, что экспортировать, шина экспорта будет просто экспортировать всё, что вы поместили в её фильтр.


То, что мы здесь по сути сделали, это:


<GameScene zoom="8" background="transparent">
  <ImportStructure src="../assets/assemblies/provider_misconception_2.snbt" />

  <BoxAnnotation color="#dddddd" min="1 0 3" max="2 1 4">
        Не печь-плавильня
  </BoxAnnotation>

  <IsometricCamera yaw="95" pitch="5" />
</GameScene>


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


<GameScene zoom="8" background="transparent">
  <ImportStructure src="../assets/assemblies/provider_misconception_3.snbt" />

  <BoxAnnotation color="#dddddd" min="1 0 3" max="2 1 4">
        Не печь-плавильня
  </BoxAnnotation>

  <IsometricCamera yaw="95" pitch="5" />
</GameScene>


## Использование с молекулярными сборщиками

<ItemLink id="molecular_assembler" /> по сути такие же, как и любые другие машины. У них есть инвентарь, в который можно вставлять предметы, затем они выполняют действие над предметами в этом инвентаре, а затем, как и многие машины, помещают результат в смежный инвентарь. Таким образом, их следует использовать с поставщиками, как и с любыми другими машинами, с одним дополнением:


Сборщики могут брать нужный шаблон из <ItemLink id="crafting_pattern" />, <ItemLink id="smithing_table_pattern" /> или <ItemLink id="stonecutting_pattern" />, которые вставлены непосредственно в сборщик. Это полезно на сборочной линии, но необходимость иметь выделенный сборщик для каждого рецепта создания будет раздражать.


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


На самом деле это очень просто, просто поместите шаблоны в поставщики:


<GameScene zoom="4" background="transparent">
  <ImportStructure src="../assets/assemblies/assembler_tower.snbt" />
  <IsometricCamera yaw="195" pitch="30" />
</GameScene>


*Обратите внимание, что здесь ровно 8 поставщиков, максимальное количество каналов, которые могут быть проложены через один сборщик, поставщика или неплотный кабель.*


## Рецепты

<RecipeFor id="pattern_provider" />

<RecipeFor id="cable_pattern_provider" />