Pull to refresh

Comments 58

У них же совершенно разный уровень.
Colobot — игра, которая прекрасно подойдет для начала обучения вашего чада программированию, в отличии от того же самого Robocode.
Robocode помоему соизмерим с Colobot, не так много там параметров можно контролировать (подобные игры бывают на олимпиадах). А насчет Alife игр согласен с вами, учту в следущий раз.
В Robocode очень много параметров можно контролировать. Если не верите — посмотрите на API.
Спасибо, тогда исправлюсь не так много параметров контролировать необходимо, для написания простого бота.Соответсвенно сложность будет зависить только от фантазии программиста.
А какую банально посоветуете? Ну чтобы поинтересней и не слишком уж тяжело (чтобы отдохнуть от работы а не продолжить её)
Colobot/CeeBot, очень хорошая документация, плюс можно «схалявить» сделать что-то вручную :) описание было в блоге «Игры для программистов». Возможно если любите противоборство то Robocode, можно к примеру устраивать посиделки с друзьями под пиво, и смотреть чей же бот все таки лучше :)
Безусловно, начинать надо с чего-то простого, вроде Colobot/Ceebot. А затем уже калибровать, пробовать что-нибудь посложнее.
Есть такая ещё игра Aerobots — также программирование логики космитических кораблей в звёздных баталиях.
К сожалению, игра как-то потерялась в интернете. В гугле ещё живут посты на форумах автора GreenTea, но все они ведут уже на не рабочие сайты.

Может вдруг автор увидит данный коммент на хабре и возродит проект. Очень бы хотелось онлайн-баталий.
Мне он показался слишком сложным относительно данных сред, все-таки сейчас не все знают низкоуровневые языки на должном уровне. Как аналог CoreWar здесь выступает Evolve.
This simulator is a union of Conway's Game of Life and Core Wars
.Как написано на офф. сайте.
Куда уж проще — одномерный мир, ассемблерообразный язык.
Да, несомненно стоит.
Благо, карма уже позволяет.
Этим направлением занимаюсь я :-)
А нет ли онлайн игр программистов? Что-то вроде арены на выживание роботов например. Вроде что-то такое слышал.
Вот к примеру репозитарий роботов Robocode, на сколько я понял в Terrarium данная функция поддерживалась, соотвесвенно критерий «Возможность соревнования между ботами» означает возможность именно арены(либо другой формы соревнований)
Если не то потенциально свободная ниша для разработок)
Чем сообственно и собираюсь начать заниматся :)
Искренне желаю Вам удачи!
Трудитесь! Задумка хорошая.
Сразу оговорюсь что возможность скачать с сайта робота-соперника и потом импортировать его к себе чтобы сразиться это не онлайн битва! Хочется именно чтобы можно было выбрать соперника, получать очки, может даже открывать по мере набирания экспы новые функции? Или покупать их в магазине. Это было бы очень круто (:
Ура, Теперь вам стал доступен цикл for!
Начал делать в сентябре. Написал игровой сервер (свой «мир» со своими правилами, код в стиле pascal), php-обвязку (взаимодействие с игровым сервером по TCP/IP), js-скрипты (отображение боев, редактор кода). В итоге, уже вполне можно было соревноваться: писать свой код, тестировать на ботах, выставлять своих роботов на бой (немного поиграли с друзьями)… и все это в браузере. В планах было сделать систему заработка денег (турниры, дуэли), апгрейда роботов. Уже составил ТЗ на разработку флешки (чтобы бои были более красочными). А потом как-то все заглохло (занялся другим проектом). Двухмесячный труд лежит в папке мертвым грузом и вряд ли когда-нибудь проект увидит свет (сейчас все это кажется неперспективным).
Передайте кому-нибудь наработки, или выложите, а сообщество глядишь и подхватит идею и доделает :) Получится продвинутый MyBrute.
я тоже хочу порекомендовать сделать имеющиеся наработки общественным достоянием )
В том же Core War есть возможность присылать своего бота на соревнования. Посмотрите www.koth.org/
Правильно я понимаю, что вам интересена именно статистика?
Не совсем, скорее мне интересно участвовать в боях непосредственно в онлайн, с возможностью посмотреть на чужие бои, но не раз в неделю а прямо здесь и сейчас. Что-то сделал, проверил результат с кем-то, переделал, еще раз посмотрел. В духе любых популярных сейчас браузерных игр. Ну и конечно экономическая составляющая прибавит интереса игре
В Colobot был сюжет, а остальные просто какие-то наборы заданий.
Странно, что в этих играх не использую динамические языки типа Javascript, Ruby или Python.
Breve — пакет для моделирования децентрализованных систем и искуственной жизни(Alife), имеет свой язык «steve», также поддерживает Python (чем сообственно может быть интересным), на нем же и написан.
Про Droidbattles забыли — программирование роботов на Ассемблере)
Вот оф. сайт www.bluefire.nu/droidbattles/, а вообще есть в репозитории дебиана)
robocup
футбол роботов на компьютере (robocup.org), команды мультиагенты. Кстати, давно мечтал — создать команду… а то там доминируют в основном иранские и немецкие и португальские команды (вроде бы так...). Если кому интересна тема robocup, а именно создание команды (создадим вместе основу, а там возможны ответвления — в зависимости от желания), пишите lnn1974()gmail.com. А там глядишь и свой чемпионат забубухаем!
а еще на хабре были уже топики про игры Light Bot и RoboZZle.
правда обе они представители скорее casual games.
У меня таблица уползла под блоки «Прямой эфир ↓» и «Популярные блоги ↓»…
Да есть такая проблема, это так же ограничивает количество игр для сравнения, либо пришлось бы разбивать на несколько таблиц.

Если вам интересна эта таблица, могу отослать вам копию в *.odt.
Отсылайте, если не трудно! ivanzoid@gmail.com
Сделайте в онлайн таблицах и поставьте ссылку в основном сообщении. Всем ведь файлы не поотправляешь.

Можно в гугле — docs.google.com/, можно в альтернативном варианте (Zoho и др.).
А есть что-нибудь в духе сражений Heroes 3? Подправить код юнитов в армии и сразиться с другом :))
Те это видимо нечто вроде Robocode, но что бы несколько сущностей были совешенно разными, но играть могли сообща.
Colobot/CeeBot именно в плане взаимодействия различных видов, там есть примеры где один робот управляет другим.
А как насчет идеи выделить сервер… с возможностью выкладывания демонов с поддержкой api (и возможно обязательным проходом тестов на сервере)…
для унификации выдавать пользователю (или группе ) свой открытый порт + пароль…
а арена — шаблонизированный вывод работы этих демонов… тут можно визуализации под api…
Благодарю, заинтересовало, возможно скоро сделаю подробный обзор.
познакомится с breve мне пришлось в рамках недельного практического курса. нас было групп десять, по 2-3 человека в каждой. цель мероприятия — создать свою свору агентов с простым поведением для реактивной системы, и в последний день сразится с другими командами потребляя пиво+чипсы или кофе+булочки.

задание походило на Mars Explorer Experiment, что описал Steel. конечно же можно было следовать и своим идеям.

в общих чертах Mars Explorer Experiment выглядит так: есть стационарный корабль-матка издающий радиосигнал, есть свора из автономных роботов, которые словно scv терранов тусуются по поверхности планеты и собирают для матки минералы. по радиосигналу эти машины определяют угол к кораблю-матке. ещё они могут срать кирпичами^H ^H^H^H^H^H раскидывать радиоктивные плюшки с короткоживущим изотопом. плюшки можно так же находить и собирать, и тем самым взаимодействовать с остальным роем. (вроде муравьиного феромона). сенсоры роботов конечно ограничены, и помимо плюшек и минералов различают ещё и препятствия, которых (в нашем случае) на марсе огромное множество в виде стен и… стен. так же наши агенты-тараканы имели голод/заряд, который нет-нет да подпитывали поеданием минералов.

мы программировали layered behaviour этих агентов более или менее простыми действиями с разными приоритетами. это походит на планировщик задач и nice. ) вот пример:

randomWalkBehaviour set-level to 100.
followTrailBehaviour set-level to 90.
turnAwayBehaviour set-level to 80.
aimFoodBehaviour set-level to 70.
pickupBehaviour set-level to 60.
carryHomeBehaviour set-level to 50.
dropFoodBehaviour set-level to 40.
collisionBehaviour set-level to 30.
eatFoodBehaviour set-level to 20.
deadBehaviour set-level to 10.

и к примеру само поведение:

SubsumptionBehaviour: СollisionBehavior {

+ variables:

+ to init:
self set-name to «CollisionBehavior».
+ to check-if-fires for-agent theAgent (object):
if (theAgent wall-collided):
{
#theAgent set-color to (1.0, 1.0, 0.2).
theAgent set-label to «X».
return 1.
}
if ((theAgent get-globalTicks) % 5):
theAgent set-label to (theAgent get-number).
#theAgent set-color to ((theAgent get-team) get-teamcolor).
return 0.
+ to fire for-agent theAgent (object):
#theAgent decelerate.
theAgent relative-rotate around-axis (0,1,0) by (random[2 * 3.141]).
#print «Collided!!!».

}

ох, какой большой пост получился! если кому интересно, могу написать коротко о двух или трёх хитрых тактиках моих сокурсников.
Я думаю многим было бы интересно услышать больше о breve, хотя бы потом что он использует Python.А вы насколько я вижу имеете опыт работы с ним, может быть напишите подробный обзор?
бреве на вид не сложный, императивный объектно-ориентироованный язык. мой очень поверхностный опыт заключался лишь в недельном рассматривании некоторых предоставленных доцентом классов-прототипов, просмотр примеров самого бреве, лурканьем по форуму производителя — всё это для поставленной задачи, создать одно-два наследование и написать несколько алгоритмов, мне хватило.

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

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

Опа, а я после работы предпочитаю поиграть во что нибудь непрограммерское.
Так здесь игра не программерская, жанр тут другой…
Кстати, небольшая просьба к автору:
Раз вы хотите организовать «стартап» посвященный игре для программиста, сразу скажу: Мы на работе недавно хотели разработать такой проект. Для начала просто для себя, а потом когда выйдет нормальная версия провести достойную олимпиаду среду школьников/студентов. На данном этапе все находится пока на стадии обсуждения, но если вы действительно будете разрабатывать нечто такое, то с удовольствием выступлю как консультант или тестер (возможно даже всем отделом).
Имеется достаточное количество предварительных требований для игры:
1. Проведение открытых/закрытых турниров.
2. Возможность просмотра игр всеми участниками в реал-тайме или в записи, но главное хорошая визуализация.
3. Поддержка различных ЯП. Как не прискорбно, но одно из требований это Object Pascal.
4. и т.д.

Очень хотелось бы быть в курсе ваших начинаний или успехов.
Sign up to leave a comment.

Articles