Поиск по сайту
Результаты поиска по тегам 'openComputers'.
Найдено 324 результата
-
Топорный алгоритм возвращения дрона по пингу. (как-нибудь по-красивей сделаю на gps api) В качестве примера прошивка дрона: Это запускаем в интерпретаторе планшета/компьютера, с которого управляем дроном: while true do component.modem.broadcast(43, 'PING') os.sleep(0.5) end Хм.. Забыл добавить 'PONG', чтобы не приходилось alt+ctrl+c, но я привычный))Дрону нужно много пространства для маневра (примерно 4x4 блока по всему пути движения), но зато он может корректировать курс, если игрок с планшетом движется. При помощи gps api будет выглядеть опрятней и дрон будет шнырять по-прямой, без лишних движений.
- 8 ответов
-
- programming
- opencomputers
-
(и ещё 1 )
Теги:
-
Всем привет!В этой теме я хочу рассказать о своей программе для управления неким подобием базы данных. Структура хранения файлов такова: Папка с логинами и паролями Папка с папками под именем логина, в которой может быть 256 пользователей, у которых может быть 256 баз данных, в которых может быть 256 "колонок" с определёнными данными в них. Библиотека требует библиотеку OpenNet. Пройдёмся по методам. 1 метод - аутентификация. - auth(login, password) Сейчас доступен только 1 аккаунт - test, с паролем test Зачем он создан? Потому, что чёртов модем не хочет отправлять более 11 пакетов. Как оно работает? В таблицу на сервере, в значение с вашим ip добавляются логин и пароль. 2 метод - создание базы данных (А с ней и пользователя, если он не найден!НЕ ПУТАТЬ С ЛОГИНОМ!) -createDataBase (DataBaseUser, DataBaseName) 3 метод - создание "колонки" в базе данных - createCollum(DataBaseUser, DataBaseName, CollumName) 4 метод - запись данных в "колонку" - writeData(DataBaseUser, DataBaseName, CollumName, data) 5 метод - чтение данных из "колонки" - readData(DataBaseUser, DataBaseName, CollumName) 6 метод -получает пользователей - getUsers() возвращает сериализированную таблицу, стринг, или нилл 7 метод - получает базы данных пользователя - getUserDatabases(DataBaseUsers)возвращает сериализированную таблицу, стринг, или нилл И 8 метод получает колонки пользователя базы данных в базе данных. - getCollums(DataBaseUser, DataBaseName)возвращает сериализированную таблицу, стринг, или нилл. Код: в открытой бете, можно проверить на сервере. Код библы: Приложение для работы с базой: Надеюсь, это кому-нибудь понадобится!
- 16 ответов
-
- DataBase
- OpenComputers
-
(и ещё 1 )
Теги:
-
Собираюсь сделать дома бесплатный раздатчик печенек/тортов/латекса, написал программу, которая при помощи сенсора движения и адаптера раз в сутки выдает каждому игроку определенный набор предметов. Прога не интерактивная, ибо делал для себя. Чтобы сделать такой раздатчик надо установить примерно такую систему: Вместо стекла можно поставить любые блоки (дроппер их пробивает), в кейс должна быть установлена редстоун карта. Ресурсы добавляются роботом в сундук снизу. В самой программе необходимо заполнить таблицу tLoot - список предметов, которые будут выдаваться, например: {'cake', 4} будет выкидывать 4 торта каждому игроку, так же подкорректировать maxStack указав максимальное количество предметов, которые могут быть выданы. Если кого-то хотим обломать - вносим в tBlacklist Чтобы получить ежедневную раздачу, игроку надо встать на сенсор и подпрыгнуть. Собственно, сама прога: pastebin get 8sv37f6g dropper
- 9 ответов
-
- opencomputers
- lua
-
(и ещё 1 )
Теги:
-
Мне понравился этот сайт за очень точные ответы и решил задать еще один вопрос, на который я не в состоянии ответить. В OpenComputers есть библиотека Process API, можно ли ей воспользоваться для одновременной работы нескольких программ?
-
Буду очень рад если найду решение тут, потому-что даже некуда идти. Вопрос: Как запустьить функцию из программы hello.lua в программе test? У меня есть косенькое решение и оно не правильно работает. ---- world---- local hello = require("hello"); hello.set() -- hello(), set() --------------- ----hello.lua---- function hello.set() print("Hello"); end; --или-- function set() print("Hello"); end; ------------------ При запуске программы "world" пишет: attemp to index local "hello" (a boolean value) Если прописать так: print(hello.set()); в итоге все тоже самое, но когда провисываю так: print(hello); он пишет: true. API примерно по этой системе производят действия, но видать из моей программы они это делают иначе. Кто может помочь?
-
Как можно побыстрей записывать информацию на кассеты? И вообще, где можно почитать описание формата, в котором хранятся данные на кассетах? А то возможности звукоизвлечения почти бесконечны, но на запись минуты звука уходит несколько часов.
- 3 ответа
-
- opencomputers
- lua
-
(и ещё 1 )
Теги:
-
Представить мою первую программу. Робот фермер. Всё что вам понадобиться это: автосодовник (ic2) робот (oc) помпа (ic2) жидкостных выталкивателя (ic2) мфэ (ic2) улучшенная солнечная панель (asp) зарядное устройство (ос) рычаг сундук жёрдочки (ic2) Приступим. Минимальные характеристики робота: корпус 1 ур монитор 1 ур клавиатура дисковод видео 1 ур 2 шт. оперативки по 1.5 процессор 1 ур жёсткий диск 1 ур улучшение "инвертарь" Делаем всё так на фото. Я покажу пример для 2 ферм одновременно. Его действия. двигаться как показано на скине ниже и собирать урожай Вот сам код. Знаю только сколько нужно ждать до следующего сбора урожая: картошка(600 сек) резиновый тросник (400 сек) это было подсчитано мною. Теперь меня возьмут в вайплист?
- 12 ответов
-
- 2
-
-
- lua
- opencomputers
-
(и ещё 2 )
Теги:
-
Вот простенькая малюсенькая программулька для чата. Простая как лопата, но работает стабильно и надежно. Бокс расширяется и сужается по высоте в зависимости от количества сообщений. Жизнь сообщения 15 секунд. Если сообщений нет, долгое время, они потихоньку все очистятся и пропадут с экрана вообще. Длина строки ограничена 140 символов. Нет никаких банов, управления чатом, админов и префиксов, прав и очистки чата. Это самая простая реализация, какая может только быть. Уже с друзьями можете уединится в этом чатике и общаться. Подключите блок моста через адаптер к ПК, запустите программу, кликните ПКМ по мосту, наденьте очки и пишите собщения в чат игровой в виде $$ Привет, Петя. В чат сообщение не отобразиться, но его увидят все, кто в очках, прилинкованных к данному блоку. Мощный и управяемый чат делает игрок FingerComp. Там будет и система администрирования и очистки чата, префиксы и права, баны и прочее.
- 5 ответов
-
- 5
-
-
- чат
- программирование
- (и ещё 3 )
-
Что? Данный автомат может принимать дискеты у пользователя, записывать на них что угодно (предоставляя пользователю выбор, что именно записывать) и возвращать их ему. Также автомат может и не предоставлять выбор пользователю, становясь таким образом полностью автоматизированным (хотя вряд ли его получится включить в АЕ систему, ведь и на входе, и на выходе дискеты). Зачем? Идея у меня появилась после чтения публикации в блоге Totoro "Как собрать шахтерского робота" (http://computercraft.ru/blog/11/entry-338-kak-sobrat-shakhterskogo-robota/) а именно следующих строк: Я подумал, что данную задачу (раздача дискет с определенными данными) можно легко автоматизировать. Так и вышло - программа занимает чуть более ста строк, но все-таки полезна. Так можно избавить новичков от необходимости крафтить еще один мануал - выданный в начале игры будет израсходован на Lua BIOS (кстати, их запись тоже можно автоматизировать), а для OpenOS пришлось бы скрафтить еще. Но не теперь. Как? Пользователь бросает дискету в воронку, откуда она, пройдя воронковый конвейер, попадает в дисковод. После этого пользователь нажимает на мониторе кнопку желаемой программы или кнопку извлечения дискеты (отключается). В полностью автоматизированном режиме компьютер каждые n (задается) секунд проверяет, не попала ли к нему дискета, и пишет на нее данные по предварительно заданному пути. Поиск файловой системы дискеты проверяется методом исключения - те файловые системы, что были на момент запуска программы, считаются не дискетами. Поэтому важно запускать программу лишь убедившись, что в дисководе пусто. Дискета форматируется и на нее пишутся новые данные. Далее компьютер отключает редстоун-сигнал от выходной воронки, которая подключена к дисководу, и она забирает дискету из него. По воронковому конвейеру дискета попадает к роботу, единственная задача которого - выкидывать все из инвентаря (код робота на EEPROM не приведен ввиду его очевидности) (про диспенсер вспомнил только пока эту тему писал). в диспенсер и попадает. Так дискета возвращается к пользователю. Предварительная настройка Можно настроить: Режим работы: спрашивать что писать или нет (переменная ASK). Адрес до директории с данными для записи (в режиме полной автоматизации) или с поддиректориями, список которых будет выведен для выбора пользователю (переменная DISKS). Период проверки наличия дискеты в полностью автоматизированном режиме (переменная SLEEP_TIME). Сторона, c которой проведен редстоун-кабель до выходной воронки (переменная HOPPER_SIDE). Включение/выключение подгонки разрешения экрана под количество кнопок в режиме частичной автоматизации (переменная CHANGE_RES). Возможность извлечения дискеты без её форматирования и записи новых данных в режиме частичной автоматизации. Для включения этой возможности создайте директорию _[EJECT] по адресу, который был задан переменной DISKS, т.е. DISKS/_[EJECT]. Названия кнопок. Они задаются названиями поддиректорий DISKS. В названиях нельзя использовать: звездочки, слеши, пробелы и прочие сомнительные символы, а также кириллицу. Подчеркивание _ будет удалено, если оно идет первым (как в _[EJECT]). Инструкция конечному пользователю В основном не нужна. Однако могут пригодиться значения мигания кнопок: Если кнопка мигнула очень быстро, то это значит, что дискета не найдена. Если вы уверены, что бросили ее, то нажмите кнопку снова - скорее всего она просто не успела дойти. Медленное мигание означает, что дискета была записана и возвращена пользователю. Если ее нет, то она потерялась (см. далее). Этого практически не происходит в правильно построенных автоматах. Возможные проблемы Злоумышленник может забить весь входной воронковый конвейер каким-нибудь мусором или readonly дискетами. Решение: не будьте злоумышленниками. Робот выбрасывает дискету куда-то не туда, и пользователь не может её забрать. Решение: минимизируйте количество полостей в автомате. Блоки с некубической геометрией (кабеля, например) и свободные для прохода блоки (факелы, таблички, тростник etc.) также являются полостями. Чем их меньше, тем меньше шанс на потерю дискеты. Или можно поставить диспенсер вместо робота, но я не уверен, решит ли это проблему. А редстоун-кабель подвести от воронки, только один-два репитера воткнуть. Лучше диспенсер, даже если не решит, то хоть серверу поменьше считать. И заряжать его не надо. Диспенсер проверен и рекомендуется для использования. К нему надо подвести редстоун-сигнал от воронки с одним репитером в режиме максимальной задержки. Какой-нибудь баг вылезает и все портит. Решение: пните меня. Cкриншоты http://i.imgur.com/JRYOZsc.png - как это может выглядеть для пользователя. http://i.imgur.com/3lBpWPX.png - без досок для большей наглядности. http://i.imgur.com/XI3rPbd.png - как выглядел сломанный интерфейс. Скачать http://pastebin.com/0A5S8SDJ Благодарности Totoro за идею. AlexCC за внесение в вайтлист (пришлось прогу написать, чтобы не получилось что зря вносил). UPD: Обнаружен и исправлен баг: попытка записи readonly дискеты приводила к неправильному отображению интерфейса (не влияя на функционал). Также подтверждена работоспособность программы с диспенсером.
-
Как понятно из названия, эта программа делает платформы. Комплектация робота - рекомендуемая(что-бы работала,с инвентарём,процессором и памятью,Lua BIOS,а остальное для хардкорщиков можно не ставить ). строит она так: Вот код:http://pastebin.com/JXcKnqd6 , забыл про него.(обновил) P.S. Первая тема.
- 8 ответов
-
- Lua
- opencomputers
-
(и ещё 1 )
Теги:
-
В общем идея такая: игрок посылает запрос на крафт определенного предмета, робот ищет ингредиенты в сундуках и крафтит запрошенный предмет. Давно бьюсь над способом размещения метаданных предмета в таблице, но что-то голова не варит. Есть код, который принимает системное имя предмета и если рецепт есть в списке - находит в сундуках ингредиенты и крафтит по рецепту. http://pastebin.com/E5yZVpUA Надо, чтобы в рецептах можно было указывать метаданные предмета, например вот так: REPICES = { --рецепт1 [{"NAME", "META"}] = { {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"} }, --рецепт2 [{"NAME", "META"}] = { {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"}, {"NAME", "META"} } } 1-9 {"NAME", "META"} это список ингредиентов. [{"NAME", "META"}] - результат крафта
-
В один прекрасный день, когда ничто не предвещало ничего необычного, на форуме появился 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 (Исходный код прилагается.) Релиз был тепло принят критикой. (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 Так что удали оттуда мой ник/имя/кличку А спустя некоторое время была выпущена вторая версия программы, где были учтены пожелания пользователей и пропатчены баги. (Исходный код прилагается.) Мы искренне надеемся, что она не станет последней. И скоро на сервере будут бодро махать топорами Тимберманчики третьего поколения. Ссылка на тему о разработке программы.
-
OpenTimberMan это авто лесоруб на OpenComputers ПРИНЦИП OpenTimberman работает на одном роботе и принцип таков: Робот ищет перед собой блок дерева (ферма должна быть плоская) если, не находит, то движется дальше, и так пока не найдёт блока дерева, использует костную муку на блоке или саплинге 5 раз(на всякий случай), дальше рубит блок спереди ,потом он рубит блок сверху и летит вверх, и так пока не перестанет находить блоки впереди, тогда он опускается и ищет дерево дальше. Пост будет дополнятся. ферма должна быть такой(вместо глоустуона может быть любой другой блок):
- 7 ответов
-
- OpenComputers
- Авто-Ферма
-
(и ещё 2 )
Теги:
-
Примитивная либа, которая конвертирует текст в код Морзе и пикает при помощи computer.beep() Пример использования: txt_to_morse('ЛЕНИН МИР СССР', true) Конвертируется русский и английский текст, цифры и символы [=.,:;'"/_=+-?!@], которые кодируются по английской системе. Второй параметр отвечает за вывод символа с его кодом на экран. Собственно, код: http://pastebin.com/cYZL6Pz3
- 13 ответов
-
- 6
-
-
- OpenComputers
- морзянка
- (и ещё 3 )
-
Порезвившись вдоволь на гриф-атаках за солнечными панельками,Байт решил еще себя испробовать в качестве барыги-менялы. Обитает он в Банке сейчас. Меняет из под полы "запрещенку" а так же всякий хлам Монстрик так и не захотел доделать на роботе нормально до конца лотерею менялку-не глядя. Программа сначала мне показалась непрактичной, интересной только в плане написания минимального кодика, а не огромной схемы на компараторах и раздатчиках. Думаю, мол, ну что там игроки будут пихать туда. Мусор, ведь так? Какой смысл. Но в админ, целях ее можно даже очень применить. Вот и решил набросать прототипчик первичный простенький. Автор идеи: Asummonster Принцип работы: СЛОТ-НА-СЛОТ Время работы: круглосуточно (отдыхает после одной операции обмена, 15 -60 мин!) Ассортимент: Что у него в инвентаре, одному криперу известно (и Алексу) В чем фича? А в Силе Великого Рандома. Время между тактами довольно большое. Можно и сдохнуть от скуки. Перерыв в тактах от 15 минут до часа!!! Случайный. Сколько раз бросишь какашку крипера и получишь ее обратно или листик с яблочком, который бросил игрок Вася, одному черту известно. Может и 100 попыток нужно, а может и одна! То есть - пробегаешь мимо, а ну, вдруг удача, кинул, алмаз - получил кактус, побежал дальше=) Кинул кирпич - ПОЛУЧИЛ ТЕЛЕПОРТАЦИОННЫЙ СИНГУЛЯРНЫЙ РЕЛОКАТОР, позволяющий тэпэшиться в любую точку по своим варпам! Или стак иридия! Уже сейчас у Байта по секретным данным есть Релокатор и Гравичест. Я оговорку сделал выше, что прога имеет только смысл админский. Так как именно админ может туда, пробегая мимо, закинуть МЕГА-ПРИЗ и ценные ресы. Как часто игрокам повезет их вытащить - это удача каждого. Инвентарь большой, таймаут между тактами тоже. Кинул ли Алекс сегодня призы, фиг его знает, или там только картофан и палки. На все воля ВЕЛИКОГО РАНДОМА Не упускайте свой шанс. Кому-то не надо перышко или папке не жаль кинуть нубасам кусочек иридия, а кто-то кинул листик и выиграл перышко, которое ему и было надо на данный момент и согрело душу и т.п. Что планируется еще добавить, так как программка сейчас только "меняшка" (железо): более сложный процесс таймаута не на os.sleep, со своими фунциями ( случайное катание по банку, кидание какашками, бухтелка в чат всякой ерунды, через внешний сервер с ком.блоком или чатбоксом КТ) принт в чат, есть ли релокатор в пузе и другие некоторые ценные призы из списка или нет с малым шансом обмана озвучка через серверные команды от Байта на ПК с КБ, когда я добавлю библы звуковые в access для /playsound на сервер (озвучка для банка, ТП, приветствие новых игроков, бухтелка тетки о каких-то событиях) и др. фичи Меняла Байт: А вот толпа искателей удачи: Программка:
- 21 ответ
-
- 4
-
-
- opencomputers
- роботы
- (и ещё 2 )
-
Для управления дроном/роботом я использую modem.send() - сначала подхожу в упор к устройству, синхронизирую адреса со слабой силой сигнала через modem.broadcast() и потом играюсь. Недавно подумал, что кому-нибудь надо таким способом сообщить удаленно адрес модема. Эта программа написана, чтобы не вбивать адреса модемов вручную, а загружать их из файла. При запуске можно выбрать порт и имя устройства, например: /#cm 999 Doob Код здесь: pastebin get hGZsNALr cm Картинки:
-
- OpenComputers
- Lua
-
(и ещё 1 )
Теги:
-
Ногами не пинать, это только ради фана. На дронах можно летать, все видели? А я катаюсь на роботах. Хоть по воздуху, хоть под землей. Нам нужны два робота с ангел-апгрейдом, вайрлесс картой и инвентарем, для одного нужен апгрейд- поршень. Ставим робота с поршнем, перед ним, через два блока ставим второго робота. (чтобы они смотрели в одну сторону) Кидаем обоим в первый слот по стаку грязи, в руки даем по кирке. На оба робота загружаем программу: http://pastebin.com/r4mJsSnS На заднем (который с поршнем) ничего не меняем, а переднему в первой строке меняем 'back' на 'front'. Заднему запускаем программу без аргументов. Ну а с переднего управляем всей этой ересью. Надо стоять прямо за рулевым, и писать команды: cart go [расстояние] cart turn left/right cart - название программы [1][2][3][4] [<][P][ ][<] 1, 4 - роботы P - игрок Прога жутко примитивная, но думаю, суть ясна))
-
[OC Updates] Обновление OpenComputers до версии 1.5.13 Pre-release: 1
Fingercomp добавил запись в блоге в Fingercomp's Playground
ОБНОВЛЕНИЕ OPENCOMPUTERS ДО ВЕРСИИ 1.5.13 PRE 1. Спустя 20 дней, наконец-то вышла новая версия OC. Изменений немного, но пусть это не смущает Вас... ...Ведь в 1.5.13 появляется новая архитектура процессора: Lua 5.3! Подробнее. В этом пре-релизе появляется, как уже было сказано, новая архитектура: Lua 5.3, что и является причиной для новой версии. Если Вы играли с dev-билдами OC 1.5.13, Вам необходимо выставить значение enableLua53 в true. Необходимо такое было, так как новая архитектура была очень нестабильная по сравнению стабильности архитектуры на данный момент. Как поиграться с этой штуковиной? Возьмите CPU в руки, зажмите [shift] и кликните процессором. В чате появится надпись об изменении архитектуры. Кроме того, множество мелких изменений прмсутствует в этой версии, чэйнджлог который приедет уже к полному релизу. -- Собственно, вот я и перевёл описание релиза с ГитХаба) Кстати, девелоперские версии ОС можно получить с Jenkins: http://ci.cil.li/job/OpenComputers-dev-MC1.7.10/-
- новая архитектура
- пре-релиз
- (и ещё 4 )
-
Скоро... https://www.youtube.com/watch?v=jPlvkb4BZd8 P.S. Прошу извинить за недочёты на видео, позже отсниму заново.
-
- 1
-
-
- Lua
- OpenComputers
-
(и ещё 1 )
Теги:
-
Так уж вышло, что Сябро первый выложил на форум библиотеку для робота, а я свою написал ещё неделю назад (скрипач Морф - свидетель) Так вот, данное поделие служит для управления роботом и получением его координат. Сам код на pastebin кидать не буду, ибо он слишком прост. Для тех, кто ничего не понял, вот список функций (вместо {side} подставить North, South, West или East соответсвенно): getCoordinates():x,y,z,d Возвращает текущее положение робота и его направление (x,y,z - числа, d='N','S','W','E') go{side}():boolean Перемещает подопытного. Возвращает true в случае успеха. goUp() и goDown() делают то же самое, только... угадайте куда . smartTurnRight(), smartTurnLeft() и smartTurnAround() - ну тут всё понятно. turn{Side}() - поворачивают на север, юг... в общем, куда надо. getX(), getY(), getZ(), getDirection() - интересно, что же они возвращают... (подсказка - первые три - числа, четвёртая - строку) --------------- Новая версия! Изменения: Почти ничего, а именно: добавлены функции goX(), goY(), goZ(). Cкачать можно на Яндекс.Диске.
-
Итак, только сейчас я написал программу, которая измеряет расстояние по прямой линии. Вам лень считать расстояние по прямой? Это программа для Вас! Просто поставьте робота так, чтобы он смотрел в ту сторону, которую нужно измерить. Встречайте! Programist135 Easy Role Copyright Programist135 http://pastebin.com/tMVRwrMj
-
Итак, дорогие друзья, сегодня я выложил программу для робота из OC, которая строит лестницу вниз. Ссылка на программу: Programist135 3x3 Ladder Builder Copyright Programist135 http://pastebin.com/LjZxdqYY Для начала скачайте её, потом вскройте. Увидите вот такую строчку: dis = 15 -- размер лестницы Вместо 15 введите нужный Вам размер лестницы, затем сохраните, поставьте робота вплотную к стене (вот как у меня на картинке) и запустите. После того как робот закончит работу, он автоматически вернется. Внимание! Программа находится на стадии Alpha! Ну вот и всё =)
-
Как рисовать в ОС? Я хочу узнать, как: *Рисовать пиксели *Заполнять/очищать экран *Загрузить файл формата .png или .jpg (если можно) *Всякие другие действия с ГПУ
- 5 ответов
-
- OpenComputers
- OC
-
(и ещё 3 )
Теги:
-
Вторая в жизни сделанная мной (ну почти) прога Руководствовался гайдом по автоферме из вики http://minecraft-ru.gamepedia.com/OpenComputers/%D0%A2%D1%83%D1%82%D0%BE%D1%80%D0%B8%D0%B0%D0%BB:_%D0%90%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B0%D1%8F_%D1%84%D0%B5%D1%80%D0%BC%D0%B0 Для робота использовал дешевые компоненты, память 2х2Tier (может и меньшая сгодится, не проверял) Меняете, как вам угодно: vper - длина поля (впереди робота); shir - ширина поля; 32 - слоты робота; 3600 - период сбора урожая в секундах. Oreberry farm, ферма кустов из мода Tinkers Construct (MT сервер) Робота размещаете так: Чтобы поставить куст в воздухе, сначала надо разместить под ним блок: поставить на блок и убрать блок). Для роста самородков уровень освещения должен быть <8. На прозрачных блоках мобы не спавнятся. Сундук сзади, зарядник в любом месте, робот перед полем, направлен в правый дальний угол. Советую огородить собираемую территорию стеклом, чтобы робот не вышел за пределы из-за какой-нибудь помехи (а еще на стекле не спавнятся монстры) Прервать программу - Ctrl + Alt + C , на ходу робота прервать вряд ли получится) На передвижение тратится 15 энергии, на повороты 2.5 вроде, остальное по мелочи. По границе перемещений должны стоять блоки, чтобы робот упирался в них и поворачивался. или http://pastebin.com/H4YeQU63 Plant farm, ферма растений из мода Pam's HarvestCraft (MT сервер) Аналогия с прошлой программой, изменены только действия (на скрине надо блоки поставить справа) Код или http://pastebin.com/Wi8FtcJV А вот и первая прога : сбор и крафт бочек воды из мода Pam's HarvestCraft Честно говоря, мне жуть как надоело крафтить их вручную. Код писал чистых 2 часа) Дополнительно понадобится апгрейд управления инвентарем и апгрейд на крафт-стол. Перед стартом программы пустое ведро в руку робота, число 100 можно менять на любое - сколько ведер он должен набрать и скрафтить. На крафт из 100 ведер (= 400 бочек) уходит меньше тысячи энергии. local robot = require("robot") local component = require("component") local inv = component.inventory_controller local c = component.crafting for i=1,100 do robot.useDown() inv.equip() robot.select(1) c.craft() robot.drop() robot.select(2) inv.equip() end
- 4 ответа
-
- 3
-
-
- oreberry
- harvestcraft
- (и ещё 3 )
