---
navigation:
  parent: ae2-mechanics/ae2-mechanics-index.md
  title: Canais
  icon: controller
---

# Canais

As [Redes ME](me-network-connections.md) do Applied Energistics 2 exigem
Canais para suportar [dispositivos](../ae2-mechanics/devices.md) que usam armazenamento em rede, ou outros serviços de rede. Pense nos canais como cabos USB para todos os seus dispositivos. Um computador tem um número limitado de portas USB e só pode suportar
tantos dispositivos conectados a ele. A maioria das máquinas, dispositivos de bloco inteiro e cabos padrão só pode passar
até 8 canais. Você pode pensar nos dispositivos de bloco inteiro e cabos padrão como um pacote de 8 "fios de canal". Porém, [cabos densos](../items-blocks-machines/cables.md#dense-cable) podem suportar até 32 canais. Os únicos outros dispositivos capazes de transmitir 32 são <ItemLink id="me_p2p_tunnel" />
e a [Ponte de Rede Quântica](../items-blocks-machines/quantum_bridge.md). Cada vez que um dispositivo usa um canal, imagine puxar um "fio" USB do
pacote, o que obviamente significa que esse "fio" não está disponível mais adiante.

<GameScene zoom="7" interactive={true}>
  <ImportStructure src="../assets/assemblies/channel_demonstration_1.snbt" />

  <LineAnnotation color="#33ff33" from="1 .4 .7" to="2.4 .4 .7" alwaysOnTop={true}/>
  <LineAnnotation color="#33ff33" from="1 .6 .7" to="2.4 .6 .7" alwaysOnTop={true}/>
  <LineAnnotation color="#33ff33" from="1 .4 .6" to="2.6 .4 .6" alwaysOnTop={true}/>
  <LineAnnotation color="#33ff33" from="1 .6 .6" to="2.6 .6 .6" alwaysOnTop={true}/>
  <LineAnnotation color="#33ff33" from="1 .6 .6" to="2.6 .6 .6" alwaysOnTop={true}/>

  <LineAnnotation color="#33ff33" from="2.4 .6 .7" to="2.4 .6 1.5" alwaysOnTop={true}/>
  <LineAnnotation color="#33ff33" from="2.4 .4 .7" to="2.4 .4 1.5" alwaysOnTop={true}/>
  <LineAnnotation color="#33ff33" from="2.6 .6 .6" to="2.6 .6 1.5" alwaysOnTop={true}/>
  <LineAnnotation color="#33ff33" from="2.6 .4 .6" to="2.6 .4 1.5" alwaysOnTop={true}/>

  <LineAnnotation color="#33ff33" from="2.1 .6 1.5" to="2.4 .6 1.5" alwaysOnTop={true}/>
  <LineAnnotation color="#33ff33" from="2.6 .4 1.5" to="2.9 .4 1.5" alwaysOnTop={true}/>

  <LineAnnotation color="#33ff33" from="2.6 .6 1.5" to="2.6 .9 1.5" alwaysOnTop={true}/>
  <LineAnnotation color="#33ff33" from="2.4 .1 1.5" to="2.4 .4 1.5" alwaysOnTop={true}/>

  <LineAnnotation color="#33ff33" from="1 .6 .4" to="3.5 .6 .4" alwaysOnTop={true}/>
  <LineAnnotation color="#33ff33" from="1 .4 .4" to="3.5 .4 .4" alwaysOnTop={true}/>

  <LineAnnotation color="#33ff33" from="3.5 .6 .4" to="3.5 .9 .4" alwaysOnTop={true}/>
  <LineAnnotation color="#33ff33" from="3.5 .1 .4" to="3.5 .4 .4" alwaysOnTop={true}/>

  <LineAnnotation color="#33ff33" from="1 .6 .3" to="1.5 .6 .3" alwaysOnTop={true}/>
  <LineAnnotation color="#33ff33" from="1 .4 .3" to="1.5 .4 .3" alwaysOnTop={true}/>

  <LineAnnotation color="#33ff33" from="1.5 .6 .3" to="1.5 .9 .3" alwaysOnTop={true}/>
  <LineAnnotation color="#33ff33" from="1.5 .1 .3" to="1.5 .4 .3" alwaysOnTop={true}/>

  <LineAnnotation color="#ff3333" from="3.5 .5 .5" to="5.5 .5 .5" alwaysOnTop={true}>
  Todos os 8 canais no cabo foram usados, então o Drive não recebe nenhum.  
  </LineAnnotation>

  <LineAnnotation color="#993333" from="1 .5 .5" to="1.25 .5 .5" alwaysOnTop={true}/>
  <LineAnnotation color="#993333" from="1.5 .5 .5" to="1.75 .5 .5" alwaysOnTop={true}/>
  <LineAnnotation color="#993333" from="2 .5 .5" to="2.25 .5 .5" alwaysOnTop={true}/>
  <LineAnnotation color="#993333" from="2.5 .5 .5" to="2.75 .5 .5" alwaysOnTop={true}/>
  <LineAnnotation color="#993333" from="3 .5 .5" to="3.25 .5 .5" alwaysOnTop={true}/>

  <DiamondAnnotation pos="3.6 0.5 0.5" color="#ff0000">
        Todos os 8 canais no cabo foram usados, então o Drive não recebe nenhum.
    </DiamondAnnotation>

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

Uma maneira fácil de ver como os canais estão sendo usados e roteados na sua rede é usar [cabos inteligentes](../items-blocks-machines/cables.md), que mostrarão as rotas e uso dos canais.

Canais consomem 1⁄128 de ae/t por nó por onde passam, isso significa que ao
adicionar um <ItemLink id="controller" /> para uma
rede com 8 dispositivos e mais de 96 nós seu consumo de energia pode diminuir,
pois ele muda como os canais são alocados.

Importante, **CANAIS NÃO TÊM NADA A VER COM A COR DO CABO**, a cor do cabo só impede que cabos conectem.

## Roteamento de Canais

Ao usar um <ItemLink id="controller" />,
os canais são roteados em 3 passos. Primeiro eles tomam o caminho mais curto através das máquinas adjacentes até o cabo [normal](../items-blocks-machines/cables.md)
(vidro, coberto ou inteligente). Depois tomam o caminho mais curto através desse cabo normal até o cabo [denso](../items-blocks-machines/cables.md)
(denso ou denso inteligente). Por fim, tomam o caminho mais curto através desse cabo denso até o <ItemLink id="controller" />.
Se o caminho mais curto já estiver saturado, alguns [dispositivos](devices.md) podem não receber seus canais necessários, utilize
cabos coloridos, ancoras de cabo e túneis para garantir que seus canais sigam o caminho que desejar.

Por exemplo, nesse caso alguns drives não recebem canais porque, embora haja capacidade suficiente nos cabos,
os canais tentam seguir o caminho mais curto, sobrecarregando alguns cabos enquanto outros ficam vazios.

<GameScene zoom="4" interactive={true}>
  <ImportStructure src="../assets/assemblies/channel_path_length_issue.snbt" />

  <LineAnnotation color="#33ff33" from="3 .5 1.4" to="0.4 0.5 1.4" alwaysOnTop={true} thickness="0.05"/>
  <LineAnnotation color="#33ff33" from="0.4 .5 1.4" to="0.4 0.5 3.6" alwaysOnTop={true} thickness="0.05"/>
  <LineAnnotation color="#33ff33" from="0.4 0.5 3.6" to="1.4 0.5 3.6" alwaysOnTop={true} thickness="0.05"/>
  <LineAnnotation color="#33ff33" from="1.4 0.5 3.6" to="1.4 0.5 5" alwaysOnTop={true} thickness="0.05"/>

  <LineAnnotation color="#33ff33" from="3 0.5 3.6" to="1.6 0.5 3.6" alwaysOnTop={true} thickness="0.05"/>
  <LineAnnotation color="#33ff33" from="1.6 0.5 3.6" to="1.6 0.5 5" alwaysOnTop={true} thickness="0.05"/>

  <LineAnnotation color="#ff3333" from="3 .5 1.6" to="0.6 .5 1.6" alwaysOnTop={true} thickness="0.05"/>
  <LineAnnotation color="#ff3333" from="0.6 .5 1.6" to="0.6 .5 3.4" alwaysOnTop={true} thickness="0.05"/>
  <LineAnnotation color="#ff3333" from="0.6 .5 3.4" to="1.4 .5 3.4" alwaysOnTop={true} thickness="0.05"/>

  <LineAnnotation color="#ff3333" from="3 .5 3.4" to="1.6 .5 3.4" alwaysOnTop={true} thickness="0.05"/>

  <BoxAnnotation color="#dddddd" min="1.2 0.2 3.2" max="1.8 0.8 3.8" alwaysOnTop={true} thickness="0.05">
        Mais de 8 canais tentam passar por aqui, então alguns são cortados.
  </BoxAnnotation>

  <IsometricCamera yaw="90" pitch="90" />

</GameScene>

Isso pode ser resolvido restringindo com mais cuidado os caminhos que os canais podem seguir. As redes devem ser em formato de árvore (ou arbusto).
Loops e caminhos ambíguos de canais devem ser minimizados.

<GameScene zoom="4" interactive={true}>
  <ImportStructure src="../assets/assemblies/channel_path_length_issue_fix.snbt" />

  <LineAnnotation color="#33ff33" from="3 .5 1.4" to="0.4 0.5 1.4" alwaysOnTop={true} thickness="0.05"/>
  <LineAnnotation color="#33ff33" from="0.4 .5 1.4" to="0.4 0.5 5.6" alwaysOnTop={true} thickness="0.05"/>
  <LineAnnotation color="#33ff33" from="0.4 0.5 5.6" to="1 0.5 5.6" alwaysOnTop={true} thickness="0.05"/>

  <LineAnnotation color="#33ff33" from="3 0.5 3.6" to="1.6 0.5 3.6" alwaysOnTop={true} thickness="0.05"/>
  <LineAnnotation color="#33ff33" from="1.6 0.5 3.6" to="1.6 0.5 5" alwaysOnTop={true} thickness="0.05"/>

  <IsometricCamera yaw="90" pitch="90" />

</GameScene>

## Redes Ad-Hoc

Uma rede sem um <ItemLink id="controller" />
é considerada Ad-Hoc, e pode suportar até 8 dispositivos que usam canais.
Quando você ultrapassa 8 dispositivos, os dispositivos da rede que usam canais são desligados,
você pode remover dispositivos ou adicionar um <ItemLink id="controller" />.

Diferentemente das redes com controlador, [cabos inteligentes](../items-blocks-machines/cables.md) em redes ad-hoc mostram o número
de canais usados na rede como um todo ao invés do número de canais que passam por aquele cabo específico.

Enquanto usa redes ad-hoc, cada dispositivo usa
1 canal na rede, isso é muito diferente de como o <ItemLink id="controller" /> aloca canais baseado na
rota mais curta.

## Design

Como mencionado antes em [roteamento de canais](channels.md#channel-routing), é melhor projetar sua rede em formato de árvore, com cabos densos ramificando-se a partir do controlador, cabos regulares
ramificando-se a partir dos cabos densos, e [dispositivos](../ae2-mechanics/devices.md) em grupos de 8 ou menos nos cabos regulares.

Aqui está um exemplo do que não fazer:

Seguindo os caminhos dos canais,

1. Imediatamente saindo do controlador para a direita, encontramos um gargalo de 8 canais porque o drive age como um cabo normal.
Entretanto, como não estamos usando um cabo inteligente aqui, não podemos ver quantos canais estão em uso. Restam 8 canais.
2. O drive usa um canal.
Restam 7 canais.
3. 2 canais sobem até os terminais.
Restam 5 canais.
4. Continuando para a direita, a interface usa outro canal.
Restam 4 canais.
5. 1 canal sobe até o pattern provider.
Restam 3 canais.
6. Continuando para a direita, 1 canal vai até o import bus.
Restam 2 canais.
7. O grupo de pattern providers que alimentam os assemblers recebe apenas 2 canais, então 2 dos providers não recebem canais.

No fim, o erro está em criar gargalos nos canais e não pensar em como eles serão distribuídos.

<GameScene zoom="4" interactive={true}>
  <ImportStructure src="../assets/assemblies/bad_network_structure.snbt" />

<LineAnnotation color="#33ff33" from="6.5 .5 1.5" to="6 .5 1.5" alwaysOnTop={true} thickness="0.4">
  32 canais
</LineAnnotation>

<LineAnnotation color="#33ff33" from="6 .5 1.5" to="5.5 .5 1.5" alwaysOnTop={true} thickness="0.2">
  8 canais
</LineAnnotation>

<LineAnnotation color="#33ff33" from="5.5 .5 1.5" to="5.5 1.5 1.5" alwaysOnTop={true} thickness="0.1">
  2 canais
</LineAnnotation>

<LineAnnotation color="#33ff33" from="5.5 .5 1.5" to="5.5 .3 1.5" alwaysOnTop={true} thickness="0.071">
  1 canal
</LineAnnotation>

<LineAnnotation color="#33ff33" from="5.5 1.5 1.5" to="5.5 2.5 1.5" alwaysOnTop={true} thickness="0.071">
  1 canal
</LineAnnotation>

<LineAnnotation color="#33ff33" from="5.5 2.5 1.5" to="5.5 2.5 1.1" alwaysOnTop={true} thickness="0.071">
  1 canal
</LineAnnotation>

<LineAnnotation color="#33ff33" from="5.5 .5 1.5" to="4.5 .5 1.5" alwaysOnTop={true} thickness="0.158">
  5 canais
</LineAnnotation>

<LineAnnotation color="#33ff33" from="4.5 .5 1.5" to="4.5 .3 1.5" alwaysOnTop={true} thickness="0.071">
  1 canal
</LineAnnotation>

<LineAnnotation color="#33ff33" from="4.5 .5 1.5" to="4.5 1.5 1.5" alwaysOnTop={true} thickness="0.071">
  1 canal
</LineAnnotation>

<LineAnnotation color="#33ff33" from="4.5 .5 1.5" to="3.5 .5 1.5" alwaysOnTop={true} thickness="0.122">
  3 canais
</LineAnnotation>

<LineAnnotation color="#33ff33" from="3.5 .5 1.5" to="3.5 2.5 1.5" alwaysOnTop={true} thickness="0.071">
  1 canal
</LineAnnotation>

<LineAnnotation color="#33ff33" from="3.5 2.5 1.5" to="3.7 2.5 1.5" alwaysOnTop={true} thickness="0.071">
  1 canal
</LineAnnotation>

<LineAnnotation color="#33ff33" from="3.5 .5 1.5" to="1.5 .5 1.5" alwaysOnTop={true} thickness="0.1">
  2 canais
</LineAnnotation>

<LineAnnotation color="#33ff33" from="1.5 0.5 1.5" to="1.5 0.3 1.5" alwaysOnTop={true} thickness="0.071">
  1 canal
</LineAnnotation>

<LineAnnotation color="#33ff33" from="1.5 0.5 1.5" to="0.5 0.5 1.5" alwaysOnTop={true} thickness="0.071">
  1 canal
</LineAnnotation>

<LineAnnotation color="#33ff33" from="0.5 0.5 1.5" to="0.5 0.5 0.5" alwaysOnTop={true} thickness="0.071">
  1 canal
</LineAnnotation>

<LineAnnotation color="#ff3333" from="0.5 1.5 1.5" to="0.5 1.3 1.5" alwaysOnTop={true} thickness="0.071">
  sem canais
</LineAnnotation>

<LineAnnotation color="#ff3333" from="1.5 1.5 0.5" to="1.5 1.3 0.5" alwaysOnTop={true} thickness="0.071">
  sem canais
</LineAnnotation>

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

---

Aqui está um exemplo de uma boa estrutura:

<GameScene zoom="2.5" interactive={true}>
  <ImportStructure src="../assets/assemblies/treelike_network_structure.snbt" />

    <BoxAnnotation color="#dddddd" min="6.9 0 4.9" max="9.1 4 7.1" thickness="0.05">
        Observe que os pattern providers estão em grupos separados de 8.
    </BoxAnnotation>

    <BoxAnnotation color="#dddddd" min="5 4 4" max="8 5 5" thickness="0.05">
        Dois cabos regulares cheios de canais se juntando significam que você precisa de um cabo denso.
    </BoxAnnotation>

    <BoxAnnotation color="#dddddd" min="5 0 13" max="8 1 14" thickness="0.05">
        Diferentes cores de cabo são usadas para evitar conexões entre cabos adjacentes.
    </BoxAnnotation>

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

## Modos de Canal

O AE2 10.0.0 para Minecraft 1.18 introduz novas opções para mudar como os canais do AE2 se comportam no seu mundo.
Há uma nova opção de configuração na seção geral (`channels`) que controla essa opção, e um novo comando no jogo
para operadores mudarem o modo e a configuração dentro do jogo. O comando é `/ae2 channelmode <modo>`
para alterar o modo e `/ae2 channelmode` para mostrar o modo atual. Quando o modo é alterado dentro do jogo, todas as redes existentes
reiniciam e usam o novo modo imediatamente.

Isso resgata e melhora a opção que existia no Minecraft 1.12 e oferece melhores opções para
jogadores que querem um estilo de jogo mais relaxado mas não querem que essa mecânica seja removida completamente.

A tabela a seguir lista os modos disponíveis tanto no arquivo de configuração quanto no comando.

| Configuração | Descrição                                                                                                                                                                                                                              |
| ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `default`    | O modo padrão com as capacidades de canais de cabos e redes ad-hoc conforme descrito ao longo deste site                                                                                                                              |
| `x2`         | Todas as capacidades de canais são dobradas (16 em cabo normal, 64 em cabo denso, redes ad-hoc suportam 16 canais)                                                                                                                     |
| `x3`         | Todas as capacidades de canais são triplicadas (24 em cabo normal, 92 em cabo denso, redes ad-hoc suportam 24 canais)                                                                                                                  |
| `x4`         | Todas as capacidades de canais são quadruplicadas (32 em cabo normal, 128 em cabo denso, redes ad-hoc suportam 32 canais)                                                                                                              |
| `infinite`   | Todas as restrições de canais são removidas. Controladores ainda reduzem significativamente o consumo de energia das redes. Cabos inteligentes só alternam entre desligado (nenhum canal passando) e ligado (1 ou mais canais passando). |
