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

hohserg

Пользователи
  • Публикации

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

  • Посещение

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

    37

Сообщения, опубликованные пользователем hohserg


  1. 1 минуту назад, serafim сказал:

    Посмотри на мой старый код

    local e = {computer.pullSignal('modem_message')}
      if e[3] == user then
        pcall(load(e[6]))

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

    "drone.move(1,10,1)" можно закодировать в более компактную форму при помощи специализированного протокола.


  2. Описание

    Этот небольшой программный комплекс(всего 3 файла) делает одну простую вещь: определяет, на какой блок смотрит игрок, в пределах некоторой области.

    Гифки для наглядности:

    c4246ab76a806e1586190a1bafb7699b.gif

    e4b7c2273bba22c44700da33c8796194.gif

    6f1992947debe6c4c4a1c9a6c6f6db69.gif

     

    Теперь перейдем к билду

    Нам нужен стандартный компьютер с дополнительно подключенными Соединенная плата, Геоанализатор, Glasses Terminal(не забудьте привязать и надеть очки)

    image.png.d276f4d3a2d98b8c521862e119a7a5d3.png

    А также планшет со следующей начинкой:

    image.png.689c1adb6e082a1d5586d1cb0bf6b98c.png

    Можно использовать более дешевые компоненты, однако в контейнер улучшений нужно будет вставить Улучшение "Навигация", поэтому он должен быть 2 уровня.

     

    На оба устройства устанавливаем OpenOS.

    На планшет устанавливаем wtwtp_tool.lua

    wget https://raw.githubusercontent.com/hohserg1/OpenComputersPrograms/master/playerlook/wtwtp_tool.lua

    На компьютер устанавливаем wtwtp.lua и glasses.lua

    wget https://raw.githubusercontent.com/hohserg1/OpenComputersPrograms/master/playerlook/wtwtp.lua
    wget https://raw.githubusercontent.com/hohserg1/OpenComputersPrograms/master/playerlook/glasses.lua

     

     

    Редактируем в wtwtp_tool.lua строчку 

    local cx,cy,cz = -1408,0,512

    Вставляем свои координаты центра карты, используемой в апгрейде навигации

     

    Редактируем в wtwtp.lua строчки

    local geolyzerAbsolutePos = {-1408,5,512}
    local glassesAbsolutePos = {-1408,4,512}

    Вставляем свои координаты геоанализатора и терминала очков

     

    Запускаем wtwtp с аргументами x1,y1,z1,x2,y2,z2 соответствующие области вокруг геоанализатора, в которой мы хотим работать. Геоанализатор может скнаировать кубическую область во все стороны на расстоянии 32.

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

    Запускаем wtwtp_tool без аргументов и через долю секунды мы увидим, что блок, на который игрок смотрел игрок в момент выполнения wtwtp_tool, будет подсвечен.

     

    Запоздалый вопрос актуальности

    Наверное, некоторые читатели подумали: "а зачем же оно нужно?"

    Эту систему можно использовать в качестве инструмента интерактивного взаимодействия с миром для какой-то другой системы.

    Например, у меня есть идея "беспроводные трубы на дронах", в рамках нее таким инструментом можно указывать точки сбора и доставки.

     

     

     

     

    • Нравится 4

  3. В 05.10.2019 в 06:37, Doob сказал:

    Спутники слишком близко стоят?

    Примерно в пределах куба 20*20*20, пробовал ставить дальше - дебаг показывает, что планшет достучался только до двух. Как будто используется недостаточная сила сигнала отправки. 

    Расставлял спутники примерно, как на твоем видео - один на земле, другие два на столбах


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

     

    Гипотеза: Изменение углов между спутниками gps влияет на точность измерений.

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

     

    При помощи скрипта сборки этот процесс можно было бы автоматизировать и избавиться от человеческого фактора, получив более объективные результаты эксперимента


  5. Стоит отметить, что в новых версиях появилась беспроводная карта 1 уровня. Т.е. можно по идее юзать корпус микроконтроллера 1 уровня. Но у этой карты есть ограничение на количество открытых портов = 1 по умолчанию. Для работы GPS этого будет достаточно?


  6. Запустил http-сервер локально при помощи python -m http.server 9000. В папке, из которой запустил лежит файл. Попробовал его скачать через браузер - работает.

    Когда пытаюсь скачать из игры(тоже локальный мир) при помощи wget, то выдает ошибку address is blacklisted. В чем причины, как пофиксить? В гугле только инструкции о том, как удалить свой сайт из публичных черных списков.

    image.png.72285ebc1d08e18209478638421aa8a7.png


  7. В 27.09.2019 в 22:33, ArtHacker сказал:

    сделать модуль для плагинов на Lua.

    Создаём lua файл. Пишем туда что-то типа удалить какой-то файл, добавить или удалить, создать новый комп или открыть его экран и т.д.

    На таких скриптах можно делать сетап воркспейса для какого-то конкретного проекта


  8. Предложение фичи: некая глобальная функция вроде print, но печатающая в отдельный дебажный лог, внешний по отношению к OcelotBrain, и который чистится только явным нажатием определенной кнопки. Чтобы никакой код не мог испортить лог и чтобы лог тоже ни на что не влиял

    • Нравится 2

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

×
×
  • Создать...