Totoro 3 562 Опубликовано: 22 июня, 2015 В один прекрасный день, когда ничто не предвещало ничего необычного, на форуме появился MrEnderfall.Он был встречен неприступной стеной вайт листа, и мрачным скепсисом старожилов. Но MrEnderfall это не смутило.Он пылал энтузиазмом, и программерская муза блуждала в его голове, в поисках выхода.Для начала он затребовал себе туториал по OpenComputers, обозначив тем самым всю серьезность своих намерений. (22 Июнь 2015 - 11:23) MrEnderfall : Люди, скиньте нормальный туториал по OpenComputers. (22 Июнь 2015 - 11:26) LeshaInc : @MrEnderfall http://ocdoc.cil.li (22 Июнь 2015 - 11:27) MrEnderfall : @LeshaInc , большое спасибо! (22 Июнь 2015 - 11:28) LeshaInc : Странно, я вроде как мануал на английском языке дал. (22 Июнь 2015 - 11:31) MrEnderfall : @LeshaInc , я очень хорошо английский знаю, как-нибудь пойму. После чего MrEnderfall углубился в чтение документации. На втором часу пришло озарение. (22 Июнь 2015 - 13:12) MrEnderfall : Люди, наконец-то у меня заработал мозг. Я придумал ферму дерева (Банально), вот в чём смысл программы: робот сканирует участок чанка , и если он находит блок дерева по ID , то он подходит к этому блоку и начинает рубить, и так пока в чанке не останется дерева, потом(Если дерева в чанке не осталось) он идёт в другой чанк по спиралеобразному курсу и ищет там дерево, если инвентарь робота заполнен, он ставит эндер-сундук и отправляет дерево хозяину. Комплектация робота: сам робот, топор, Hover Upgrade, Inventory Upgrade, Battery Upgrade(По желанию), Generator Upgrade (По желанию). Слово программиста не расходится с делом. Мануалы были отброшены в сторону, и идея моментально начала воплощаться в жизнь. (22 Июнь 2015 - 13:19) MrEnderfall : Единчтвенная проблема, я не знаю как это всё устроить в Lua так как я плохо его знаю. (22 Июнь 2015 - 13:25) MrEnderfall : Так, уже понимаю, * robot.detect(): boolean, string * -- тут надо вставить ID Дерева * robot.swing([side: number]): boolean[, string] * -- ЗЫ. мне непонятно куда вставлять ID дерева (22 Июнь 2015 - 13:28) cyber01 : @MrEnderfall вроде бы detect просто так не определит по ID.. (22 Июнь 2015 - 13:29) MrEnderfall : Незнаю, я только начал изучать Robot API. На этом моменте, жертвой музы MrEnderfall'а пал и Артем. Восхищенный широтой замысла, он присоединился к команде. (22 Июнь 2015 - 16:43) MrEnderfall : Так, скажите мне как сделать движение робота "змейкой"? (22 Июнь 2015 - 16:44) LeshaInc : @MrEnderfall для начала прочитать мануалы. (22 Июнь 2015 - 16:45) artem211 : @MrEnderfall Такс (22 Июнь 2015 - 16:45) artem211 : вот я и пришел (22 Июнь 2015 - 16:45) artem211 : Кто чего хотел от меня После того, как было установлено точно, шахтера они пишут или дровосека, MrEnderfall озвучил новое ТЗ. (22 Июнь 2015 - 16:56) artem211 : @MrEnderfall Не торопись (22 Июнь 2015 - 16:57) artem211 : @MrEnderfall а то снова придется переделывать, пиши сюда свою концепцию, будем на лету править (22 Июнь 2015 - 16:59) MrEnderfall : Робот ищет перед собой блок дерева (ферма должна быть плоская) если, не находит, то движется дальше, и так пока не найдёт блока дерева, дальше он рубит блок сверху(даже если его нет, как решить, не знаю.), потом рубит блок спереди и летит вверх, и так пока не перестанет находить блоки впереди, тогда он опускается и ищет дерево дальше. Через полтора часа хардкорного программирования, увидела свет... (22 Июнь 2015 - 18:19) MrEnderfall : самая самая первая, сырая, и не полная версия http://pastebin.com/e8ubU987 (Исходный код прилагается.) Версия 1.0========== --сделал MrEnderfall и artem211 print(OpenTimberman by MrEnderfall and artem211) if robot.detect().true robot.swing(30) else robot.forward() Релиз был тепло принят критикой. (22 Июнь 2015 - 18:20) LeshaInc : 6 строк... 6 строк Карл... 6 строк... Затем между соавторами произошла небольшая джентельменская беседа, о том, кому достанется почетное место в титрах. (22 Июнь 2015 - 18:23) MrEnderfall : @artem211 извините, вы мой друг и помощник, доктор Ватсон, и я просто должен вас вписать в титры. (22 Июнь 2015 - 18:28) artem211 : @MrEnderfall На будущее, без спроса у правообладателя, ты не имеешь права нигде и никак о нем писать (22 Июнь 2015 - 18:29) artem211 : @MrEnderfall Так что удали оттуда мой ник/имя/кличку А спустя некоторое время была выпущена вторая версия программы, где были учтены пожелания пользователей и пропатчены баги. (Исходный код прилагается.) Версия 2.0 (с багфиксами)========================= --сделал MrEnderfall print "OpenTimberMan by MrEnderfall" if robot.detect() then robot.swing(30) robot.forward() robot.up() end Мы искренне надеемся, что она не станет последней. И скоро на сервере будут бодро махать топорами Тимберманчики третьего поколения. Ссылка на тему о разработке программы. 8 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Alex 4 683 Опубликовано: 22 июня, 2015 Для автора поста: Для героя романа: [ok=ВАЙТ-ЛИСТ!][/ok] П.С. ржал так, что думал, меня вынесут вперед ногами, когда днем с Тоторо эту историю наблюдали на форуме и делились впечатлениями в скайпе=) 3 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
NEO 541 Опубликовано: 22 июня, 2015 IРжу не могу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Ktlo 789 Опубликовано: 22 июня, 2015 Начнет с программы в шесть строк, закончит офигенной системой с графическим интерфейсом... Наверное. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
LeshaInc 624 Опубликовано: 23 июня, 2015 (изменено) Предлагаю добавить на форум медальку "Оскар!" Изменено 23 июня, 2015 пользователем LeshaInc Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
davial 1 972 Опубликовано: 24 июня, 2015 Это ещё не конец, ребята : http://computercraft.ru/topic/872-opentimberman-neobychnaia-ferma-dereva/ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eu_tomat 2 148 Опубликовано: 25 июня, 2015 Нормальный подход, в генетических алгоритмах именно так и делается. Какой-нибудь из новых вариантов окажется лучше предыдущих. А если не окажется, всегда можно попробовать еще раз. Будь я роботом, именно так бы и писал, только релизил бы почаще. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах