Состязание под названием «Back to the Code» отметило наш возврат к многопользовательским играм. Миссия игры состояла в том, чтобы помочь Доку и Марти заполучить Альманах до того, как на него наложит свои лапы Биф Таннен. Для достижения цели у них было одно секретное оружие: трюк с помощью которого они могли вовращаться в прошлое и менять ход вещей… к лучшему или к худшему.
Участники
Среди 110 представленных стран, в первой десятке по количеству участников оказались: Франция, Индия, США, Россия, Германия, Украина, Венгрия и Бразилия.
Топ 10 студентов
Языки программирования
Популярность языков
Счёт по языкам программирования
Подиум и ранги
Спасибо всем 6285 участникам, кто состязался в этой игре. После 8 дней, до финиша добрались 2018 участников: всех поздравляем! На пьедестале почёта: Recar (Украина, C++), AlexSurin (Россия, Javascript), and Olaf69 (Франция, C++). Чётко и впечатляюще. Отличная работа, друзья.
Игра
Целью игры было помочь МакФлаю захватить максимальное количество клеток в сетке. Чтобы этого добиться у игрока было два варианта: либо двигаться на поле нейтрального цвета, либо окружать нейтральные клетки своими. Вдобавок, чтобы немного добавить перцу, можно было вернуться назад во времени и сыграть по-другому!
В качестве первого подхода к решению можно было использовать первое правило: передвигаться на клетки нейтрального цвета для того, чтобы захватить их. Самый простой ход – найти ближайшую нейтральную клетку и перемещаться по координатам этой клетки. Это осуществлялось просмотром всей сетки и определением координаты, что сокращало манхэттенское расстояние. Этот алгоритм можно было улучшить с помощью различных эвристических методов, в частности избегая клеток, которые располагались ближе к противнику, чем к вам, по мере приближения к концу игры. Другая возможность – отдать предпочтение группе клеток вдалеке, нежели одной, но расположенной поблизости.
Такой подход был достаточен для попадания в первую 1000, но если говорить о более высоком уровне игры, вам пришлось бы сконцентрироваться на окружении нейтральных клеток. Популярное решение, которое позволило бы войти вам в первую сотню состояло в том, чтобы создать список возможных четырёхугольных областей вокруг своей позиции и выбрать наиболее обещающую. Вся магия заключена в алгоритме, вычисляющем насколько хороша выбранная вами область. Отличная смесь риска и выгоды.
И в заключение, у игроков была возможность путешествовать во времени, но только единожды в каждом из раундов. Это значительно расширило количество возможных стратегий. Скачок во времени можно было использовать для того, чтобы вернуться и попытаться заблокировать захват большого куска сетки одним из своих оппонентов, либо изменить свою стратегию на более осторожную или агрессивную, учитывая поведение ваших соперников.
Как продвигалась ваша игра? Расскажите в каких местах проявилась ваша смекалка и о выборе стратегии на нашем форуме.
А для тех, кто не смог принять участие в игре в день её проведения, вы можете попробовать свои силы в секции Multiplayer на сайте CodinGame.
GlukKazan
Не совсем понятен момент с возвратом по времени. То есть, как это выглядит? На момент в прошлом откатывается всё состояние доски или как в Timeline? Как игрок выбирает точку во времени куда откатиться? Если есть какие-то иллюстрации, мне, как разработчику подобных игр, было бы очень интересно посмотреть.
alhimik45
Игрок выбирает, на сколько шагов назад откатиться (максимум 25) и всё игровое поле откатывается к этому состоянию.
Можно посмотреть реплеи, чтобы увидеть как это работает (например)
GlukKazan
Спасибо, понятно.
corbandallas
Спасибо, alhimik45, опередил меня. От себя добавлю, что CG обычно после игры ещё публикуют обзоры стратегий победителей и код в блоге, постараюсь тоже перевести.