Перейти к содержанию

guides/xnet/how it works

Материал из GravityWiki

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

Введение

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

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

Как работает

Работа XNet строится на взаимодействии трёх ключевых элементов: контроллера, коннекторов и каналов.

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

Принцип работы можно описать следующим образом:

- Контроллер создаёт логическую сеть

- Коннекторы подключают физические блоки к сети

- Каналы определяют тип данных (items, fluids, energy)

- Правила внутри контроллера управляют перемещением ресурсов

- Все операции выполняются по тиковой системе

Важно понимать, что XNet не выполняет автоматическую передачу без настройки. Каждое действие должно быть явно задано: откуда брать ресурс, куда отправлять и при каких условиях.

Основные механики

Система XNet основана на нескольких взаимосвязанных механиках, которые определяют поведение сети.

Network Controller:

- Центральный блок управления

- Хранит конфигурацию всей сети

- Обрабатывает логические операции

Connector:

- Подключает блоки к сети

- Открывает доступ к инвентарям и ресурсам

- Работает как интерфейс между блоком и сетью

Channels:

- Логические линии передачи данных

- Разделяют типы ресурсов

- Позволяют создавать параллельные потоки

Routing System:

- Определяет направление движения ресурсов

- Работает по заданным правилам

- Поддерживает фильтры и приоритеты

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

Дополнительно система поддерживает условия. Это позволяет создавать динамическую автоматизацию, например включение подачи ресурсов только при заполнении или опустошении контейнеров.

Пошаговая инструкция

Чтобы понять принцип работы XNet, важно разобрать базовую настройку сети.

1. Установить Network Controller

2. Разместить Connectors на нужных блоках

3. Подключить коннекторы кабелем к контроллеру

4. Открыть интерфейс контроллера

5. Создать новую сеть

6. Добавить каналы (Items, Fluids, Energy)

7. Назначить input и output для каждого коннектора

8. Настроить фильтры ресурсов

9. Установить приоритеты передачи

10. Сохранить конфигурацию и запустить сеть

После настройки сеть начинает работать автоматически. Контроллер обрабатывает каждую операцию по тиковой системе, проверяя условия и выполняя передачу ресурсов между подключёнными блоками.

Частые ошибки

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

- Коннекторы не подключены к контроллеру

- Каналы не настроены или перепутаны

- Отсутствуют фильтры, из-за чего ресурсы смешиваются

- Неправильные стороны input/output

- Конфликт приоритетов между каналами

- Попытка использовать один канал для разных типов данных

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

Советы для сервера GravityCraft

На серверах с высокой нагрузкой XNet требует аккуратной настройки, чтобы избежать просадок производительности.

- Разделяй сети по зонам (фермы, переработка, энергия)

- Не подключай все машины к одному контроллеру

- Используй отдельные каналы для каждого типа ресурса

- Настраивай приоритеты для критических систем

- Применяй фильтры вместо универсальных правил

- Избегай избыточных циклов передачи ресурсов

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

Заключение

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