Гайды

[HiTech 1.12.2] OpenComputers Автономная система мониторинга [ДОП. ВИДЕО]

Автор: Stawlie_ · Обновлён:

Демонстрация работы системы

6KfPyXT.jpg

Возможности мониторинга

Детали системы мониторинга

Мониторинг представляет 4 видимые зоны: МЭ процессоры создания, Энергия, Игроки онлайн-офлайн, Реакторы ic2. И 1 скрытую: уведомление через чат.

На данный момент все компоненты программы работают достаточно хорошо.

Энергия

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

Реакторы

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

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

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

Как это исправить? Перезагрузите сервер и перейдите в папку data.

cd data/
rm energyInfo.txt
rm reactorInfo.txt

Удаляйте файлы в зависимости от того, какие данные необходимо очистить.

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

Процессоры создания

Показывают количество ваших процессоров в текущее время и их статус: изготавливает или свободен.

Игроки

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

При заходе и выходе игрока система отправляет уведомление в чат:

LkLEUjv.jpg

Оборудование и требования

Серверная стойка — необходима для запуска всей системы.

Содержит 4 места под компоненты: дисководы, серверы, беспроводные терминалы и прочее. Дополнительно присутствует 5 линий, отвечающих за стороны, куда будут выводиться провода и куда вы будете подключать устройства.

OxbhhDa.jpg

Компоненты сервера

Описание компонентов
aV1HV4f.jpg

Краткое описание компонентов

Для загрузки любой операционной системы необходим BIOS. В нашем случае нужно взять чистое ПЗУ (EEPROM) и в верстаке соединить его с руководством OpenComputers.

Образ OpenOS создается аналогичным способом, только теперь используется дискета.

Процессор обязательно должен быть 3-го уровня и не должен иметь встроенную видеокарту. Программа будет работать только с видеокартой 3-го уровня. ЦПУ со встроенной видеокартой имеет меньшее разрешение, и по умолчанию компьютер использует именно его.

Память — здесь воля фантазии, другие уровни не тестировались. При активной работе программы хватает 1 плашки.

Компонентная шина необходима для подключения большего количества компонентов. Так как количество реакторов на сервере ограничено 50 шт., остальные каналы необходимы для других компонентов.

Всего можно подключить 64 компонента.

Примечание: существует проблема, при которой количество компонентов сервера пересчитывается и увеличивается после перезагрузки. Из-за этого сервер мог падать. Проблему удалось решить, но будьте внимательны: мониторы тоже могут пересчитываться несколько раз и вызвать сбой сервера.

Питание и монитор

Для бесперебойной работы системы необходима энергия. Организовать это можно через любое хранилище энергии, подключенное к преобразователю энергии и конденсатору энергии. При этом сервер будет работать так же хорошо, если вы просто подключите к нему любой источник энергии. Буфер необходим, чтобы система могла работать в тот момент, когда энергия в основной системе закончилась по каким-то причинам.

Для корректной работы всей системы необходим монитор 3-го уровня. Для версии на момент 01.09.2023 для адаптивного отображения требуется экран 4x6, если вы хотите просматривать интерфейс на большом экране.

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

Компоненты для мониторинга

Список необходимых компонентов
  • МЭ контроллер
  • Красный контроллер
  • Сетевой переключатель
  • Флаксовый контроллер
  • Чат бокс

Дополнить данный список больше нечем. Но без данных компонентов программу не запустить. Если в ходе развития сервера были удалены какие-то моды, следует вручную работать с кодом. Так как код разделен на функции, это сделать более чем легко, даже без сильных знаний в программировании и Lua.

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

Подключение устройств

С установкой все должно быть ясно по картинке. Однако важно проверить, чтобы адаптер (блок, позволяющий интегрироваться с механизмами, что не было сказано ранее) был подключен к реактору только с одной стороны.

Также нет необходимости подключать провода к сетевому переключателю. Программа сделает это вместо вас автоматически.

Отсутствует проверка на еще один флаксовый контроллер, красный контроллер. Если у вас их в системе больше, чем 1, сработает тот, чей адрес ближе.

263409110-dd56a2ec-d1cc-4153-9ab4-dc1950

Установка системы и программы

Как только вы собрали все компоненты для запуска, приступаем к установке.

Установка OpenOS

  1. Запустите сервер и введите команду install.
  2. Нажмите Enter или введите Y (Yes) для установки системы.
  3. Как только система будет установлена, вам будет предложено перезапустить компьютер. Используйте Y или сразу Enter.

В данной секции нет скриншотов. Существует официальная документация, где это все описано https://ocdoc.cil.li/openos.

Установка кода программы

Инструкция по установке кода

Здесь главное — внимательность с названиями. Сразу оговариваю: чтобы вставить код, необходимо использовать INSERT, как указано в ваших настройках. Самый легкий способ вставить код — использовать колесико мыши.

Код разделен на 3 файла: библиотека, конфиг, программа.

sgui.lua — библиотека.

После перезагрузки системы, необходимо перейти в папку lib

cd /lib

Далее необходимо скопировать код и из файла sgui.lib на github. И создать файл sgui.lua

edit sgui.lua

Вставляем код колесиком мыши.

CTRL + S - Сохранить
CTRL + W - Выйти

Обязательно в такой последовательности

config.lua — конфигурация системы. Единственное, что я бы советовал делать без глубокого понимания, — это редактировать массив с игроками, название таблицы и чата.

Необходимо убедиться, что мы находимся в директории /home
Если же вы, следовали по инструкции, достаточно написать 

cd -
или
cd /home

edit config.lua

Вставляем код

main.lua — главный файл, который нужно редактировать, если что-то убрали с сервера. Но трогать его не рекомендую, если не знаете, что делаете.

Необходимо убедиться, что мы находимся в директории /home
Если же вы, следовали по инструкции, достаточно написать 

cd -
или
cd /home

edit 1

Вставляем код

В данном случае название "1" - является просто удобным решением, первоначального автора программы. В реале название может быть любым. Если вам не удобно, можете назвать его любым другим именем.
Например: edit monitoring.lua или edit main.lua

Ограничения конфигурации

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

  • Максимальное количество игроков в таблице: 12. Если игроков указано более чем 12, будет только уведомление в чат.
  • Рекомендованное количество реакторов: 50 шт., максимальное: 59 шт. Вероятно, вы не будете использовать более 50.
  • Рекомендованное количество процессоров создания: 55, максимальное: 59.

Исходный код, обновления и обратная связь

https://github.com/Awl-S/OpenComputers_terminal

Дополнительная информация

Все обновления будут выходить на GitHub. Следите за проектом и ставьте звёзды.

Ваши пожелания или замечания можно оставлять в данной теме, однако вероятность того, что автор прочитает их спустя время, мала. Если вы хотите что-то предложить или сообщить об ошибке: https://t.me/rar2000q — самый быстрый способ.

Если вы модернизируете программу и хотите поделиться результатом или упомянуть, что использовали данные наработки или идею, оставьте ссылку на форуме или отправьте сообщение в Telegram.

Код писался не для корпоративного использования. Мнения в духе «я бы написал лучше» не интересны. Автор старался сделать хорошо, но местами код получился небрежным.

Похожие гайды