Персональные блоги → Создаем робота на ХабраWars
Всем привет!
Наверно многие уже слышали про проект под названием HabraWars, если коротко — это игра для программеров, в которой вы сами пишите искусственный интеллект для собственного робота на JS.
Я думаю что это будет не первая моя статья на данную тему, хотя бы потому, что здесь я не собираюсь раскрывать всю тему, а лишь ее часть. Но сначала, я думаю, нужно сформировать некую концепцию робота… Сразу говорю, что в js я далеко не спец и вообще мои знания этого языка, на мой взгляд, довольно скудны… Итак, как-же должен выглядеть наш робот изнутри, а изнутри у него должна быть логика, как бы это очевидно не звучало, но логика это довольно сложная штука, она будет управлять роботом, задавая вопросы(типа: «Летит ли в меня(робота) снаряд») и основываясь на ответах вызывать функции, отвечающие за действия робота… Но начну я не с логики(я сам еще не начинал даже ее писать:)), а начну с функций, отвечающих за выполнение действий, порученных логикой.
Наверно многие уже слышали про проект под названием HabraWars, если коротко — это игра для программеров, в которой вы сами пишите искусственный интеллект для собственного робота на JS.
Я думаю что это будет не первая моя статья на данную тему, хотя бы потому, что здесь я не собираюсь раскрывать всю тему, а лишь ее часть. Но сначала, я думаю, нужно сформировать некую концепцию робота… Сразу говорю, что в js я далеко не спец и вообще мои знания этого языка, на мой взгляд, довольно скудны… Итак, как-же должен выглядеть наш робот изнутри, а изнутри у него должна быть логика, как бы это очевидно не звучало, но логика это довольно сложная штука, она будет управлять роботом, задавая вопросы(типа: «Летит ли в меня(робота) снаряд») и основываясь на ответах вызывать функции, отвечающие за действия робота… Но начну я не с логики(я сам еще не начинал даже ее писать:)), а начну с функций, отвечающих за выполнение действий, порученных логикой.
Персональные блоги → Habrawars: полезняшка для графической отладки
Решил поделится плагином для игры HabraWars — графическим отладчиком. Умеет встраиваться в движок и выводить точки, линии и текст. Остальное можно прикрутить по вкусу.
Персональные блоги → 1 турнир habrawars — 2 место — описание стратегии
2 место из 67 — это же не плохо? Предлагаю описание моей стратегии
1) Уворачивание от снарядов — похоже на стандартное, но никакого вращения (все равно некогда) + не всегда идет ускорение. На малых расстояниях это только потеря энергии
2) Пытаемся понять, кто нас атакует по полету снарядов. Единичную атаку можем проинтерпритировать как случайную (стреляли не в нас, а в соседнего)
3) Выявляем угрозы (продолжает атаковать, не удается сбежать)
4) Если врагов больше трех или три, но у них много здоровья, а угроз нет, пытаемся сваливать. Стратегия максимального удаления, но не зарываться в углы.
5) Если есть угроза, от которой не удается убежать, начинаем его атаковать. Если энергия есть, стреляем. Возможность его ускорения оцениваем по его энергии. (к сожалению, не учитывал врагов, которые стоят на месте, из-за этого и не первое место). Нет энергии — пытаемся «зайти за спину» врага
6) Нет угрозы, два врага или три, но у одного мало энергии — атакуем самого толстого.
Надеюсь, кому-нибудь это пригодится. На второй турнир буду готовить адаптивную стратегию.
1) Уворачивание от снарядов — похоже на стандартное, но никакого вращения (все равно некогда) + не всегда идет ускорение. На малых расстояниях это только потеря энергии
2) Пытаемся понять, кто нас атакует по полету снарядов. Единичную атаку можем проинтерпритировать как случайную (стреляли не в нас, а в соседнего)
3) Выявляем угрозы (продолжает атаковать, не удается сбежать)
4) Если врагов больше трех или три, но у них много здоровья, а угроз нет, пытаемся сваливать. Стратегия максимального удаления, но не зарываться в углы.
5) Если есть угроза, от которой не удается убежать, начинаем его атаковать. Если энергия есть, стреляем. Возможность его ускорения оцениваем по его энергии. (к сожалению, не учитывал врагов, которые стоят на месте, из-за этого и не первое место). Нет энергии — пытаемся «зайти за спину» врага
6) Нет угрозы, два врага или три, но у одного мало энергии — атакуем самого толстого.
Надеюсь, кому-нибудь это пригодится. На второй турнир буду готовить адаптивную стратегию.
Спортивное программирование → HabraWars — результаты первого чемпионата

HabraWars — это игра для программистов, в которой участники программируют роботов. Сегодня состоялся первый чемпионат, об организации которого можно подробнее почитать в этом хабратопике.
При первом обсуждении идеи многие скептически отнеслись к тому, что вся система будет работать в браузере, а роботы будут написаны на Javascript. Однако, на мой взгляд, все прошло вполне удачно и интересно. В чемпионате приняли участие 67 программистов.
Собственно: результаты и записи боев (для просмотра записей необходим Firefox или Chrome).
Победители:
1 место — korobkee (MiXei4)
2 место — ASmirnov80 (Sander80)
3 место — stalker.red (Stalker_RED)
4 место — alienff (alienff)
5 место — bolter.fire (kurokikaze)
Спасибо всем участникам за проявленный интерес! Предлагаю обсудить чемпионат и дальнейшие пути развития игры.
Персональные блоги → HabraWars: Графический debug
С идеей HabraWars Вы уже наверняка знакомы, крайний из топиков анонсирует первый турнир. Который случиться сегодня. Регистрация новых участников будет после 20 ноября.
Правил и кода sample robot достаточно чтобы начать писать своего покорителя пьедестала. Но отладка при помощи только консоли FireBug может быть не достаточно наглядна. Гораздо удобнее получать информацию а мыслях робота прямо на арену.
Правил и кода sample robot достаточно чтобы начать писать своего покорителя пьедестала. Но отладка при помощи только консоли FireBug может быть не достаточно наглядна. Гораздо удобнее получать информацию а мыслях робота прямо на арену.
Спортивное программирование → HabraWars — первый турнир

О чем идет речь можно прочитать в предыдущем топике. Вкратце: HabraWars — это игра для программистов, в которой участники программируют роботов.
Только что я залил на сервер новую версию и теперь всё готово для проведения первого турнира.
Внимание: нужна свежая версия Firefox или Google Chrome.
Адрес сайта: habrawars.appspot.com (регистрация новых пользователей закрыта до 20 ноября в связи с проведением турнира).
Спортивное программирование → Игра для программистов — Быки и коровы
Привет Хабралюди. Я расскажу вам, как на Питоне написать движок и примерный бот игры для программистов. Игры для программистов — это такие игры, в которые играют не люди, а программы.
Спортивное программирование → HabraWars — альфа версия

Позавчера я озвучил идею создания игры для программистов и проведения соревнования среди хабражителей. Идея стала популярной, а я, как и обещал, выкладываю первую (очень сырую) версию симулятора.
Для нормальной работы необходима свежая версия Firefox или Google Chrome. Возможно, будет также работать в Сафари, потому что она тоже полностью поддерживает тег canvas из HTML5 (буду рад помощи в тестировании и отладке).
Собственно, вот адрес: habrawars.appspot.com.
Сайт развернут на серверах корпорации Света и Добра, авторизация тоже через них.