CodeSide. Новая игра для знаменитого соревнования Russian AI Cup
Сообщество участников чемпионатов и команда Mail.ru Group в сотрудничестве с Codeforces.com приглашают вас на самую настоящую бойню, от которой вы получите бессонные ночи и мозоли на руках, поскольку будете участвовать в одном из самых живых и интересных чемпионатов по программированию искусственного интеллекта в мире — Russian AI Cup. Поверьте, что организаторы всего этого безумия продали все свои души ради создания игры, в которую вы захотите играть.
Вам будут нужны только доступ в Интернет, компьютер, голова конечно же, ну и желание ворваться в самую незаурядную тусовку. Возможно, что ещё пригодится кофе. Добро пожаловать!
Каждый год мы ломаем наши головы, чтобы придумать тему следующего соревнования. Так мы делаем уже с далёкого 2012 года. В этой статье я не буду рассказывать про предыдущие соревнования. Полезные ссылки будут в конце статьи.
Перечитав весь форум и все предложения от участников, которые смогли найти, наша команда приняла секретное решение о создании игры в жанре платформер. В течение одного года мы держали всё наше сообщество в самом настоящем стрессе, не рассказывая ничего про новую задачу. Нас пытали, но никто не поддался на провокации.
Сегодня, 27 ноября, в день открытия беты тестирования, мы расскажем и покажем то, что придумали и создали! Итак, начнём с того, что кодовое название нового чемпионата — CodeSide.
CodeSide 2019
Всем участникам предлагается написать искусственный интеллект (стратегию), который будет управлять командой юнитов в виртуальном мире. Очевидно, что задача у этого искусственного интеллекта победить другие такие же интеллекты, написанные другими участникам.

Скажу сразу, что в этом чемпионате физики будет не так много, как вы подумали. Мы вообще считаем, что её нет. Например, в качестве аргумента, юниты в данной игре не имеют ускорения. Мы постарались сделать всё, чтобы участники могли сконцентрироваться на написании умных стратегий, а не велосипедах с физикой.
Ваш юнит может бегать, прыгать, падать. Действие может быть заблокировано какой-либо сущностью, так что нужно постоянно следить за ними. Все сущности в игре прямоугольные.
Игровой мир двумерный, и он меняется в зависимости от уровня. Архитектура карты представляет собой стены, платформы, лестницы и трамплины. Все юниты располагаются на начальных позициях, без оружия и не имеют никаких преимуществ над другими. Кроме того, на карте случайным образом появляется лут — оружие, аптечки и мины.
Чтобы победить, нужно уметь целиться и стрелять в противника. Каждое оружие обладает постоянными параметрами:
- размер обоймы,
- скорострельность,
- скорость перезарядки,
- минимальный и максимальный разброс,
- отдача,
- скорость прицеливания,
- параметры пули,
- параметры взрыва.
Кроме того, существуют и изменяющиеся параметры:
- количество патронов,
- значение разброса,
- время до следующего выстрела,
- угловой параметр (угол прицеливания).
Пули у нас необычные. Во-первых, они квадратные. Во-вторых, если присутствуют параметр взрыва, то создается квадратный взрыв, наносящий дополнительный урон всем юнитам. Вообще, все сущности прямоугольные, так что модель достаточно упрощенная.
Если вы хотите подорвать кого-то немного позже, а не сразу, то вы можете поставить мины. Их можно хранить в инвентаре, установить тогда, когда захотите.
Быстрый старт
На сайте чемпионата вы найдете полную документацию, которая позволит вам включиться в борьбу буквально за пару минут. В ней вы познакомитесь с правилами, скачаете языковые пакеты и специальную версию симулятора игры (приложение) для участников — LocalRunner, который позволит вам запускать тестовые игры локально на своём компьютере.
Наша проверяющая система поддерживает почти все популярные языки программирования: C++, C#, D, Go, Java, Kotlin, Python, Ruby, Rust. Если вам необходим другой язык программирования, мы можем его добавить. Кроме того, в репозитории или на сайте чемпионата вы сможете скачать примеры стратегий.
Сообщество
Мы обитаем в Telegram. У нас есть чат, есть канал. Стараемся друг другу помогать и просто общаемся. Будем рады видеть вас в наших рядах!
Расписание
Традиционно, чемпионат проходит в несколько этапов.
- 27 ноября — 7 декабря: Бета-тестирование игры.
За этот период могут быть внесены изменения в баланс, устранены ошибки, оптимизирована инфраструктура. Результат беты не влияет на другие результаты. Перед следующий этапом рейтинг сбрасывается. - 7 декабря — 14 декабря: Песочница.
По итогам данного этапа будут отобраны по рейтингу стратегии для первого раунда. - 14 декабря — 15 декабря: Первый раунд.
Лучшие по рейтингу стратегии переходят во второй раунд. - 21 декабря — 22 декабря: Второй раунд.
Лучшие по рейтингу стратегии переходят в финал. - 28 декабря — 30 декабря: Финал.
По итогам финала объявляем победителей и призёров чемпионата
Подарки
Все победители финала получат хорошие новогодние подарки:
1-е место — MacBook Pro 15».
2-е место — MacBook Pro 13».
3-е место — Apple iPad.
4-е место — Samsung Gear S3 или Apple Watch S3.
5-е место — WD My Cloud 6 TB.
6-е место — WD My Passport Ultra 4TB.
Кроме того, топ-6 победителей песочницы смогут получить WD My Passport Ultra 2TB.
Всем участникам второго раунда достанутся футболки, а участникам финала — толстовки.