Перейти к содержимому

eu_tomat

Модераторы
  • Публикации

    2 666
  • Зарегистрирован

  • Посещение

  • Победитель дней

    331

Все публикации пользователя eu_tomat

  1. eu_tomat

    GPSv2

    @jammer312 Отличная работа. Особенно мне понравилась идея автоматического конфигурирования ячейки GPS по сторонам света. Компактный алгоритм вычисления координат тоже хорош. Я предлагаю ещё сильнее упросить конфигурирование. Сейчас есть такое требование: Микроконтроллеры можно включать, обращаясь к ним как к компонентам компьютера: component.microcontroller.start() Если новые члены GPS-ячейки не проснулись по сообщению пробуждения до истечения таймаута, их можно включить индивидуальной командой. Код довольно чистый, но у меня есть несколько замечаний: Под номер порта выделена переменная, но кое-где остался захардкоженный вариант: port = tonumber(port) or 312 … m.send(a, 312, "gps_periphery_bind", a, s) В функции handle_request для поля timeout по смыслу больше подходит название deadline. Также в коде зачем-то объявлены переменные, которые используются один раз. Примеры: В дальнейшем используется лишь одна переменная port: local e = prx"eeprom" local edata = e.getData() local port = tonumber(edata) or 312 Здесь не нужна переменная owm, т.к. setWakeMessage возвращает предыдущее значение: local owm = m.getWakeMessage() m.setWakeMessage(wm) if owm ~= wm then А здесь не нужна переменная ok: ok = pcall(open, side) if ok then
  2. eu_tomat

    Оффтоп

    По какой модели предлагаешь вычислять RSSI? В реальности-то всё очень сложно: радиоволна не только затухает, но и отражается, преломляется, интерферирует, огибает препятствия. А как это считать в Майнкрафте, чтобы и физика была интересной, и чтобы сервер сильно не нагружался?
  3. Forth хорош своей нетребовательностью к ресурсам. И если бы благодаря ему можно было бы создавать более эффективные программы для OpenComputers, то его стоило бы реализовать. Делать это на Lua, наверное, можно, но лишь как упражнение в программировании. При большом желании на Lua можно написать и ассемблер, и JVM. Но вряд ли кто-то будет этим пользоваться. Мы в OpenComputers не особо используем даже MoonScript, облегчающий кодинг. А реализованный на Lua Forth и кодинг не облегчит и нагрузку на сервер не снизит. Пожалуй, можно будет поностальгировать пару дней. Наверное, у многих из нас первым компьютером в Майнкрафте был комп из RedPower2. Шикарный был мод.
  4. Судя по коду /lib/tty.lua, отработает молча, без падения: function tty.stream:write(value) local gpu = tty.gpu() if not gpu then return end ...
  5. Комп запустится. Работают же как-то микроконтроллеры и дроны без видеокарты. Насколько я помню, даже OpenOS позволяет загружаться без видеокарты и подключать экран на горячую, уже после загрузки.
  6. Откуда мы знаем, что в той или иной песочнице полезно, а что нет? Читатели нашего форума обычно даже и не перекрафчивают никакие дискеты. Либо качают нужный им файл через pastebin или wget, либо и вовсе обходятся без интернет-платы, вставляя код с помощью редактора. Но есть особые игроки, которым по неясным причинам всё это недоступно. Они играют на сервере автора этого вопроса и вынуждены искать программы в подземельях или покупать их. Такие правила в их песочнице.
  7. Вероятность спавна дисков с программами в сундуках подземелий задаётся параметром lootProbability в файле конфигурации OpenComputers.cfg. В комментарии к этому параметру также приведены справочные значения для спавна железа, золота и алмазов.
  8. Есть доступ по IPv6. Но у меня он почему-то появился лишь при полном удалении всего чёрного списка для IPv4. Подход небезопасный, но он работает.
  9. https://minecraft-ru.gamepedia.com/OpenComputers/Event_API event.cancel(timerId: function): boolean Отменяет таймер созданный командой event.timer. Возвращает true, если таймер успешно отменен и false, если таймера с таким ID не существует.
  10. https://ocdoc.cil.li/api:computer computer.pushSignal(name: string[, ...]) Помещает новый сигнал в очередь. Сигналы обрабатываются в порядке FIFO. У сигнала должно быть как минимум название. Аргументы для передачи необязательны. https://ocdoc.cil.li/api:event event.push(name: string[, ...]) Псевдоним для computer.pushSignal.
  11. Я не знаток эмуляторов, но в Minecraft необязательно устанавливать OpenOS для редактирования файлов. Да, при загрузке с дискеты корень файловой системы смонтирован в режиме Read Only. Но загрузка с дискеты никак не мешает редактировать файлы на жёстких дисках, смонтированных в режиме записи по путям /mnt/xxx, где xxx – первые три символа адреса диска. # ls /mnt 5b5 f94
  12. Оказывается, можно, но для этого мне пришлось полностью очистить чёрный список IP-адресов в конфиге. Это очень странно и небезопасно. Все записи в списке имели отношение к сетям IPv4, а каких-то специальных настроек IPv6 в OpenComputers.cfg я не обнаружил.
  13. eu_tomat

    Предложение

    Нужна возможность просмотра сообщений в сыром виде, без визуализации форматирования. Визуальный редактор при всей своей визуальности явно препятствует визуализации некоторых из скрытых ссылок, оставляемых спамерами. С BBCode было проще.
  14. Там код на 20 строк, если его развернуть. Ничего похожего на циклы там не наблюдается. Зато наблюдается использование метатаблиц. Но точно никто не знает. Есть гипотеза, будто бы код работает на магии.
  15. Не знаю, какой там контекст, код я не читал. Но всё может поменять наличие в коде local: local test test = 3 _G.test = 4 print( _G.test, test )
  16. @Griffi Очень желательно добавить хотя бы короткое описание. В чём смысл игры, каков её жанр?
  17. Подтверждаю. Есть проблема в Minecraft 1.12.2. Моды: OpenComputers-MC1.12.2-1.7.5.192.jar SmartMoving-1.12.2-16.4-RC3.jar SmartRender-1.12.2-2.3-RC2.jar RenderPlayerAPI-1.12.2-1.0.jar PlayerAPI-1.12.2-1.0.jar При изъятии из этого списка SmartMoving-1.12.2-16.4-RC3.jar планшет стартует, показывает загрузку и вообще, нормально работает. При повторном включении SmartMoving-1.12.2-16.4-RC3.jar планшет даже показывает старую картинку, но не обновляет её, а, возможно, и вообще не работает.
  18. В OpenComputers по умолчанию для вставки используется просто Insert, без Ctrl.
  19. А в какой версии Майнкрафта и модов так происходит? Мне не удалось воспроизвести проблему в 1.7.10: SmartMoving работает, интерфейс креативного планшета открывается.
  20. Там, наверное, жёсткий диск и дискета с OpenOS.
  21. Какой именно эффект оказывает SmartMoving на OpenComputers?
  22. Это нормально для выхода красной платы. Но на входе значение ниже нуля она не сможет воспринять. В лучшем случае посчитает отрицательное значение нулём, а в худшем может посчитать и положительным значением.
×
×
  • Создать...