Главная » Хабрахабр » [Перевод] Мини-империи

[Перевод] Мини-империи

Как выглядит стратегическая игра, если мы будем смотреть только на мини-карту? Недавно я решил изучить эту идею, вернувшись к классической Age of Empires II.
Я начал с изучения матча с тремя ИИ-игроками на карте средних размеров. Вот исходное состояние:

Если «Первому игроку приготовиться» и научил меня чему-то, так это тому, что абсолютно нормально вечно держаться за своё детство.

Каждый кадр в показанном ниже видео представляет две секунды реального времени. Делая каждые несколько секунд скриншоты мини-карты, мы можем создать таймлапс игры. При частоте 24 кадров в секунду двухчасовая игра занимает гораздо более удобные две с половиной минуты:

Вот тот же самый матч с убранным фоном. Напоминает мне о бактериях, сражающихся в чашке Петри:

При наложении кадров друг на друга получается такая картина:

Усреднённое смешивание всех кадров демонстрирует стандартные маршруты на карте:

Чтобы лучше показать движение и действия я также попробовал рассмотреть только визуальные различия между каждым из кадров:

А вот визуальное представление покрытия каждым цветом:

Цветовое покрытие карты. Как и в других примерах, воспроизводится на скорости 2x

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

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

  • Age of Empires II HD edition
  • Режим Conquest на случайной карте
  • Случайно выбираемые команды
  • Начало с постимпериалистической эпохи
  • Стандартная сложность ИИ

Вот предыдущий матч и три повторных реплея. Несмотря на одинаковые стартовые условия, каждый развивается по-своему:

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

Иногда два игрока объединяются против третьего, иногда в центре карты начинается «королевская битва», а иногда третий игрок проводит скрытную атаку, пока первый и второй игроки дерутся между собой (ИИ недостаточно умён, чтобы на самом деле планировать все эти маневры, они просто появляются естественным образом). Матчи на трёх игроков особенно интересны благодаря своей динамике.

Вот несколько примеров: Нехватка этой динамики делает матчи на двух игроков более короткими и обычно менее интересными.

Картина снова улучшается, когда мы переходим к матчам на четырёх игроков. В таких матчах четвёртый игрок часто уничтожается на ранних этапах, что опять приводит к матчу на трёх игроков.

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

Матчи на восьмерых игроков более хаотичны. В таких матчах появляются четыре команды из двух игроков:

  • Красный + синий
  • Голубой + фиолетовый
  • Серый + оранжевый
  • Жёлтый + зелёный

Золотая лихорадка

Крепость

В одной из игр почти не было боёв:

Разумеется, существует множество других способов изучения данных, кроме таймлапса. Один из самых интересных — проецирование 2D-срезов мини-карты на трёхмерный объём. Для этого анализа я использовал ImageJ.

Вот матч из начала статьи в виде 3D-объёма:

Ось Z (показанная здесь вертикально) — это время. В этом объёме здания создают сплошные вертикальные линии, потому что они никогда не меняют своего положения.

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

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

С другой стороны, матчи на восьмерых игроков очень хаотичны.

Наконец, взяв 2D сквозь срезы объёма, мы можем посмотреть на отдельные плоскости карты с течением времени

Хотя 3D-проекции красивы, я всё равно нахожу более интересными простые таймлапсы. Мини-карта очень напоминает взгляд на игру, как на чашку Петри: каждая из сторон сводится к кучке разноцветных пикселей, и почему-то очень захватывающе следить за тем, как цвета разрастаются, отступают и завоёвывают пространство. Возможно, с достаточно далёкого расстояния так выглядят все битвы.

Они очень грубы, поэтому пользуйтесь ими аккуратно. Скрипты, использованные для этого проекта, можно найти здесь. Дайте знать, если создадите что-то интересное. Возможно, будет забавно применить такие же техники к другим играм, кроме того, скорее всего есть много других способов изучения подобных данных.


Оставить комментарий

Ваш email нигде не будет показан
Обязательные для заполнения поля помечены *

*

x

Ещё Hi-Tech Интересное!

Python-установщик Android-сборок из TeamCity своими руками

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

Карьерный Rush

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