Новая (старая) сторона процедурной генерации

Теория MMO: Новая сторона процедурной генерации
А вот свеженькое, интересное и, как ни странно, актуальное от Рафа Костера. Хотя и снова о SWG. Но на этот раз Раф рассказал о принципиальном подходе к генерации игрового окружения и о том, какие возможности такой подход открыл для разработчиков в начале двухтысячных годов. Очевидно, его рассказ и сегодня, во время явного расцвета технологий процедурной генерации, может быть вполне востребован. Текст, как обычно, весьма увесистый, поэтому переводить не решусь, но ключевые моменты, которые мне показались интересными, обозначу. Многое в словах Костера заставило меня по-новому взглянуть на возможности процедурной генерации.

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

Теория MMO: Новая сторона процедурной генерации
Итак, перед разработчиками стояла амбициозная задача – создать не камерный фентезийный мир, как в других ММО, не декорацию планеты, как при съемках фильма серии Star Wars – а ощущение целой вселенной с планетами, по которым можно долго, почти бесконечно, путешествовать. Никто такие пространства не мог создать вручную. Что еще важнее – никто такие пространства не мог поместить на какой-то носитель. Смотрите простейшие расчеты Рафа в начале заметки.

Итак, сложная и, казалось бы, нерешаемая для своего времени проблема заставила разработчиков найти новые подходы. О них также подробно написано в тексте Рафа, как и об огромном количестве проблем, которые создал новый подход, и которых не было у других онлайновых проектов SOE, таких как Everquest 2 или Planetside, работавших на основе рукотворных и неизменных ландшафтов.

Теория MMO: Новая сторона процедурной генерации
Тем не менее, новый принцип, который применили при создании локаций SWG «на лету» позволил разработчикам точно так же «на лету» изменять множество параметров. Что, в свою очередь, открыло совершенно потрясающие возможности:

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

Теория MMO: Новая сторона процедурной генерации
В результате они смогли сделать:

Дома. Игроки могли поставить свои дома в любом месте, где нет запрета на строительство.

Динамические достопримечательности. Были небольшие локации, которые «спавнились» сразу с сооружениями, определенным антуражем и противниками.

Теория MMO: Новая сторона процедурной генерации
Логова. Вместо того чтобы «спавнить» отдельных монстров, разработчики придумали динамически располагать их логова, где были как беззащитные молодые особи, которых можно было приручить, так и матерые хищники, способные потрепать бывалого охотника. Причем они нападали на любого, кто пытался приблизиться к логову, что было естественной моделью поведения.

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

Теория MMO: Новая сторона процедурной генерации
Военные базы. На их основе в дальнейшем была основана механика «Гражданской Войны».

Что еще важно упомянуть – SWG обладало уникальной системой динамической генерации ресурсов. Свой собственный опыт ее использования я описывал в одной из давних заметок.

Теория MMO: Новая сторона процедурной генерации
Важный вывод из всего описанного Рафом для меня – это неожиданная новая сторона процедурной генерации. И в Майнкрафте, и в Salem, и Haven and Hearth, вся территория после создания мира оставалась неизменной. В SWG, напротив – все окружение постоянно менялось. Возникали логова, достопримечательности, постоянно менялись залежи ресурсов. Это делало мир в восприятии игрока намного больше, чем он был на самом деле. Исследование такой территории становилось, фактически, бесконечным. Разработка ресурсов – тоже. Не было необходимости гнаться за «самым лучшим местом» или ждать «вайпа», то есть перегенерации мира, если мир постоянно преобразовывался сам. Достаточно было просто моргнуть.
Читайте также

35 комментариев

avatar
Ох как офигенно-то все… было. На самом деле именно в подобной системе ключ к долгоиграющему геймплею сурвайвлов. «Самопреобразовывающаяся» окружающая среда создает поистине гигантский потенциал для становления экосистемы. В очередной раз уму не постижимо, как все это можно было, извините, просрать)
  • Kaizer
  • +3
  • v
avatar
В реальности (с т.з. игроков) у системы этой были некоторые недостатки и, скажем так ,«странности». Но в целом, я до сих пор немножко офигиваю от «пары прибитых гвоздем березок, вон на том углу» в современных игрищах.
avatar
Самым ценным оказалось использование этой системы в поисках и добыче ресурсов. Это было весело и здорово. И, в некоторых случаях (у нас, в заброшенном углу Дантуина) требовало коллективных действий: напороться на гнездышко квинкеров (Господи! до сих пор помню этих зубастых сусликов), пока бежишь носом в сканерр — очень легко, а для недокаченного до топа «копателя» это хороший шанс проснутся в клон-центре на другйо стороен планеты (ну, так было на достатоно ранних стадиях, позже стало сильно легче и уже все ставилось в одну морду лица)
avatar
Хорошо, но почему считается что постоянное перегенерирование залежей ресурсов это так круто? Это держит интенсивность исследования местности на постоянном показателе, но какие в такой системе минуса?

Давайте сравним с Shores of Hazeron, где потенциальное количество еще неисследованных планет в галактике оставляло постоянный шанс на нахождение области с наивысшим качеством ресурса. Или с Life is Feudal, где для каждого игрока ценность одной и той же собранной травы была индивидуальной. Salem продолжил идеи своего предшественника и в нем нельзя было сразу наткнуться на чистейшую руду. Для поиска высококачественных рудников того же цвета, необходимо было использовать предметы, созданные из аналогичного по цвету металла чистоты чуть ниже.
avatar
Я согласен с Атроном, постоянная регенерация ресурсных спотов решает целый скоп проблем, порожденных «прибитыми» к карте ресурсами. Здесь и ботоводство, и кемпинг наиболее качественных спотов и в частности сохраненная необходимость постоянного эксплоринга планеты. При этом игроки не разбредаются друг от друга слишком далеко, как это было в том же Салем, так что уровень социальных взаимодействий сохраняется.
UPD: если вы невидите на горизонте ни одного игрока — это слишком далеко. А в салеме радиус обзора — один экран.
Комментарий отредактирован 2015-04-22 16:13:18 пользователем Avicorn
avatar
Почему это решает ботоводство? Мы же говорим только о поиске ресурсов, но не о их добыче?

То есть кемпинг спотов это плохо?

Почему в Салеме игроки разбредались друг от друга, разве из-за недоступности ресусов?
avatar
Ну смотри, бот, который бегает по заранее известным спотам будет все ще попроще, чем тот, которому надо самому в начале найти спот, чтобы его прокопать. Не бином ньютона конечно, но сложнее.

Кемпинг спотов — может быть и нет, но лично я играл в свое время в игру про кемпинг спотов и — never again!

Почему разбредались игроки в Салеме я не знаю, но факт остается фактом — с областью видимости, если сравнивать с SWG, там печаль. Можно потерять друг друга, просто отойдя чуть в сторону за цветочком.
avatar
А добыча ручная — это 5-10 кусочков в 1 минуту. А копалка за минуту от 100 до 1000 кусочков копает. 8) А ботоводить копалку… бессмысленно. И каждый раз копалка должна на другое место встать после респауна (около недели, но… см.ниже про выкачку жилы)
avatar
Я согласен, что ботоводить копалку бессмысленно. Поэтому и уточняю, что речь идет о постоянном поиске спотов ресурсов, а не о их последующей добыче.

Способ добычи не имеет никакого отношения к описанной в статье системе генерации спотов.

Искать сами ресурсы было интересно? Никогда не возникало мысли о возможной автоматизации процесса поиска: запуск разведывательного дрона, сканирование планеты с орбиты?
avatar
Если у вас такая мысль возникала, а у меня — нет, и я с удовольствием занимался поиском, как быть? :)
avatar
Посмотрим на это с другой стороны.

Если вы с удовольствием занимались поиском, а завтра узнавали что лучшие споты уже истощены кем-то другим, потому что он нашел их раньше. И в ближайшее время только он сможет произвести лучшую экипировку на сервере. Такое событие будет восприниматься с легким огорчением?
avatar
А для этого у нас была гильдия.
И у нас были торговые связи с производителями и продавцами сырья.
Огорчения — да, были. Но тут несколько «но». О том, что ресурс — действительно раритетный, узнаешь не когда его копаешь, а сильно позже. Идеальные «эпические» ресурсы выпадали невообразимо редко. 1 раз за 3 года, например.
Нормальные характеристкими были просто «Нормальные».
За счет других материалов можно было подтянуть те, которых не хватает при крафте.
Хламоматериал так еж использовался в огромных количествах, так где его характеристики не влияли.
avatar
Такая же ситуация наблюдалась и в Haven and Hearth. Лучшее качество всегда можно было обменять у торговцев.

SWG в этом плане не отличается.
avatar
Да, конечно, будет. Хотя я скромно надеюсь, что ботовода отловят. Но мы ведь здесь рассуждаем категориями «возникает или не возникает желание». Понимаете?
  • Atron
  • -1
  • v
avatar
Понимаю.

Значит, постоянный поиск спотов являлся интересным и не надоедающим времяпровождением для игроков, кому SWG со всем остальным геймплеем уже нравился.
Комментарий отредактирован 2015-04-22 18:38:05 пользователем thesunwillnevershine
avatar
Значит, постоянный поиск спотов являлся интересным и не надоедающим времяпровождением для игроков, кому SWG со всем остальным геймплеем уже нравился.

В каком смысле «значит»? Мы же этого не выяснили. Вот есть два игрока — у одного возникает желание автоматизировать, а у другого — нет, его все устраивает. И если мы основываемся на возникновении желания, оно само по себе ни о чем не говорит, по-моему.
avatar
Нет, такие желания бы однозначно говорили о том, что заниматься поиском игроку скучно, не интересно, для него это лишняя часть игры, но ему интересны другие цели в игре, к которым он все равно идет через все личные неудобства.

В конце игрок получает вознаграждение, цена которого все затраченные им усилия.

Не является ли такой поиск искусственным удлинением геймплея? Если никто не задавался таким вопросом, то нет, не является, а органично находится в мире на своем месте.

Меня возмущает только представление, что система случайной генерации спотов и вытекающий из этого вечный поиск ресурсов делали мир для игрока шире, а другие, приведенные в примере игры, этого не делали.
avatar
Нет, такие желания бы однозначно говорили о том, что заниматься поиском игроку скучно, не интересно, для него это лишняя часть игры

В MMO по определению будет куча неинтересных конкретному игроку частей. Завтра будет новая заметка по этому поводу. Тоже пересказ рассуждений Рафа, к слову. Так что пытаться сделать весь геймплей ММО интересным одному игроку — утопия.
  • Atron
  • -1
  • v
avatar
Личные предпочтения игроков — бесконечное множество вариантов интересного геймплея.

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

Взглянем на Elite: Dangerous. Исследование в игре самый скучный и монотонный процесс. Награда в кредитах за сканирование систем самая низкая. На данный момент не существует никакого геймплея после исследования, оно ни к чему не приводит. Так кто продолжает отправляться в дальние экспедиции и после составлять мемуары о своих скитаниях?
avatar
Взглянем на Elite: Dangerous. Исследование в игре самый скучный и монотонный процесс. Награда в кредитах за сканирование систем самая низкая. На данный момент не существует никакого геймплея после исследования, оно ни к чему не приводит. Так кто продолжает отправляться в дальние экспедиции и после составлять мемуары о своих скитаниях?
Исследование — само по себе геймплей, в некотором роде. И сам процесс — награда. И не требует «награды еще». По крайней мере для тех, кому этим интересно заниматься. Правда, однотонность процесса выхолащивает его, награда приравнивается к нулю. Становится скучно.
Но с другой стороны, при скучном процессе (объективно или субъективно) и получаемая потом за процесс награда, может легко его превратить в тупой и неинтересный гринд «за конфету». Которая с каждым разом будет становится все горше и горше.
Комментарий отредактирован 2015-04-22 21:30:30 пользователем Gothrom
avatar
Так кто продолжает отправляться в дальние экспедиции и после составлять мемуары о своих скитаниях?
Я полагаю, что вы говорите об одних и тех же вещах разными словами :) Но часть
получаемая потом за процесс награда, может легко его превратить в тупой и неинтересный гринд «за конфету»
понравилась. По моему идеально подходит к тем случаям, когда в игру все же пихают ботов.
Правда, при этом возможен вариант, когда геймплей то интересен, и даже приличному количеству игроков, но конфета слишком велика и этим приходится заниматься даже тем, кто этим заниматься не хочет. Появляются боты… они функционируют лучше людей… элемент геймплея погибает даже для тех, кому он был в кайф.
Считаю, что в таком случае виноваты не только ботоводы, но и те, кто сделал конфету слишком большой.
Комментарий отредактирован 2015-04-22 22:07:19 пользователем Avicorn
avatar
В СВГ средненький спот тянулся на двести-пятьсот метров. Хоть обставляйся копалками… (5х5 м). И часто поиск шел другим путем: смотришь стоит куча копалок. Берешь пробу, смотришь, что там. И ставишь рядом свои.
avatar
С орбиты планеты это было сделать… никак. Разведовательные дроны для поиска ресурсов — отсутствовали. О чем-то подобном, в раках игры, мы думали.

Боты для такой процедуры не очень подходили (я не знаю о возможности перехвата данных между клиентом и сервером — там, может быть, что-то и можно было сделать). Попытка пробежать из города с зажатой спичкой клавишей заканчивалась генерацией у тебя перед носом очередного логова, из которого выпрыгивало что-то, что откусывало тебе голову со второго укуса, вне зависимости от твоего уровня. Когда ввели транспорт — стало полегче — можн обыло пролететь логово насквозь. Но для сбора ресурсов надо останавливаться через каждые 50 м и сканить снова (не из транспорта) и менять направление — жила шла не по прямой. Да и из транспорта могли легко вышибить.

Скажем так, мы несколько проводили «гонки» из космопорта до города: 100% недоезд всех. Но это — Дантуин и до КУ/НГЕ. На центральных планетах можно было все же отбиться.
avatar
Скажите, а у вас возникало желание рассказать о своем опыте в рамках полноценной заметки, а не комментария? Что вас останавливало? :)
avatar
Хреновая память и занятость 8)
Половину из того, что я сегодня написал, я вспомнил уже в процессе.
Ну, и надо заметить, что далеко не все воспоминания о СВГ вызывают у меня положительные чувства.

Зато сегодня случайно откопал заметку в ЛКИ про празднование дня рождения нашего города :) И на одном из скринов, кажется, даже себя узрел 8)

www.lki.ru/text.php?id=2518

Прошу прощения, если ссылка не к месту.
avatar
Мне встречался в открытом доступе (просто на форуме) скрипт для L2Walker, который прокачивает гнома до 20го уровня, да еще и делает ему профессию, включая поиски Томы. Состоит из «иди туда, говори с тем», да пары условий.
Со случайной генерацией таких скриптов уже не будет. Нужны будут другие — поумнее, посложнее. И вот их уже будет тяжелее написать, тяжелее достать… Профи-ботоводы никуда не денутся, но вот игроки уже ими пользоваться не будут.
avatar
Пользоваться такими ботами сложнее не станет.

Не важно на сколько это сложно если необходимость использования бота для получения ощутимого преимущества существует.
avatar
Не важно на сколько это сложно
Важно, как и любая другая автоматизация она упирается в показатель затраты/профит и только странные люди автоматизируют при показателе < 1
avatar
Затраты всегда считаются во времени человека.

Автоматизация выигрывает везде, где не требуются редкие навыки. Если существует потенциал получения преимущества в игре через автоматизацию, автоматизация имеет быть в этом месте.
avatar
в до-НГЕшном СВГ бот умрет (от квинкеров, хыхы) пока добредет с энергокопалки к ресурсокопалкам, заправит их, разгрузит, вернется на склад и опять по новой. В 7 из 10 случаев, выйдя из игры не в городе, при загрузке обратно был риск обнаружить себя в клонцентре.

На более обжитых планетах было попроще, но тоже не везде. Случайная генерация всяких смертоубийственных гадов на пути бота во время его «прогулки» (а без них — никак) оборвут еще быстрее, чем у игрока. Мы к себе в город «новичков» (тех, кто на центральных планетах освоил начальные уровни) возили, и то не всегда успешно.

Но… боты были 8) В СВГ был свой скриптовый язык, с циклами и условиями. Им качали крафтерские профессии и ТКА.
Комментарий отредактирован 2015-04-22 17:56:09 пользователем Gothrom
avatar
Это не «круто», это интересно.
По какому-то принципу и таймеру карта ресурсов на планете обновляется (я не помню ни таймеры ни принципы. Помню, там были некоторые проблемы, но они не сильно влияли).

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

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

Характеристики вообще можно было узнать, только взяв пробу (что на жилах с маленьким уровнем концентрации тоже не просто).

Найдя наивысшую концентрацию ресурса, взяв пробу (и убедившись, что копать это — выгодно), там можно было поставить копалку. Простые питались полиэфирами (нефтью :) ), навороченные жили на всяких ядерных реакторах. Копалки надо было заправлять. И освобождать их от уже ими накопанного. Ода-три копалки выкачивали 85% жилу за двое-трое суток. Получалось это… скажем так, не много. Жила «проседала» не равномерно. Посему, выкачав «сливки», копалку надо было переставлять, проведя дополнительное сканирование.

В общем, по добыче тут все и заканчивалось (бы), если бы не одно «но». На всякие топ-шмотки шли конкретные, именные ресурсы. Они могли просто не генерировать — месяцами. Они могли генерироваться, но с плохими характеристиками. Настолько плохими, что ты делал вещь, и она получалась полным хламом. Характеристики ресурсов влияли на параметры изделия не только напрямую, но и по совокупности. На все это накладывалось мастерство и удача в экспериментах мастера, которые делает предмет (или его схематику). Некоторые редкие ресурсы с высокими характеристиками хранились и если появлялись в продаже, то безумно дорого и редко. Ну и, например, снайперку Т21 можо было купить «обычную» — из средних ресурсов, какие-то мастерские варианты — из хороших ресурсов, с отточеной схематики, или — вообще — ручного производства, в единственном экземпляре на сервере. Это я о качественных изделиях, помимо того было все и совсем простое.

Это было интересно. Не больше, но и не меньше. Сам процесс поиска ресурса и «подсчет», куда, что и как. Поиск качественных ресурсов (исследование рынка) если не смог накопать — отдельная «Игра». Эксперименты с ресурсами в крафте — третья «игра», планирование производства на схематику.с учетом запасов — четвертая «игра». При том, сам процесс «копания» — был прост за счет «копалок» (но их менеджмент (там еще требовался их ремонт, кажется) — тоже немного увеличивал фан от «облетел, очистил хранилища». Но не сильно :)

Еще можно было поставить свою копалку (более мощную) рядом с чужой — жила то одна, и утянуть часть ресурсов. А это уже — политический конфликт с соседями.

Из плохого была абсолютная непредсказуемость ресауна ресурсов (по типам и видам) и их характеристики. У нас на сервере очень долго не было какого-то ресурса, так что и оружия из него не было (для БХ, как помнится) почти пол года.
avatar
PS. Из земли копались металлы, полимеры, кажется — кристаллы и что-то еще. Но система характеристик распространялась и на органику: кости и шкуры. А вот с ними было не так весело, ибо это — ручное убиение мобов и разбор их «на запчасти». Ручками, поштучно, в огромных количествах. Но зато тут была уже внеигровая фича: охотники летали по планетам, брали Образцы" шкур, костей, мяса и сливали их на сайты с «локаторами текущих ресурсов». Ну, с полезными ископаемыми — аналогично. Если бы был механизм хмм… животноводства, и аналогичная внутриигровая «База», было бы сильно интереснее.

Энергия — тоже добывалась.
Копалки под каждые ресурсы были разные.
Кажется, были не только минералы и полимеры под оружие/броню, но и что-то для биоинженеров и строителей. Просто я до этой части игры (профессий) не добирался 8))

И отдельно — система профессий: полезны и нужны были все. И мастерские, и начинающие. Любой кубик в ветке профессий что-то давал. И перераспределять кубики для отдельных, мастерских заморочек было очень не легко.

ЗЫ. но «Нужное» не значит «сбалансированное». косяков там была куча.
Комментарий отредактирован 2015-04-22 17:26:46 пользователем Gothrom
avatar
Спасибо. Теперь многое яснее.

Для SWG такая система подходила как никакая другая.
avatar
Это, и пост выше, про SWG?
avatar
Воспоминания про СВГ в до-КУ (и до-НГЕ) эпоху.

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