12 December 2024, 01:46

Author Topic: История разработки Xenonauts

RPG diary

  • Sysop-In-A-Box
  • ***
  • Posts: 1996
    • RPG diary

Неправильное №1: (недостаточное) предварительное планирование

Что же, перейдем к плохому! Начнем с предварительного планирования

Выбор движка был самых худшим решением, которое мы когда-либо принимали. Playground SDK 5 — это двухмерный движок, сконструированный для казуальных браузерных игр вроде Diner Dash. Он не поддерживается разработчиками, его исходные коды не доступны и его даже нельзя больше скачать.

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

Движок был выбран программистом, который первым (и очень недолго) работал над проектом. Это было ужасное решение. Если бы мы правильно занимались планирование и прототипированием, то быстро бы перешли на другой движок, так как Playground SDK просто не подходил для игры вроде Xenonauts. Вместо этого мы выбрали плохую основу и следующие пять лет мучились, строя игру поверх нее.



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

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

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

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

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

Неправильное №2: масштаб

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

Xenonaut — игра немаленькая, очень немногие инди-игры имеют столько контента, сколько одни наши наземные бои. Все советуют делать маленькую игру, а я сделал огромную. Само собой это оказалось ошибкой.

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

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

Трудность в том, что приемлемая цена игры при этом не увеличивается — инди игры стоят 20-25 долларов вне зависимости от количества контента. Таким образом не очень-то правильно добавлять в игру большие количества контента сверх того, что необходимо для оправдания цены в 25 долларов.

Таким образом соотношение стоимости разработки и возможных объемов продаж у Xenonauts с самого начала было не лучшим, как и всех X-COM игр. Их сомнительность с точки зрения бизнеса скорее всего и была одной из тех причин, по которым на создание официального ремейка X-COM ушло столько времени!

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

Ремейк X-COM был прыжком в самые глубины игроразработки и сейчас это кажется очень глупым. Полузаконченная игра ничего не стоит, так что стоило мне споткнуться на любом этапе разработки и я бы потерял много денег (большая часть которых принадлежала другим людям), а моя карьера игроразработчика закончилась бы, так и не начавшись.

Это очень серьезный и по большому счету не нужный риск.



Неправильное №3: реалистичный сеттинг холодной войны

Действие Xenonauts происходит в 1979 году, на историческом пике Холодной Войны. Я выбрал этот сеттинг по нескольким причинам — он отличал нас от сеттинга ближайшего будущего в X-COM, осознанно приземленный сеттинг контрастировал с экзотическими пришельцами, именно в этот исторический период сильнее всего боялись пришельцев и их нашествия.

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

Но самой крупной проблемой был «реализм» — или его восприятие. Если действие вашей игры происходит в относительно современное время, вы даете игроку множество узнаваемых объектов. Если их поведение расходится с ожиданиями игрока, они разрушают погружение в игру.

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

Уравновешенность игропроцесса важнее исторической точности. В Xenonauts Chinook способен облететь земной шар на одном баке горючего потому что игроки будут недовольны и начнут жаловаться, если не смогут реагировать на появление пришельцев по всей карте. Это не реалистично, но улучшает игровые ощущения. В X-Com изначально очень много нереалистичных моментов, делающих игру лучше, вроде искусственно ограниченной дальности зрения у игровых единиц, увеличивающей напряжение. Я не мог изменить их не нарушив обещание воссоздать X-Com, а реалистичный сеттинг делал их более очевидными и приводил к ожесточенным спорам на форумах.

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

И хотя некоторые люди могли бы лучше осознавать всю ироничность жалоб на недостаток реализма в игре про вторжение пришельцев в 1979, фундаментальную ошибку все-таки сделал я. Мы рекламировали игру как «Стратегический симулятор планетарной обороны» и выдержали ее в стиле сурового реализма. Все это породило ожидания реализма, которым никогда бы не смогла соответствовать игра в духе X-COM.

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



Неправильное №4: ранние предзаказы

Xenonauts были анонсированы на стадии расплывчатой идеи. Покупатели отдавали деньги за свои собственные представления о том, каким должен быть осовремененный X-COM. К несчастью, в итоге они получили мои представления о том, каким должен быть осовремененный X-COM.

Мы никогда бы не смогли удовлетворить всех. У каждого были свои представления о том, какие части формулы X-COM надо поменять и как именно это надо сделать, очень часто эти предложения были полностью несовместимы друг с другом.

К счастью, большинство людей осознали этот факт и понимали, что Xenonauts не будут полностью совпадать с образами в их головах. Они оспаривали отдельные моменты и дизайнерские решения, но соглашались с нашим правом принимать некоторые решения, с которыми они были несогласны.

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

Хотя в интернете вы всегда встретитесь с каким-то количеством рассерженных людей, все могло бы пойти намного лучше, если бы мы начали принимать предзаказы позже — более завершенный продукт дал бы покупателям возможность лучше осознать, является ли он той игрой, которую они хотели бы купить. Те, кому не понравилось направление развития проекта, могли бы отсеяться сами по себе.

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

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

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

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

Неправильное №5: игровой процесс

Больше всего я сожалею о решениях, связанных с игровым процессом.

Прежде всего, «реалистичный» дизайн пришельцев был ошибкой: почти все пришельцы в Xenonauts являются гуманоидами нормальных пропорций в броне. В исходном X-COM был намного более широкий спектр странных и удивительных врагов — даже у стандартных сектоидов было крохотное тело с крупной головой, придававшее им однозначно инородный вид. Их образы были гораздо более яркими, чем у врагов из Xenonauts.

Как мне кажется, частично это связано с тем, что я создавал врагов как если бы игра была стрелялкой — у каждого было много уникальных деталей, видимых вблизи, но ни одна из них не была видна на маленький спрайтах стратегической игры. Мне надо было сосредоточиться на создании разных силуэтов, а не на деталях. Я осознал это примерно в середине процесса разработки, когда уже было поздно что либо менять.

Так же я сожалею, что сделал плоский глобус. У этого решения есть свои сильные стороны, так как плоская карта гораздо лучше показывает происходящее чем трехмерный глобус из оригинального X-COM, но одновременно с этим радиус действия радаров и маршруты полетов не учитывают кривизну Земли — строительство базы в Антарктиде было полезным в X-COM, но настолько бессмысленным в Xenonauts, что мы просто убрали этот континент. Мне немного стыдно за это.



Третьей ошибкой был дизайн НЛО. Их внешний вид великолепен и однозначно чужд, но они очень плохо сочетаются с сеткой наземного боя. Серые коробки исходного X-COM могли временами выглядеть скучно, но их можно было собрать из отдельных тайлов. Это означает, что они полностью поддерживали разрушаемость и не страдали от очень неприятных проблем с видимостью и проходимостью.

Внедрение наших дизайнов НЛО в игру заняло огромное количество времени и полученные результаты были в лучшем случае посредственным. Нам надо было полностью отказаться от них и заменить модульными НЛО — они были бы менее привлекательны, но игровой процесс радикально улучшился бы и реализация была бы гораздо проще.



Если бы мы разрабатывали Xenonauts непублично, то практически гарантированно так бы и поступили — но наши дизайны НЛО был сделаны в самом начале разработки я использовал их во всех видах общения с публикой в течение многих лет. Они казались мне слишком важным элементом игры, чтобы менять их на поздних стадиях разработки… и все-таки мне надо было это сделать.

Еще одной ошибкой было масштабирование пользовательского интерфейса — шрифт становился практически нечитаемым на маленьких экранах. Я не уделил этому внимания при конструировании интерфейса (рассчитанного на экраны 1080p) и получил массу жалоб. Я бы мог предотвратить эту проблему, если бы подумал о ней заранее, но к тому моменту как я ее осознал, было уже слишком поздно чтобы что-то менять.

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