Перейти к публикации
Новости
  • В ближайшее время постараюсь разобраться с картой сервера/ЛК/бб кодами
  • Новости
Doob

Муравейник

Рекомендованные сообщения

Есть такая древняя задумка, которая появилась еще при СС1.3:

 

Берем черепаху-шахтера, устанавливаем, запускаем прогу.

Черепаха (назовем ее маткой) начинает перелопачивать карту в поисках ресурсов, сортирует, складывает в сундуки, создает других черепах (рабочих).

Рабочие строят фермы деревьев, терраформируют мир по такому шаблону - от y5 до y32 строятся фермы, склады, заводы, а все что выше превращается в каменную суперплоскость.

Можно прикрутить взаимодействие с игроками - игрок заказывает предметы/постройки, а черепахи это создают за энергоресурсы.

 

Хотелось такое запилить с голым CC, без модов, но тогда это было довольно сложно, теперь есть возможность, но нет желания. В OC больше всяких плюшек, которые упростят некоторые функции, но усложнят другие, в общем я больше на стороне OC.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рабочую черепаху мало создать. Нужно еще переписать на нее программу. В СС это можно сделать только при помощи дисковода. А как в ОС даже не знаю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рабочую черепаху мало создать. Нужно еще переписать на нее программу. В СС это можно сделать только при помощи дисковода. А как в ОС даже не знаю.

В робота дисковод как апгрейд можно вставить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В робота дисковод как апгрейд можно вставить.

Тут смысл не в самом дисководе, а в том, чтобы без участия человека на совершенно голую черепаху/робота поставить какое то ПО. Если черепаха рождается в непосредственной близости от дисковода, в который вставлена дискета, то на черепахе автоматом выполняется файл startup, записанный на дискете.

А как в ОС? Сможет ли один робот вставить дискету в другого робота и сделать ему reboot?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Тут смысл не в самом дисководе, а в том, чтобы без участия человека на совершенно голую черепаху/робота поставить какое то ПО. Если черепаха рождается в непосредственной близости от дисковода, в который вставлена дискета, то на черепахе автоматом выполняется файл startup, записанный на дискете.

А как в ОС? Сможет ли один робот вставить дискету в другого робота и сделать ему reboot?

Можно, вполне. Взять дискету в "руку", ПКМнуть на дисководу. Программа должна называться autorun, она автоматически выполнится (по умолчанию, можно отключить). В этом авторане нужно смонтировать диск по адресу, который можно узнать, спросив о текущей директории, в корень, назвать её так же — autorun, записать туда содержимое, например, robant. После этих операций при буте робота он автоматом заавторанится из файла в корне.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Все как-то не найду  времени посидеть, разобраться и поиграться с роботами. Но хотел спросить. Кто-то пробовал автоматизировать сборку роботов вообще?

 

То есть к сборочной машине подключена труба, из списка на ПК выбираем комплектацию галочками и соглашаемся. ПК дает на определенные гейты сигналы редстоуна в четкой последовательности(в сундуках уже у нас заранее отдельно лежат все комплектующие). Вроде бы разработчик пофиксил там что-то, что монитор не может попасть в слот для процессора :)

 

Так вот, работает ли это все хотя бы при минимальном участии человека??? Я уже молчу про то, может ли робот заказать у такой установки еще одного робота для определенных целей нужной комплектации без человека? Если нет, то очень странно, что в компьютерном моде отсутствует возможность компьютеризовать и автоматизировать автосборку роботов. Как там кнопку нажать без человека  "Приступить к сборке" и прочее? Кто-то вникал? С трубами вся эта сборочная ОС-ская джигурда  работает хоть вообще? Если эта фигня так не делает, то печально. Тогда о какой-то колонии роботов на ОС пока говорить  рано, плюс реально надо еще тестировать автопрограмирование "роботов-детенышей" "роботом-маткой".

 

На КК сделать автономный рой черепах проблем нет вообще, с сетью и GPS покрытием, тем более, что черепахи уже в 1.65 определяют ИД блоков и прочее. Внести им только крафты и методы.

 

Год назад еще я на нашем стареньком форуме на Джумле ссылочку  кидал: 

 

 

Вот специально ролик для игроков, которые думают, что круче Грега и Эндеркарьера из Экстраутилисов ничего нет в майне:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Роботы - понятно, чанклоадер есть встроенный, но их сборку непонятно как автоматизировать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну вообще, если мне не изменяет память, есть же аддон на КК с чанклоадерами на черепах... #админ_поставь_мод

:D

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Задача создания муравейника сводится к саморепликации, как основу устройства муравейника.

 

Я считаю, что создание программы для робота\черепашки по саморепликации, это апогей программирования для МС, и наверное, самая востребованная разработка для компьютерного мода. Разрабатывая каждую новую программу, мы приближаем наступление момента, когда первая самореплицирующаяся машинка появится.

Например, объеденив строительную программу и копательную, можно уже создать робота, который построит улей из ресурсов, которые сам добудет.

 

Но по моему мнению, основная проблема состоит не в принципиальной невозможности создать робота который создает робота (робот не может тыкнуть на кнопку "собрать"), а в обработчике ошибок.

На каждом этапе работы этой "королевы" будет возникать куча прерываний, начиная с падающего песка и заканчивая багами модов. И сделать программу, которая сможет сама находить решение крайне сложно.

 

Так что, для меня сейчас цель плавно дописывать свою программу строительства. Затем, я смогу использовать ее, что бы робот смог сгенерировать и построить дом сам. Далее, я использую программу "Домик Байта", которую напишет кто то другой, что бы ориентироваться в построеном доме. Ну и так далее.

 

А в конце сбудется мечта - они съедят майн мир.

  • Like 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
А в конце сбудется мечта - они съедят майн мир.

Ты ужасен! (О_О)

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
я использую программу "Домик Байта", которую напишет кто то другой, что бы ориентироваться в построеном доме

Чем тебе мое API не нравится?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Задача создания муравейника сводится к саморепликации, как основу устройства муравейника.

 

Я считаю, что создание программы для робота\черепашки по саморепликации, это апогей программирования для МС, и наверное, самая востребованная разработка для компьютерного мода. Разрабатывая каждую новую программу, мы приближаем наступление момента, когда первая самореплицирующаяся машинка появится.

Например, объеденив строительную программу и копательную, можно уже создать робота, который построит улей из ресурсов, которые сам добудет.

 

Но по моему мнению, основная проблема состоит не в принципиальной невозможности создать робота который создает робота (робот не может тыкнуть на кнопку "собрать"), а в обработчике ошибок.

На каждом этапе работы этой "королевы" будет возникать куча прерываний, начиная с падающего песка и заканчивая багами модов. И сделать программу, которая сможет сама находить решение крайне сложно.

 

Так что, для меня сейчас цель плавно дописывать свою программу строительства. Затем, я смогу использовать ее, что бы робот смог сгенерировать и построить дом сам. Далее, я использую программу "Домик Байта", которую напишет кто то другой, что бы ориентироваться в построеном доме. Ну и так далее.

 

А в конце сбудется мечта - они съедят майн мир.

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Чем тебе мое API не нравится?

Волновые алгоритмы по определению медленнее А*. Запусти поиск 3д пути хотя бы для 10 тысяч клеток, застынет же всё.

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

 

 

Хотя это уже где-то за гранью.

Это, конечно, нереально. Нам достаточно обработки ошибок высокого уровня. Как, например, если в винде зависло окно Explorer'а, винда перезагружает процесс, а не весь компьютер.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Оказывается, Electronics Assembler разпознаётся как компонент для компа OpenComputers. Т. е., выполнив вот такой код, Вы сможете начать процесс сборки:

assembler = require("component").assembler
assembler.start() -- Запустить процесс сборки
print(assembler.status()) -- Узнать статус

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

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Волновые алгоритмы по определению медленнее А*. Запусти поиск 3д пути хотя бы для 10 тысяч клеток, застынет же всё.

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

 

 

 

Это, конечно, нереально. Нам достаточно обработки ошибок высокого уровня. Как, например, если в винде зависло окно Explorer'а, винда перезагружает процесс, а не весь компьютер.

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

если бы черепаха видела, тогда можно было бы сделать алгоритм проще.

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

Изменено пользователем NEO

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Оказывается, Electronics Assembler разпознаётся как компонент для компа OpenComputers. Т. е., выполнив вот такой код, Вы сможете начать процесс сборки:

Ну вот, другое дело! Значит, идем копать ресурсы на нового робота по своему образу и подобию? Или есть какие то еще фундаментальные проблемы?

 

 

 

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

Разбиение карты на ключевые точки это выход для объемов больше 100к клеток, ибо моя реализация А* на тормозном СС 100к расчитывает за 20-30 секунд, что вполне приемлемо.

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

Нет можно! Не обязательно рассчитывать поиск пути между городами через каждый метр дороги в стране. Достаточно указать расстояние между городами. А в городе - между перекрестками.

Разбить муравейник на перекрестки и комнаты, и между ними искать путь по графу с массой точек, что и делает А*

и то с gps

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

Вкратце - брать пример с реального мира. Черепашки усиками потерлись и сообщили друг другу где теперь второй склад, а где шахта.

ants.jpg

пока кто-то напишет домик для байта, ты уже старый станешь. 

Ничего, пережду на планете Миллера любуясь волнами.

Изменено пользователем Krutoy

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нет можно! Не обязательно рассчитывать поиск пути между городами через каждый метр дороги в стране. Достаточно указать расстояние между городами. А в городе - между перекрестками.


Разбить муравейник на перекрестки и комнаты, и между ними искать путь по графу с массой точек, что и делает А*.


ну ... это не две сточки. :smile3:


Изменено пользователем NEO

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ну ... это не две сточки. :smile3:

Смотря сколько символов в строке. Ты же знаешь, что в луа можно заменять переход строки символом ";" ?

local a=0; local b=2; a=b; print(b)

crazy_pilot.gif

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 строка = 1 инструкция.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Сделать так, чтобы матка строила сборочный центр с системником, устанавливающим проги на диски и ассемблером, собирающих роботов с этими дисками


А потом рождается другая матка, отезжает подальше и делает свою базу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Все здорово осложняется необходимостью иметь источник энергии.

Самодостаточный "Скайнет" будет вынужден практически повторять путь развития обычного игрока в Майнкрафт (а ГрегТех дополнительно осложняет этот процесс).

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Все здорово осложняется необходимостью иметь источник энергии.

Самодостаточный "Скайнет" будет вынужден практически повторять путь развития обычного игрока в Майнкрафт (а ГрегТех дополнительно осложняет этот процесс).

С черепашками проще - нашел лавовое озеро, сбегал на угле и заправился на год.

С роботами сложнее. Нужно целую базу строить что бы их заряжать. Но думаю тоже возможно.

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

С черепашками проще - нашел лавовое озеро, сбегал на угле и заправился на год.

С роботами сложнее. Нужно целую базу строить что бы их заряжать. Но думаю тоже возможно.

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

 

А вот реализация более сложной системы, когда роботы воспроизводят себя, на черепашках будет действительно проще. (С тех пор как роботы собираются не на верстаке, а в сборщике, который требует для работы внешний источник энергии.)

 

Чтобы упростить задачу, можно изменить стартовые условия и включить в минимальный "набор для захвата мира" сборщик и угольный генератор.  :D

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

 

А вот реализация более сложной системы, когда роботы воспроизводят себя, на черепашках будет действительно проще. (С тех пор как роботы собираются не на верстаке, а в сборщике, который требует для работы внешний источник энергии.)

 

Чтобы упростить задачу, можно изменить стартовые условия и включить в минимальный "набор для захвата мира" сборщик и угольный генератор.  :D

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

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Верно. Следовательно, весь Муравейник может развернуть один робот, который имеет апгрейды инвентарь, контроллер инвентаря, верстак и генератор (или панель).

 

Пришла интересная мысль. При наличии RailCraft может ли робот поставить зарядник, конвертер и Clockwork Engine, а далее заряжать сам себя периодически "подкручивая" пружину двигателя? 

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

надо опробовать на IT собрать такую штуку, где робот будет подкручивать пружину двигателя, если расход будет меньше чем генератор генерирует, куча роботов куча генераторов= халявное электричество  

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

надо опробовать на IT собрать такую штуку, где робот будет подкручивать пружину двигателя, если расход будет меньше чем генератор генерирует, куча роботов куча генераторов= халявное электричество  

На IT нет форестри, а заводной движок как раз из этого мода

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А на МТ есть :3

Правда до робота хрен разовьешься

Изменено пользователем DUIIIES

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

×