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

Fingercomp

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

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

  • Посещение

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

    283

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

  1. Fingercomp

    [Lua] [OC] Автокрафт V2: теперь без AE

    Я давно починил это =) Вариант старый остался, у меня там забаговала прога приёма.
  2. Fingercomp

    [Lua] [OC] Автокрафт V2: теперь без AE

    О Б Н О В И Л Для интереса рекомундую глянуть https://gist.github.com/Fingercomp/64d811a08af2e7848c9d/revisions Первый вариант — начальный. Обновление — ревизии выше.
  3. Fingercomp

    [Lua] [OC] Автокрафт V2: теперь без AE

    Пошёл на серв доставать И, да, в пастбине версия старая и нерабочая по большей части.
  4. Получается, что да. Просто бегать по тессерактам мне, например, будет скучно. Но если украсить это хозяйство да ловушек добавить, думаю, будет довольно интересно. Вот идея ещё похожая: http://computercraft.ru/topic/1326-labirint-na-oc/, заметил. Ключевое тут то, что никто не будет строить это (99%).
  5. А я даже скачал, распаковал, вайн-префикс 32-битным был, как и положено, но прога ваша 64. Ну и бросил фигнёй маяться — как-то не особо заинтересован игрулей, если честно. P. S. А всё-таки, кто кого атакуют? Бактерии мутантов или мутанты бактерий?
  6. Нету, конечно же, зато был сонный я. А string.match не работает с русским.
  7. s = "С новым Кодом" for letter in unicode.gmatch(s, "%w") do print(letter) end (написал только проснувшись; код не работает)
  8. Это принты, а не готовые блоки. И каждый принт сам по себе работает. Так что редстоун нужен, и это не костыль.
  9. local alf["p"] = {0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}?
  10. Блин, не alf[p], а alf["p"], кавычки, капитан, кавычки!!
  11. Вместо alf[p] пиши alf["p"]. Это я бегло код глянул только.
  12. Fingercomp

    [Lua] [OC] Автокрафт V2: теперь без AE

    Обновил программу, исправил тонны всяких багов нехороших. Придумаю, как экспортировать код сразу на ГитХаб — выложу назад ссылки.
  13. Да, дамы и господа, он тут! Тот самый автокрафт, который был на старом ИТ с АЕ, обновляется до новой версии, в которой полностью отказываемся от АЕ и переходим на сундуки. Для работы нужна "стенка" из сундуков, двойные использовать нельзя. Или ставить вплотную сундуки из IronChest, или же попеременно сундук обычный / сундук-ловушка. В левой позиции ставим робота-крафтера мордой в сторону других сундуков, под него ещё один сундук. Теперь считаем размеры массива: по ширине сколько (X) и по высоте (Y). Затем ставим комп/сервер/планшет с нет-картой беспроводной, пишем mkdir /usr/bin, mkdir /usr/share, затем wget https://gist.github.com/Fingercomp/64d811a08af2e7848c9d/raw/8bacd47b12d2f202fb2d8bb48ff4010534e29b96/pc-craft.lua /usr/bin/craft.lua, wget https://gist.github.com/Fingercomp/64d811a08af2e7848c9d/raw/8bacd47b12d2f202fb2d8bb48ff4010534e29b96/pc-recipes.lua /usr/bin/recipes.lua. Запускаем команду recipes, пишем 4 и 0. Всё. Компьютер готов. Включаем робота, пишем wget https://gist.github.com/Fingercomp/64d811a08af2e7848c9d/raw/8bacd47b12d2f202fb2d8bb48ff4010534e29b96/robot-autorun.lua /autorun.lua, wget https://gist.github.com/Fingercomp/64d811a08af2e7848c9d/raw/8bacd47b12d2f202fb2d8bb48ff4010534e29b96/robot-scan.lua /scan.lua. А ещё чуть выше мы считали размер массива сундуков. Пишем edit /usr/bin/craft.lua на компьютере, в начале самом файла находим local CHESTX, CHESTY = 1, 2 и меняем числа на свои. Если ширина = 4, а высота = 3, то будет 4, 3. И т. д. В принципе, автокрафт теперь готов к работе. Но чтобы скрафтить хоть что-либо, потребуется заполнить базу данных с помощью программы recipes. Я чуть ниже подробнее расскажу о том, как это делается, а пока можете просто прописать команду wget https://gist.github.com/Fingercomp/64d811a08af2e7848c9d/raw/8bacd47b12d2f202fb2d8bb48ff4010534e29b96/pc-db /usr/share/db, чтобы скачать готовую БД, которую составлял я сам. =) Давайте просканируем рецепт! Открываем прогу recipes: Жмём 7 и [Enter]: Идём к роботу и выкладываем рецепт так: Пишем в роботе scan: Всё, забираем предметы у робота и возворащаемся к компу. Там должна быть такая картинка: Вводим имя рецепта, количество предметов на выходе крафта. Жмём [Enter]. Тыкаем по [y], энтерим... И всё! Рецепт сохранён в памяти... Программы. Это означает, что если сейчас выйти, рецепт будет утерян. Так что не забывайте писать 4 перед выходом! Остальные функции прог craft и recipes интуитивно понятны. Если нет — смотрите предыдущую запись про автокрафт, интерефейс тот же... =) Кроме одного. База данных предметов получается при первом запуске программы в сеансе, затем она кэшируется в _G. Это позволяет не ждать опять фигалион лет, если вы ошиблись номером рецепта или у вас не было какого-то ресурса. Но если что-то изменили в сундуках — всё, БДП не будет соответствовать действительности. В таком случае запустите программу так: craft update. Сундук под роботом (выход) проверяется каждый раз при старте проги. Если не хотите делать проверку (всего 5 секунд), запустите с аргументом noupd[/i]: [il]craft noupd. К слову, код там старый, гнилой и высохший. Самому не нравится. Но что поделать — переписывать лень. БАГИ В ПРОГРАММЕ CRAFT И ИХ РЕШЕНИЕ Программа некорректно просчитывает выходное количество, если запрашивается родитель в одном рецепте несколько раз, при этом выходных предметов нет в сундуках. То есть? А вот. Есть процессор, в нём 4 изумруда требуется. Допустим, изумрудов просто нет, но есть блоки. И во время построения рецепта изумруды буду запрошены 4 раза, каждый раз будет найдена нехватка, так что в итоге в плане окажутся 4 блока изумрудов. Проблема решается достаточно просто: вызовите тот крафт, родитель которого запрошен слишком большое количество раз. То есть, в нашем случае достаточно просто заказать крафт изумрудов. [*]Не баг, но всё же. Программа во время крафта выдаёт ошибку "в функции экспорта" и сбрасывает крафт. Случается из-за того, что БДП устарела, и когда робот пытается взять предмет в слоте из БДП, а там его не оказывается или там находится вообще другой предмет, вызывается ошибка. Решение банальное: перезапустите крафт, вызвав программу так: craft update. [*]Тоже ошибка в функции экспорта, но на 188 (или 118 ) строке и со стактрейсом. Это действительно баг, причину возникновения которого мне выяснить не удаётся. Однако, есть решение. Перезапустите программу, можно даже без update, и проблема решится. [*]И ещё один совсем не баг. Программа запускается и зависает на старте, даже не показав GUI. Всё просто: она ждёт ответа от робота, который недоступен Проверьте, работает ли робот вообще, запущена ли на нём программа и находится ли он в зоне дальности модема компьютера (а компьютер — в зоне радиуса модема робота). Прервите программу комбинацией [Ctrl] + [Alt] + [C] и запустите снова после устранения ошибки. Очень удобно становится, если вместо обычного сундука под роботом поставить якорный, программы с компа перенести на сервер и таскать с собою эндерсумку и удалённый терминал от сервера. Тогда вы можете заказывать предметы на расстоянии до 400 блоков от серверной стойки, и выход окажется в эндерсумке
  14. В OpenOS уже есть программа для просмотра методов. Пишем: components -l <имя компонента> — и всё, весь список с документацией.
  15. Началось всё с пустого файла. Набросав костылей, ловисипедов и более-менее нормального кода... Рад представить вам свой ламповый репозиторий на ГитХабике с набором программок, написанных на Python. На текущий момент все они в какой-то мере взаимодействуют с Minecraft. По-порядку. Чат-клиент Так как блог так или иначе обязан подчиняться правилам, я упоминаю только один чат-клиент под именем "cc-chat". Кое-как подёргав API форума, смог сделать небольшую программу, которая сейчас умеет работать с чатом (отправлять и получать сообщения из/в чат (-а) нашего форума). Интерфейс простой. Внизу строка ввода, справа немного кнопок, лист онлайна и сам чат. К слову, клик по нику с контролом — вставить в строку его, а клик с альтом — открыть профиль в браузере. Но это так, плюшки. Если тыкнуть по большой кнопке [ⓘ], окно с тонной всякой информации. Здесь и ТОПы, и места в них, и баланс, и голоса. Особая благодарность @cyber01 за API. Установка Для начала установите Python 3, BeautifulSoup, PyGObject. Скачайте программу с Гитхаба и запустите её. Создастся файл конфигурации, путь к нему будет указан в диалоге. Теперь перейдите на страницу чата, откройте DevTools. Открыв вкладку "Network", нажмите на кнопку [Обновить] в чате. Появится запрос в списке. Откройте URL запроса в отдельной вкладке и скопируйте всё, что находится между secure_key= и &type. Это есть секретный ключ, который, естественно, никому не нужно давать. Откройте файл конфигурации в редакторе и в первую строку вставьте этот ключ. Затем в браузере найдите Cookies для сайта, скопируйте их и вставьте во вторую строку браузера. Всё это требуется из-за костыльного АПИ форума =\ Если всё хорошо, при попытке запустить программу, она не завершится с ошибкой. К слову, в трее появится значок программы, левый клик по которой скрывает или показывает окно. Мониторилка Пропустив ту самую программу, идём к mc-monitor. Это небольшое приложение, которое полностью умещается в трее. Позволяет мониторить сервера Minecraft без захода на всякие сайты. Кроме того, имеется таймер, который "звенит" каждые 24 часа. Полезно, чтобы не забыть про голосование. Установка Установите, если ещё не сделали, Python 3, PyGObject. Просто запустите программу. Скопируйте путь к файлу кнфигурации и откройте его в редакторе. Там можно указать список серверов в следующем формате: адрес.сервера:порт=Имя сервера По строке на каждый сервер. Баги, глюки, пуллы, вопросы и сырцы Ищите на GitHub: https://github.com/Fingercomp/python-utils/
  16. А как же! Пришёл Он! И врата флуда отворились. Неспроста он был Флудогенератором 3000.
  17. Заказ №11 [ожидание] Программа для сервера. → Заказ №012 [ожидание] Управление энергохранилищами Учитесь подбирать заголовки!
  18. Fingercomp

    Пишу браузер-арбузер

    Вот ещё кое-что =) https://github.com/MightyPirates/OpenComputers/issues/1566 Всё ещё жду.
  19. На клиенте только. Для сервера незначительно, он просто считает снег и записывает инфу в блок, по идее.
  20. Fingercomp

    OC Лабиринт

    Готово. Ловите приглашение.
  21. Fingercomp

    OC Лабиринт

    Лучше уж запутать, чтоб не было никакой помощи от строителей =) А ещё лабиринту нужен остров с Минотавром, иначе никак. @@Zer0Galaxy, у вас там ЛС уже есть? Готов присоединиться.
  22. Fingercomp

    OC Лабиринт

    Этот топик создан для обсуждения идеи, возникшей у @@Alex во время обсуждения кораблика здесь. Привожу пост дословно. Выше перетащил сообщения из той темы.
  23. Палку не перегибай. Да, я уже готов был к этому. Сейчас Дуб говорит, мол, сдавайся, смертный, и юзай читёрнейшие дебаги, которые придётся ставить в админ-приват, мне не подконтрольный, потом придёт Алекс и будет это молвить, 146%. Так что давайте или вообще без проги, или без дебаги. С дебагой — ­вон, свой базар делайте. И ещё стены из иридиевых блоков начитанных сделайте. И пол из бедрока. И табличку "Гив ми гамимоди" на входе, дабы докончить картину.
  24. Всё равно, уж извините, но пойду по следу Крутого. Дебаги, не дебаги — мало того, что это небезопасно (я же на рынке зайду, возьму дебагу и опну себя, негодяй такой), так ещё и админы нужны обязательно. А без админов ничего построить нельзя?
×
×
  • Создать...