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

Totoro

Гуру
  • Публикации

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

  • Посещение

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

    289

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


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

     

    Пробовал робота с мечом на зомби.

    Робот бьет - зомби отлетает и продолжает аппатично бродить вокруг. Другим зомби тоже на него начхать.

    Может криперы проявят больше солидарности?


  2. Есть идея создать Робота- рыбака. Но не знаю как получить событие "Поклевка". Если это возможно, пните в нужном направлении.

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

    Специального эвента для рыбалки у роботов нет. Есть событие item_interacted, но никто не знает отправит ли его робот с удочкой, и что оно будет означать.

    Поэтому - нужны добровольцы и эксперименты!


  3. OpenComputers 1.4.7

    • Добавленоdebug.insertFluid и debug.removeFluid.
    • Добавленоdebug.removeItem для удаления предметов из инвентарей.
    • Добавленоinventory_controller.compareToDatabase.
    • Добавлено: Методы play и stop для проигрывателя пластинок.
    • Добавлено: Возможность скопировать строку с монитора (Shift+ПКМ анализатором по строке), а также вставить ее (ПКМ по монитору анализатором)
    • Добавлено: Драйвер для IDeepStorageUnit (контейнер из MineFactory Reloaded, вмещающий 2 миллиарда предметов одного типа, если я не ошибаюсь).
    • Добавлено: Новая команда, /oc_preventDisassembling (алиас: /oc_nodis), которая отмечает предмет в руке, как неразбираемый в дизассемблере (разборщике).
    • Добавлено: ПКМ планшетом по блоку ОС, позволяет компоненту блока передать таблицу данных. В планшете генерируется событие tablet_use, которое имеет единственный параметр - полученная таблица данных. В настоящий момент передавать информацию умеют только геосканеры и апгрейды навигации.
    • Добавлено: Настройка в конфиге мода, которая разрешает использовать командный блок через адаптер. По умолчанию - false (не разрешено).
    • Добавлено: Корпус планшета 2 уровня и креативный. Они имеют место для одного контейнера. Shift+ПКМ планшетом выключит его и откроет специальный интерфейс. Вы сможете поместить что-то в контейнер, или, к примеру, извлечь/вставить дискету.
    • Изменено: Удаленный терминал сервера проапгрейдился до третьего уровня (разрешение, цвет). Чтобы оставаться конкурентоспособным с планшетами. (Чтобы это заработало на старых серверных стойках - сломайте и поставьте их заново.)
    • Изменено: Запрет на снятие креативного робота не-креативными (не авторизованными) игроками.
    • Изменено: Возможность ограничить количество переменных в сетевом пакете. (Как мера безопасности для слабых компьютеров, в добавление к уже существующему ограничению на общий размер сетевого пакета.)
    • Изменено: Понижено дефолтное значение погрешности для геосканера.
    • Изменено: Более очевидный результат при использовании оператора # и ipairs на Sides API.
    • Изменено: Опять разрешена inventory_controller.getInventorySize(sides.back) для обратной совместимости (в грядущей версии 1.5, функция будет удалена, используйте robot.inventorySize() вместо нее)
    • Фикс: Внутренняя функция Connector.setLocalBufferSize регистрировала себя прежде, чем задать размер, что при худшем раскладе приводило к крашу.
    • Фикс: В ряде случаев не срабатывала функция filesystem.remove.
    • Фикс: Слегка переработана логика крафт-апгрейда, что позволит ему ремонтировать предметы.
    • Фикс: Иконка планшета в инвентаре будет более корректно отображать его текущее состояние.
    • Фикс: Визуальная десинхронизация при неудачной попытке сломать креативный компьютер.

  4. Довольно простая геометрия же:

    -- крайние точки прямоугольника
    local a = {x=1, y=1}, b = {x=100, y=100}
    -- произвольная точка
    local p = {x=10, y=27}
    
    if (p.x>=a.x and p.x<=b.x) and
       (p.y>=a.y and p.y<=b.y) then
          print("Точка внутри прямоугольника")
    else
          print("Точка вне прямоугольника")
    end
    

    Или ты что-то другое имеешь ввиду?


  5. Тоторо, приведи пожалуйста пример работы с беспроводной сетевой платой (инициализация, передача, прием)

    event = require('event')
    com = require('component')
    modem = com.modem
    
    -- произвольное значение от 1 до 65535
    PORT = 27
    
    -- отправляем сообщение всем в радиусе слышимости
    modem.broadcast(PORT, "Hi, everyone!")
    
    -- отправляем сообщение конкретной сетевой плате
    -- остальные не получат его
    sended = modem.send("xxx-someaddress-xxx", PORT, "Hello!")
    -- переменная sended будет равна true, если сообщение удалось
    -- передать. Но это не значит, что его кто-то принял.
    
    -- открываем порт для приема сообщений
    modem.open(PORT)
    
    -- ожидаем сообщения
    eventname, localAddress, senderAddress, port, distance, message = event.pull("modem_message")
    -- localAddress - адрес сетевой платы которая приняла сообщение
    -- senderAddress - адрес сетевой платы которая отправила сообщение
    -- он может измениться, если сообщение прошло через свитч на пути
    
    -- закрываем открытый порт
    modem.close(PORT)
    -- или все открытые порты
    modem.close()
    
    • Нравится 1

  6. А тем временем, мод обновился до

    OpenComputers 1.4.6

     

    Немного багфиксов, и пара интересных добавлений.

     

    • Добавлено: Интеграция с AE2 контроллером, теперь работает через блок AE2 интерфейса, если каналы (channels) отключены.
    • Добавлено: Блок аккумулятора выдает управляющий сигнал на компаратор, основываясь на заполненности своего локального энергохранилища.
    • Добавлено: Отладочная плата может быть связана с конкретным игроком (Shift+ПКМ), чтобы использовать его права доступа на выполнение команд (runCommand).
    • Добавлено: Расширена реализация соединения с ComputerCraft через свитч, благодаря чему многими блоками ОС теперь можно управлять из ComputerCraft.
    • Добавлено: Дизассемблер разбирает предметы моментально в Креативе.
    • Добавлено: Готовый (полностью собранный) планшет в NEI для режима Креатива. (В прошлых обновлениях были добавлены готовые роботы, контроллеры и дроны.)
    • Изменено: Блок RAID теперь сохраняет свое содержимое, при срубании киркой. Благодаря этому, его можно переставить с места на место, не потеряв данные.
    • Фикс: filesystem.list возвращает список с дубликатами файлов.
    • Фикс: функция AE2 getCraftables теперь корректно возвращает данные о стеках предметов, которые возможно скрафтить по заложенным рецептам.
    • Фикс: Некорректный сигнал редстоуна в некоторых случаях.
    • Фикс: Функция компьютеров beep.
    • Фикс: EEPROM с записанными данными теперь возможно использовать для крафта Lua BIOS.
    • Фикс: Обработка случайно совпавших адресов при объединении двух сетей.
    • Фикс: В результате ошибки, энергия мода Mekanism становилась бесконечной.
    • Фикс: Крохотный шанс на то что предмет сломается при разборке в дизассемблере, даже если этот параметр был равен 0.
    • Фикс: Потенциальный краш клиента, из за назначения клавиш.
    • Нравится 2

  7. Итак, настройки менять через кнопку загадочную "Period".

    Моё мнение — ПРОТИВ, ПРОТИВ и ещё 100500 раз ПРОТИВ! У меня FPS сейчас около...0.000000001. А это только один Тоторо говорит. Общаться голосом идите в Мамбл.

    Обещаю говорить только в шахтерском мире, и только со своим роботом.


  8. Я ЗА любую деятельность в этом направлении. :D

     

    Предлагаю свою помощь в программировании дрона для тестов.

    Что требует проверки (пусть админ дополнит):

    • Красть или наоборот лить жидкости в привате
    • Красть или наоборот класть вещи в чужие сундуки
    • Уводить коров через форточку

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

     

     

    P.S. У-Р-Р-Р-Р-Р-А-А-А-А!!!!


  9. Немного конкуренции. ;)
     

    2015-01-17_21.23.29.png

     

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

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

     

    Программу скачивать здесь.

    http://pastebin.com/icagkyEX

     

    Ключевые фичи:

    • текст любого размера, под любой монитор
    • форматирование текста BB тегами (цвет, центрирование, полоса-разделитель)
    • перемещение между любыми файлами по гиперссылкам
    • прокрутка длинного текста
    • перенос по словам
    • настраиваемая цветовая гамма программы, поля документа и т.д.
    • при старте программа ищет и открывает index.txt
    • если гиперссылка ведет на неверный файл, открывает 404.txt :D

    Все настройки программы хранит в файле info.cfg

    # Пример конфигурационного файла для программы InfoPanel
    
    # Масштаб текста
    textScale=0.8
    # Размер полей
    margin=1
    # Основной цвет текста
    foreground=#ffffff
    # Основной цвет фона
    background=#506D8C
    # Цвет фона гиперссылок
    linksback=#719BC7
    
    # Страницы
    index.txt="Главная"
    private.txt="Приват"
    faq.txt="FAQ"
    status.txt="Статусы"
    dimensions.txt="Миры"
    teleport.txt="Телепортация"
    forum.txt="Форум"
    about.txt="О Программе"
    

    Пример странички:

    [center][color=#ffd700]Как приватить территорию[/color][/center]
    [---]
      На нашем [url=index.txt]сервере[/url] стоит плагин [color=#b5fa20]GriefPrevention[/color].
    
      Наберите в консоли команду [color=#ff0000]/kit private[/color], чтобы получить набор для первого строительства.
      В этом наборе вы найдете золотую лопату.
    
      Для привата, кликните лопатой в противоположных углах участка. Плагин автоматически создаст приват от 20 до максимального уровня по высоте.
      Управлять своим приватом вы можете при помощи консольных команд:
    
      > [color=#b5fa20]/trust <player>[/color]   - добавить игрока в приват
      > [color=#b5fa20]/trustlist[/color]        - список игроков в привате
      > [color=#b5fa20]/untrust <player>[/color] - удалить игрока из привата
      
    [color=#a61f1f]computercraft.ru[/color] [color=#000000](c)[/color] [color=#a61f1f]2015[/color]
    
    • Нравится 5

  10. Вау, то есть указываешь ид жидкости из неи и она отображается в виде бокса?

    Не уверен насчет именно ID из NEI, надо потестировать. :)

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


  11. Дополню минигайд тем, что документация мода OpenPeripherals содержится прямо в игре.

    Надо набрать в консоли команду

    openp/docs <side>
    

    И на экране появится док по прибору подключенному со стороны side.

    А инфу по конкретному методу можно узнать так:

    openp/docs <side> <methodname>
    

    1) g.addBox(<x>, <y>, <высота>, <ширина>, <цвет в формате 0xRRGGBB>, 0.2)
    Функция добавляет прямоугольный фон по координатам х и у с указанной высотой, шириной и цветом. (Что означает 0.2 в конце я не до конца понял.)

    Последний параметр - прозрачность бокса. В этом случае - 0.2.

     

     

    Кроме того в очках есть еще пара интересных команд.

    Например - addGradientBox(int x, int y, int width, int height, int color, double alpha, int color2, double alpha2, byte gradient).

    Или - addLiquid(int x, int y, int width, int height, int id).

    :)


  12. Это не у черепахи. У меня в шахте, работает черепаха. А для того что бы было по красивее, я неподалеку обустроил терминал управления черепашкой. Шахта находиться неподалеку от дома, ну и интересно, можно ли установить динамик рядом с терминалом, и после того как черепашка окончила свою работу, динамик подавал звуковой сигнал

    У компьютеров очень тихий динамик. Предлагаю поставить сирену из Nuclear Control :D  На неё надо просто подать сигнал редстоуна.

    • Нравится 3

  13. OpenComputers 1.4.4

    Небольшой патч вдогонку.

    • Добавлено: Креативные корпуса для Дрона и Микроконтроллера.
    • Добавлено: Преконфигурированный Робот, Микроконтроллер и Дрон среди блоков в креативе (до этого их приходилось собирать в ассемблере, даже в креативе). Тем не менее, Дрон и Контроллер все еще требуют запрограммированный EEPROM для работы.
    • Добавлено: Рецепт клонирования EEPROM: если положить два чипа в верстак - на выходе будут два чипа с одинаковыми данными. Если один чип пустой, копироваться будет чип с данными. Если оба чипа имеют данные - копироваться будет первый из них.
    • Добавлено: Опции Waila для получения информации о уровне энергии, адресе и названии компонента.
    • Добавлено: Функции eeprom.getSize, eeprom.getChecksum и eeprom.makeReadonly(checksum).
    • Добавлено: Имплементация параметра file:read("*n") (позволяет читать из файла числа).
    • Изменено: Подсказки к девайсам в инвентаре теперь окрашены в соответствии с уровнем.
    • Пофикшено: Функции robot.drain и robot.fill не всегда возвращали объем перемещенного.
    • Пофикшено: К EEPROM можно было получить доступ из сети (хакеры упустили свой шанс =)).
    • Пофикшено: EEPROM компонент загружался слишком рано в flash.lua.
    • Пофикшено: Смещение в слоте апгрейда-контроллера цистерн.
    • Пофикшено: Загадочное исчезновение предметов в NEI .
    • Пофикшено: NullPointerException в драйвере к AE2 контроллеру, когда каналы AE2 отключены.

  14. Я вот только не нашел где смотреть функции дрона. Он же теперь Entity и может двигаться не на 1 клетку, должны быть другие команды чем у робота.

    У него свой компонент - drone. Плюс многие из функций робота умеет использовать.

     

    http://minecraft-ru.gamepedia.com/OpenComputers/%D0%94%D1%80%D0%BE%D0%BD


  15. OpenComputers 1.4.3

    Новый релиз, к радости Алекса ;)

     

    Что нового получит сервер, после обновления:

    • Добавлено: Дроны. Менее мощные, но более быстрые роботы, основанные на классе Entity (существа).
    • Добавлено: Точки доступа (Access Point) теперь могут работать просто как точки доступа. (То есть можно отключить пересылку полученного беспроводного сообщения между точками. Кто там жаловался, что пара точек доступа кладет сервер?)
    • Добавлено: Микроконтроллер 2 уровня. Как очевидно из названия, в него можно поставить платы второго уровня (т.е. красные платы которые умеют работать с многожильным редстоуном и беспроводные сетевые платы).
    • Добавлено: Плата-мировой сенсор (World Sensor Card), интеграция с Galacticraft, позволяет узнавать информацию о погоде.
    • Добавлено: Апгрейд-лассо. Предназначен для таскания животных дронами.
    • Добавлено: Функция, которая позволяет изменить цвет световой полоски у робота.
    • Добавлено: Некоторые блоки теперь имеют редстоун сигнал состояния. Например компьютер, в зависимости от того, включен он или нет.
    • Добавлено: Некоторые блоки теперь поддерживают BuildCraft's IHasWork API. То есть, кроме редстоун сигнала состояния, вы можете использовать на этих блоках гейты, и состояние гейтов "Has Work"
    • Изменено: Быстрая отрисовка GPU. ("Finally got around to do some proper testing and verified the old limits were a tad too conservative. It only took me a year!" (с) Sangar)
    • Пофикшено: Потенциальный краш при включении компьютера на старых версиях Windows.
    • Пофикшено: Красные платы 2 уровня были недоступны, при отсутствии мода на многожильный редстоун.
    • Пофикшено: Все баги найденные в бете.

     

    P.S. Особенно радует возможность перекрасить огоньки на роботах. Ускорение GPU тоже ничего.


  16. Может для создания самой модели использовать Techne? а раскрашивать в программе можно

    Лучше в воксельном редакторе. Например Slab6 (в котором я моделю некоторые штуки) или VoxelShop.

     

    Загвоздка в одной вещи - нужно расковырять бинарный формат этих моделей (сохраненных в файл) и написать конвертер, который перегонит модель в голограмму.

    В какой-то своей теме (лень искать :P ) я описывал замысловатый способ сделать это используя мой конвертер из schematic-файлов.

    Вкратце:

    1) Создаем (или конвертируем из полигональной) воксельную модель.

    2) Конвертируем в schematic (в цветную шерсть)

    3) Распаковываем

    4) Перегоняем с помощью моего конвертера в простой формат для голограммы


  17. если пишешь либу для других программистов,нужно писать нормально,а ты пишешь под себя.(Помнишь либу socket).Zer0Galaxy правильно делает.

    А. Я не об этом. Я о том, можно ли говорить о проблеме состояния гонки и критических точек применимо к сопрограммам (coroutine) Lua. Исключая те случаи, когда косяк возник по вине программиста.

    • Нравится 1
×
×
  • Создать...