| Генератор случайных карт в Age of Wonders III |
|
Автор темы:
SteelStrannik_renamed_1093934_16082022
Дата создания: 12.02.2014 16:54
|
|
Генератор случайных карт в Age of Wonders III
Компания "Бука" готовится к выпуску на территории России игры Age of Wonders III, в преддверии которого переводит интересные материалы по игре. Ах да, не забывайте, что 14 февраля нам 20 лет!
Журнал разработчиков: Завоевание бесчисленных миров в генераторе случайных карт Несмотря на всю эту суматоху, связанную с выпуском бета-версии, мы нашли немного времени, чтобы подготовить этот дневник разработчиков. Один из инструментов, который мы дорабатываем на этой стадии – генератор случайных карт (ГСК). В этом дневнике программист Лаша Лагидзе расскажет вам, как ведется работа над ГСК, и какими принципами мы руководствовались при его создании. ![]() Интерфейс с настройками для быстрого начала игрыНаши основные цели при создании ГСК Привет! Генерация случайных карт всегда была одной из тех функций, которые очень хотели видеть в игре игроки, но в серии Age of Wonders ГСК появился только после выхода отдельного дополнения Shadow Magic. В случае с Age of Wonders III мы хотели добавить ГСК, пока игра еще находится на стадии разработки, чтобы учитывать процесс генерации случайных карт при создании игры и уделить ему достаточное количество времени. На написание ГСК ушло с перерывами целых 18 месяцев! Вот задачи, которым мы ставили перед собой при его создании:
![]() Стартовая позиция для игрока класса «Верховный друид», сгенерированная ГСК. Процесс генерации Центральное место в процессе генерации занимает инструмент, который позволяет нам определить типы генерации. Каждый тип генерации отвечает за генерирование части мира и должен соответствовать специальному набору правил генерации, которые созданы нами. Например, вот некоторые правила для типа генерации надводного сооружения "Алтарь влюбчивой русалки":
После создания правил, мы должны убедиться в том, что в границах правил осталось достаточно свободы для элемента случайности. Это важно, так как в противном случае карты станут слишком предсказуемыми! Но элемент случайности не должен быть слишком велик, или это будет несправедливо. Тонкая настройка этих значений является чрезвычайно важной для нахождения верного баланса между справедливостью и случайностью. Когда настройка типа генерации была закончена, мы добавили все это к группе генерации. На данный момент существуют группы генерации для всех типов карт, а именно суши, материков и островов. И еще есть отдельная группа генерации для подземного мира. Любая из этих групп может быть отправлена в генератор, и генератор вернет случайно сгенерированную карту, по очереди обработав каждый из типов в группе. ![]() Интерфейс одной из таблиц с дополнительными настройками У нас есть много типов генерации, и у каждого типа свой собственный особый способ изменять мир. Вот наиболее важные из них:
![]() Первый опытный образец Мы хотели получать честно сгенерированные карты. Но этот метод генерации был для нас совершенно новым: мы не смогли найти еще одну стратегическую игру, в которой бы использовался аналогичный подход. Будет ли это вообще работать? У меня было чувство, что будет, но гарантий не было никаких. Самая первая версия ГСК (первый опытный образец) была слишком сложной и при работе с ней часто возникали проблемы. В какой-то момент я решил переписать ее, сохранив удачные куски. В результате было создано новое экспериментальное приложение (2D), которое можно увидеть выше на скриншоте. В левой панели находятся объекты, обеспечивающие ресурсами, такие как типы генерации. В данный момент выбран тип генерации [Mountains] (горы), правила для которого могут быть сконфигурированы в средней панели. Чтобы объяснить все параметры в центральной панели, мне пришлось бы написать целую книгу, поэтому, я опущу объяснения. Справа находится случайно сгенерированный уровень на основе заданных мною параметров. Короче говоря, это экспериментальное приложение позволило мне быстрее осуществлять тестирование; упростился обзор карты и, что самое главное, мне больше не нужно было ждать, пока запустится игра (на что уходило драгоценное время). Когда я почувствовал, что генератор достаточно стабилен, я преобразовал весь код в кодовую базу Age of Wonders III. И только после этого другие разработчики также смогли генерировать случайные карты. Случайная карта в игре Вот здесь некоторые результаты. Как вы видите, география достаточно разнообразна. Сейчас мы работаем над настройкой результатов и добавляем типы, украшающие карту и размещающие объекты бутафории (например, цветы и бабочки на лесных лужайках). ![]() Карта в виде сплошной суши. Обратите внимание, как реки и озера дробят мир. ![]() Карта в стиле континента. У всех игроков примерно равные возможности для экспансии. ![]() Подземный мир. Обратите внимания на реки воды и лавы. ![]() Карта с островами. В начале игры у всех игроков уже построен порт. На этой карте мореходство ![]() Еще один игровой скриншот. Обратите внимание на скопление ресурсов и на город в узком Лаша Лагидзе
Последний раз редактировалось SteelStrannik_renamed_1093934_16082022; 12.02.2014 в 17:50.
|
|
|
Re: Генератор случайных карт в Age of Wonders III
Когда, КОГДА ОНА УЖЕ ВЫЙДЕТ В ПРОДАЖУ? КОГДА?
![]() |
|
| Ваши права в разделе |
Быстрая навигация
|
