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

serafim

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

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

  • Посещение

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

    46

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


  1. @Flays посмотри вот эту статью https://computercraft.ru/topic/951-kak-uznat-metody-komponentov-v-os/

     

    либо такой вариант  https://pastebin.com/wGJbJmX4  или pastebin get wGJbJmX4 m

    чтобы скачать нужна интернет карта, либо скопировать с сайта и вставить в ОС средней кнопкой мыши(колёсико)

    Скрытый текст

    CLGXLTx.png

    для запуска набери имя программы, в данном случае m

    выбрать компонент из списка введя № компонента

    нажимая ENTER по одному будет выводится методы

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

    вывести список файлов ls

    просмотреть файл edit имя файла (зависит от названия компонента)

    кнопкой tabможно быстро набирать команду,

    например для метода keyboard пишешь edit k (кнопка tab) будет набрано edit keyboard

    закрыть редактор файла ctrl W  сохранить изменения ctrl S

    • Одобряю 1

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

     

    Карьер Без замены инструмента для Tinkers' Construct 

    Карьер для пчёл из мода Extra Bees

    Карьер для "синего" бура GraviSuite в режиме 3х3

     

    Перелопачено мягко говоря куча кода, возможны баги (:


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

    затем вернутся в начало и запихать всё это в бочку (хмель, пшеницу, капсулы)

    далее пройти по остальным бочкам,

    затем вернутся в начало и ждать

     


  4. 7 минут назад, Odl сказал:

    А робот не должен сам брать из вышестоящего над ним сундука нужное ему количество?

    должен

    Скрытый текст
    
    local function suckUpAndCheck(quantity, slot)
      r.select(slot)
      while quantity ~= r.count() do
        if not r.suckUp(quantity - r.count()) then
          errorAndPrint("Недостаточно предметов.")
        end
      end
    end

     

     


  5. судя по коду

    Скрытый текст
    
    print("Итого на одну бочку:"..
    "\nХмеля: "..barrel.hop..
    "\nПшеницы: "..barrel.wheat..
    "\nКапсул: 30"..
    "\nИтого:"..
    "\nБочек: "..barrel.quantity..
    "\nХмеля: "..barrel.quantity * barrel.hop..
    "\nПшеницы: "..barrel.quantity * barrel.wheat..
    "\nКапсул: "..barrel.x * barrel.y * 30 ..
    "\nВремя: "..barrel.timeInHours.." часов"..
    "\nУбедитесь в наличии всех ресурсов."..
    "Начать? (введите 0 для выхода)")

     

    он сначала принтит сколько нужно на одну бочку  (Итого на одну бочку:)

    а затем сколько всего требуется  (Итого:)

     

    В твоём случае требуется 256 хмеля и 120 капсул

    у робота всего 64 хмеля и 0 капсул


  6. 4 часа назад, Odl сказал:

    Есть скриншоты самой конструкции?

    В теме под спойлером

    Инструкция:

    Скрытый текст

    Необходимо поставить конструкцию, как на картинке.

    y9PR1Kz.png

    j4m9mq4.png

    Далее просто запускаете программу и ждёте.


  7. дописана функция savetool - для скидывания разряженного инструмента в сундук

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

     

    скриншот с разработки карьера с синим буром GraviSuite в режиме 3х3

    почему-то он плохо ломает землю

    Скрытый текст

    2QLquGk.png

     

    • Нравится 1

  8. обнова, исправил небольшой косяк с движением в верх

    пока переходил на обёртку движения случайно потёр

     

    улучшил обнаружение бедрока

     

    теперь если на старте стоит зарядчик для робота, то робот будет полностью заряжать свою батарею

     

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

    далее, если в генераторе есть уголь, больше 10 штук, то будет ждать зарядки от генератора

    • Одобряю 1

  9. Всех с наступающим

    Залил последнюю обнову в этом году, ссылка таже

    Теперь робот не проверяет инструмент на каждом шаге, а по истечению счётчика.

    Не отрываясь от копания проверяет насколько блоков хватит инструмента и назначает счётчик.

     

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

    prpS64h.png

    11,25 - движение с проверкой инструмента на каждом шаге 

    9,0 - движение через счётчик износа

     

    скорость возросла на 2,25 сек, а количество вызов robot.durability() максимально сокращено

    • Нравится 1

  10. 7 минут назад, vx13 сказал:

    А goTo? там проверок нет. В коде есть обёртки для методов поворота. Так что добавление обёртки для методов перемещения напрашивается само собой.

    ну может быть, но подозреваю что функция goto() распухнет раза в два


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

    И еще заметил, что по пустоте он передвигается гораздо медленнее, если рядом нет никого. Копает примерно одинаково.

    тут явно проблема с прогрузкой чанков, может из за лагов или конфиги в ноль накрутили

    2 минуты назад, vx13 сказал:

    стало понятно, что надо не swing() выполнять, а повторить forward().

    там через robot.detect() движение, именно так он и будет себя вести


  12. причина возврата: already moving (уже движется) ,занятно

     

    8 минут назад, van2614 сказал:

    Хотелось бы еще что бы он сам инструмент заряжал поставить рядом мфэх и он его заряжал.

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

    14 минуты назад, van2614 сказал:

    угольный генератор очень медленный

    без генератора робот в лучшем случае прокопает пару слоёв и сдохнет

    15 минут назад, van2614 сказал:

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

    Успевает зарядится только стандартная батарея на 20500 по умолчанию.

    А вот если робот с прокачанным улучшением опыт на 10 значений, то батарея уже 70500, полностью зарядить не успеет.

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


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

    что то типа причина возврата: entity, block и т.д.

     

    @van2614 если можешь, обнови прогу и отправь в соседний чанк чтоб робот вернулся с ошибкой,

    думаю многим будет интересно что там происходит, а может и найдём решение

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